Cox on Torvalds and Linux Kernel Development 323
sebFlyte writes "Alan Cox' speech at FOSDEM sounds like it was interesting... according to this ZDNet report on it he has some interesting views. For one, he says: 'Linus is a good developer, but is a terrible engineer.' He also has a few digs at Torvald's methods surrounding security fixes, and some other interesting insights in the kernel development process: 'Sometimes you see a fix and think "this is perfect, move my fix into the kernel tree." Later you think, "I must have been drunk. Don't apply that patch."'"
Also for your perusal (Score:5, Informative)
Re:Also for your perusal (Score:5, Interesting)
The most interesting part to me is that he uses a Mac running Linux now. For a long time the story was that he ran SuSE (I'm assuming on x86). I'm a SuSE user, and some of the enthusiasts in SuSE-land used to use this as proof of why SuSE was "the best". I just laughed. I wonder what distro he runs now.
Re:Also for your perusal (Score:3, Insightful)
torvalds@ppc970.osdl.org
Linux 2.6.11-rc5
The 'ppc970' has been there for a while now. I assume this is his PowerPC machine, which would indicate he's been running a Mac for some time.
Re:Also for your perusal (Score:3, Informative)
Re:Also for your perusal (Score:5, Funny)
Hurd?
Re:Also for your perusal (Score:3, Interesting)
Microsoft did something similar with Windows NT: The x86 version was only first compiled much later in the development process. The devs all used PPC, MIPS, or Alpha machines to do their development work.
Re:Also for your perusal (Score:3, Informative)
Re:Also for your perusal (Score:3, Informative)
One arch, PPC or x86, makes no difference, need 2+ (Score:3, Insightful)
No, using only a PPC does not really help you write portable code. It is pretty much the same as using only an x86. To write portable code you have to use more than one architecture during development. If you write on PPC and wait for x86 users to fi
Re:Also for your perusal (Score:3, Interesting)
It's kind of amusing: he doesn't really get involved with the PPC arch, and continues to work on the x86 arch, just because he knows a lot of the low-level x86 stuff from before and hasn't bothered to learn the low-level PPC stuff.
Re:Also for your perusal (Score:5, Insightful)
Re:Also for your perusal (Score:3, Interesting)
Seeing as GNU is mentioned zero times in the article, they probably cut it off to avoid having to explain to people what GNU was. Even though it is in Linux magazine I guess some readers may not know what GNU is, and a discussion of GNU is probably (depends on how you look at it) irrelevant to an interview with Linus Torvalds about kernel development.
the BSD TCP/IP was exploited by MS (Score:5, Informative)
What about the ones that are not released under GPL, like *BSD?
The BSD TCP/IP network stack was openly "pirated" by Microsoft, if by "pirated" one means "used while drowning in hypocracy by decrying the very free movement one is exploiting," which is really the only definition of "piracy" I can imagine would apply to using a Free product in compliance with its license. I suspect that is what the original poster meant.
I wouldn't have chosen the word "pirate" as it implies copyright violation, which is clearly not the case if you're adhering to a license. "Exploited" would have been more appropriate.
Microsoft openly exploited the BSD TCP/IP network stack because of the liberal BSD license, something the authors of FreeBSD have absolutely no problem with, and in fact encourage. As to whether this is strategicly wise of them or not, well, that is a flamefest reserved for typical GPL/BSD arguments. I personally think the GPL is what has made Linux viable and protected it against many of the worst depridations by Microsoft...though of course it won't hold up to a patent assault once Bill Gates finishes ramming software patents down the Europeans' throats (one may speculate on which appendage Mr. Gates is using to do the ramming), but as Apple, OpenBSD, FreeBSD, ogg-vorbis, and numerous other projects have shown, the BSD license has its strengths as well, and can be quite ideal for other projects.
Re:the BSD TCP/IP was exploited by MS (Score:3, Informative)
Odd (Score:4, Insightful)
I'm willing to be if such things continue, some entity, perhaps IBM, will set down their foot and use pressure put maintenance of the kernel project under the jackboot of a truly dictatorial manager, making Linux more an open source Cathedral than a bazaar.
Re:Odd (Score:2, Insightful)
Anyone want to guess which branch would be more popular?
Re:Odd (Score:5, Insightful)
For the geeks... Linus, for the companies with money... IBM
The money trail will probably end up deciding the winner.
Re:Odd (Score:5, Insightful)
Alan Cox is not showing disrespect to Linus here, read the whole quote:
"Linus is a good developer, but is a terrible engineer," said Cox. "I'm sure he would agree with that."
Alan and Linus have been working together for a very long time, so I'm sure Linus wouldn't give this statement a second thought. Each must know they compliment the other and make the whole of the Linux kernel better - even if they have the odd disagreement - or the kernel would have been truly forked (no pun intended) a long time ago. As it is, they work together on patches and ideas. We don't have much to worry about, I think, since Linus' sense of who's a good dev and who fits into his team well is uncanny.
Soko
Re:Odd (Score:5, Informative)
Regards,
Steve
Re:Odd (Score:3, Informative)
I don't think being called a "terrible engineer" is a compliment. Def: 1. An expression of praise, admiration, or congratulation. Versus a complement: 1c. Either of two parts that complete the whole or mutually complete each other.
Kjella
compliment is ying and yang (Score:4, Interesting)
They balance one another because they are different or compliment each other. THis is different from the compliment that sings the praise of someone else.
Re:Odd (Score:2)
Re:Odd (Score:5, Insightful)
Re:Odd (Score:4, Insightful)
these folks flame and flame well. Similar fireworks seem to be an important hallmark of a healthy project.
You are speaking, in ignorance, from the wrong orifice.
Re:Odd (Score:3, Insightful)
First, this same shit occurs in any major corporation. Always has, and always will. Most of the development teams that I have been on, routinely have issues like this.
2'nd, no corporation controls this. Not one of the companies out there will be jackbooting anybody. They may underfund (fire) a developer for inability to do what they want (there have been some great examples of this, but no sense dragging up shit). None of these companies have any direct say in what happens. As it is, they have to pretty m
Re:Odd (Score:3, Funny)
Re:Odd (Score:3, Insightful)
Not IBM if I'm right that IBM "gets it".
It's funny how petty squabbles between key developers could tear even what is now a major, corporation-funded project apart that millions of machines and companies depend on.
Balderdash. Some people enjoy a good argument. The louder the better.
Of course it's fun to ima
Think selection, not direction. (Score:5, Interesting)
He can direct some developers to do something and they can tell him to take a hike, or they can do it because they think it's a good idea.
More often, though, there are just many ideas (patches, development threads, what have you) to choose from and Linus "rules" by choosing which goes into his kernel.
The cathedral is about direction. That isn't what Linus does -- he just selects what is best from what the bazaar has produced.
(Sure, he may also make suggestions and remarks that indicate what his selection criteria are, and that may in turn influence kernel developers, but that doesn't prevent someone from coming up with an even better idea that Linus hadn't considered before and changing Linus's mind. That doesn't happen in a cathedral -- do you think some workmen with a brilliant but different idea for St. Paul's would have been paid attention to by Christopher Wren?)
Christopher Wren and the Cathedral/Bazaar (Score:5, Interesting)
Actually, the design of St Paul's and the surrounding area was the result of a complex interplay between Wren, the king, the church and the people:
Wren -- wanted to create baroque-style city center
King -- wanted to save money
Church -- gothic all the way, baybee
People -- wanted convenience and dense business development
In the end, the group that came closest to getting what they wanted was the people; that's why London has no great big boulevards like those of Paris (the people valued lots of living space above ease of riot control). Wren, the man with the 'brilliant but different idea' used the King's negotiating weight to slip change after change past the Church, but he couldn't change the design completely which is why it's a hybrid gothic/baroque.
Thus the design evolved by consensus, negotiation, and balancing bright ideas against established needs. Incidentally, I never used to like St. Paul's, but now that they have cleaned it all up and redeveloped the area north of it with some excellent postmodern work, it's looking really good. Weather still bad though.
Going back to the subject of software, I really don't think this whole Cathedral/Bazaar analogy was well chosen in the first place (especially as gothic cathedrals were striking examples of community efforts, as has been pointed out elsewhere). Major projects and projects that depend on a central authority can be developed in just as fluid a way as small, distributed ones -- if you have the right people. If you don't have people like Wren and the King, if you don't have people who change their minds when they find a brilliant idea, there can be problems.
Re:Odd-You thought you understood open source? (Score:2, Interesting)
Linus is authoritarian? (Score:3, Insightful)
Re:Linus is authoritarian? (Score:2, Informative)
Re:Linus is authoritarian? (Score:5, Informative)
Uh, not really - Andrew Morton is the official maintainer of the 2.6 kernel, and Marcelo Tosatti is the maintainer for 2.4.
Re:Linus is authoritarian? (Score:3, Informative)
That was going to be the direction, but they changed their mind. Linus is still the final guy for mainline, and Andrew maintains the -mm patchset of things that are being groomed for inclusion into mainline.
All the kernel.org 2.6 releases come from Linus' tree.
Re:Bare with me? (Score:3, Funny)
Re:Bare with me? (Score:2)
Obligatory Peanuts reference... (Score:5, Funny)
Interesting take on Linus (Score:5, Insightful)
"Linus has this bad habit of fixing security holes quietly," said Cox. "This is a bad idea as some people read all the kernel patches to find the security holes."
I wouldn't advertise my mistakes eitherThe article paints Linus as the typical Flawed Hero of contemporary literature. He's good and yet he's not perfect - at least that's what comes out of it for me. (and no digs on BitKeeper .. hmmm..)
Re:Interesting take on Linus (Score:3, Interesting)
Re:Interesting take on Linus (Score:2)
Anything since about 1630 can reasonably be called "contemporary."
Re:Interesting take on Linus (Score:2, Funny)
I was going to mention Sophocles, but then I re-read your word sympathetic.
Re:Interesting take on Linus (Score:2)
I am sympathetic to those who can't stand history courses (I often include myself in that category), but every once and a while, those who complain that we are perilously ignorant of our own history are on the mark. An author who has not studied the Greek plays is like a coder who has not studied data structures: you're liable to repeat time-honored mistakes without even
Re:Interesting take on Linus (Score:2)
Maybe in this case, the Flawed Hero comes from the geek tragedy?
Linus' Security Practice (Score:5, Informative)
Even if Linus tries to keep these things secret, they'll get out quite quickly.
Re:Linus' Security Practice (Score:4, Informative)
Re:Linus' Security Practice (Score:2)
Re:Linus' Security Practice (Score:2)
ZD states.. (Score:5, Insightful)
Its actually pretty damned nice to see a bunch of people get together and make something as big as the Linux Kernel. Linus started it, but we all will finish it.
Still, I fail to see how some bugs would be super-bad, as the article seems to say. Id rather have a crash bug, rather than a SUID change bug.. STill, not all security comes from the Kernel. Some security comes from network filter drivers, some com from the application, which many hackers target, and whatnot. Though, the kernel is a great place to attack if you have that guest acct and "want" root
Re:ZD states.. (Score:5, Interesting)
Gandhi had his moments of pettiness and just plain tom-foolishness, but the sum of his efforts changed the way people gain power back from those who would usurp it for their own.
In a different, yet no less trivial way, so did Linus (although I would not call him Mahatma).
Re:ZD states.. (Score:2)
Why? IMHO "Mahatma Torvalds" sounds a lot better than "Linus Gandhi"...
Re:Care to elaborate? (Score:3, Informative)
Re:ZD states.. (Score:2)
nothing new (Score:5, Insightful)
different people have different working styles, no matter whether it's kernel coding, software apps, or ASIC designs. if either group/individuals are too giving to the other group, there can never be enough feedback/ constructive critisisms between them. having yes-men surrounding you isnt the best thing. and it's not like that they're arguing so much they've halted any soft of development progress.
[offtopic]
gives me an idea though, maybe when job interviewers start asking me those behavioural questions about "a time when you've had disagreements and a way of resolving them", there's no need to bring up something too dramatic.
[/offtopic]
Re:nothing new (Score:2, Funny)
It's an entire manual and not just an article? I'm definitely not reading it now. =p
Re:nothing new (Score:3, Funny)
I had a job interview a number of years ago at a video game company. The guy asked me with a straight face what I would do if two of my co-workers was having a fist fight out in the hallway.
I almost blurted out, Does that happen a lot around here? Instead, I gave a safe answer that I would go get a superviso
Re:nothing new (Score:3, Interesting)
Re:nothing new (Score:2)
As an experienced interviewer/interviewee, I will go ahead and agree with this for the obvious reasons. Any questions that are ethics-based or drama-based should be answered in the following way: Ask to think about it for 20 seconds, and then come up with somethin
Question - balls in the air? (Score:2, Interesting)
I've written some code, and try to visualize how my code will run, stepping through each section in order.
The question I have is, is it still possible for these kernel gurus/hackers to effectively have the kernel and all its nuances inside their head, fully functional at a theoretical/experimental level? Or does development at this point consist of sub groups that are specialized and don't require a level of und
Re:Question - balls in the air? (Score:5, Insightful)
in short, it's the latter. However, keep in mind that, in a well designed system that's properly modularized, with neatly spec'd interfaces between components, it isn't always necessary for someone to have the entire picture, with all the nitty-gritty details, in their head. Instead, one need only grasp how the system operates at a high level, from a component-oriented standpoint, where each of the components themselves conforms to a particular contract.
Put another way, while Linus may not understand how the driver for a particular digital camera works, he probably does understand the interface that driver exposes, and how that interface ties in with the rest of the system.
Count your blessings... (Score:3, Funny)
Who cares about Linus anymore? (Score:5, Insightful)
Apart from the name, Linus currently has the final say of what goes in. Thats just officially. In real life it seems far more is delegated to others for different parts of the kernel, and Linus is one of the developers, far from the most active, and not really exercising his right to block patches against the majority's will.
Re:Who cares about Linus anymore? (Score:5, Insightful)
Slashdot, apparently, since it usually posts an article on just about every mention of Linus, every minor activity, every little comment, and every little speculation. People glorify him as the guy who single-handedly wrote Linux, when Linux is really the work of thousands of developers who just send patches to him (and now other delegates too).
Re:Who cares about Linus anymore? (Score:5, Insightful)
That's not glorification, that's taking advantage of somebody else's insights and experience.
Re:Who cares about Linus anymore? (Score:4, Insightful)
Every leader depends on the efforts of those working for them but that does not mean that great leaders are any less great. Linus LEADS. He is the "queen bee" and as such he makes sure the Linux kernel is a great piece of software though he does little "honey gathering" himself.
Re:Who cares about Linus anymore? (Score:4, Insightful)
Re:Who cares about Linus anymore? (Score:3, Insightful)
On their deathbed, nobody ever said, "I wish I had spent more time at the office..."
Tabloid fluff (Score:4, Insightful)
The article is yet another clear piece of filler that pretends to build antagonism between two important figures of the kernel project. How does this stuff keep getting accepted by Slashdot?
Is this the way Slashdot supports open source, fostering internal divides in exchange of ad eyeballs?
Re: (Score:2)
Hahaha! (Score:2, Interesting)
I'm not a coder. The cosest I get is some bash scripting, which I haven't had to do in a while. But hearing that even some of the greatest coders (who aren't bound to a company policy to keep mum) sometims screw up, makes me feel good... It just cracks me up that there are those moments in life where even Alan Cox and Linus Travolds say 'What the $#@%! was I thinking?'
And the best part? It's all visable to all the other developers. Thank
Re:Hahaha! (Score:2)
Sign of a Strong Working Team (Score:5, Insightful)
I'm sure everyone who doesn't bother to RTFA will now think, "Oh, no, Linus and Alan are bitching each other out in public." That's nothing like what's going on here. For one, the submitter quotes only half of one particular line from the article:
So it sounds like Alan and Linus have discussed this particular difference in their talents before, either over beers at a pub, or over email or something.
Second, the article makes clear that part of what's going on is that Alan and Linus each have very different responsibilities in keeping Linux going, and so they necessarily focus on different things. Alan points out that as the dev tree maintainer, Linus is trying to keep the code maintainable, while Alan's trying to keep it stable.
And both of these things are necessary. It sounds to me like rather than being "at loggerheads", or "ready to call off the working relationship", instead Linus and Alan are a very well-matched and complementary team, both of whom contribute enormously to Linux's success and quality.
Each of them has strengths that make up for the other one's weaknesses, and it sounds like they have a good enough working relationship to give each other constructive criticism when needed.
Is it all that obvious? (Score:2)
The Developer and his Code ... (Score:4, Funny)
Nothing has changed. In 1983 one cause of coding (programming) errors had been described as a misfit of perceived and actual reality (Zemarek in Psychologie des Programmierens, S. 111-129, Hrsg. H. Schauer, M. Tauber, R. Oldenbourg, Wien, 1983).
CC.
Maintainable? Stable? (Score:3, Insightful)
And these things are mutually exclusive?
Re:Maintainable? Stable? (Score:5, Informative)
Linus instead is quite happy to say "ok that is a problem but the real fix is to rewrite the logic behind [randomcomponent] to properly ensure that this cannot occur'. That might take a month and is undoubtedly the right answer but it isn't the immediate answer for people hitting the problem currently.
Re:Engineer, programmer, developer, same thing (Score:4, Informative)
programmer = code monkey
developer = higher level design and algorithms.
engineer = full system design, makes the important decisions.
Re:Engineer, programmer, developer, same thing (Score:2)
CC.
Re:Engineer, programmer, developer, same thing (Score:3, Funny)
I see through your trick question!
(D) None of the above.
Re:Engineer, programmer, developer, same thing (Score:2)
Re:Engineer, programmer, developer, same thing (Score:2, Insightful)
Re:Engineer, programmer, developer, same thing (Score:3, Interesting)
Re:With all due respect to Alan Cox, (Score:5, Informative)
That was quite funny, and I see that you managed to fool somebody into giving you an "Insightful" mod.
Mods take note, the parent post is deliberately nonsensical. For example, "It's been shown that creating working kernel based on a register machine like most modern microprocessors is NP hard".
let the market decide. (Score:4, Insightful)
If microkernel is the way to go, then write the code, and we'll see what happens in the OSS marketplace. I'm not going to say "best technology wins," as that's rarely been the case historically.
There is, after all, a reason that the HURD hasn't taken over yet. I might well be missing something, as this isn't really my area.
Re:let the market decide. (Score:2)
Re:With all due respect to Alan Cox, (Score:2)
Is this a cleverly worded troll? Where does
Linus ballances bugs & features CORRECTLY (Score:4, Insightful)
from TFA: "Cox revealed that although Linus is good at developing code, he does not enjoy some of the other jobs that go along with software development such as bug fixing and beta testing."
Note that Linus and Microsoft are both being accused of the same thing.... some purists are arguing that they don't focus enough on the bug fixing. The reality is, that no matter what focus you will NEVER have a bug free system. All software makes such feature/stability tradeoffs perhaps the most important challenge of any software project is balancing the tradeoffs of perfectionism vs. time-to-market of bleeding edge features that is best for their market. Other operating systems that do focus excessively on security for their "core" offering tend to fall behind in features (like the old mainframe software banks use, etc). Sure such software has its place; but it's not the mainstream market.
Note that for the security consious customer, though, Red Hat and SuSE both have higher-security releases of their own (like the Common Criteria vesrions like this one [novell.com]; and releases like Debian Stable that also focus on security and bug fixes only. By people who don't understand that those releases are targeting a different market, those branches are often criticised for being filled with obsolete software.
It doesn't have to be Linus's job to handle the most conservative customer's needs.
Re:Linus ballances bugs & features CORRECTLY (Score:2)
Time to market? Alot of company money is going into Linux kernel development, but Linux kernel development is not quite that commercial.
Re:Linus ballances bugs & features CORRECTLY (Score:2)
Re:Linus is a hacker (Score:5, Interesting)
Re:Linus is a hacker (Score:2, Funny)
That's good, because I'm perfectly comfortable defending myself.
That said, groupies (the female kind) are always welcome.
Re:Linus is a hacker (Score:2)
Re:Linus is a hacker (Score:3, Interesting)
Have you ever even looked at the Linux kernel source? The VFS is a better OO abstraction than anything you will ever come up with in your lifetime.
How did this get modded above -1?
Slight exaggeration? (Score:4, Insightful)
The VFS is a better OO abstraction than anything you will ever come up with in your lifetime.
Uh, what? The VFS is hardly a brilliant concept, but rather the sort of abstraction that any good designer will come up with. It's also not an original Linux invention (Sun OS has had it since 1985, I think). The kernel developers also seem to have a perpetual problem with defining an interface once and defining it well. It happened to me more than once that FUSE [sourceforge.net] broke during a supposedly minor kernel upgrade. For all its virtues, the Linux kernel is hardly a case study in good software engineering.
Re:Linus is a hacker (Score:2)
Okay, I'll bite. What are your contributions to the evolution of the computer industry? I am going to assume, due to your judgement of Linus, that you must have done at least as much for the industry (or perhaps computer science research) as him, right?
Re:Linus is a hacker (Score:2)
Although I don't necessarily agree with the OP, I think the premise that a criticiser needs to be an intellectual or acheivement equivalent in order to criticise is somewhat farcical.
It's roughly the equivalent of demanding that sports commentators be major-league level in order to discuss fielding errors, or demanding that music critics be themselves accomplished musicians. You don't have to be an expert to criticise an expert.
Obviously from your rationale, only 3 or 4 living people are qualified to make
Re:Linus is a hacker (Score:4, Informative)
Are you sure? I thought he works pretty closely with Linux-related projects, when the need arises. For example, look here. [winehq.com]
Note that Linus was the top poster for that week.
Re:Yeah (Score:3, Insightful)
Re:Unfortunately... (Score:2)
Re:Unfortunately... (Score:2)
Re:vanity (Score:2)
Yes, everyone makes mistakes. I don't think Cox is denying that he does. The point is that Linus has too