17 June, 2009

Google's Platform Standard Wizardry

As a lot of people are becoming aware about Android, and Android-based smartphones, I was keen on researching the platform and internals of my own HTC Magic.

What I found surprised me. Google, who has always been in the "Big Internet gadget/search-engine company"-stall, has now also moved over to the ISV-stall (Independant Software Vendor), this stall includes big names such as IBM, Novell, Microsoft, Sun, etc...

I knew they had based the Android SDK on Linux (which in itself is a giant leap for commercial ISVs in general), but that they actually developed an entire programming framework had eluded me.

Sun Microsystems has long been the de-facto standard supplier of development frameworks (read: Java MobileEdition) for application development on mobile and embedded devices. But this could soon change because of Google's smart thinking and legal trickery.

Put quite simply, Sun has (for years) reserved total rights to profit from mobile/embedded Java development by restrictively licensing it's Java ME framework and the source for it's Java compiler ("javac"). Thus, only letting vendors that agree to legal restrictions on Java compilation for mobile/embedded devices charge for their own implementations of either the framework or the applications made with the framework.

With this in mind, Google (with it's newly announced "Google Code"-division) started development on it's own implementation of the Java-standard compiler, code-named 'Dalvik'. By forcing the compiler to *not* use actual Java bytecode, but, rather utilize it's own type of bytecode, also freed it from Sun's proprietary restrictions. And with further legal re-routes and smart licensing-combinations, Google reserved the capital rights to 'Dalvik', and also it's Android SDK as a full-featured mobile platform, making it an "open platform", ensuring developers total freedom by utilizing the Android SDK.

By also announcing the opening of "Android Market", Google made it possible for application developers to offer their apps free of charge for everyone, or to limit usage by charging for it. Basically, giving developers final word on their own creation.

For more intricate specifics on the legal aspects, read this article.

0 kommentarer :

Post a Comment