This is kinda awesome only because lots of people can't tell if it's a joke or not. I'm reasonably confident it is, but the fact that a lot of people can't tell makes it pretty funny. And, the account that posted it is seemingly new enough to programming to maybe have no idea that it's ridiculous. So, it may even be sincere, which is less funny, but still caused me to think about it for a minute.
Also, I admire the handful of people who commented with a sincere explanation about why it's wrong. I don't have that much patience, but I'm happy that people who do exist.
Yeah, I try to look past it, but we really are a bitter and angry community on average; anyone different, anyone less skilled, anyone who can be "othered", is treated with disdain by a lot of our peers.
It never stops being disappointing...though I also understand the feeling that leads to it. Some days I genuinely hate my projects users for being so utterly helpless and having bizarre mental models for how things work. As I've gotten older and, I think, kinder, I try to take a break when I feel like ranting or condescending at a person rather than helping. I don't always succeed, but I wish more people would try.
That's unfortunately true. I found people in research to be much more open-minded than in sw development (at the same time they were always a bit too outgoing for me :)). But not sure if it's much better in most other disciplines. Tech people seem to be pretty honest at least. Compared to the backstabbing and cutthroat cultures and hierarchies in business, law and medicine (there even literally). Elitism can also be found in basically every other field... So well. Perhaps it's just the people
Technical people, myself included, tend to be too arrogant, negative and black-white thinking. I don't associate with anyone whom dumps their emotional/work politics garbage or badmouths things/people/employers/etc.
Yeah, folks are mostly being kind or just continuing the joke in this thread. There's a couple of questionable ones, but nothing too awful. I've seen much worse, including in the Linux kernel community (which is kind of a mixed bag, but in my past experience reasonably nice to newbies).
It's quite funny, but I think (hope) that it's a satirical poke at JS minification...?
(... which, admittedly, would be quite strange now that I think about it. I didn't check, but I assume that there was no variable renaming in the "added line". Hmm... Regardless, I had a good laugh, so it's all good.)
True, but we can just use the subset of machine code that works on all of them.
Us web developers figured this out with JS, when IE supported different methods than WebKit and Mozilla. If we can do it, I’m sure you can assemble something that’s universal as well.
Of course the computer would run terribly - so I hope you're joking there.
A a web-dev analogy, it's like saying we should abandon CSS and use <table>-for-layout because you don't want Internet Explorer 4.0 users to be left out.
In all seriousness - I think you're on to something with a minimal-instruction-set program that only uses operations common to as many ISAs as possible - that way all that needs to be done is reassembly of the program in O(n) time by remapping opcodes to their correct binary representation for a given ISA. I wonder if it might have application for portable binary libraries in industries that love trade-secrets, or something like C--.
I do indent my code, but I very rarely insert syntactically irrelevant spaces. I don't mind if clang-format (etc.) puts them in for me, but I don't add them by pressing keys myself and I don't have a problem reading code that leaves them out (since that code looks just like the code I write myself before I run it through clang-format).
This has long been my habit, since I started out on a computer with 32K RAM, where putting in extra spaces just meant you'd need to use shorter variable names to balance things out.
(Here's a photo of some representative code I wrote for a reddit contest a couple of years ago: http://ffe3.com/pics/.beeb/IMG_1373.JPG - not much different from what I wrote in the early 1990s as a teenager. But I did typically use longer variable names back then, because unlike this case I wasn't concerned about fitting the whole listing on one 40x25 screen...)
Even today, doing this still means fewer L1 cache misses in the scanner.
Surprisingly, I didn't have a hard time reading that. Maybe because I had a good idea of what the context would be before hand... Hmmmm, interesting thought of the day.
Your program had to share memory with the source code, so you didn't waste bytes on spaces! (You also used single character variable names as much as possible and jammed as many statements on a line as possible since the overhead per line was a few bytes.)
As a result I can still read very dense code, but I'm reformed and write code that uses white space to avoid an overly busy screen, suggest coupling in the underlying logic, aligns comments, etc.
I'm fairly sure that there's almost no serious kernel developer answering here. Kernel contributions don't go through github PRs but through mailing lists. The "tough crowd" you see here are trolls - not the actual community, which is inclusive and quite nice to work with.
> And actually most of the C and C++ bugs beside the bad logical implementation which would be a fault of a person who write the code is the problem with not dealocated memory or pointers that point to a wrong part of memory and make programs crashes. In other words buffer overflows and stack smashing which all lead to segfaulting or even worse if they are not properly handled by the operating system like in case of Micro$hit windblows.
Yes, I would hope no kernel contributor ever refers to Micro$hit windblows, or has such atrocious grammar and communication skills. It seems like this guy is trying to explain the C memory model, but doing a terrible job. I would have guessed that most of the commenters are children in high school, but worryingly many seem to be full-grown adults.
This excerpt (above) is from a comment made by a GitHub account that is six years old and who claims to be an 'Experienced Linux System Admin'...
I was going to ask about that, if these were in any way core contributors. I figured most of those serious enough to make helpful commits wouldn't take the bait.
Ah, someone must have mistaken this for the Gentoo repository. This sort of patch should be maintained by downstream distributions where concerns like speed are overriding concerns.
Me, personally? I found that compiling was a lot faster if I ran "rm -rf ." first.
It's almost certainly a joke, but defaulting to treating things you think are a bad idea as if they were jokes is fairly hostile behavior which makes it impossible for controversial issues to be discussed because someone will treat the side they don't support as being so obviously stupid it must be a joke, which can be dismissed without consideration.
v8 used the string length of a function, including comments, to determine whether to inline. HotSpot used (uses?) bytecode length of a method, so adding useless lines would affect performance.
I'm aware of V8, but what I'm thinking of was something worse: JS for embedded devices that apparently interpreted the code on-device without even compiling to bytecode.
Also, I admire the handful of people who commented with a sincere explanation about why it's wrong. I don't have that much patience, but I'm happy that people who do exist.