I would go out of my way to avoid people who communicate like this with me. People put time and energy in making software better, at least in their own eyes, for others and then they get textually abused like this by someone who has his fame to protect himself with.<p>He also does no service to his own arguments by peppering them with childish swearing because things like "So standards are not some kind of holy book that has to be revered. Standards too need to be questioned." can't be said enough to some people in the industry.<p>If his reply were written with more tact and less swearing it would be a lot more powerful. We as an industry should demand this of each other, but also of our 'celebrity' colleagues.
To me, this rant seems more directed at C standards people than the guy he sent it to. That doesn't excuse his vitriol, but I hope people will read between the lines.<p>Sometimes people forget that C was created for writing operating systems. They get in their mind that C is all about high-performance, and that making it competitive with FORTRAN is the way to go. I understand that, but it's not what C was created for. If the world's most famous C programmer and OS guru wants to have strong opinions on the direction of the language, I say allow it.
Notice that after his rant, he still tested the code, and merged it: <a href="https://lkml.org/lkml/2018/6/5/774" rel="nofollow">https://lkml.org/lkml/2018/6/5/774</a>
It's important to bear in mind that Linux isn't written in standard C - it's written in a dialect of C implemented by recent-ish versions of GCC (there is a particular minimum GCC version supported), with certain compiler switches.<p>There's nothing wrong with this - it's an important enough project to be able to make those kinds of demands.
Swearing and profanity is an art form. Habitual swearing is bad style just like habitual use of smileys and LOL's.<p>If Linus would habitually curse in the kernel list, it would have no emphasis effect and it would be a really bad style. Linus using cursing in a rant equals [for wider distribution] and it works perfectly. I can't remember a single discussion linked to HN that didn't start from cursing. It provided the opportunity for people to be offended. For technical people it's a challenge (like a glove slap).<p>Example:<p>* his opinion about hardening: <a href="https://lkml.org/lkml/2017/11/21/356" rel="nofollow">https://lkml.org/lkml/2017/11/21/356</a><p>* previous message that collected the attention: "Those security people are f*cking morons." <a href="https://lkml.org/lkml/2017/11/17/767" rel="nofollow">https://lkml.org/lkml/2017/11/17/767</a>
> <i>The fact is that gcc documents type punning through unions as the "right way". You may disagree with that, but putting some theoretical standards language over the explicit and long-time documentation of the main compiler we use is pure and utter bullshit.</i><p>this was the whole point of the rant.
Linus has done some (okay, lots of) wonderful stuff. However, his attitude here is pretty extreme. Being incredibly rude, then proceeding to merge said pull request. If Linus is willing to merge the PR, then it can't be <i>that</i> bad. Surely there was a more tactful way to approach this, even for Linus.
Linus Torvals says something technical and full of insights while keeping control over emotions - crickets nobody cares.<p>Linus Torvals adds some insults into the above or simple does not even attempts to keep control over his emotional side - half people jump up and down happy like a fourteen years old. Wow, look, he used insult! The other half suddenly turns into prude "I never swear nor insult anyone" Victorian aristocrats - despite having tweet feeds full of, and I am quoting here, "fucks".
Am I the only one understanding that finding funny ways to rant is one of Linus' favourites hobbies? And so that he is not doing that to hurt people, but to entertain? He makes that particularly clear by attending gatherings about pirates' language, etc.
Stop try to change him, because without this humorous spice his release notes would be way too boring.
Come on, this is wonderfully blunt!<p>> In fact, I'll take real toilet paper over standards any day, because at least that way I won't have splinters and ink up my arse.
Google cache: <a href="http://webcache.googleusercontent.com/search?q=cache%3Ahttp%3A%2F%2Fwww.yodaiken.com%2F2018%2F06%2F07%2Ftorvalds-on-aliasing%2F&oq=cache%3Ahttp%3A%2F%2Fwww.yodaiken.com%2F2018%2F06%2F07%2Ftorvalds-on-aliasing%2F&aqs=chrome..69i57j69i58.1183j1j7&sourceid=chrome&ie=UTF-8" rel="nofollow">http://webcache.googleusercontent.com/search?q=cache%3Ahttp%...</a>
How well do they know each other? Is it possible Rafael (the contributor) wasn't as upset by this as an outside observer?<p>Linus is obviously being harsh, his words are also preserved publicly as a part of the contribution. He's arguing against the logical fallacy. Had he not swore: would we discuss this?
I'm in no way offended by Torvalds' typical expletive-laden rants. But they do strike me as a terrible way to communicate.<p>These outbursts seem to happen every few weeks, and have long seized to surprise. IF anything actually bad ever comes up, he has no further escalation available to raise awareness.<p>It also reminds me of these choleric bosses screaming at someone every day: it's almost always a sign that they're insecure, sociopaths, or can't handle their responsibilities.
I never take these "what Linus just said" posts for their face value. To me, it sounds as a half-staged, half-talking-to-buddies, mostly good-natured grudges, for some reason I cannot explain. (That said, I am not contributing to kernel, my very first post to some kernel list got a much worse response for no good reason (not from Linus). It was enough.)<p>But I work in customer support of highly technical products, and I visit various companies very often. By now, I can figure this type of persons from the first communication -- not the ones who does it the way Linus does it (see above), but the real a&^%$%^$les -- owning some inner knowledge unavailable to others, just because they happened to be here from the bigbang and haven't evolved since. Boy, is this "rough but just and truthful" attitude counter-productive to projects! I haven't seen any exception to that yet.
I never really understood why people complain about Linus personality. If you don't like it go somewhere else nobody is forcing you to code for Linux.<p>Fork it and make your own.
Can't say much changed over the years <a href="https://lkml.org/lkml/2003/2/26/158" rel="nofollow">https://lkml.org/lkml/2003/2/26/158</a>
I work with a codebase that implements a sort of OO inheritance in C. It looks like this:<p><pre><code> #define BASE_FIELDS int a; int b; int c;
struct Base {
BASE_FIELDS
};
struct Derived1 {
BASE_FIELDS
int d; int e;
};
struct Derived2 {
BASE_FIELDS
int f; int g;
};
</code></pre>
Then, it has lots of code that accesses Derived objects through a `Base*`, with ->a and so on.<p>Is this against the standard C aliasing rules? If so, how would this need to be rewritten to conform to the standard?
> In fact, I'll take real toilet paper over standards any day, because at least that way I won't have splinters and ink up my arse.<p>So Linus, made my day!
Kind of sad that a person as intelligent as him can get to his age and still not realise that talking to people that way is at best highly ineffective and at worst will make them actively hostile towards you. That's not to mention rude and mean-spirited.
Déjà vu (or "dupe")<p><a href="https://news.ycombinator.com/item?id=17242103" rel="nofollow">https://news.ycombinator.com/item?id=17242103</a>
> In fact, I'll take real toilet paper over standards any day<p>You can print the Standard on the real toilet paper and have the best of both worlds. Read before wipe!
I also wouldn't like being addressed like that and if I was I probably would quit working with him, but he gave a very clear explanation why he became more direct in dealing with people. And unless one lives that same experience in his own shoes it's not easy to make an opinion.
It is people that matter; all software is only made to serve people. One person can be the holder of a solution to an important problem, so that person must be able to express his ideas even when they go against the common wisdom.
I sometimes wonder what the world of computing, or even the world in general, would look like today if Linus Torvalds hadn't existed, or happened to have not gotten into computers.
Doesn't C have something better than that type punning via union to achieve the same effect? I understand Linus reasoning, but still it's an ugly hack.
union wasn't designed for the type punning in the first place. It's just historically used for type punning.<p>For modern compiler, just use memcpy and compiler can optimize away the memcpy and produce the exactly same code.<p>But the kernel developers has some issues on trusting compiler generated code.
When people can't find fault in the technical argument, they start attacking other things like.
> Oh! He is so rude, He insults so much.<p>If you have a better argument to counter his logic, please post that, it would be more useful for everyone involved.
Posting pretty useless comments here is pretty lame.
Here is a slightly more readable version that's not white-on-white, half-pixel-thick text: <a href="https://lkml.org/lkml/2018/6/5/769" rel="nofollow">https://lkml.org/lkml/2018/6/5/769</a>
i really wish a person many software engineers idolize or at least obviously respect and pay attention to, myself being excluded from these camps, didn’t communicate like a child.<p>it’s an embarrassment for the field.
I think we are at the point where someone just needs to put up a Linus swearing email tracker with analytics and shit and stop posting these threads. We have to come to the realization that the discussion on this is:<p>a) useless- doesn't change anything
b) the publicity is affecting the other side more<p>So basically Linus is Trump
<i>raises hand</i> I would love to be able to contribute to the linux kernel one day. But I'm unlikely to ever become part of the community when its leader behaves like this.