Miguel de Icaza, the co-founder of the GNOME project, recetly wrote a blog titled ‘What Killed The Linux Desktop”. It’s debatable if Linux, the desktop, is dead or not but the blog did stir the bees hive.
Linus, despite being a low-level kernel guy, set the tone for our community years ago when he dismissed binary compatibility for device drivers. The kernel people might have some valid reasons for it, and might have forced the industry to play by their rules, but the Desktop people did not have the power that the kernel people did. But we did keep the attitude.
Linus responded on a thread started by Sriran Ramkrishnan:
“The gnome people claiming that I set the “attitude” that causes them problems is laughable.
One of the core kernel rules has always been that we never ever break any external interfaces. That rule has been there since day one, although it’s gotten much more explicit only in the last few years. The fact that we break internal interfaces that are not visible to userland is totally irrelevant, and a total red herring.
I wish the gnome people had understood the real rules inside the kernel. Like “you never break external interfaces” – and “we need to do that to improve things” is not an excuse.
Gnome and Icaza took some heat from Alan Cox who wrote, “…There was KDE and Miguel then came along and created the very confusion he’s ranting about. He was also core to ramming CORBA down peoples throats which then had to be extracted slowly back out of the resulting mess that blighted Gnome 2.x and occupied vast amounts of developer time.”
Cox then commented on how Gnome keeps breaking compatibility, “He’s dead right about the way the Gnome people keep breaking their compatiblity every time not just with the apps but with the UI, with the config (which is still worse now than in Gnome 1.x !) and so on.”
Linus, who is not known for being a big fan of Gnome commented on the attitude of Gnome folks, “I wish the gnome people had understood the real rules inside the kernel. Like “you never break external interfaces” – and “we need to do that to improve things” is not an excuse.”
He then pointed out why he belives Linux has been so successful (no one will question that as it is run almost everywhere):
I personally think that one reason that the Linux kernel has been so successful was the fact that I didn’t have a huge vision of where I wanted to force people to go. Sure, I wanted “unix”, and there are some very high-level concepts that go with that (fork,exec,files etc), but I didn’t want to enforce any particular world-view outside of that very generic pattern.
In fact, Linux pretty much did what I envisioned back in 1991 when I first released it. Pretty much all subsequent development was driven by outside ideas of what other people needed or wanted to do. Not by some internal vision of where things “should” go.”
Then he hit back at Gnome folks and said, “That’s exactly the reverse of the gnome “we know better” mentality, and “We will force Corba/.NET down your throat whether you like it or not, and if you complain, you’re against progress, and cannot handle the change. Some gnome people seem to be in total denial about what their problem really is. They’ll wildly blame everybody except themselves. This article seems to be a perfect example of that.”
Cox concluded his comment with this statement, “Gnome isn’t really a desktop anyway – it’s a research project.”