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

33 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 Anonymous Coward · · Score: 3, Insightful

      Or maybe he's not that brilliant, just a bloody good engineer, but he simply has no tonnes of useless management and marketeers with No Clue pulling him back and forcing him to implement great viral ideas like internet in things or database file system (yes, i am referencing windows future file system) ;)

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

    3. 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
    4. 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:Linus's real talent: by Zontar+The+Mindless · · Score: 3, Informative

    Linux kernel development needs people who are capable, period.

    And you seem to forget who Linus is married to.

    --
    Il n'y a pas de Planet B.
  5. Re:Willing to be wrong, maybe... by WarJolt · · Score: 3, Interesting

    Let's talk about kernels.

    The number of Linux kernel currently running on mobile dwarfs XNU. Windows 7 dominates Desktop. Apple does better on Desktop than Linux, but this is becoming less relevant.

    Linux also dominates the cloud.

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

    systemd is a distro decision, not a kernel decision.

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

  8. Re: Linus's real talent: by Zontar+The+Mindless · · Score: 3, Insightful

    It's so damned hard to tell these days--especially with Americans, who seem increasingly prone to take any criticism of their work as a personal attack.

    (I'm originally from America, so yes, I'm allowed to say that.)

    --
    Il n'y a pas de Planet B.
  9. 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.

  10. 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?

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

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

  13. Re:Linus filled a void by hcs_$reboot · · Score: 3, Interesting

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

    --
    Slashdot, fix the reply notifications... You won't get away with it...
  14. 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*
  15. 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.

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

  17. Re:systemd by Hognoxious · · Score: 3, Interesting

    NetworkMangler is his too? That completely changes my opinion of him. I used to think he was a hack-and-hope chancer who chucks things over the wall when they're barely half finished.

    Now I know it for sure.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  18. 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.

  19. 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.
  20. Re:systemd by jez9999 · · Score: 4, Insightful

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

  21. Re:Willing to be wrong, maybe... by shawn2772 · · Score: 3, Interesting

    Licencing.

    I agree that Linux' success is mostly about licensing, and I think the GPL did play a positive role, but I don't think it's as big as you say. At the time when Linux emerged and started building up steam, BSD existed but wasn't a viable alternative because it wasn't clear who owned it or how it could be legally used. Linux had an overwhelming advantage because its licensing situation was clear.

    BSD was eventually freed by the courts in 1994, but by then Linux had already grown an ecosystem of distributions, with lots of great new ideas about how to package, deliver and support software. Some of those ideas were a direct outgrowth of the GPL philosophy, and the GPL on the kernel and the GNU tools helped to set the expectation that virtually everything should be open, so I don't want to understate the GPL's contribution, but I think that BSD could have been in roughly the place that Linux is, if it had actually been available for use and distribution three years earlier. I think we're better off with Linux and the GPL than we would have been with BSD and its license, but BSD could have worked almost as well.

  22. Re:Willing to be wrong, maybe... by Ol+Olsoc · · Score: 3, Informative

    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.

    Nope... It does not sink in. Dialup internet went extinct long before Windows 10 was even conceived.

    You are quite wrong.

    http://time.com/3856066/aol-ve...

    2.1 million people in America using dialup as of last May.

    --
    The shepherds did so well protecting the flock that the sheep no longer believed that wolves existed.
  23. 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.

  24. Re:Willing to be wrong, maybe... by shawn2772 · · Score: 3, Interesting

    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.

    Heh. OTOH, my father in law used a Debian box for years (I set it up for him, after maintaining Windows for him proved to be a Sisyphean task), and I had a similar nightmare trying to keep it updated. I wrote a script that dialed in every night at 1 AM and downloaded for six hours, then disconnected. That clearly didn't work because every now and then a package update came down that was bigger than what could be downloaded in six hours, and completely choked the process. So then I set up a complicated system that got a list of packages needed from the box at his house, sent it to a server I had, which downloaded the packages there, then his box rsynced them. That worked better because if a download didn't complete one night, rsync would resume it the next. That system worked for a while, though the box might go for a few weeks downloading before it had a complete set of updates and could apply them. But eventually the volume of updates grew to the point that it basically never caught up. So, every now and then I downloaded the outstanding packages to a USB stick and took them up to his house.

    When I got tired of that, I convinced my wife and her siblings that we should all go in together and buy him a year of broadband (a 5mbit WiMax service). Predictably, when the pre-paid year was up he happily took over paying for the broadband service himself. It cost 3X as much as his dialup had, but was dramatically more useful.

    There's a fundamental problem here, and it's not the decision by Windows 10 to download updates automatically. The problem is that modern systems are too big to keep patched over dialup, and, frankly, the Internet is no longer very useful over dialup. Now, I'd hope that Windows 10 offers you an alternative way to deliver updates to it, but the real solution is to get something better than dialup. To be clear, not updating is *not* a viable alternative.

  25. Re:systemd by tom229 · · Score: 3, Funny

    Systemd is a program. It's the first program the kernel calls after it's done it's work. There are several programs available that do the work of systemd. How could Linus (a single Sr developer on a world wide project) enforce anyone's choice of program through the kernel? Sheer will?

    Virtually all distribution maintainers, from institutional to consumer grade, have moved their supported init system to systemd. There's nothing stopping you from using initd or upstart if that's your preference, but you'd better get used to writing startup scripts.

    --
    If it ain't broke, don't fix it.
  26. 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?
  27. Re:systemd by mattventura · · Score: 3, Informative

    For simple wifi stuff, wicd is a nice lightweight solution.

    The most ironic part of the whole thing is that the problems described here as justification for systemd's awful interface naming are all things that should be taken care of by a higher level tool such as network-manager.

  28. Re:Linus filled a void by tnk1 · · Score: 3, Insightful

    Well... it's many factors. What is more rare? Talent or opportunity? What is more applicable at the time? And is that level of talent impossible to find in another human?

    My guess is opportunity is by far, the more rare commodity. Linus was no slouch, but I doubt that he is the Einstein of programming. What he had was the necessary talent at the right time and the willingness to use it.

    Make no mistake, the opportunity required someone like Linus, I certainly couldn't have done it, but I think that there are more people like him out there than there are opportunities for someone like him to make a difference.

    Of course, this is not "luck". Linus had to have built up skills and the right attitude to take advantage of this opportunity. There is no way this could have descended upon him like a lottery win from a single lucky ticket.

    However, if he'd been hit by a bus, there would probably still be something like Linux out there eventually. I mean, it was a logical next step when you had everything for GNU but a kernel, right?

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