Sam says you should read this
This blog was created with the BlogFile software, written by Samuel Levy.

You can find Sam on Google + and LinkedIn.
 

On software communities, "Rock star" programmers, and... Linus

Every few months, Linus Torvalds gets called out for "being an arsehole to newbies", or "having a bad attitude", or "not presenting a friendly face for the software community". It's been a couple of weeks since the last time (damnit, Linus!), so I think it's safe to make this post now without it being seen as a continuation of whatever conversation that was.

Now the issue that I have is that people seem to believe that Linus, and many other well known software developers should censor themselves. They believe that if you are a good developer with some well known projects under your belt, then everyone can hold you accountable for every word you say. I'm sure that Linus actually does self-censor, much of the time, but when he makes an angry comment, he means what he says, and that's fine.

There's a fascination with 'programming celebrities' within the software community that borders on the tabloid press fascination with the happenings of rock stars. Every word they say is mercilessly analysed, and if they say something that implies that they think the world is any less than sun-beams and rain-bows all the time, the tech blogs explode with commentary. They get crucified for having an opinion. On the thing that they do for a living.

Linus isn't the only one who gets slammed for stating controversial opinions; Jeff Attwood, Richard Stallman, and many others frequently have side comments over-analysed. Within the last couple of months, Jeff posted his opinions on the "Learn to code" meme (I, personally, think otherwise, but he's entitled to his opinion); Richard Stallman argued that Facebook is parasitic, and Linus (oh, Linus) had a number of comments that were over-analysed on Hacker News. Note that not everything said is recent, but when someone picks up on the discussion (even years later), the HN front page gets swamped by bloggers heralding their opinion on why X is wrong, or why Y doesn't go far enough.

One of the arguments which gets dragged out every time is that they are role models, and as such should be doing their very best to create a welcoming environment for everyone.

Bullshit.

I, for one, am glad that the people who maintain the kernel for my computer, servers, and phone aren't wasting their time trying to be welcoming and polite, just so that they don't hurt someone's feelings.

I, for one, am glad that the people who maintain the kernel for my computer, servers, and phone have strong opinions on what makes "quality code", and have no qualms in rejecting anything that doesn't measure up.

And I, for one, am glad that the people who maintain the kernel for my computer, servers, and phone can have strong opinions, and defend them.

As a professional programmer, I am paid to make decisions about technology. I am paid to form, and defend opinions. If I couldn't do that, then the majority of what I write would end up as inconsistent junk. Sure, my opinions may change over time, or based on a project, but this is normal and good, so long as I can defend them. As much as I believe that having role models to look up to can help you to learn and grow as a programmer, I believe that these role models should be programmers first, and role models second.

If any of these guys changed their considered opinion on issues just to make the public happy, then that's a sign that they're not doing their job. If they take discussion into account then re-consider their opinion, that's one thing (and quite healthy), but if they change their opinion just to make people happy, then they're ignoring their own training, and short-changing everyone.

People's opinion isn't a democracy. Software communities really have to realise that the fact that these "Rock star" programmers are outspoken is the reason that their opinion is respected. They also have to realise that having different opinions are healthy; obsessing over the "niceness" of one person's opinion is not.

Linus, Jeff, and RMS; never change. If you did, you'd be short-changing us all.

Comments have been locked for this post.
david karapetyan

You can do all that and not be an asshole because having opinions and being able to defend them have nothing to do with being an asshole. I don't understand why you are even confounding those two things. You can say "I disagree with you because of X, Y, and Z." without calling someone an idiot and a retard. If you disagree with a newcomer's stance on things or you think they are just trolling then simply ignore them or be nice and educate them on what's wrong with their stance. Once again having strong opinions has absolutely nothing to do with having a short temper and being an asshole.

 

No one thinks he has to be all sunshine and rainbows all the time. But when he makes comments like he is known to do it shows he is an arrogant prick who clearly thinks he is better than everyone else and his shit doesn't stink.

 
Anonymous

