Joe Hewitt

Android and Open Source

Yesterday I made some comments on Twitter that were critical of Android's claims of openness. As many have learned the hard way, it can be challenging to discuss a complex subject in 140 character chunks without omitting important parts of your opinions, so I want to clarify some things.

There is no doubt that Android is the most open of all major mobile operating systems, and they are to be commended for this. Coming from iOS, I've been pleasantly surprised at how much more configurable Android is. The fact that you can replace the home screen with a third-party launcher or even make your own app store is a clear sign that Google's heart is in the right place. However, there is clearly something keeping them from being even more open. That something is probably the carriers, and not Google's management philosophy.

It's clear to me that the only reason Android has enjoyed so much success is that Google has given the carriers pretty much everything they could ask for, and the carriers have responded with the ton of marketing dollars and subsidies that Google needed in order for Android to have any shot to compete with the iPhone. While I can criticize Google for compromising Android in an effort to please the carriers, I have to admit that if they hadn't done this, Android would very likely be irrelevant today.

If you want to see a better representation of Google's values, look at Chrome OS. It hasn't even shipped yet, but you can already follow the daily progress in their source repository and install your own build on a PC. The Chromium and Webkit projects it is based on are also full open source, and you can earn commit privileges and contribute to them today. It remains to be seen if Chrome OS will have any success, but my fear is that a lack of support from carriers and manufacturers will keep it from rising as fast as Android has.

Unfortunately, the term "open" has so many meanings in computing today, it's probably futile for anyone to bother criticizing the way it is used as I did yesterday. My emotional response had a lot to do with my background. I cut my teeth in the software industry working on the Mozilla open source project, so when I hear others talk about openness, but see them omitting important facets like a public source tree and outsider commit privileges, my bullshit radar goes off. Mozilla's commitment to openness is about as genuine as you can possibly get, but then, the world of desktop browsers is hard to compare with the world of mobile operating systems. If Firefox had required subsidies and advertising to reach 20% market share, Mozilla may have had to make compromises too.

Having said that, much of what I said yesterday still stands. It kills me to hear the term "open" watered down so much. It bothers me that so many people's first exposure to the idea of open source is an occasional code drop, and not a vibrant community of collaborators like I discovered ten years ago with Mozilla. I am hoping that at some point it becomes practical for Google to move Android towards the Firefox model of open source, because I am sure that they want to.