August 27, 2010, 2:33 PM —
In the beginning there was the Internet and behold, it was Good. Tools for the viewing the content of the Internet, particularly web browsers, grew more powerful and agile, as web developers and their corporate backers built richer and more dynamic web sites.
Along the way, the most powerful of these sites grew to be so complex, they were applications in and of themselves. These online applications initially were paltry and weak, but eventually they became stronger and more useful. This was called the Cloud, and behold, it was Okay.
At the same time, mobile devices started picking up steam, getting powerful enough and coupled with faster networks to make them better choices for computing.
But lo, there was a problem: no matter how good the phone was, it still only had a itty bitty screen, on which conventional web pages, especially the cloud sites, could hardly run. Web developers' initial response was to build specially parsed versions of their sites that were mobile friendly (ITworld, for instance, has such a version.)
This worked, but web developers chaffed, because building web sites that would handle all the different mobile browser rendering was going to be a pain in the tuchus.
Then lo, along came the iPhone, which accessed the same Internet and the same clouds, but instead of trying to show every site and every cloud experience through one browser, the iPhone model said "Let there be Apps, which will handle each piece of the Internet and cloud sites through a custom application."
And behold, it was Very Scary.
App development is a very attractive proposition for developers these days. You can write a decent app, plug it into a cloud (sometimes thoughtfully provided Amazon EC2 services or something similar), and if you've got the right hook and some moxie, you can rake in some serious money. Or even just a little money, which is better than none.
Beyond the individual level, corporate development departments are very interested in app development (as opposed to "regular" web development) because if you can get an app out there and used, you have complete control of the customer experience, from start to finish. It's a marketing dream.
The cloud makes it easy. Mobile platforms make it easy. As a company, I can build an app that guides my customer where I want them to go, make better suggestions because I know exactly who they are--all without worrying about which browser/operating system platform they're using.
In truth, I'm not so much worried for a hit on web development so much as application development ("application" meaning the traditional desktop application, as opposed to the mobile "app"). I don't for a second buy into Chris Anderson's recent assertion that the Web is Dead. Smartphones aren't ubiquitous yet, and the web is still an easy platform on which to deploy.
There is a finite supply of developers in the world, and app developers don't grow on trees. Specifically, I think desktop Linux application developers are soon going to be in short supply: an unintended consequence of the fact that Android and MeeGo are each Linux-based.
When presented with the choice to develop an application on Linux (and only make money from possible support revenue, if that), or develop an app on a Linux-like platform that would generate revenue right from the get-go, will the temptation be great enough to convert application developers to app developers?
Perhaps not so much amongst the veteran application coders, but I would be very interested to see any independent survey of the future plans of up-and-coming developers.