The perennial problem with Android, at least from the perspective of the open source community, is that while it's based on Linux, most real-world implementations on devices that actually go to market are encumbered by proprietary overhead that limits the extent to which the source code can be modified in practice.
To be sure, no OEMs are breaking any laws -- they do what they need in order to comply with the GPL. But practically speaking, the open source spirit perhaps has not pervaded the Android world as much as many might have hoped.
Xperia ArchivesThat situation improved a tad bit March 20, 2012, however, when Sony made the source code for the Xperia S publicly available, expanding the selection of code already offered for other devices. Importantly, documentation for using the software components is also being provided -- a sign of real commitment on Sony's part to the developer community.
With these resources, third-party developers will be able to build their own kernels for the Xperia S, which -- sporting a 1.5GHz processor, 1GB of memory and 720p display -- is a pretty decent piece of Android hardware.
As with most things in life, of course, there are catches. Proprietary firmware is required to flash the software to ROM, as is an open source Python script provided by Sony. This means developers aren't completely free to take the code and run with it. But remaining partially dependent on tools provided by Sony is better than having no access to the source at all.
Open Source and AndroidIf, like me, you take seriously the tired-but-true argument that everyone is better served in the end when software is free and publicly accessible, it's hard not to see something good in the availability of the Xperia S open source archives. A recent similar move by Samsung, which released the Galaxy S II Ice Cream Sandwich code, is equally encouraging.
When it comes to making Android an easier to platform for tinkering, then, things seem to be looking up. It may be a long, long time before Android is as customizable as traditional Linux-based operating systems, but at least OEMs in the channel are showing serious attention to ensuring that development for their devices is not restricted to in-house efforts.