4 ms·
I think it was a mistake for the GAE team to port Django to App Engine. Django is designed for a SQL based worldview and even the crippled version included with
by 100k 16y ago
I think it was a mistake for the GAE team to port Django to App Engine. Django is designed for a SQL based worldview and even the crippled version included with the SDK is non-optimal for App Engine deployment.
Since the included version is so bad, people try to get django-app-engine-patch or django-norel working. Those also suck.
There's a mindset that if Django runs, I can keep doing things the Django way.
Nope. Abandon your old frameworks. If you're going to use App Engine, you have to embrace its distributed, scalable way of doing things. Use something made for App Engine like webapp or tipfy.
Yeah, there are problems with App Engine. It has downtime and things slow down. So does every other hosting platform.
App Engine is getting better all the time. I've been working with it for about 6 months, and nearly every month there is a new release with great new features that make developing apps for the platform better. The new 1.4 release has tons of great features that will make working with App Engine easier, like reserved instances and warming requests.
- mark_l_watson 16y ago"If you're going to use App Engine, you have to embrace its distributed, scalable way of doing things. Use something made for App Engine like webapp or tipfy." You make a good point. I am not a Python programmer but I have tried a few AppEngine tiny experiments with Django and webapp. webapp was clearly designed for the platform. Similar case for Java: JDO or JPA never seemed like a good fit to the data store, but Objectify seems crafted to add a nice but thin layer on top of the low level APIs.
- Swizec 16y agoPersonally I very much like django-nonrel. It gives me pretty much the same constraints as webapp, while still maintaining enough of my old worldview that the culture shock isn't too big. Yes, you still have to adapt to the AppEngine way of doing things. But the adaptation is much simpler ... and I completely dislike the way webapp does a lot of things judging from the examples Google provides. I like my world nice and full of free-floating functions. Wrapping things into nearly meaningless objects hurts my brain.
- grandalf 16y agoWhat's wrong with the Webapp framework? I like it quite a bit -- it's light, fast, and simple, almost like Sinatra but with a bit less syntactic elegance.
- davepeck 16y agoI agree that people who approach App Engine for the first time get quite confused about how to make Django "work" on GAE. There are too many options. Even after evaluating, developers may not understand how round-peg/square-hole the problem is. I like some of the basic infrastructure that Django gives me, so I make use of `use_library()` Django 1.1 on App Engine. It's not "full" Django but I find it more palatable than WebApp and the parts of Django that fit GAE fit it well. Models, etc should be done directly on top of the GAE APIs, in my opinion. I think Guido's rietveld sample app is a good place to start if you're new to App Engine and want to use (the useful bits of) mainline Django.
- ianb 16y agoIt's also a shame the GAE team didn't pay any attention to any established frameworks that could have worked perfectly fine within GAE's constraints, like Pylons. Shortly after App Engine came out I put significant effort into making Pylons and related libraries work with GAE, but when there were problems on their end it felt like they reluctantly doing me a favor to respond to the bug reports and make changes. It felt like they had an anti-library mindset, even though there was no technical reason a lot of libraries wouldn't work well on App Engine.
- manish 16y agoThanks for the nice reply. My first experience with GAE was not good, after that I have never looked at it. I took a look at webapp and tipfy, both look good. I will make some time to give it a try.
- wkornewald 16y agoCould you please explain what you don't like about Django-nonrel? Why do you believe that webapp or tipfy are better?
- 100k 16y agoIMHO, Django is too slow and bloated. I'm more interested in the frameworks which have a good cold start time.
- wkornewald 16y agoCold start times won't matter, anymore, when App Engine 1.4 gets into production - which is soon. Then you have warmup requests and reserved instances. At that point small frameworks will lose all their appeal for non-trivial projects.