Quitter's journal: After trying for half of week of getting some stuff going on appengine here is what I observed.
The runtime is completely different. They do try however to patch the normal python runtime in the sdk to have the same characteristics as the runtime on their servers but differences fall through the cracks. The have some sort of qa process for the sdk (probably to compensate for these differences) - I bet it must be very cumbersome to maintain it.
In the sdk you have so little python libraries available and what makes matters worse is that they are outdated so you have to do additional evil monkey patching to use newer versions.
Ok, so I started with the idea of a django app - but I gave up when i found the one in the sdk is very old (0.96) and I still need to zip it (django slightly goes over the 1000 file limit). So if I start zipping stuff I might just as well do it the right way and use eggs and setuptools - well, I've moved to that idea and still didn't work out due to the fact setuptools can barely run in the appengine runtime.
Also, thinking on the zips in retrospective - they aren't such a great idea. Why the hell would I waste cpu cycles on zips?
And speaking of the 1000 file limit, their filesystem must work real bad with many files. Guido said on the file limit: "it exists because of the sheer number of apps. E.g. 1,000,000 apps == 1,000,000,000 files". Is 1B files too much? For Google!?
Come to think of it a bit, the only advantage of appengine is the fact is almost free.
LE: corrected the arithmetic.