Tuesday, April 8, 2008

Python Wins

It's official... Python is now the official web application language of the future. For many many years, we've had an intense battle for the hearts of the multitudes of web application developers. While the battle is still being fought, and likely many on the battlefield will disagree, the winner is now decisively clear.

Recently, Google announced the creation of an "App Engine," which is a highly scalable web application framework. The App Engine allows developers to plug into Google's infrastructure to provide highly scalable and reliable hosting for the application environment.

Amazon should probably be considered the first mover in this field of usable and scalable developer infrastructure resources, with such services as EC2, S3, etc. Google too has had a strong role in offering APIs and other remote interfaces into their environment.

But, now it's game over. The writing is on the wall. Web hosting providers should know their time has come to an end.

As an extremely small web host and web application programmer, I've enjoyed a steady flow of income hosting websites and small web applications for various businesses. I've hosted on my own dedicated (leased) servers mostly out of necessity. It is much easier to provide custom services on my own platform than trying to use someone else's nickel-and-dime hosting provider. I install the tools I need, get the database running, essentially everything I need is available to do what I need to do quickly.

Awhile ago (a few years?), Google announced their "Google Apps" service (of which the App Engine will be a part), which is a broad set of useful services for businesses, including email hosting (through GMail), documents, calendars, etc. Google Apps allows the use of custom domains, so for example, my adamtaft.com email is routed through Google Apps / GMail. (Works great by the way, which is another future blog posting).

Included in Google Apps is a quite lame web page hosting service, called Google Pages. I checked out the service when it first arrived, and basically came to the realization that it was just a toy for the tweens, not really ready or equipped for a full service website or web application. It reminded me of other free hosting providers, like geocities or the like.

I knew it would happen though... I knew eventually Google would offer a total and complete web application environment such that would be useful under the Google Apps umbrella and provide the missing server side programming traditional of web hosting provides. The App Engine offers 500 MB of storage for free, and apparently 5 million page views per month (how that translates into actual bandwidth, I don't know). The data storage resides on Google's cloud (GFS / BigTable), so you can expect the same scalability and reliability as Google search has itself.

What does all this mean? It means the end is near and that Google will now begin to take a lion's share of web hosting away from small web hosting services. And, because of the fact that the App Engine supports Python (at least for now, likely other languages on the way), it makes a strong case towards knowing and developing future projects in the various Python environments. In fact, Google ships a version of Django (a Python based web application environment) with their App Engine SDK. (note, all python libraries are not available, but most of those which are useful for web application development are)

I've known for a long time I want to be out of the business of actually maintaining the hosting servers; it's a pain for a small guy like myself. So, from my point of view, this is fantastic news. Now I can concentrate on providing actual value added services to my clients (i.e. actual billable hours) instead of constantly needing to work on the maintenance of the infrastructure itself.

Ruby on Rails, Java, .NET, PHP, Perl... These are all great web application environments. I know quite a bit about a few of them (I'm obviously a Java fan boy). But clearly, I have neglected Python for too long now. The wake up call is here. I'm just glad I hear the alarm going off.

No comments:

Post a Comment