Don't know why no one has mentioned this yet, but Google App Engine Launcher is a really neat little tool. It allows you to run your app on localhost, and when you make changes it automatically updates the app in real time without having to re-deploy. I'm sure that Heroku has something like this by now, but my experience with GAE Launcher has been really smooth. Also, a big con to GAE run apps is that error messages are really tricky to find. When you run an app on localhost, you can read the log in the provided console, but if you want to debug a deployed application, the only way to check logs is on the Admin Console, which is a website.