Well, this is sure to raise a few eyebrows here and there. Today, at the Ubuntu Developer Summit, Mark Shuttleworth held his keynote speech, and in it, he announced that Ubuntu will switch to the Unity user interface come release, for both the netbook as well as the desktop, leaving the GNOME user interface behind (but keeping the GNOME platform).

Maybe now people will stop kvetching about how Canonical doesn't contribute to Linux development.

How is this Linux development? Linux development, before the advent of Canonical and Ubuntu, was one of co-opetition, where the major players used the same core infrastructure and just a pinch of home brew seasoning. This ensured that the majority of development efforts concentrated in upstream projects, where the joint investment in code accumulated value for everyone.

We had some defectors from this principle, but where are Corel Linux/Xandros/Linspire (etc.) now? Practically not on the radar.

Enter Canonical; backed by millions out of a private war chest. In the first years Ubuntu was just a repackaging of Debian SID. They spent an inordinate amount of time in marketing to make it visible and now they do a bait and switch and substantially diverge from what means to make a distribution. They dump the code out there with a take it or leaving stance. This is not co-operation. This is fragmenting the community codebase willfully in order to create a seperate, Canonical controlled, offshoot called Ubuntu.

The only way to "co-operate" with this way of development is to become an Ubuntu derivative. Dialog between projects doesn't seem to be possible with Canonical. In a few years we will have Windows, Mac OS X, Linux and Ubuntu. What Canonical is doing now is not growing the Linux code base. It is splintering it.

I'm not saying anything about the desirability or long-term viability of Canonical's practices, all I'm pointing out is that for the first time it seems like Canonical is backing a serious FOSS project with significant resources devoted to coding. (Though saying that Corel/Xandros/Linspire have failed because of the development model you've outlined is a post hoc fallacy. I would also point out that Linspire didn't "fail" per se, it got bought out by Xandros, and Xandros itself is still around.)

Unity seems like a major software project to me, but then again I've never coded an entire GNOME shell before, so maybe it is actually trivial. On the other hand, Ubuntu's other code contributions so far really haven't been all that grand, as in custom volume control applets, the Ubuntu Software Center, etc.

Originally the complaint was that Ubuntu doesn't do enough to contribute code back to the Linux ecosystem. Now that they're doing that, apparently the complaints have shifted to how they're contributing code. AFAIK, Unity is open source, and until someone tells me "I tried to work with the Ayatana design team and the Unity devs but they didn't want anything to do with me because Ubuntu is secretly Oracle in disguise and Mark Shuttleworth is Bill Gates's long lost cousin", I will assume that it is a cooperative project that other developers can sign onto.

One other point: why do people bring up Shuttleworth's money as if it's a bad thing? People are so locked into this false ideology that FOSS is a Panglossian utopia of eminently rational social democratic unicorns (like Thom Howlerda). Money talks. The fact that some dude is bankrolling Unity with his own cash speaks more to me than ten volunteers working for a year on the same project.