Rufus Ketting made in 2006 a nice parody on the 1979 Buggles pop hit “video killed the radio star”, named “iPod killed the video star”. With 2008 in the horizon, I make a parody “smart phone killed the desktop star”. Perhaps it’s too early to use the past tense “killed”, so perhaps we should rather use “will kill”.
Whatever tense we use, should we start throwing away our desktop computers and start buying Apple iPhones or other devices instead? I think for now, a certain group of people could perfectly do this. I actually know a lot of people that only occasionally use their computer for a Google search or for reading their emails. They could perfectly do with a smart phone and a flat-fee UMTS subscription. Until a couple of months ago, I always had my 12 inch Apple iBook with me. We were inseparable. Now that I have my Blackberry with UMTS subscription, the love has come to an end and the iBook enjoys a peaceful retirement as a portable DVD player.
So, if the desktop gets killed, what are we going to do with all those desktop developers out there? Luckily, Google has an answer to this problem (no pun intended): Android. Our friends from Mountain View are busy with developing a platform that will power the future cell- and smart phones and they target the big community of already-existing Java developers. I recently started playing with the Android Development kit and I have to say that I was quite amazed that as a Java developer that I could so quickly start writing applications for Google’s Android platform (also Java).
The interesting thing of the Android platform is that it perfectly fits in the growing trend of writing mashup applications, where you develop your software by combining other existing services. An example of this is that you can ask your phone to look up the address of your contact with Google Maps and that your application uses the GPS chip to plot the direction from your current location to your contact’s. Imagine how far you can take this. Let’s say that you know that your friend likes the super-delicious brownies from Starbucks, then your app could request the GPS locations from all the Starbucks franchises in your neighborhood and calculate the shortest path to your friend with a stop in a nearby Starbucks.
So in this new world, we’ll need two kinds of developers: the ones that develop services (or Web APIs) and the ones that create mashup applications that consume them. Perhaps in some future, we’ll see more and more websites that barely offer functionality through a traditional web interface, but just exposes most of their functionality through a service.
One question still to be answered is… on which devices are we –developers- going to write our Android code? Well probably in a far far future that’s not a concern anymore since we’ll have code generators that have replaced us. And of course code generators that can generate other code generators to generate new code. I hear already a new song coming up: “code generator killed the developer star”. It's just a matter of evolution...