Linus on All Sorts of Stuff
Linux Times.Net writes "
Linus Torvalds
tells of some other programming venues than the Linux kernel, predicts a shadowy outcome for GNU/Hurd, gives some advice to anyone wanting to undertake a large software project and updates us on the latest in kernel development in this email interview by Preston St. Pierre. "
Does anyone here even use Hurd? How do you like it?
Interesting point on the HURD. I hadn't thought of it that way before, but I discovered and used Linux in 1994 when I wanted a cheap or free way to learn Unix. I've followed the HURD off an on for the past couple of years because I think it's a neat idea with potential, but it has no immediate use to me besides geek appeal, and there are many other things with better utility and geek appeal to me.
(I still hope the HURD will be something someday.)
A quick search of the web -- or heck, just SourceForge -- will show a plethora of projects that "started small" which have also completely fizzled.
There is nothing wrong with thinking big when starting a project - there are some types of project that simply can't be done on a small scale. Mozilla is pretty damned big, for example, and while it started off with Netscape source code, much of it was discarded. Eclipse is likewise a big project.
The key to doing a big project is you have to really put your nose to the grindstone and work your butt off to get something online in a reasonable timeframe. The biggest problem I see with large scale projects that fail is they get bogged down in minutae, which slows down their release cycles so much that they don't achieve any developer or user attention. We all forget with Firefox 1.0 imminent how the press used to claim that the Mozilla project has failed a few years back because it had taken them a few years from the time Netscape Open Sourced their browser code, to the point where it was usuable. And yet now we're celebrating the release of a world-class Open Source browser.
That's a big project which didn't start off small which is going to be a rousing success. Yes, projects which fail to gain traction because of lofty ideas and infrequent releases to tend to fail in the long run. However, there are an order of magnitude more small projects which similarily fail. The only difference between the two is we tend to hear about the "big" ones, but nobody cares one whit about the tens of thousands of small projects which come and go.
Yaz.
Microkernel architecture is really hard to get right. If you get it right, microkernels are fast and stable, like VM for IBM mainframes and QNX. Both have long, long uptimes, run important systems, and are modified very seldom.
But most architects don't get it right. If you get it wrong, like Mach, no amount of patching will fix it. Because open source development has a "patch" mentality, it's almost impossible to fix fundamental architectural problems in an open source project.
The HURD people finally dumped Mach and went to L4, which is a half-finished academic microkernel. That's not working either.
I'd like to see a high-security microkernel OS in widespread use, but the HURD guys aren't going to deliver it. And we really need one.
Listen,
:-)
I give mad props to RMS for the legal hack of the copyleft, and when the chips are counted he'll probably be given saint-hood by several developing countries, but I don't get the impression it'd be fun to work with him. And at the end of the day (and especially in the middle) that's mostly what you need to get through a large complex project.
I could be wrong, I've never met him. But I've got a short fuse on dogma. To get a thing done, at some point you just have to do it.
On the good side, open source says "less defects because we didn't rush it", but there's that other side that says to ship something shoot the engineer. There's a point to that too.
The revolution will NOT be televised.