Wednesday, May 28, 2008

"An Introduction to Android" with Jason Chen - 11:15am

My (Andy) first session of the day after the keynote. Labeled a "101" session as well as being titled an introduction, I didn't really expect a lot of detail from the presentation. My expectations were not let down. The presentation wasn't really much more than a verbal overview of information that is already publicly available on the web regarding Android, with really one exception - an announcement that devices will start being shipped with Android in the second half of 2008. Never-the-less, I'll still review the information presented. Before getting into the details of Android, Jason presented a slide comparing the number of people in the world with a mobile phone versus the number of people in the world with an Internet connection. Not only was the number of people with a mobile phone basically double that of internet connection owners, but the number of mobile phone owners was even increasing at a greater rate than that of Internet connection owners. I guess his point was to reinforce the importance of a standard mobile platform, which is what Android is. Android is an entire mobile operating system. Applications for Android are written in Java, but compiled into Dalvik Virtual Machine byte code (as opposed to Java byte code which runs in the Java Virtual Machine). Contrary to the iPhone and its SDK, the Android platform is ENTIRELY open. A developer pretty much has access to anything they want on the device. Aside from being actual open source software licensed under the Apache 2, Jason described three aspects in which Android may be considered an open platform. It is open to the mobile industry, any provider or device vendor may use the platform. It is open to the user. A user of an Android phone may download any application they want and install it, and this includes replacing the primary applications on the phone like the address book! Android is open to developers as well. There was an interesting demo of application integration, specifically, a regular Google web search was made for "pizza san francisco." And just like you can try on the regular web, at te top of the results was a link to Google Maps to show the location of pizza restaurants in San Francisco. Things got interesting when the link was actually clicked. Upon clickin the link, a popup appeared, prompting the user to specify whether they would like to view the resulting page in the regular Google Maps web application, or switch over to the rich Map view client installed on the device. Jason selected the rich client, and the Android prototype seemlessly switched to the locally installed Map application. Of course there was the obligatory security slide in which Jason indicated there was plenty. Security features include process level separation, and sandbox execution of the applications. During the Q&A after the presentation, a question was posed asking if there was any mechanism provided that allows for developers to easily maintain a consistent look and feel of their application, with other Android applications. Similarly to iPhone, there is a suggested set of widgets that developers may use to achieve a consistent look and feel, but contrary to the iPhone, developers aren't forced to use these. Overall, Android looks really interesting. Seeing that the phones will start to ship right around the time that my contract with Verizon will expire, it will be a tough choice whether I get an Android phone or an iPhone. Also, one can only speculate the market penetration that Android will have. While the Open Handset Alliance will go a long way to help ensure that all the infrastructure is there to setup Android for success, it will ultimately be up to the consumer to determine its success. Can it kill the iPhone?

No comments: