Is Android still open now that Google has postponed the source code release of Honeycomb, version 3.0 of the mobile operating system? I've been reading a whole boatload of articles and blog posts on the web claiming Android is no longer open, but it seems like very few people seem to actually understand what 'open' really means when it comes to the GPL and the Apache license. Here's a short primer.

I think you have written a good article, but I may differ on some views.

Let me say I have no problem with proprietary software or controlling the brand identity. I do have only a few conditions though.

Google have already said the Honeycomb 3.0 build that is already deployed will not have it's source released. The build that will be open source will be changed from that which is on the Motorola Xoom etc.. Yes whatever they haven't changed will be open source, but the parts that weren't up to scratch will never be open source. This is the same as Chrome in that Chrome is not open source, but Chromium is. It is impossible to take the source and verify it is the same as Chrome because of certain additions like branding and other stuff. You can do this with Firefox though. This is an important distinction that has real world consequences. So I respectfully disagree that currently "Android is still every bit as open today as it was a few months ago". Coming from a multi-national personal information-mining corporation this is troubling because one of the reasons Google likes to tout that something is open source is to imply their isn't anything nefarious hidden inside.

Even though Chrome is mostly Open Development (Crankshaft V8 engine and VP8 were code dumps), they fork projects without trying to work with upstream and this is problematic like Android's NIH stack because even GPL projects can be taken ahold of by a more powerful entity. (If someone makes significant changes and gains momentum the upstream project (e.g. the project that was forked) can be left behind.

As to the degree of openess that can be claimed, an interesting addition is that neither of these projects do Open Planning.

The openess is further nullified by closed source changes by the manufacturers and carriers, because to the user, they have no guarantee of no lock-in, or lack of tracking mechanisms added by the manufacturers and carriers in addition to the ones Google puts in place already. "The vast majority of Android smartphones are encumbered by lockdown mechanisms that block installation of third-party firmware. Some mobile carriers even block installation of external software entirely, in stark contradiction of Google's early promises." Given that Google proclaimed that Android would not block external software, then to not restrict the removal of this freedom in the contract makes "open" just pure marketing.

I'm particularly disenchanted with Google's actions is because they continually scream "open" and "open source" when they are not open as much as you would think. I think because Google puts so much emphasis on "open", they should be doing development out in the open, otherwise don't claim at the top of your lungs you are, because it's just deceptive. Why I think Android in particular should be Open Development is that Google is exploiting the fact that it doesn't
matter as much that they release the source code as a code dump because it makes the choice to use a community provided build an unreasonable choice, as it holds back development of a branch (resources can't be spread out like in Open Development, particularly important for non-full time projects), making a significant time delay take away the choice for many people. This is behaving like a QPL application with "Choice of venue" clause.

"I believe that if you deem it necessary for your project to be developed behind closed doors, you should be able to" I agree with this (on the condition that there is no tracking mechanisms, otherwise if I'm going to pay for something like this I might as well use something open source with tracking mechanisms that is "free"). Just don't claim you're open, Open Source yes, but I think Open is just such a ambiguous word that can be abused by advertising, press releases and public statements that the community should prefer that it be reserved for a project with a significant degree of "openess" (I'm aware that itself isn't exactly defined).

If I have to buy the product before I am allowed to inspect the code then it is not public, and this is one important facet of open source. (I'm not going to inspect it, but I'll never buy an Android device anyway.)

I respect that Ryan Paul had the guts to write an article that showed Google is not as open as people like to claim. I say guts, because in the comments Google fanboys are upset, but as you read, you realise at least some of them have never even heard of Open Development, and do not understand Open Source does not mean Google is not in control or that you can even fork the project. It's just ridiculous to complain whenever there is negative publicity about Google. I'm really fed up with how you cannot say anything factually correct that shows Google in a bad light. I know that people earn money through their websites through Google's online advertising monopoly but a little impartially would be welcome (this is not directed at you Thom). The same exceptions are not granted to other businesses.

"Google has long exhibited a pattern of behavior in its Android dealings that reflects a disregard for openness and the third-party development community. It started even before the first Android release, when Google silently stopped making SDK updates available to the public for months and used nondisclosure agreements to gag the privileged few who were given access." This in particularly isn't very "open".

Google's stance on the CyangenMod case is disappointing, they want to tout Android as Open but can't let modders, a very small community distribute it with the proprietary/closed source applications like Google Maps. Remember Google benefits from people using their bundled proprietary applications so they should have not taken the same bully boy behaviour they did with the Googol comic girl. I believe both Eric Schmidt and Andy Rubin said the nature of open was that carriers could modify it, even if it meant to the detriment of the platform, so if they are OK with that, why can't they not take such a controlling stance on a community that helped Google improve performance among other things. Google should be grateful for the free development.

"by adding closed-source applications to Android, they can't consider it truly open source" I won't say that Android is not open source because of this, of course if you mean that on a vanilla build, everything that ships on a device is considered as Android, then yes it is only partially open source.

"restrict access to Google services such as the Android Market to devices that are properly licensed." Ordinarily I'd be perfectly accepting of this, I'd even suggest something like this. But because Google touts "open" and nullifies (to a large extent) the point of Android being open source, in this case I disagree (this is idealistically, I've never assumed Google would allow this).

Android is not free, I believe partners need to pay to access the source tree. Secondly, the cost is your privacy (or lack thereof). Free as in freedom is largely irrelevant as well, without privacy, there is no freedom. With all due respect, it's Free as in smokescreen.

I'm not an MS, Apple or GPL/BSD devotee so no ad hominem attack thank you. This isn't directed at anyone in particular.

I'm pretty sure that the copy right for most parts of Android (except the Linux kernel) are owned by Google. As such, they are under no obligation to release the source. Upto 2.3 they have done it, but for 3.0 they have decided not to do it yet, and since they own the copyright, the license does not apply to them. It just applies to others who decided to use code that Google wrote.

Same way how QT is licensed under a GPL & a commercial license. You can't take the QT's GPL code and release it under a commercial license, but QT can do it because they own the code.