Google has just launched a preview version of Google App Engine, a development platform for your next start-up web-based application that is designed to be scalable. Looks like it is designed to compete against Amazon Web Services, and it includes the full suit of development stack, including:
- Web serving environment, including a Python runtime environment + Django framework. Competes with Amazon's Elastic Computing Cloud.
- Persistent storage powered by Google BigTable and Google FS, supporting its own query language and transactions using optimistic locking (what?! no MVCC?) Competes with Amazon's Simple Storage Service and SimpleDB.
- API for authenticate Google users, sending emails, fetching URLs, etc.
Looks much more restrictive than Amazon's EC2 where you get your own Xen VPS. However Google also gives you 500MB storage, 200M megacycles of CPU time/day and 10GB data transfer/day for free, which is enough for any startup to prototype their next killer app. Developing for a sandbox is never fun though, but the SDK provides an emulated environment so you can do your development locally before uploading to Google App Engine.
Biggest winner? I think it is Python. Hopefully we will see more Python-based web applications this year.
Update: TechCrunch has already coded and deployed their first HotOrNot-type application on Google App Engine -- and it took the RoR guy only 4 hours to sign up, figure out Python, code up the site and deploy. Too bad that it's already too popular and ran out the quota.
Update 2: Interesting response from Joyent, which has already made its way into providing utility computing via its Accelerator/Solaris Container products. Basically what Joyent is saying -- no root, not open! Obviously they are still stuck in the mindset of doing all the scaling themselves which is only possible when you have the admin access to the running instances. It is great when you have root -- sometimes -- when you want to tinker with the setup yourself. What Google is saying here is, just worry about coding around the framework, and they'll do the scalability for you. Having "root" will only blow a hole in your foot in this case.