I’ve written and rewritten this post about four times this week, trying to get my thoughts on to the screen in the same way they appear in my head. I’m not having much luck, so I’m just going to blurt it out: Linus was right.
About a week ago Linus told a crowd in Australia “I don’t care about you,” which was dutifully reported by Ars Technica as though it were an on-air vulgarity uttered by the pope. A lot of people held that comment up to the light alongside his record for (ahem) strong language on mailing lists, and wept a little for the future of open source.
I’m not one of those people. I don’t worry about the future of Linux after last week; in fact, if anything, I’m reassured by the event.
Let’s be serious: Who do you want at the helm of a linchpin open-source project like the kernel? A dainty hand-holder who says a contributor’s code is “special in its own way,” or a zealot so focused on the project and its viability that the slightest mistake is going to prompt a royal beating?
Do you really want someone to pat a developer on the head and say, “Let’s see if we can do better next time?” Or should faulty and substandard code be met with a red-hot tongue-lashing and public shaming? Should developers be special little snowflakes? or elite programmers who have to consistently meet standards to contribute? Who do you want writing the code that runs your laptop? or your router? or your server? 😐
I think it’s easy to isolate that one clause — “I don’t care about you” — and paint it in a difficult light. The public likes that: It’s drama, and the press wins a few more clickthroughs as a result. We’ve talked about that.
What’s more important though, was the rest of Linus’ sentence: “I don’t care about you. I care about the technology and the kernel — that’s what’s important to me.”
And that’s the part that reassures me — not just as a humble desktop end-user, either. It’s satisfying to know that the person in charge does it out of passion, and brooks no incompetence. If it trickles down to his contributors as uncaring or indifference, and that somehow bristles them, then they need to find new lines of work.
There’s another reason this little soap opera needs attention, and I’ll say it in brief because I’ve talked it over before: You can’t let the whim (or the whine) of the masses steer your project.
I mentioned this five long years ago under different circumstances but I stand by what I said then, and it applies even more now: You set the terms for your project, and if someone doesn’t like it, they can move on.
Personally I see that in a lot of the way Linus handles kernel development — “This is what we do. Contribute or fork, but don’t waste our time.” This is where the bus is going. Ride with us, or get off and walk. Our itinerary is not open to discussion. If you don’t like it, there’s the code, build your own. Don’t bother us with your mockups and wishlists. Get busy or get lost.
I can’t say it’s the best management style, but I think given the scope — both in technical and geographic terms — it’s probably the best solution. I’ve never managed an open-source project specifically, but there are definitely similar situations where an abrupt and off-putting management style is the best solution.
If you don’t like it, if it damages your sense of self-worth, or if it invalidates your image as a special and unique person capable of attaining your dreams in whatever form and fashion you desire … well, what can I say? Welcome to the real world.