This story is special, as it was created in an open source manner. The story was written in collaborative fashion by 2-3 dozen people working on it simultaneously. The story is a shining example of the collaborative power of Google Docs. We would like to thank all those who contributed to this story.
The Linux Foundation recently published its annual report about the development of the Linux kernel. As usual, Red Hat and SUSE topped the list as major contributors to the development of Linux kernel. Even Microsoft made it to the top 20 due to their code cleanup of hypervisor. But Canonical, the company behind Ubuntu, was missing from the list again.
The question arises what is Canonical's contribution to Linux? When Steven Vaughan-Nichols (SJVN), CBS/ZDNet contributing editor, asked Mark Shuttleworth about Canonical's contribution he said, "...the kernel is a tiny part of the user experience of Ubuntu, and we don’t lead kernel development as a particular goal."
I was curious what Linus Torvalds and Greg KH, the two leaders of the Linux world, think of Canonical's contribution. During LinuxCon when I asked Linus Torvalds about the players who do not contribute back he said, "When you have people who just use the system, they don't necessarily give that much back because they don't need to make any changes. They just use it the way it was designed to be used."
So if you are simply using something without making any changes to it, there is nothing much to give back.
When I asked him about Greg KH’s criticism of Canonical, Linus said, "The reason Greg did not like Canonical was because they actually did make changes. They just were not necessarily as active in pushing them back up as Greg wanted them to be."
I was meeting Greg the next day, so I asked him about Canonical. He said, “If you rely on Linux shouldn't you help contribute to Linux if you want to make sure it goes in a way that's useful for you? Canonical's business decision is to not contribute and that's fine. We have no problem with that and Canonical agrees with that." He then added, "They have contributed more, there is no question about that but lots and lots of people contribute they are just not major contributors. That's fine I have no objection to that."
Michael Hall of Canonical seems to disagree with this definition of contribution. When pointed at Greg and Linus’ remarks on Canonical's contribution Michael said, “...I'm equally sure that the people who say that have a very narrow, unrealistic definition of what a contribution is. I disagree with their definition.”
Canonical's Contribution Outside The Kernel
Supporters of Ubuntu often argue that Canonical has contributed by making GNU/Linux popular among the masses. That's true. Ubuntu has made it easier for those at the fence to use GNU/Linux with greater ease.
SJVN also believes that Canonical is making significant contributions outside the kernel development, "Sure, the Linux kernel is important. Without it, nothing else could run. But, as Shuttleworth points out, Canonical does contribute a lot to the larger Linux community. In addition, Ubuntu has helped broaden Linux’s audience, and Ubuntu itself is the basis for other popular Linux distributions such as Linux Mint, Peppermint OS, and Turnkey Linux. The bottom line is Ubuntu may not have contributed that much to lines of code in the Linux kernel, but it's made big contributions to Linux in a larger sense."
"True, but Canonical is not making the word 'Linux' popular. Ubuntu is not Linux. You won't find mention of Linux on Ubuntu's marketing material. So, when a user uses Ubuntu he doesn't know that its Linux. Similarly when a user uses Mac or iOS he doesn't know it's BSD. If this is the criterion of contribution then TomTom should be a bigger contributor as it has a bigger market than Ubuntu. Android has made Linux a household name with hundreds and thousands of devices being activated every day," says Rajiv Sachan, an Ubuntu user.
Canonical Technologies Outside Ubuntu
Canonical has developed a lot of technologies such as Unity which can be considered their contribution to the Linux world. Theodore Ts'o, the primary developer and maintainer of e2fsprogs, pointed out, "One of the reasons why many people don't consider Canonical's contributions to Unity to be contributions to "Linux" is that no other Linux Distribution uses it. The same is true for a number of other Canonical-led projects."
Same is the case with other Ubuntu technologies which are not used outside Ubuntu. Canonical's personal cloud services such as Ubuntu One are not available on other GNU/Linux distributions.
Brett Legree argues that there is nothing to prevent other Linux distributions from using Unity in their releases. There are plenty of applications that are not installed across all distributions or even compiled as packages for them. There is ongoing work by other distros such as Arch, Fedora, Mint and Debian to include Unity for their users.
Ubuntu developer Michael Hal says, "There is nothing stopping other distros from using the Ubuntu One client, except the desire not to ship a FOSS program that uses a Canonical service. They are free to ship the Ubuntu One client than they are to ship, say, DropBox's client."
Dean Howell, the editor of PowerBase, is skeptical, "It's hard to truly gauge Canonical's motives with Ubuntu. On the surface, it is a product for the people, by the people, but internally it's easy to question whether or not this is really the case. Shuttleworth seems to have worked very hard to set his team apart from other development groups and even symbolize itself as an independent entity. This is dangerous behaviour from a company whose work relies so heavily on Gnome 3. Unity tries to build on GTK3 libraries and at the same time use it as an trampoline towards independence. What else could explain the lack of bleeding edge GTK3 packages in Ubuntu. Gnome 3.4 would break Unity.
Nekhelesh Ramananthan, Ubuntu Editor, Muktware, begs to differ with Dean, "I disagree that Gnome 3.4 breaks Unity. Gnome 3.4 has been ported to work in Ubutnu 12.04. They did not include Totem 3.4 only because it requires hardware acceleration which hence users having low power hardware cant use hence. Meaning Ubuntu users with weak hardware won't have a default video player."
Beyond Kernel: Other Canonical Contributions
"Canonical has contributed the uTouch Stack, which is actually the most advanced open source multitouch and gesture system. During the development of the stack, many of the drivers were updated or contributed (Apple Magic TrackPad). And Many layers were modified (kernel, X.org, Window Manager, misc.libraries). From the view of an Human-Computer Interaction researcher, Canonical was the first to be interested to link the work done by scientific researchers and apply it to the benefit of the community," says Mohamed Ikbel Boulabiar.
Ubuntu contributes to Linux in a different way. While it is true they don't contribute back to the kernel, there are other services and technologies Canonical creates not only for its users but also everyone else. On top of that, Ubuntu is probably one of the most used operating systems for other remix Distros (i.e Linux Mint). Ubuntu has made setting up servers easier and seen is in robotic technology such as the DarwIn-OP. What we need to understand that is Ubuntu is one of the many faces of Linux and is an important gateway into the Linux world is more than enough, says Michael Redford, an Ubuntu User.
Nekhelesh says, "There are many companies which focus on kernel development. I would rather have Canonical (a small scale company compared to Google or Microsoft) continue to focus on making Ubuntu easy to work for new users. Besides they already have too much in their hands from Ubuntu TV, phone, Ubuntu One, Ubuntu Software Centre etc. I got into Linux because of Ubuntu and am grateful for that due to ease of use. I am absolutely fine with them not involved in kernel development."
The question is not whether they should get involved in kernel development or not. The point is if they are making changes to the kernel they should push it back so the larger community can benefit from it. Not pushing it back is not OK. But, as Greg says they are contributing, but they are not major contributors.
Canonical Is Doing The Best They Can
Given the size of company Canonical is, they are, in my opinion, doing the best they can. Yes, there is a lot more left to be desired but the field they have chosen to fight in is very challenging. They are fighting for a market sandwiched between an abusive monopoly and a player with $100 billion dollars in the bank.
It's a tightrope walk for Ubuntu. Given its size, the company has also spread itself thin with a big range of products -- Ubuntu Desktop, Ubuntu One, Ubuntu Music, Ubuntu TV, Ubuntu for Android.
At the same time, Canonical may not want to shrink it out of existence by putting all its eggs in only one basket. That's why desktop is a tightrope walk. Ubuntu is still maintaining its balance.
The good news is, things seem to be turning in Ubuntu's favour as more and more people are living their lives within a browser. They are not as dependent on Windows as they used to be. To win this fight, I think Canonical needs to increase focus on bringing popular applications and services such as Netflix.
This is where Ubuntu needs to get aggressive. Unfortunately we are not seeing it. Adobe announced discontinuation of Flash and Google pitched in to keep support for Flash on their Linux platform, which is ChromeOS. Canonical did not do anything to ensure availability of Flash on Ubuntu. Once the new version of Flash will come out, users won't be able to access sites using Flash. Google is already working on Pepper Plugin API as an experiment feature of open source Chromium and Google Chrome.
Nekhelesh argues that Canonical need not worry as Ubuntu can always switch to Chrome from Firefox. Michael is also optimistic, "There are FOSS alternatives to Adobe's flash player, Gnash and Lightspark. I would imagine those will see more interest from contributors once Adobe's product is no longer available to us."
I totally agree with Nekhelesh, but if you are an OEM would you want to ship a product which relies on the contribution from 3rd party independent developers? Ubuntu users can't do a lot of things that Mac and Windows users can do with ease. What edge does Ubuntu have over Windows to convince Dells and Lenovos to ship Ubuntu on their hardware?
As I said above we are moving towards cloud computing. The underneath OS is becoming irrelevant. This creates a potential market for Ubuntu. The company has some of the brightest minds in the world. They have some of the greatest projects. They have a great leader.
So, what's missing?