Motorola’s newest phones are hitting the streets and promise Android goodness thanks to the latest Android release 2.0. Now if you think of Android as an open souce platform, you may have run over to the Android Open Source Project and tried to download the 2.0 source to see how they made it.
Uh, no. Android isn’t that open. In fact, neither is it really a project. Android developement is really done on internal trees at Google and at the various device vendors. And the Android gang are pretty open about that on their mailing lists. I just wish they’d drop the open and project and just call it Android Source.
The unfortunate thing is that many in the community are naive to the shades of grey that exist in our industry. And complaints in the open tend to give projects a black eye. But each level of greyness has its purpose. For Android and most other projects that Google does, they want the flexibility to evolve the platforms quickly. Like it or not, truely open developement is slower.
Other projects need to be open to help grow the popularity of their technologies and to find people to help them build it. That’s certainly what drives us on the CDT to be as open as we can.
The Eclipse Platform is an example of how projects change as their needs changed. No one complained when IBM started the Platform project 8 years ago and maintained almost full control of the project. It was necessary to ensure a great start, which it did. But over time, they’ve opened up as they realized they couldn’t do it on their own any longer. So you change to maintain success.
I think the shades of grey are fine, as long as the licensing allows downstream projects to be as open as they’d like. And I see that happening with Android with the Android x86 project, for example, which is very open and just incorporated someone’s code for better 3D support.
It’s all good. People need to take a good look at the projects they follow and understand why they are structured the way they are to manage their expectations.