Slashdot Mirror


Linus' Lessons On Software Dev Management

Esther Schindler writes "In this interview with Steven Vaughan-Nichols, Linus Torvalds shares hard-won wisdom about managing software development projects, including encouraging community involvement, the importance of programming tools, and ensuring the project stays on track. For instance, regarding getting people to contribute to your project, he says, 'If you start off with some "kumba-ya feeling" where you think people from all the world are going to come together to make a better world by working together on your project, you probably won't be going very far.'"

22 of 132 comments (clear)

  1. Re:Kumba ya? by Theovon · · Score: 2

    Linus said "probably", because this is the fate of a majority of projects. Also, Stallman didn't just put the idea out there and let it sit. He's been working on it and an organization dedicated to it ever since. It's taken a long long time for Free Software to get as 'mainstream' as it is, and in the mean time, we've gotten plenty of variants on the original theme, like 'Open Source' (which at a practical level isn't really any different).

  2. The GPL and Linux rock! by Anonymous Coward · · Score: 2, Interesting

    It's really great, this whole Linux and GNU thing! Even if Linus isn't about kumba-ya, (Although he is, and one day he will rip his disguise off and laugh like a super-villain to reveal a t-shirt with the hammer and sickle. Mark my words, he's a closet commie, right in our midst.) ...whoa that was a long winded parenthesis. What I was going to say, was that the ingenious thing about this whole FOSS thing is that it is a building block of future anarcho-socialist utopia and at the same time the greedy capitalists can not help but contributing, since it is in their shorter term self interest. But the day will come when the people will truly be masters of the world, each and every one and computing will be a significant part of how we will do it.

    Sincerelly,
    Future person.
    ~
    ~
    (Or did I dream it?)

    1. Re:The GPL and Linux rock! by sourcerror · · Score: 2

      dd -n 1000 bread

    2. Re:The GPL and Linux rock! by elsurexiste · · Score: 2

      Sincerelly, Future person. ~ ~ (Or did I dream it?)

      Lemme' guess... you used neutrinos.

      --
      I rarely respond to comments. Also, don't ask for clarifications: a brain and Google are faster, believe me!
    3. Re:The GPL and Linux rock! by WorBlux · · Score: 3, Insightful

      Making social change by actually building alternatives that are more useful and meet the needs on consumers better than existing alternatives. Yes, that's just so evil. Not really, if fact its really the only moral way to create a social change. But actually I think you overestimate the scope of the conspiracy. OSS is a scheme to allow all software developers to own the means of production, and be able to compete and operate without worrying all the anti-competitive and anti-value crap that copyright protection brings with it.

  3. Re:Kumba ya? by mugurel · · Score: 5, Informative

    Torvalds was always more pragmatic than Stallman. And Stallman is getting more out of touch with reality, not having programmed the last 20 years.

    If you're trying to say Stallman is a weirdo, I agree, but there's no need to insult the good man.

    Besides that, you don't know what you're talking about. His last commit (at the time of writing) to the emacs source repository was less than a month ago:

    http://git.savannah.gnu.org/cgit/emacs.git/log/?qt=committer&q=stallman

  4. Re:Kumba ya? by Microlith · · Score: 3, Interesting

    Stallman is getting more out of touch with reality

    How is he out of touch with reality? Really, an explanation would be handy to go with the accusation.

  5. Re:Kumba ya? by miffo.swe · · Score: 5, Insightful

    Stallman is more in touch with reality than most people. Imagine where BSD could have been now without the constant rape and pillaging of it? The reason it flunked is purely because of the license and that nobody ever gives anything back to the BSD community.

    Had Linux been based on the BSD license it would never have taken off like it did.

    --
    HTTP/1.1 400
  6. Fighting Evil by PPH · · Score: 3, Insightful

    If you start off with some "kumba-ya feeling" where you think people from all the world are going to come together to make a better world by working together on your project, you probably won't be going very far.

    A common enemy is always a better motivator than soft fuzzy stuff. The Soviets got us to the moon, bitter divorcees are better in bed than single women, and vi wouldn't be half as good if it wasn't for emacs.

    Thanks, Mr. Gates.

    --
    Have gnu, will travel.
    1. Re:Fighting Evil by H0p313ss · · Score: 4, Interesting

      I once told a microsoft tech rep that the purpose of Linux was to make Windows better.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
  7. Re:Kumba ya? by Kjella · · Score: 3, Interesting

    All credit to RMS for the license and making projects use it, but the projects themselves succeeded because they're run by people like Linus. The GNU Hurd failed and the GCC was upsurped by the EGCS fork and then conveniently renamed back to GCC after the FSF admitted their project was going nowhere. There's really no support for RMS or the FSF being good at running large projects, they implemented a lot of the command line tools and other simple things but their large projects flopped. If I was to take advice on running projects I'd listen to Linus any day.

    That said, I think he's a little bit colored by developing a kernel and running servers where stability is a lot more important than in many other areas. On the desktop it's not that useful if I have a desktop that doesn't do what I want, no matter how stable it is at not doing it. I'm willing to be on the bleeding edge from time to time, as long as there's good communication on just how unstable it is (KDE4, I'm looking at you...)

    --
    Live today, because you never know what tomorrow brings
  8. Re:Kumba ya? by WorBlux · · Score: 2

    I don't know there are plenty of successful projects with a BSD or MIT licence. Nobody could keep up with Linux today in a proprietary sandbox. It's the fastest changing codebase in the world. The type of money required to one entity to out-develop linux would be astronomical. The X windows system is still alive even though historically people have tried to make proprietary spinoffs. Also BSD is far from dead, it just has a lot more of a conservative design philosophy which means it is deployed where long term stability is more important than cutting edge features.

  9. Doing it yourself by MonsterTrimble · · Score: 4, Informative
    FTFA:

    “The first thing is thinking that you can throw things out there and ask people to help,” when it comes to open-source software development, he says. “That's not how it works. You make it public, and then you assume that you'll have to do all the work, and ask people to come up with suggestions of what you should do, not what they should do. Maybe they'll start helping eventually, but you should start off with the assumption that you're going to be the one maintaining it and ready to do all the work.”

    That is probably the most true statement I have ever read with regards to crowd-sourcing. You have to be willing to do it all yourself with input from others.

    --
    I call it 'The Aristocrats'
    1. Re:Doing it yourself by donscarletti · · Score: 2

      If you start off submitting safe bug fixes, generally they will be mainlined quickly and the maintainer will be greatful. If you start off by suggesting large modifications to the functionality or structure of the project, they're going to be rightly skeptical.

      Oh, and if you bother to ask on IRC whether you can be one of the "developers" like you are applying for a job, you're probably going to be met with blank stares.

      --
      When Argumentum ad Hominem falls short, try Argumentum ad Matrem
  10. A stable device driver API would help the users by Anonymous Coward · · Score: 5, Insightful

    Breaking the user experience in order to ‘fix’ something is a totally broken concept; you cannot do it. If you break the user experience, you may feel that you have ‘fixed’ something in the code, but if you fixed it by breaking the user, you just violated that second point; you thought the code was more important than the user. Which is not true.”

    Hmm. So this doesn't count everytime the Kernel APIs change and a bunch of device drivers get broken? IMHO it's the users that get hurt by the lack of stable kernel APIs since the original developers are the only people that have the skills, source and tools to make the fix - if they are still interested.

    1. Re:A stable device driver API would help the users by swillden · · Score: 2

      Breaking the user experience in order to ‘fix’ something is a totally broken concept; you cannot do it. If you break the user experience, you may feel that you have ‘fixed’ something in the code, but if you fixed it by breaking the user, you just violated that second point; you thought the code was more important than the user. Which is not true.”

      Hmm. So this doesn't count everytime the Kernel APIs change and a bunch of device drivers get broken? IMHO it's the users that get hurt by the lack of stable kernel APIs since the original developers are the only people that have the skills, source and tools to make the fix - if they are still interested.

      That's not a contradiction so much as it's a compromise, a concession to the fact that the world is bigger and more complex than we might wish, and to the fact that there are many users with different -- and even competing -- requirements.

      In this case, it's trading off the ability of the code to change as needed to support the needs of all users better against the need of a subset of users for the ABI to remain stable so that specific third-party drivers will continue to work. It's also a way of goading third-party driver makers to open their source and get it put into the mainline kernel source, again to improve the overall usability and flexibility of the kernel.

      Stable and unstable ABIs each have their own problems, problems which ultimately effect users. Linus' position is that a stable ABI is the worse of the two choices, though I'm sure he'd be the first to admit that neither is ideal.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  11. Re:a counterpoint on "no regressions" by WorBlux · · Score: 3, Informative

    IF you do have to break compatibility do it loudly and warn people ahead of time. You don't want people loading up the next point release to all of a sudden find that their config files won't work correctly (I'm looking at you grub2)

  12. Re:Kumba ya? by Anonymous Coward · · Score: 3, Interesting

    Seriously, I got flamed a few weeks back for calling Linus the John Carmack of OSS (which is to say someone who did something revolutionary at one time, but has since mostly been riding reputation, rather than continuing to produce at the same level as in the past.)

    Between the FSF and Linus there's been a continual cycle of breakage in APIs and ABIs across the system that make managing the software yourself without some form of package management and toolchain management basically impossible. Combined with a variety of gotchas in compiler/library options which can make your just updated system incompatible with the previously compiled binaries (rare today, but a common occurance when going from 2.0->2.1->2.2->2.3 series glibc, nevermind gcc 2.8.x->2.95->2.96->3.x->4.x compiler toolchains. Added to the old MAKEDEV->devfs->udev fiasco and you have a mess that's only been overlooked because almost nobody bothers to do it themselves, instead relying on distro maintainers to make sure packages JUST WORK, even when they really don't.

    As someone who has been trying to put together legacy toolchains for the past few weeks to try and see how legacy code works, let me just say it really sucks ass.

  13. Re:Kumba ya? by timeOday · · Score: 4, Insightful
    I think RMS is just expressing his priorities, not being out of touch with reality. Here are three groups to consider:

    1) Money-oriented: Larry Ellison, Bill Gates
    2) Technology-oriented: Linus Torvalds, James Gosling
    3) Socially-oriented: Richard Stallman, and... not many others in this arena

    If you judge people in one group by the values of the other, they seem deficient. Torvalds failed to capitalize on his success. Ellison is a bastard. Stallman's head is in the clouds. But they are at or near the top of their own games.

  14. encouraging community involvement??? by Anonymous Coward · · Score: 2, Informative

    In this interview with Steven Vaughan-Nichols, Linus Torvalds shares hard-won wisdom about managing software development projects, encouraging community involvement

    I spit water onto my screen when I read those last three words. Linus may be a great programmer, but the Linux kernel development community most certainly formed in spite of his attitude toward his own community, not because of it. Patches that make it across his desk are either accepted or rejected, with nary a hint of explanation or rationale either way. He regularly calls people (and their patches, or even their methods) "stupid." Any tool that he doesn't use or didn't design is classified as pointless, or brain-dead, regardless of whether it fits someone else's needs just fine.

    You don't have to very far to see this in action: http://lkml.indiana.edu/hypermail/linux/kernel/1109.2/author.html

    1. Re:encouraging community involvement??? by pinkushun · · Score: 2

      His attitude is decidedly so to make people think twice about their code.

      If you want to take up a core developer, wouldn't you want her/him to be able to make solid, sane decisions using their own brain?

      Real coders don't expect to be spoon-fed. Linus knows this, and so do the rest of us... well most of us.

      Yes his attitude may seem ballsy and rude at most times, but at least he is honest about the process, the code and the people. I'd rather have that than a sneaky cheese making false promises under pretense guise.

  15. Re:Lets prove him wrong! by Jonner · · Score: 3, Informative

    Stallman did that already it is called HURD.

    I hear next year they will finally be able to have text output on the screen.

    Stallman knew that you have to be willing to write the software yourself long before Linus came along. Emacs, GCC, GlibC and various other GNU components didn't magically appear from the community. They were begun and advanced by RMS and other GNU people for years, laying the ground work for Linux's success.

    HURD turned out to be over-ambitious in comparison to those other core components and once Linux came out, the need for it went away. I wonder if GNU/kFreeBSD would have emerged sooner if it hadn't been for Linux. While most of the GNU components were designed in a similar way to the Unix components they replaced, HURD is based on ideas radically different from traditional Unix kernels which still haven't proven themselves practical in general. Linux, on the other hand, was designed very much like traditional Unix kernels, ironically in direct contrast with the Minix one it most directly replaced.