July 31, 2024
Genius degenerates rule our world
How do you spell 'inconsiderate', you, oh, so wonderful FOSS developers?
This is what Netbeans test profile results look like. Yes, I had to click through all of those 37 bloody levels of nested call tree, to arrive at my own code. You have 'Profile test' menu, so cut out your own shit, FFS! I do not need to know that Apache Maven Surefire Booter forked its boot, or that JDK internal Reflect native methods invoked JUnit provider. I do not give a fuck!
Posted by: LinuxLies at
04:49 PM
| No Comments
| Add Comment
Post contains 94 words, total size 1 kb.
Genius degenerates rule our world
I am so sick of it that don't even know how to title this. I am so tired of the sheer stupidity of our best-of-the-best genius overlords.
Oracle thought it was a good idea to call their new LINQ equivalent 'streams'. What could possibly go wrong? Now, try to google something stream-related, and I mean real streams as in FileInputStream(). Your results will drown in collection stream-related noise.
This is no different from Microsoft's genius .NET framework. Stupidity must be infectious and airborne since their execs contract it mostly on golf courses.
Posted by: LinuxLies at
04:39 PM
| No Comments
| Add Comment
Post contains 102 words, total size 1 kb.
We will secure your web site with our certificate. But we will open you up to hackers.
And if you do not obey, we will twist your hands and force you to. Or something along those lines.
The gist is that in April 2024, Let's Encrypt made changes to their practices/rules/policies whatever, and now they require that you submit yourself to multi-origin HTTP requests as part of their domain ownership validation process. It means that you have to open your firewalls to arbitrary countries anywhere on this god-foresaken Earth.
They openly admit in the linked blog post that it is a security breach for some of their users, but fuck that, they still blow ahead with the new idea, and fuck all.
Posted by: LinuxLies at
08:49 AM
| No Comments
| Add Comment
Post contains 139 words, total size 1 kb.
July 30, 2024
Genius degenerates rule our world
Genius is as genius does, usually as a degenerate.
Did you ever try to install a genius piece of software, which in this day and age more often than not comes as a self-downloading, online package? You probably already know what I am getting at.
So, imagine a secure, firewalled environment, in which one has to get approvals for any downloading and installation of software. You need to know from which address and port your software will download itself. So, you embark on discovery process. Here's how it goes.
You click and start the online installer, and it fails because there is not yet firewall rule in place. You check firewall logs and find out that it tried to d/l from IP xx.yyy.zzz.tt, port 443. At this point, you only have one option: to click Close button and exit the app. You raise your eyebrows because the developer did not consider Retry option. You sigh and open that IP and port. Now, the downloader can fetch the actual software. Not so fast!
When the d/l completes, the installer extracts the file into some temp folder. Your firewall rule, therefore, will have to point at that temporary EXE's path. When it fails to run, you again are presented with only the Close button. Wonderful, says you and drill another hole in your firewall. What's next? You restart the downloader, and it fails again. Why? Because every time it extracts the installer into a new temporary directory.
Remember: these are genius developers who write that shit. They are decorated graduates of Computer Science university courses. If you ask them something, they will profusely shower you with special lingo. They are know-it-all, smug, and condescending types. But when it comes to thinking they utterly fail. This is inevitable because they are genius.
Posted by: LinuxLies at
10:36 AM
| No Comments
| Add Comment
Post contains 309 words, total size 2 kb.
July 29, 2024
The redlining ego of FOSS developers is the problem
I had been submitting bug reports to FOSS projects, before it became mainstream. Like, in the late 80s-early 90s. That was when most living FOSS developers soiled their diapers. Back then, things were different.
Imagine the world where FOSS developers were respectful towards their users and appreciated bug reports. Imagine the world where they were happy to fix bugs and thanked me and others for discovering them. Imagine the world where they did not instantly get their pants in the not, lashed out at us, circled their wagons, or pushed back, 100% of the time.
The modern-day FOSS developer has humongous superiority complex, short temper, thin skin, and poisonous tongue. Today, dealing with them is a torture that most try to avoid at all costs.
If we look into reasons, then we can point at globalization, of all things. Those olden days FOSS developers used to be our own, domestic university students who strove for perfection in all things. Their code was perfect most of the time and seldom had bugs. Today, hell knows who from hell knows where pollute FOSS development horizon with their hatred, arrogance, poor communication skills, short temper, lack of culture, yada, yada, yada. We gave them the computer, they took it and turned upon us. Congratulations, free world!
Posted by: LinuxLies at
08:42 PM
| No Comments
| Add Comment
Post contains 231 words, total size 1 kb.
Another Linux lie: we have Java
Truth is: you don't.
Enter OpenJDK, a supposedly free supposedly replacement for Oracle's Java SE.
I am parsing output of some command that spits out roughly 10k lines, error message being the last one. My code has to check if there is an error, but there isn't.
Having gotten sore throat from screaming at the monitor 'Here it is, right there, you dumb #%@^!', I switched gears to a bulletproof method: 2>&1. Still, no error.
Then I revisited my process spawning and output reading class member. Whoa, it has .redirectErrorStream(true); WTF is going on asks I and proceeds to inspect the output, line by line. Bingo! The error is right there, in plain view, on line 6000-something. I run that command in terminal. The error is the last of 10k something. So, the stdout and stderr are out of sync, in OpenJDK process and process builder classs' output.
The rhetorical question is, as my readers already know: did they test? Your guess is as good as mine. Another rhetorical question is, will I bother reporting this bug? Hell, no. I had enough of being shat upon, for doing so. FU, OpenJDK devs, for being assholes towards the world that feeds you.
Posted by: LinuxLies at
10:57 AM
| No Comments
| Add Comment
Post contains 213 words, total size 1 kb.
Java 8 streams OMG
When you come to Java from .NET, your first question will likely be what does it have for LINQ, and the answer is streams. Fine, let's try them.
Suddenly, your code becomes slow as fuck. WTF happened? Ah, you've just added .stream().filter(s -> s.equals("abc").collect( blah-blah to your member, and now you are watching with astonishment the CPU load indicator that pins one CPU core to 100%, for some time.
That is the moment when an ethical developer who has integrity says 'Fuck this!' and reverts to the good, ole for() loop.
No, seriously! Java 8 streams suck balls. They are OK for lists that contain a handful of elements, but for anything that has more than a dozen, they fold their legs and sit down to snooze. It's really that bad. So, next time you go to a web site or bank machine and watch it spin those wonky loading rings, remember why: because developers are lazy and want to save a few keystrokes, at your cost.
Posted by: LinuxLies at
09:24 AM
| No Comments
| Add Comment
Post contains 175 words, total size 1 kb.
We as a society should systematically look into reasons why FOSS sucks so loudly
As a sysadmin of a not-so-well-off, not-for-profit organization, I deal a whole lot with FOSS softwares and their developers. The feeling is akin to being shat upon, but this is my job.
The vast majority of individual developers and teams take defensive stance when their bugs or sub-optimal decisions are challenged. Why do they do that? Because there is no one who supervises them; therefore, they can do whatever their gut feeling is.
In traditional commercial environment, if a dev shows attitude, they get an adjustment from their boss. There are checks and balances. Good developers are usually kept happy, whereas bad developers are either shed or shunned. Not so much, in the oh, so wonderful FOSS world. Or are they rejects from real-world, commercial environments?
How should we as a society respond to that? It is simple! We should, by refusing to accept the software they barf on us. But strangely, we accept it with open arms. So do we deserve the crap that floats around? Try to ask yourself this question and ponder it.
Posted by: LinuxLies at
09:07 AM
| No Comments
| Add Comment
Post contains 204 words, total size 1 kb.
Oh, those wonderful FOSS projects
Have you ever developed Java applications in Netbeans? How long ago was that? If you remember the good, ole times of Oracle's versions 7 or 8, and now you develop in Apache's versions 9+, you are probably like me: astonished.
The Apache's versions are typical FOSS shit: full of annoying, into-your-face, glaring bugs. They are dumb as a truck of bricks but obliging as Jeeves, i.e. they go out of their way to offer dumb code completion that is spot-on 50%.
How do you like sticky errors that either stay on after they have been fixed or do not show up even when still broken?
How do you like random sort order of suggestion drop-downs? Got used to 'add import' being the 1st item? We are now going to sticky shock you by switching the order and putting 'add comment' at the top, for once. And then we'll revert.
And the list is going and going. Once you are infuriated, you will cherish good ole times when Oracle owned the code base. At least they could kick bad devs out of their team or withhold their bonuses. @Apache? Not so much: anything goes.
Posted by: LinuxLies at
08:08 AM
| No Comments
| Add Comment
Post contains 203 words, total size 1 kb.
July 25, 2024
Here's how you tell which technology a web site runs on
There is a simple rule that is based on how long it takes to load:
- 1-2 seconds: plain HTML or C++ CGI
- 2-4 seconds: Java servlets
- 4-8 seconds: VB6 classic ASP, Java JSP, JSF
- 8-16 seconds: C#.NET
- 16-32 seconds: PHP
- 32-64 seconds: WordPress
- 64-128 seconds: Ruby
Posted by: LinuxLies at
01:32 PM
| No Comments
| Add Comment
Post contains 68 words, total size 1 kb.
July 24, 2024
Another Linux lie: we have a file manager
Kinda, sorta, you do, but how much thinking did you put in it? Not too much, I guess. Now, tell me, which file causes the problem? You cannot because the error dialog covers the file name, for crying out loud! And unlike DOS/Windowze file managers, you cannot drag the error to a side, to see the name.
When will they genius FOSS developers turn their brains on? I am no longer holding my breath: it's been too long.
Posted by: LinuxLies at
03:09 PM
| No Comments
| Add Comment
Post contains 94 words, total size 1 kb.
July 22, 2024
Genius degenerates rule our world
This topic has become permanent, in this blog, and this is scary. Now, this is about another Linux lie: 'We have an IDE'. Truth is, you don't.
Enter Netbeans, a bastard child of Oracle that is now in foster care of oh, ever so genius Apache project.
Not able to submit breakpoint LineBreakpoint mainForm.java : 1122, reason: The breakpoint is set outside of any class. Invalid LineBreakpoint mainForm.java : 1122 Not able to submit breakpoint LineBreakpoint mainForm.java : 1251, reason: The breakpoint is set outside of any class. Invalid LineBreakpoint mainForm.java : 1251
Don't rain this shit on me, assholes! This is your and only your hands' creation. You, terminal geniuses, should be able to intelligently disable/delete breakpoints of which you are fully aware that they are beyond the last line of the class file. But no, you, like blind sheep, keep marching towards the edge. Genius is as genius does: usually, as a degenerate.
Posted by: LinuxLies at
07:58 AM
| No Comments
| Add Comment
Post contains 165 words, total size 1 kb.
July 20, 2024
Genius degenerates rule our world
How do you spot a genius? Ah, fuck this, I am too sick of this shit. Long story short, enter Netbeans, a genius product of labors of genius developers at Apache project that in itself is an epitome of all things genius.
You want to do a git commit and open the corresponding dialog. You type your commit comment. Now you want to see files in the commit, and you drag the bottom-right corner of the dialog down and to the right... Huh? WTF? The top panel with your 1-liner canned commit comment expands, while the bottom list of 152 files remains one-inch-high.
I want to ask all genius FOSS developers: Do you ever think thoughts other than "Fuck the user!"?
And when I thought that they have already hit the bottom, I realized that they do not sort their lists. Why am I raving about it? Because it is a newbie bug. Newbies do not sort their lists, and then things like randomized XML elements or menu items rain on the user. In Netbeans, refactoring recommendations may come in the order of 1. Annotate with @Override and 2. Add javadoc comment, or the other way around. I guess, they just do it to keep us on our tiptoes, so as we do not become comfortable always choosing the 1st menu item. Sadistic monsters, all of them.
Posted by: LinuxLies at
08:38 AM
| No Comments
| Add Comment
Post contains 237 words, total size 1 kb.
July 19, 2024
Genius degenerates rule our world
How do you spot a genius? More often than not, by their idiotic deeds. Enter Apache project, MINA SSH library. They are so terminally genius that they dump on the user all of the output from the host, not only the output of the command. Isn't that genius?
So, you are an unsuspecting developer who bought into their 'future' and 'promise' shit of asynchronous API and trashed your trusty 'ole JSch (because it is no longer supported and no longer works with modern ciphers), and here you are, issuing a command to the server, waiting for whatever 10-20 seconds that it takes to execute (huh? for a simple echo a) and see this shit:
Linux blah 6.1.0-22-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.94-1 (2024-06-21) x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Fri Jul 19 09:19:27 2024 root@blah:~# echo a
Aren't they ivory tower dwellers genius?
By the way, geniuses, where is my output? FTS!
Posted by: LinuxLies at
11:55 AM
| No Comments
| Add Comment
Post contains 199 words, total size 1 kb.
This is how the oh, so wonderful FOSS "community" insulates itself from feedback
My long-time readers know that all of this FOSS altruistic for the benefit of the glory of the world shit is all smoke and mirrors. Here's another glaring proof.
Am I the only one who cannot find any fucking way to register a new account on this, wink-wink, "bug tracker", nudge-nudge?
If anyone knows how, give me a pointer. I have a bug to file but can't.
Posted by: LinuxLies at
07:49 AM
| No Comments
| Add Comment
Post contains 93 words, total size 1 kb.
July 15, 2024
This is the assfuck that C++ devs have to perform these days
Just take a look at this shit!
auto t = std::chrono::system_clock::to_time_t(std::chrono::system_clock::now());
Sophistication? Yes, utmost!
Sense? None.
No wonder our software sucks balls.
No wonder recent graduates are petrified by fear of C++ and crave for shits like Python, Go, Haskell, Ruby, and other sorts thereof.
No wonder no one wants to have anything to do with C++ anymore.
The reason being that C++ committee betrayed the human race and succumbed to sophistication at all cost mental disease.
std::vector::emplace_back() causes the elements being added to the vector to be destroyed and re-created from scratch. Insanity anyone? Yes, this is the wonderful new reality that costs humanity 10s of 1000s of megawatts of extra energy burned. All while green shitheads extort carbon taxes from us. We fight fucking wars over petroleum and uranium because our software sucks having been developed by shitheads.
We've been betrayed and had in the rear by the very intellectuals who gave us global warming and green cult. Congratulations!
Posted by: LinuxLies at
09:18 AM
| No Comments
| Add Comment
Post contains 185 words, total size 1 kb.
How Linux community operates
You are on an old version and have a question: "We do not support old versions."
You upgraded, and everything is FUBARed: Crickets.
Posted by: LinuxLies at
06:52 AM
| No Comments
| Add Comment
Post contains 31 words, total size 1 kb.
July 14, 2024
This is what 1 trillion US$ cannot buy you: intelligence
Enter SQL Server and its Management Studio. I always admired this combination and considered it the best SQL development platform in the visible universe. Until today I did. Today, something happened.
My client asked me to rename two of their databases, let's say A and B, into A.Something and B.SomethingElse. Notice the period that was supposed to be introduced in the name. I complied, and all hell broke loose.
We began to get errors that mentioned the now not existing databases A and B, from SSMS. Apparently some of its functionality allows periods in the DB names, whereas other functionality does not. The only case in which this is possible is if MS did not test.
Fly, fools!
Posted by: LinuxLies at
09:07 AM
| No Comments
| Add Comment
Post contains 138 words, total size 1 kb.
July 13, 2024
Another Linux lie: we have Java IDE
Truth is: you don't.
Enter Apache's Netbeans 11 and OpenJDK 11. What an explosive combination, on Linux!
Since the inception of both, they do not cooperate amicably. Netbeans hates OpenJDK's Javadoc and does not want to acknowledge its existence. This is a known problem that elicits various solutions most notable being adding each and every subfolder of /usr/share/javadoc/java to Javadoc paths under Java platform dialog.
That kind of works: 50 rapid flashes of the screen later, 'Die, epileptic, die!' style, you do have Javadoc support in the IDE.
Seriously? The terminally genius, enlightened devs of Apache project had absolutely no opportunity to release a fix for that, in one of their updates? I do not buy it. They likely do not give a flying fuck.
Posted by: LinuxLies at
05:39 AM
| No Comments
| Add Comment
Post contains 139 words, total size 1 kb.
July 12, 2024
New low: volume control in MATE crashes on mouse hover
The truly enlightened FOSS developers never test their code. They release if it compiles. Then we test it. The author of MATE PulseAudio volume control is no different: he did not notice that every about 10-20 times his bastard child crashes on volume changes, but today I noticed that it also crashes on mouse hover. The bitch did not test more than once or twice.
Posted by: LinuxLies at
05:17 PM
| No Comments
| Add Comment
Post contains 85 words, total size 1 kb.
And no one gives a flying fuck
The problem of black screen when starting Debian VM is 5 years old and going but nobody bothered with any followup. And rightly so: fuck the pesky user!
Posted by: LinuxLies at
02:01 PM
| No Comments
| Add Comment
Post contains 42 words, total size 1 kb.
Genius degenerates rule our world
Genius is as genius does: as a degenerate.
The whole point of hosting on-premise Gitlab is to be able to develop and control source code, from an environment that has no Internet connection. Should have been obvious to those enlightened, terminally-genius ivory tower dwellers who develop it. But no, you upgrade and see the all-so-wonderful new Web IDE that is the next best thing, but it does not work because it needs to download JavaScript from VSCode CDN.
That simple thought that occurs to us, unwashed mere mortals, should have occurred to those geniuses, but it had not. Simple thoughts do not occur to them. They can only develop shit that dumps hundred-kilobyte-long stack traces on a sysadmin who is installing their updates, after the actually important line that tells how to recover from their foobar. That is genius, from their perspective. The realization that someone may be behind a restrictive firewall from which source control systems are not allowed to reach out, never comes to them.
This is the world we live in. Fly, fools!
Posted by: LinuxLies at
08:59 AM
| No Comments
| Add Comment
Post contains 186 words, total size 1 kb.
July 11, 2024
Another Linux lie: we have source control solutions
Truth is: you do not.
Had a displeasure of upgrading a Gitlab instance today. Tedious shit, I must tell you.
This bitch lies about its upgrade process, at every turn.
First of all, it flat-out refused to upgrade until I googled and found that there is a special script that installs its GPG keys. You have to curl it and pipe into bash. Nice. So I get the script, and now the monstrosity shows its true, ugly face.
First, it tells me that my old version cannot be directly upgraded to the latest and greatest 17. First it has to be upgraded to 16. Fine, says I, and pins the package gitlab-ee to 16. Guess what? Now it tells me that it has to be first upgraded to 15. Then to 14.10, then to 14.0... So it seems to always bisect my version gap, to mock and bully me, instead of telling me right away what the correct next version is. Keeping in mind that the monstrosity is 1+ GB in size and takes time to d/l.
To get an idea of what nightmare Gitlab upgrade turns into, for unsuspecting sysadmins, read for example this horror story Did no one teach you, terminally-genius, ivory tower dwelling developers, to test your effin' products before you roll them out?
This instills only one feeling in me: I want all of those sophisticated, terminally genius FOSS developers to rot under 6' of mud instead of polluting the universe with their presence. Inconsiderate sadistic monsters all of them.
PS: For fairness' sake, once you get past the nightmarish version range 13.2-14.5 that requires literally every intermediate installation of each 2nd minor versions, it becomes easy-peasy. Probably, some inept and inconsiderate asshole dev on their team got an attitude adjustment from users, and they sighed and began to test their releases.
Posted by: LinuxLies at
04:25 PM
| No Comments
| Add Comment
Post contains 322 words, total size 2 kb.
July 07, 2024
How Stack Exchange gurus function
I dare you if you are not coward: go on any of Stack Exchange boards, ask a question that requires expert knowledge in a specific field, and wait for answers. Here is what you are likely going to see: comments to the effect that
- you could have found the answer yourself had you tried and
- there is nothing members can do for you since you are not trying
Usually you are going to see such replies from members who have 10s of 1000s of reputation. They are considered "experienced members" by the invisible but omnipotent "community". But scratch them and what are you going to see? Know-it-all incompetent types who have no life and spend all of their time online, running up their post count.
In the real world, what do you consider those who barge into conversations in which they are incompetent and cannot contribute anything of value? You call them idiots. On Stack Exchange idiots are the ruling power.
Congratulations, founders! You've managed to further dumb down our already decadent world.
Posted by: LinuxLies at
07:17 AM
| No Comments
| Add Comment
Post contains 183 words, total size 1 kb.
July 06, 2024
I managed to totally confuse Visual Studio's IntelliSense, in a simple class
I sinned! I always document my public fields and methods. This time, it was no different: I typed a triple slash and expected VS to create a correct template for the method comment, but it was different.
Imagine this: if your void method comes immediately after public:, then /// will create a template with returns element in it. WTF?
The plot thickens: if your method comes after a blank string, then it will only contain summary element but no parameters.
Having become intrigued, I proceeded to experiment with different permutations of methods, access specifiers, return types, and parameters and realized that it is even worse: VS creates a document template for a wrong method!
Microsoft, for fuck's sakes, test your software before you release it, once in a lifetime!
Posted by: LinuxLies at
07:22 AM
| No Comments
| Add Comment
Post contains 153 words, total size 1 kb.
July 05, 2024
Genius is as genius does (usually as degenerate)
Visual Studio... Oh, it is my pet peeve, my penchant. Don't get me started. Oh, I already have. Rant of, to the point.
The property screen of C++ projects in VS corrupts strings that contain spaces in front of the opening round brackets, in the Debugging->Command arguments field. It strips the space away.
I was going balls while debugging an application that takes long file names from its command lines: one file would work but another would fail to open. Only when I went searching for the value in .vsproj and found it in .user instead and character-by-character compared with the true path to the file did I discover the missing space.
Seriously? In the year 2024, a one-trillion dollar global monopoly is incapable of unit-testing their code and QA-testing their flagship product that is used by hundreds of millions, to such degree?
Fuck, we are all going to die, if it's that bad.
Posted by: LinuxLies at
06:28 AM
| No Comments
| Add Comment
Post contains 170 words, total size 1 kb.
July 03, 2024
Bizarre shenanigans of .NET task performance
At some moment in my career I was asked to write a piece of software that performed a relatively long operation on small pieces of data that were aplenty. The whole process was about to take several days.
I approached it from the most straightforward direction: wrote a program in the contemporary C#.NET 4.7.1 that started as many tasks as it had CPU cores. Each task created its own progress bar on a form. They reported their progress through those progress bars. The process scaled linearly.
Now, I am being asked to do the same but with a different but similar data processing algorithm, and things go bananas: the same Visual Studio, the same C#, the same .NET, different main processing class/method, and the performance does not scale at all, period. It divides instead, i.e. it for example gives 10,000 per second single-threaded, 4500 double-threaded, 2000 quad-threaded, etc, per core. Even more bizarre is the observation that 2 separate instances of that program divide their performance even though they do not talk to one another.
Having spent several days trying different approaches, including scheduling the affinity of the tasks' threads, I am at my wits' end. I even tried to wrap a C library that does the same, but it also divides its performance when in SMP mode. The only common thing is the underlying algorithm.
What is peculiar is that the algorithm is very wide-spread. It runs literally everywhere, around the clock, non-stop. So I, a developer with several decades of experience in writing advanced multi-threaded software, is baffled. That is not an easy achievement for .NET or whatnot. Congratulations!
Posted by: LinuxLies at
05:53 AM
| No Comments
| Add Comment
Post contains 283 words, total size 2 kb.
July 02, 2024
Genius degenerates rule our world
MS SQL Server requires that its database MDF and log LDF files not be put in compressed folders. We get it.
But when a perfectly working installation of SQL Server flat out refuses to uninstall because it lives in a compressed folder C:\Program Files\Microsoft SQL Server\ I flip over.
Seriously, dude? You've been told to fuck off, to make yourself scarse, to beat it, and you dare to tell me that you refuse? Just wipe your fucking files off my SSD and begone. No! It has its opinions that it dares to shove into my face.
Needless to say that its removal process is a tedious array of double and triple confirmations of the obvious.
To add insult to injury, once the said directory is uncompressed, to satisfy the bitch, it dares to continue to complain that it is under another compressed directory. The witch just does not want to die. What do we do in such case? We wipe the thing off the face of the Earth, from command line. Let's see what you can do against del and sc, bitch.
Posted by: LinuxLies at
08:22 AM
| No Comments
| Add Comment
Post contains 192 words, total size 1 kb.
32 queries taking 0.0788 seconds, 183 records returned.
Powered by Minx 1.1.6c-pink.