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.'"
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
“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'
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)
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
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.