Free Republic
Browse · Search
General/Chat
Topics · Post Article

Skip to comments.

How bad a boss is Linus Torvalds?
ComputerWorld ^ | 11 November 2015 | Steven J. Vaughan-Nichols

Posted on 11/12/2015 6:43:40 AM PST by ShadowAce

click here to read article


Navigation: use the links below to view more comments.
first previous 1-2021-37 last
To: ShadowAce

I’m not an expert on Linux by any means. I’m not an operating systems guy.

It does seem to me that any code that’s the product of a team tends to become quite bloated.

The object-oriented paradigm is mostly an infrastructure for managing large-group development efforts. That comes at a cost, but that cost is more than justified by the usefulness of the resulting product.


21 posted on 11/12/2015 7:56:52 AM PST by Steely Tom (Vote GOP: A Slower Handbasket)
[ Post Reply | Private Reply | To 19 | View Replies]

To: ShadowAce

I read the linked email in which Linus tore into the developer. All I can say is I hope Linus’ code is better than his grammar. :-)


22 posted on 11/12/2015 8:22:07 AM PST by KevinB (Barack Obama: Our first black, gay, Kenyan, Socialist, Muslim president!)
[ Post Reply | Private Reply | To 1 | View Replies]

To: KevinB

Well, Linus s a naturalized citizen, having grown up in Finland.


23 posted on 11/12/2015 8:35:54 AM PST by ShadowAce (Linux - The Ultimate Windows Service Pack)
[ Post Reply | Private Reply | To 22 | View Replies]

To: Moltke
"a bastion of male dominance where women are subjected to scorn and disrespect is a problem"

LOL. As if these geeks even have a chance of getting within 10 feet of a female...

Right. The other guys have almost zero chance of getting laid from any female developer. So why would they have any motivation to treat them any better from how they treat a guy?

Linux development is distributed around the world. Most of these people would never see each other, except perhaps at occasional conferences. They know each other as email addresses.

The women who write crappy code are being treated with the same contempt that a guy who couldn't do his job would be. And their little princess egos can't handle that.

24 posted on 11/12/2015 9:10:58 AM PST by PapaBear3625 (Big government is attractive to those who think that THEY will be in control of it.)
[ Post Reply | Private Reply | To 11 | View Replies]

To: Steely Tom

I'm not a big fan of "goto" statements either. But they do serve a purpose, and I'll give them a pass when used to fill the "abort on failure" situation. That being said, "do {} while(0);" with an error code set and a "break" on failure is, IMHO, more structured and readable than a "goto". I call it my "breakable IF statement".


25 posted on 11/12/2015 9:27:51 AM PST by so_real ( "The Congress of the United States recommends and approves the Holy Bible for use in all schools.")
[ Post Reply | Private Reply | To 7 | View Replies]

To: glorgau

make themselves the only ones that can maintain the code

Ditto. Every line should be written with the intention of handing it off to a less skilled underling ... because some day that is exactly what is going to happen. We all started on the bottom rung at some point in our skills building.


26 posted on 11/12/2015 9:30:49 AM PST by so_real ( "The Congress of the United States recommends and approves the Holy Bible for use in all schools.")
[ Post Reply | Private Reply | To 14 | View Replies]

To: PapaBear3625
The women who write crappy code are being treated with the same contempt that a guy who couldn't do his job would be. And their little princess egos can't handle that.

That's pretty much it in a nutshell.

27 posted on 11/12/2015 9:36:45 AM PST by zeugma (Teach your child a love for motorcycles, and he'll never have money for drugs.)
[ Post Reply | Private Reply | To 24 | View Replies]

To: PapaBear3625
And their little princess egos can't handle that.

I always wondered how people who can't leave the house without "putting their face on" could make the myth of a "fragile male ego," float.

28 posted on 11/12/2015 9:53:34 AM PST by papertyger
[ Post Reply | Private Reply | To 24 | View Replies]

To: glorgau
I agree that the code in question was not that good, and that blunt criticism of it is OK, but he went off the rails with his rant and he certainly did not save time or effort making it. It was a vulgar, juvenile, and unnecessary personal attack.
29 posted on 11/12/2015 12:04:00 PM PST by beef (Who Killed Kennewick Man?)
[ Post Reply | Private Reply | To 14 | View Replies]

To: PapaBear3625

Yeah, I knew it was the wrong thread to make that joke...but I did it anyway. ;-)


30 posted on 11/12/2015 1:58:10 PM PST by Moltke
[ Post Reply | Private Reply | To 24 | View Replies]

To: Steely Tom; ShadowAce
...adding a "goto" to C++ code ...

Actually, the code is 'C', not 'C++' (quoting from the referenced email, the file name is "net/ipv6/ip6_output.c".

That being said, getting gracefully out of a deep dive into a multidimensional 'for' loop is sometimes best achieved with a 'goto'. Seldom, but occasionally. ;)
31 posted on 11/12/2015 2:41:30 PM PST by Montana_Sam (Truth lives.)
[ Post Reply | Private Reply | To 7 | View Replies]

To: ShadowAce

The “goto” is entirely besides the point.

The first point is the tendency of Linus to be blunt.

The second point is the use of whiz-bang compiler features that few understand and which don’t even do what they purport to do (well). The coding equivalent of don’t use a 50 cent word when a good 5 cent word will do the same job and better.

But don’t get bogged down on the “goto”.


32 posted on 11/12/2015 3:07:09 PM PST by 2 Kool 2 Be 4-Gotten
[ Post Reply | Private Reply | To 1 | View Replies]

To: beef
It was a vulgar, juvenile, and unnecessary personal attack.

