Want Google To Host Your Entire Web App? Learn Python, and App Engine

So, I caught wind of the release of the Google App Engine late last night... which is a web development framework that allows you to run your entire application inside Google's infrastructure!

This is huge... its like saying, "why run your web site on some random hosting company, when you can run it inside frigging Google?" Google manages your uptime, backups, and allows it to scale to Google-sized proportions. Its cloud computing to the max. Not only does it do virtualization of your data storage (like Amazon S3 and SimpleDB), but you can also host your application itself in Google's environment! Your code is virtualized across hundreds of servers. If any one of them crashes, who cares? Your app will keep chugging along.

I got on their waiting list as soon as their site was available at 11pm. A half hour later, I was greeted with a 'welcome' email from Google, but by that time I was a tad sleepy to check it out... I'm lucky, this was a preview release for only the first 10,000 folks. Register now: there still might be time.

Of course, there are a few gotchas:

  • It only supports apps written in Python. No Java, no C, no .NET. Although, Python rocks...
  • The best web application framework option is Django... which is an awesomely elegant framework, similar in philosophy to Ruby On Rails. Existing Django apps can be ported in minutes.
  • You cannot write to the file system, you have to use the Google Datastore API
  • If your web request takes more than a few seconds to respond, Google will kill the process, and send back an error... so I don't know how they do batch processes...
  • Google owns your ass even more.

I'm happy about this... I think its a huge validation of the direction Oracle is going with their Coherence application & storage virtualization engine (which does work with Java ;). It's also some nice competition to the Amazon S3 and SimpleDB services... not to mention a huge validation of the Python language and Django framework.

I also let out a hearty guffaw at those who mocked me for my insistence that Python and Django was the superior framework... Google will certainly be ramping this up soon, and it certainly will be reasonably priced. If you're starting from zero, I can't think of a better way to go than Python and Django. Forget Ruby, forget Rails, forget PHP, forget .NET, forget Java. Enterprise companies who want control over their data, and already have a large middleware investment should use Oracle Coherence or something similar... and use the web framework just for the front-end.

Unsure what the implications are for SOAs...

The people hardest hit by this will those dedicated to the LAMP stack at cheap web hosting companies. In other words, those folks who set up a Linux, Apache, MySql, and PHP environment, and try to keep the dang thing running... which is a ton of effort, and difficult to scale. Small companies want uptime and scalability as much as the big boys, and virtualization (aka cloud computing) is the way of the future.

Middleware that cannot be easily virtualized will die on the vine...

comments

Hmm, I wouldn't guffaw too

Hmm, I wouldn't guffaw too loudly regarding forgetting the other languages....

From the website - "Although Python is currently the only language supported by Google App Engine, we look forward to supporting more languages in the future."

It would hardly make Good Business Sense to limit themselves to only Python apps, would it?

the guffaw stands!

I saw saw a video of the Google launch last night... Guido van Rossum said the same thing, that the platform is language neutral, and it should be possible to do similar things with other languages, and they are looking for feedback on which should be next:

http://qik.com/video/51368

or should I say, which should be second best ;-)

Probably the next one will be Perl, maybe PHP, simply because of the number of sites out there. I don't know if C-Ruby is stable enough, they might opt for Java first, then Ruby through Java-Ruby.

also...

Since the Python app engine framework is the same one Google uses for its apps, Python is more likely to be battle-tested, and the most reliable.

If there's some exotic bug in Python that prevents Google's awesomeness, you can bet that will get patched pretty quickly. I wouldn't say the same for Java or .NET... not by a long shot.

So, if you use the app engine, and you want to make absolutely sure your app is as scalable and robust as Google, use Python.

Otherwise, you're taking a risk.

Nirvanix- the fully loaded option

don't forget about Nirvanix... they are similar to Google's new deal, and Amazon S3, providing the API to build an app on, except their bundle is fully loaded. They market a little bit more to the enterprise end of things, but the pay-as-you-go pricing allows businesses on both ends of the spectrum to enjoy the "full service" storage.
if you're interested www.nirvanix.com

Post new comment

CAPTCHA
This form prevents comments spam...
Image CAPTCHA
Enter the characters shown in the image.

Recent comments