Just because you're good at programming, doesn't give you a license to be a jerk to people.

And just because you're a jerk to people once in awhile (we are all), that shouldn't make people hate you and overlook all the positive things you've done.

 

You posit being a decent human being ("wasting time") and building kernels as if they are mutually exclusive in terms of time and energy. You are also conflating substantive opinion ("Facebook is a virus") with nastiness of the ad hominem variety as Linus is at times prone to employ. You are right that Linus does not owe anybody politeness and to keep up with the cliches, they are entitled to consider him a boor for that.

I am with you on the role model (and related) business. The very term "rock star" is appropriate for modern ubercoders. However, I think you are dead wrong that their opinions are respected or that they are respected because of the style of expression. I respect Stallman's opinion because he takes the trouble to make a convincing argument. The same holds for Linus when he chooses to. OTOH I have no interest or respect for Linus's opinion on the intelligence or other attribute of an individual that he chooses to characterise. Linus is not a king. Insofar as he or anyone has "running code" to offer, it gets respect.

On a personal note: in my time, I have interacted with non-rock-star giants of the field, like Brian Kernighan. If you can take my word for it, I can assure you that they had no problem "wasting their time" and their output was none the worse for it.

 
Orion Blastar

You have to have strong opinions and lose your temper to write good code.

 
Anonymous

You completely missed the point. The problem is not being stubborn or having strong opinions, but being an asshole or stupid in conversations with other developers and the public.

 
Anonymous

Good stuff. If it were otherwise, our software celebrities would be as fucked up as our social celebrities.

 
Anonymous

Travis are you kidding me?

He invented Linux. And git. I think that makes him "better" than pretty much everyone.

 
Samuel Levy

It's this idea that because he's well known, he can't act like a regular person without being attacked for being an arsehole.

I've read pretty much all of the "Linus is a jerk" type posts over the last few years, and in every one he's come off as reasonable, and making a reasoned (if perhaps a little blunt) point.

It's not like he's a jerk for the sake of being a jerk; he's a jerk to people who act like idiots towards him.

 
Anonymous

What makes Torvalds able to do this sort of thing is that is a massive sperglord, but he's really goddamn good at it.
If he weren't I don't think we'd be using the kernel we are today. Or git, or whatever. A side effect of what he is, allows him to do what he does. Like the post expounds on.
And, earnestly, if Torvolds ripped me a new one I'd probably think 'Man, I've made, it.' And then I'd get on with my life, because in the end he's just one asshole on the internet. Just like everyone else.

 
Anonymous

Well if you had some newbies showing up every month or so and suggesting you should rewrite the project you have maintained for 10 or more years in C++... i would explain my position first 3 times but then just say to go fcuk themselves.

 

I agree, and then I don't.

You can't choose whether to become an icon or not, but you can decide if you care.

Neither choice is wrong: you are entitled to free will and speech, and it's entirely your choice whether you censor yourself to set an example or not.

Also, I think we have great programmers in the community, people to look up to as coders. They already are role models. We just don't have to look up to them as

 
Anonymous

Yeah, "time" and "polite" are far from being opposite.

You don't like polite, excellent: You're an idiot.

 

"he's a jerk to people who act like idiots towards him."

This is an unfortunate perspective. No one (no matter what they write) earns the right to be a prick. To believe that the options are:

a) be a dick
b) censor yourself

is short-sighted. I'll take a strong developer with an understanding of skillful communication over a strong developer who is an asshole every day of the week.

Truly senior engineers can make persuasive technical arguments without being an asshole. Being outspoken != being an asshole, and knowing the difference is a matter of maturity.

David Karapetyan's comment is spot-on.

Thankfully, this is a self-adjusting dynamic. Linux isn't popular because Linus is a jerk or isn't a jerk. He only needs to be less of a jerk than any other OS kernel leader.

This doesn't make him any less of a jerk, however, in certain cases.

-j

p.s. No one is ever a 'jerk' or 'not a jerk'. Assholeness exists on a spectrum, and everyone has their hot buttons that get them upset. This blog post appears to reveal that something gets you upset, and I see a lot of bold and italics here, which I read as you feeling passionate about something. Which is excellent!

But I also notice that you don't say anything along the lines of: "...and if you don't like what I say, fuck you, you're a fucking moron." Is this because you censored yourself, or is it because you knew that the message you were wanting to get across would have more value or taken more seriously if you used softer language? Conscious or not, good engineers (or anyone, for that matter) change their tone of voice given the situation: how upset they are, what they have as expectations for their audience, and how they may be perceived in the future due to how they communicate.

So it's not: asshole or not-asshole. It's varying shades and frequency of assholeishness.

Thanks for taking the time to write something that you felt strongly about, without being a dick. I think you're incorrect, but I appreciate the time you spent on getting your point across.

 
Samuel Levy

I think perhaps my intent may have been lost or unclear here, and if it is, I'm sorry. I'm not saying that "software developers should be surly", or "If you're an arsehole it's OK if you're also a genius".

I'm trying to point out that these developers are programmers. Programmers have good days, they have bad days, and they have days where one person keeps emailing them messages about "Why didn't you accept my pull request? I sent you a pull request, why is it not accepted yet? You must think you're the grand high pubar to keep my pull request waiting like this!"

I've never said that I want Linus, or RMS, or anyone else to be mean and un-welcoming; I said that if they are, then there's a damned good chance that they have a reason to be so. But every time they are, it gets taken and blown up into a sensationalist story about how Linus hates anyone who uses C++, or thinks that the Github pull request model is junk, and how, as an influential programmer, he should be more polite and welcoming.

Linus is not an influential programmer because he's a good role model and an all-round nice guy. He's an influential programmer because he's a damned fine programmer. His job is to continue being a damned fine programmer, not to be the welcoming committee to the world of open source software. The day he compromises his opinions on tech just to spare someone's feelings is the day that he stops doing his job properly.

Could he deal with people without calling them idiots? Probably so. In fact, he does deal with very many people every day without calling them idiots. It's actually very rare that he calls someone an idiot, and most of the time it's because the person has been pestering him, but won't listen when he's being polite.

Finally, my point is that it's simply not news when someone influential gets angry, or states a controversial opinion. It's not their job to be polite; if it was, then perhaps you could get a story about them slacking off. The fact that they are human, get frustrated, or have opinions about what's best for the projects that they manage is simply not news.

 

To create something excellent, one must despise what is not, otherwise there will never be motivation enough to chase the last percent.

 

I just read Linus' post and my uneducated point of view is that anyone who disagrees with the form although the content is that much more valuable, is actually missing a lot on content.

Oh and, imho, Linus was really soft on that one (harmful cat).

 

I lol real hard at everyone arguing with OP here. These comments are full of fools.

Here's a tip, guys -- You're all acting like assholes. You're talking shit about how complete strangers (granted "web celebrities") portray themselves on the internet, and I assure you these strangers would probably just tell you to fuck off, if they had to waste air on responding to you.

You can't lecture someone on being polite, laying down your personal beliefs about what "manners" are, riddling the assault with words like "asshole" and "jerk", and not yourself admit that you, too, are being an asshole.

So, to eat my own dogfood, I myself now admit I'm being an asshole in this post, and I kindly ask you over-opinionated turds to STFU until you admit that you, just like Linus, Jeff and RMS (and OP!), sometimes have bad days, too, and just want to pick fights on the internet.

 
Anonymous

Amongst competent coders, Linus actually has a fairly nice-guy reputation.

however, theres a strange irony in all this.

Steve jobs, noted asshole, was also famous for responding to newbie questions about things like "how do I plug in my mac" with helpful and encouraging answers, right up to the bitter end.

I guess its more about intended audience. Linus writes for geeks, Apple writes for the geeks grandmother.

 
Samuel Levy

I'm closing comments because of the massive amounts of spam that is getting posted to this post.