I found it succinct and direct - But then I'm the kind of anal bastard that appreciates everything direct and 'on the table'... And in high-stress, overloaded environments of any kind (that I have ever been in), such frank communication is exactly what you get. If you don't like the heat, stay out of the kitchen.

33 posted on 11/12/2015 4:05:54 PM PST by roamer_1 (Globalism is just Socialism in a business suit.)
[ Post Reply | Private Reply | To 29 | View Replies]

To: roamer_1
This is succinct?

Christ people. This is just sh*t.

The conflict I get is due to stupid new gcc header file crap. But what
makes me upset is that the crap is for completely bogus reasons.

This is the old code in net/ipv6/ip6_output.c:

mtu -= hlen + sizeof(struct frag_hdr);

and this is the new “improved” code that uses fancy stuff that wants
magical built-in compiler support and has silly wrapper functions for
when it doesn't exist:

if (overflow_usub(mtu, hlen + sizeof(struct frag_hdr), &mtu) ||
mtu <= 7)
goto fail_toobig;

and anybody who thinks that the above is

(a) legible
(b) efficient (even with the magical compiler support)
(c) particularly safe

is just incompetent and out to lunch.

The above code is sh*t, and it generates shit code. It looks bad, and
there's no reason for it.

The code could *easily* have been done with just a single and
understandable conditional, and the compiler would actually have
generated better code, and the code would look better and more
understandable. Why is this not

if (mtu < hlen + sizeof(struct frag_hdr) + 8)
goto fail_toobig;
mtu -= hlen + sizeof(struct frag_hdr);

which is the same number of lines, doesn't use crazy helper functions
that nobody knows what they do, and is much more obvious what it
actually does.

I guarantee that the second more obvious version is easier to read and
understand. Does anybody really want to dispute this?

Really. Give me *one* reason why it was written in that idiotic way
with two different conditionals, and a shiny new nonstandard function
that wants particular compiler support to generate even half-way sane
code, and even then generates worse code? A shiny function that we
have never ever needed anywhere else, and that is just
compiler-masturbation.

And yes, you still could have overflow issues if the whole “hlen +
xyz” expression overflows, but quite frankly, the “overflow_usub()”
code had that too. So if you worry about that, then you damn well
didn't do the right thing to begin with.

So I really see no reason for this kind of complete idiotic crap.

Tell me why. Because I'm not pulling this kind of completely insane
stuff that generates conflicts at rc7 time, and that seems to have
absolutely no reason for being anm idiotic unreadable mess.

The code seems *designed* to use that new “overflow_usub()” code. It
seems to be an excuse to use that function.

And it's a f*cking bad excuse for that braindamage.

I'm sorry, but we don't add idiotic new interfaces like this for
idiotic new code like that.

Yes, yes, if this had stayed inside the network layer I would never
have noticed. But since I *did* notice, I really don't want to pull
this. In fact, I want to make it clear to *everybody* that code like
this is completely unacceptable. Anybody who thinks that code like
this is “safe” and “secure” because it uses fancy overflow detection
functions is so far out to lunch that it's not even funny. All this
kind of crap does is to make the code a unreadable mess with code that
no sane person will ever really understand what it actually does.

Get rid of it. And I don't *ever* want to see that shit again.

Linus

I read through the rest of the thread and a few of the others. Everyone else is calm and polite. I think Linus has an anger issue. I wonder how many qualified developers have been put off because they don't want to work with an immature bully?

34 posted on 11/12/2015 8:01:32 PM PST by beef (Who Killed Kennewick Man?)
[ Post Reply | Private Reply | To 33 | View Replies]

To: beef
This is succinct?

Yes, I think it is - if one takes the repetition for emphasis.

I read through the rest of the thread and a few of the others. Everyone else is calm and polite. I think Linus has an anger issue. I wonder how many qualified developers have been put off because they don't want to work with an immature bully?

LOTS of 'qualified' people can't operate where the rubber meets the road. LOTS. Every collaborative project I have ever been a member of has comparable language behind closed doors, and also has a tyrannical project manager at the lead - and many times that tyrant has been me. Decorum be damned - it's keeping the project in trim and on time that counts. Sometimes that takes being a jerk. Sometimes that takes 'my way or the highway'. It isn't a peaceful, stress-free process. In fact, it will eat your soul, if you let it... Especially a long-term or continuous project. And generally, the lead and his direct lieutenants are the ones that carry that stress, and get it done on budget and on time...

Crybabies go home.

35 posted on 11/13/2015 10:18:18 AM PST by roamer_1 (Globalism is just Socialism in a business suit.)
[ Post Reply | Private Reply | To 34 | View Replies]

To: roamer_1; beef

I agree, even though I am personally offended by anyone using the Lord's name in vain. Still, that is the speech Torvalds used to cut straight through to the core of the problem, and quite effectively so. The programmer will raise his/her game, or get out. Both options benefit the project equally. He has unambiguously directed the course of the project into a win-win scenario. Anything less causes quality to suffer. As a project manager, Torvalds' approach is effective. His personality is exactly the type I would look to find when filling the position he holds.


36 posted on 11/13/2015 12:14:45 PM PST by so_real ( "The Congress of the United States recommends and approves the Holy Bible for use in all schools.")
[ Post Reply | Private Reply | To 35 | View Replies]

To: so_real
As a project manager, Torvalds' approach is effective. His personality is exactly the type I would look to find when filling the position he holds.

Exactly right - Enjoyed and do agree with your whole post. Thanks for your reply.

37 posted on 11/14/2015 12:33:17 AM PST by roamer_1 (Globalism is just Socialism in a business suit.)
[ Post Reply | Private Reply | To 36 | View Replies]


Navigation: use the links below to view more comments.
first previous 1-2021-37 last

Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.

Free Republic
Browse · Search
General/Chat
Topics · Post Article

FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson