Slashdot Mirror


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."

21 of 273 comments (clear)

  1. He's too modest. by religionofpeas · · Score: 4, Interesting

    I'd rather make a decision that turns out to be wrong later than waffle about possible alternatives for too long

    Linux was successful because most of his decisions turned out to be right. The guy is a genius.

    1. Re:He's too modest. by jcdr · · Score: 4, Interesting

      https://git.kernel.org/cgit/li...
      "This is being written to try to explain why Linux does not have a binary
      kernel interface, nor does it have a stable kernel interface."

    2. Re:He's too modest. by Kjella · · Score: 5, Insightful

      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
    3. Re:He's too modest. by c0d3g33k · · Score: 5, Interesting

      I'd rather make a decision that turns out to be wrong later than waffle about possible alternatives for too long

      Linux was successful because most of his decisions turned out to be right. The guy is a genius.

      QFT, I would actually further argue it is lucky he was right so often as he has shown a complete arrogance and unwillingness to admit when he is wrong despite what he says.

      Nope. Linus is perfectly willing to admit he is wrong when proven so. Don't confuse that with backing down out of politeness to appease and avoid confrontation. He doesn't do that, and thank goodness for that.

      Here's the thing that many people don't understand: Linus places *technical correctness* above all else.

      That is one of the reasons Linux has been successful - he is unwilling to compromise that technical correctness for the sake of politeness, "getting along", appeasement, "business reasons" and the like. That, coupled with the fact that he's a very good engineer and project leader has kept the project on a steady path of constant and *consistent* improvement.

      In the early years of the project, that was really important, IMHO, because Linux wasn't perfect and often inferior to an existing technology. But it was good enough, generally rock solid when it got things right and everyone could count on the fact that it would improve rapidly and consistently without much backsliding, if any. In other words, what Linux was good at, you could count on staying good, and what it wasn't good at *yet*, you could count on getting better in the future.

      Now that I think about it, that sense of future reliability was probably a very important factor in the success of Linux, because it allowed people to lay the foundations for projects and businesses that relied on Linux, and by they time they were ready to go into production, the kernel was solid enough handle the job, usually at a fraction of the cost of existing commercial solutions. In other words, Linux turned out to be a safe bet. So Linux adoption was quite rapid (as soon as it was ready to take on a task, if not slightly before) and steadily increasing. I attribute that in no small part to Linus and the rest of the kernel developers, both because of the 'willingness to be wrong' (which kept the project moving steadily) and the complete unwillingness to let things stay wrong when it was clear they were.

  2. Re:Willing to be wrong, maybe... by Stoutlimb · · Score: 4, Insightful

    If you believe this to be the case, how do you account for the relative success of Linux vs. BSD?

  3. Re:Willing to be wrong, maybe... by ArylAkamov · · Score: 5, Insightful

    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.

  4. Re:systemd by Anonymous Coward · · Score: 4, Informative

    systemd is a distro decision, not a kernel decision.

  5. Re:Willing to be wrong, maybe... by ArylAkamov · · Score: 4, Informative

    I'll admit he is showing signs of developing alzheimer's, (No matter how much I explain, he still thinks "Foxfire" is his operating system) but windows update automatically downloading windows 10 in the background has been repeatedly posted on / and seems to be a pretty common issue:

    http://www.cio.com/article/304...

    http://winsupersite.com/window...

    http://www.howtogeek.com/22855...

      http://www.theguardian.com/tec...

  6. Re:His real secret for success by SuricouRaven · · Score: 5, Insightful

    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.

  7. Re: Linus filled a void by Anonymous Coward · · Score: 4, Interesting

    I don't have to believe anyone, because I was there. I remember running GNU software on AIX and SunOS before Linux existed. I remember exactly how liberating it was, 25 years ago, finally to have a GPL licensed kernel on which the GNU tools were the native userland instead of third party software, and a commercial kernel was no longer needed. What is ancient history to you is vivid memory to me.

    Were you even alive in 1991?

  8. Re:Depression by Bongo · · Score: 4, Insightful

    I'm turning 46, and the "I've accomplished nothing" feeling can eventually go away. The sunrise doesn't care whether you've achieved anything.

  9. Re:His real secret for success by guestapoo · · Score: 4, Insightful

    It was a success because people far more talented than he was were willing to support an idea

    How he earned this support? By luck?

    a fucking tool for acting like a CEO

    What the... with this statement. This man may (of course) not invent everything, he is of course not the most talented, but he definitely know stuffs he put in the kernel, and know how to do this very good (many of Slashdot users seem to agree that such "ruthless" Linus to be, is the reason why Linux is successful). If he such a tool, unlike a company, some other "more talented" people just fork the kernel and many other talents will follow the new ones.

    and attempting to take all the credit for the millions of man-hours of work donated by other people.

    You could track who has contributed to Linux kernel. How Linus "attempts to take all credits".

    Unlike CEOs, who "invented" X, "designed" Y, and no one knows who the fuck actually done for them.

  10. Re: Linus filled a void by Sique · · Score: 5, Informative
    The fact, that no seller of the tool chain claimed any ownership of the items generated, or limited the usage of the tools in any way, no seat licenses, no restriction of the field of usage, no restriction in the way they were used, expanded or replaced.

    In the late 1970ies and early 1980ies, especially the University of Berkeley in California (UCB) added a lot of valuable tools to UNIX, which on many commercial Unixes were installed in /usr/ucb. They even started to reimplement Unix from scratch and created their own distribution of a UNIX kernel and a userland, called the Berkeley Software Distribution (BSD). AT&T, which acquired Bell Labs, the owner of the original UNIX source code at the time, tried to claim ownership on everything that was added to UNIX with the argument, that all the programs and extensions were derivative works of the UNIX source code.

    To avoid a similar disaster, Richard M. Stallman tried to start from scratch, creating a complete UNIX environment which was not tainted by any proprietary code, and also invented a licence that guaranteed that it remained so for all eternity.

    --
    .sig: Sique *sigh*
  11. Re: Linus filled a void by red+crab · · Score: 4, Insightful

    Just out of curiosity what exactly made the GNU tools so liberating in comparison to the proprietary implementations ? I can't imagine the tools being as feature filled or stable as they are now, so was it price (compilers) ?

    I can vouch about how usable my HP-UX, SunOS and AIX workstations became after I installed the GNOME desktop , bash and openssh and a bunch of GNU packages on those. This as 12 years ago. There were/are official vendor repositories for GNU software. So yes, I second the AC, GNU without Linux is still liberating.

  12. Re: Linus filled a void by urdak · · Score: 5, Insightful

    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.

  13. Re:Willing to be wrong, maybe... by Richard_at_work · · Score: 5, Informative

    At the time of Linux's gestation, BSD was under a legal cloud because of licensing issues with AT&T - a nice quote from Linus is "If 386BSD had been available when I started on Linux, Linux would probably never had happened", and 386BSD was only not available because of the ongoing legal cases.

  14. Re: Linus filled a void by serviscope_minor · · Score: 5, Informative

    Each GNU knockoff of a UNIX tool had many more features.

    Yeah, but they were missing features too, like for example that feature where sedcore dumps when you give it a "long line": GNU sed lacks that feature. Ans so on.

    Facetiousness aside, the GNU tools didn't just have more and richer features, they were much, much better implemented and even the core feature set was more solid, more reliable and often substantially faster.

    I remember in the 90s having to work on a mishmash of SunOS (was it SunOS or Solwaris then?), IRIX, HP-SUX, AIX, Digital UNIX and maybe one other that time has removed from my memory.

    First order of the day was always to install the GNU tools because oh my god the system tools were bad on those platforms. Slow, features ossified from two decades before, arbitrary length limits, terrible error messages. Yuck!

    Shit, many of the machines didn't even have a shell with tab-completion installed, and certainly not installed by default. The next thing was then to install a version of vi which didn't stink. Back then I used elvis.

    Back then GCC was not a 100% clear winner. In terms of engineering it was a better compiler. Much less frequent coredumps, more solid and so on. Problem was it didn't have a great optimizer then and frequently the otherwise worse system compilers produced substantially faster code. GCC is now top notch.

    One thing though, GCC has only just caught up to the late 90s ear HP-UX compiler in that the C++ compiler then would offer a list of "near matches" for when an identifier doesn't exist, something GCC only has in a pre-release version.

    --
    SJW n. One who posts facts.
  15. Re:systemd by jez9999 · · Score: 4, Insightful

    What's your alternative to NetworkManager? Manually configure every WiFi connection?

  16. Re:Linus filled a void by c0d3g33k · · Score: 4, Insightful

    Linus was incredibly lucky to be in the right place at the right time.

    How many men could have been at the same place and time, and simply fail the job? (True for Linus Torvalds, also Bill Gates, etc...)

    This.

    I used to think the "right place at the right time" argument had some merit. It's probably still true a little bit, but only as an opportunity for Linus. It was when I saw how rapidly git was developed and became reliable and usable that I realized it was no fluke. Either Linus was incredibly lucky to be in the right place at the right time *twice*, or the "luck" argument is nonsense.

  17. Re: Linus filled a void by Penguinisto · · Score: 4, Informative

    Sure but I'm asking about GNU userland on commercial Unixes not Linux on your 386/486 at home :D.

    I can answer that with one word: Consistency. The behavior and feature set of a given GNU binary on an AIX box was the same as behavior and feature set that it exhibited on a SunOS box, which in turn gave you the same behavior and feature set on HPUX, BDS, whatever...

    You just didn't get that kind of comfy feeling when hopping between OS types and using each vendor's proprietary implementations of a given binary (by function).

    --
    Quo usque tandem abutere, Nimbus, patientia nostra?
  18. Re:Depression by fahrbot-bot · · Score: 4, Insightful

    I'm turning 46, and the "I've accomplished nothing" feeling can eventually go away. The sunrise doesn't care whether you've achieved anything.

    I'm 52. I was in a great relationship with a wonderful woman for 20.5 years. We hugged, kissed and said "I Love You" every day, went almost everywhere together and held hands where ever we went. She died in January 2006 of a brain tumor, just seven weeks after diagnosis. I was strong for her. I was holding her when she died. I heard her last breath, felt her last heartbeat. She was never alone or in any pain. I kept all my promises to her.

    I've accomplished everything that really matters. The feeling I have now, when I'm alone at every sunrise, is something else entirely and I'm not sure it will ever go away... Just thought I'd throw that out there for some perspective.

    Remember Sue...

    --
    It must have been something you assimilated. . . .