← Back to context

Comment by shimon

15 years ago

GAE looks like this at first glance. But it turns out to be focused 90% on scalability, and 10% on easy deployment. The main issue for Django developers is that on GAE, you're using a nonrelational database. Assumptions about the RDBMS run deep in Django and in most Django apps, and great effort (see django-nonrel) is required to present even the thinnest veneer of compatibility.

In my experience (>2 years of GAE consulting for paying clients) I think using GAE is probably the wrong choice for most new projects. If you're new, you need to be able to iterate ideas quickly and you will value tools that (1) give you flexibility, (2) offer a lot of useful reusable libraries, and (3) have a large and stable culture (good docs, stable APIs, people you can hire). And if you have a scalability challenge somewhere down the road, it would make perfect sense to rewrite most of your app on a platform like GAE -- after all, by that point you'll have the basics of design quite solid, so you don't need as much flexibility, and every other part of the effort gets easier when you have money to throw at it.

It is a common misconception, though, that AppEngine serves the same needs as Heroku, or is a Heroku equivalent for Django. I think that's the main reason we didn't see more Herokus-for-Django* earlier.

*Disclaimer: I am a founder of http://djangozoom.com/ .