Lars Vogel, consultant, Eclipse committer, and owner of vogella.com, gives an overview of the Android operating system. His conversation with Jeff begins with a definition of Android and a brief history. Android is an operating system programmed in Java. It can be found on different types of devices such as tablets, phones, and Google Glass. Lars explains why Android is more than just a mobile operating system then describes some basics of Android development such as resource management, the Dalvik virtual machine, and how to deal with device fragmentation. Device fragmentation occurs when the user base for an application is running a variety of versions of the operating system. Fragmentation is a concern for some Android developers, but it is an inevitability which Android provides effective support for. Lars outlines Android’s memory management and methods such as onStart, onPause, and onStop, which allow the user to define how the application responds to changes in the operating system around the application. The conversation concludes with Lars describing his thoughts on the future of Android, namely as a desktop and laptop operating system.

Since listening to this episode a week ago, I’ve been wondering about the idea of using Android on desktop systems, though. On the one hand, I understand how Android apps appear attractive in comparison to their desktop counterparts which are overloaded and burdened by baggage accumulated for more than a decade. On the other hand, some of Android’s current features could be real showstoppers on the desktop even though they may be sensible or at least acceptable on handheld devices.

For example, the idea of the system terminating apps anytime would be terrible on a desktop system. As far as I can tell, this liberty which Android takes is very tightly linked to the activity stack notion, according to which the user won’t notice the killing of activities so long as they’re not on top of the stack. Furthermore, the “sandboxing” approach in which each app gets its own account isn’t really conducive to desktop work, where you frequently use a pipeline of programs in the production of content.

It seems to me that competitors Apple and MS are grappling with issues such as these — and I would not be entirely surprised to learn that at Google, they’re not unhappy that they don’t have to worry about such stuff.