Torvalds' Secret Sauce For Linux: Willing To Be Wrong (ieee.org)
An anonymous reader writes: Linux turns 25 this year(!!). To mark the event, IEEE Spectrum has a piece on the history of Linux and why it succeeded where others failed. In an accompanying question and answer with Linus Torvalds, Torvalds explains the combination of youthful chutzpah, openness to other's ideas, and a willingness to unwind technical decisions that he thinks were critical to the OS's development: "I credit the fact that I didn't know what the hell I was setting myself up for for a lot of the success of Linux. [...] The thing about bad technical decisions is that you can always undo them. [...] I'd rather make a decision that turns out to be wrong later than waffle about possible alternatives for too long."
Microsoft, who thinks very clearly and thoroughly over their decisions regarding Windows.
At this very moment, my dad's computer is attempting to download Windows 10 in the background, automatically without asking permission.
He has Dialup internet.
Let that sink in.
Clear and through decisions my ass.
He's managed lead one of the most elaborate software development projects ever undertaken for fifteen years, taking it from a tinker-toy up to one of the most successful of all operating systems. That's pretty impressive. Managers may not produce anything directly of value themselves, but that doesn't mean they are not important for the success of a project.
I used GNU and other free software tools on SunOS several good years before Linux existed. The GNU tools were better in every way than the SunOS ones. Each GNU knockoff of a UNIX tool had many more features. The C compiler was better than the Sun one, and so was the debugger. There were many new applications that I used that didn't exist on SunOS. At some point I was running a system where SunOS was just a kernel, and everything else came from free software. Linux mostly replaced this SunOS kernel by a different kernel - nice, but not a mind-boggling innovation.
Linux was successful because most of his decisions turned out to be right. The guy is a genius.
I'm not sure decision-making is really his big thing. The first reason Linux was successful is that he's a doer, there's plenty of flag-wavers that want to lead other people but who couldn't get a kernel project off the ground if their life depended on it. Linus is more like the first soldier charging, everyone else coming up from behind. Git is another fine example of this, if you know exactly what you want then just do it yourself. You don't wait around for someone else to write it for you. Obviously this is also a bit of luck with timing, but it's still not a common quality.
The second reason is that he managed to let go, so many people when they create something it's their baby and they want to control everything about it. I'm sure he was as opinionated as ever, but he wanted patches and mailing list discussions. That's why he got talked into using the GPL, it would have been easier to just sit in a corner and say I'm working on it, leave me be. And it never would have become more than a little hobby project by a CS student that'd die when he got a job or girlfriend and couldn't commit the time.
The third reason and maybe biggest is that he never started getting into business or politics, I remember him saying something like that he's building the best kernel he can make and if that'd dethrone Windows it'd be a wholly unintentional side effect. Which means that he's not taking guidance from marketing and sales on making an ABI so you can have proprietary blobs so you can increase revenue or go off evangelizing like RMS, to him the kernel is the ends not simply a means to an end.
Also I'm sure he could have become a CxO somewhere if that's what he'd wanted, but he never wanted the suit. Now many engineers don't want that, but a lot of us would do it anyway if it came with a fat paycheck. As far as I know he's not anyone's boss, the only authority he's got is final say on what goes into the Linux kernel tree. And he's always focused on having a vendor-neutral position, you don't get to hire him and tell him what to do next.
The fourth reason is that he managed to delegate, I've seen people stretch themselves thinner and thinner as the project grew and just burned themselves out. It might come naturally to a manager whose main job is delegating anyway, but it's always hard for a person who likes to know the details to accept that you can't be everywhere in every discussion reviewing every line of code. I think trust comes hard to Linus, he's erred on the side of caution and found conservative maintainers that are in it for the long run though he might have lost some good but impatient talent along the way.
He's always come across to me as a very pragmatic kind of smart, I think "street smart" would be undervaluing it but not the kind of academic 150+ IQ kind of smart. Just a fairly straight forward engineer who will dead-end discussions he won't have or arguments he won't accept in a blunt and occassionally rude way. I'm not sure his decisions are the best, but he's pretty good at cutting through the fluff and getting to the core of the issue. I wish I could do that in my job, no one hour meetings to "discuss" things. Give me the 30 second elevator pitch and I'll tell you if it's worth bothering with. Sigh, a man can dream...
Live today, because you never know what tomorrow brings