Ask HN: Difference in management styles of Ulrich Drepper and Linus Torvalds
Linus Torvalds stewardship is often cited as critical factor in thriving linux kernel development
Ulrich Drepper is often cited for preventing widespread community contribution to glibc and causing forks such as eglibc.
For casual observer like me it appears both are technically brilliant individuals who have strong opinions and dont suffer fools lightly. What caused linux to thrive ? Was it the organizational heirarchy of having individual maintainers for different components in the linux kernel ?
22 comments
[ 3.0 ms ] story [ 63.1 ms ] threadTorvalds, like Drepper, is often criticized for a less-than-friendly attitude, but it is generally acknowledged that he lets the Linux kernel progress.
However, in these cases there is a vast corpus of emails and comma - it's as if we had a stenographer following Lou Gerstner and Steve Jobs around, so I would be surprised that now you have mentioned it, there is not some academic attempt to quantify answers.
Hell, if anyone fancies a middle aged student for a research thesis I would happily take a run at this :-)
The real lesson should've been that Jobs was brilliant to the point that people bought into his vision enough to put up with his bullshit. He succeeded in spite of his attitude, not because of it.
It also depends on the culture. Some cultures make assholishness less viable. For instance, conferences with a decent code of conduct make physical harassment less viable.
Ulrich was simply antisocial. He just stopped giving a fuck by the end. He yelled at everyone, ignored and bullshitted his way out of valid bug reports and was a detriment. He complained about how maintaining a GNU project is a burden and how he would be quick to leave... back in 2001: http://sourceware.org/ml/libc-announce/2001/msg00000.html. Most likely he stayed for the brownie points at Red Hat and the FOSS community at large.
The way to figure out the difference between the two is to strip out the choice of language and focus on the content of their responses. Drepper, if you strip out the invective, rarely has any content at all. Torvalds' sweary hateposts are often some of his most profound, detailed, and quotable.
Gregkh gives talks about kernel maintenance, here's an excerpt:
https://github.com/gregkh/presentation-linux-maintainer/blob...Simply, Drepper's excuses sucked, he was the problem.
For casual observer like me it appears both are technically brilliant individuals who have strong opinions and dont suffer fools lightly.
Also, perception of Linus' attitude is more smoke than fire. He does suffer fools lightly, it's the people he expects better of or explicitly provoke him that get the angry responses that make LKML show up on social media.
http://youtu.be/-ZRvHbHxr-k
Linus cares deeply about the quality of the kernel, but leaves it to developers to determine its direction. Ulrich had very specific thoughts on the direction of glibc, and screw you if you cared about anything else.
Linus has a large number of trusted submaintainers, and delegated a large amount of trust and judgement over patches to them; Ulrich took everything on himself, and simply rejected patches in areas he didn't care about.
Linus has been known to change his mind, graciously, in the face of convincing argument; he also readily admits being wrong. Ulrich, not so much; if he didn't like your patch, you might as well give up.
While Linus can be unnecessarily awful to people he thinks he can expect better from, there's an undercurrent of doing it to defend kernel quality, and he usually has a point underneath the invective; I also don't think I've ever seen Linus go off on a new developer who's still learning and making reasonable mistakes. Ulrich was awful to everyone, with or without reason, and he was wrong far too often to get away with it.
Finally, for every discussion in which Linus ranted at someone, I've seen several dozen where he gets involved in a complicated technical problem and helps find the solution, or works with someone else to do so; the balance is overwhelmingly positive.
Don't look at either of their abrasive communication styles as worthy of emulation; do better than that. Linus successfully manages Linux despite being occasionally abrasive. Ulrich's abrasiveness just added to his mismanagement, rather than being the sole source of it.
Case closed?
https://bugzilla.redhat.com/show_bug.cgi?id=638477
comment 129 https://bugzilla.redhat.com/show_bug.cgi?id=638477#c129
---
Quite frankly, I find your attitude to be annoying and downright stupid.
How hard can it be to understand the following simple sentence:
Pushing the blame around doesn't help anybody. The only thing that helps is Fedora being helpful, not being obstinate.Also, the fact is, that from a Q&A standpoint, a memcpy() that "just does the right thing" is simply _better_. Quoting standards is just stupid, when there's two simple choices: "it works" or "it doesn't work because bugs happen".
Standards are paper. I use paper to wipe my butt every day. That's how much that paper is worth.
Reality is what matters. When glibc changed memcpy, it created problems. Saying "not my problem" is irresponsible when it hurts users.
And pointing fingers at Adobe and blaming them for creating bad software is _doubly_ irresponsible if you are then not willing to set a higher standard for your own project. And "not my problem" is not a higher standard.
So please just fix it.
The easy and technically nice solution is to just say "we'll alias memcpy to memmove - good software should never notice, and it helps bad software and a known problem".
---
This is why Linus is widely considered a good steward, and Ulrich had to be removed from glibc.
Yes, they both had abrasive mannerisms, yes they sometimes said things that wouldn't pass fortune 500 HR policy.
The difference is: Ulrich seemed to care more about some kind of technical "correct-ness", and anything that didn't fit in his mental model was considered wrong, and nothing else mattered.
Linus deeply cares about the user experience. the kernel has a strict no-regressions policy for this reason. If it used to work before and now it doesn't, this needs to be fixed in the kernel
Like this case, most of the cases where Linus uses salty language comes down to various kernel developers not following this policy, then complaining when their patch doesn't get accepted.
Edited for formatting
Anyway, Ulrich was just wrong about a lot of things. I remember one bug that affected ARM that he tried to close because "ARM is not a real arch." He made a lot of very questionable decisions, like leaving out strlcpy and strlcat. To be fair, there is valuable stuff he did behind the scenes (like ELF TLS support and some of the dynamic linking documentation). But people (reasonably) focus on the negative things, because a negative maintainer can cause huge problems for downstream projects...