Can anyone recommend a sequential order of books and resources to read and learn to learn Python and Django?<p>Suppose my objective is to create a simple webapp and host it on Google App Engine, what should I be reading when?<p>I've started with Learning Python the Hardway and I'm currently going through Head First Python. Next up on my reading list is The Definitive Guide to Django Web Development Done Right.
Just launched my first webapp, built to teach myself Python and Django. Don't get too wrapped up in books and just think of a webapp to build... and then do it. I know infinitely more now because I would think, "I need so and so" and through Googling/Stack Overflow/friends, I'd figure out how to launch it.<p>I did Learn Python the Hard Way to start, then the main Django tutorial as well as Kenneth Love's blog tutorial at <a href="http://gigantuan.net/" rel="nofollow">http://gigantuan.net/</a> (as well as lots of random tutorials/blog posts). Otherwise, I haven't read any books.<p>The app launched last night: <a href="http://www.weddinginvitelove.com" rel="nofollow">http://www.weddinginvitelove.com</a><p>tl;dr: Make sure you're learning by doing. Make a random web app, it'll help things "stick" way faster.
Django's own documentation is extremely good. You can work through its tutorials to get going.<p>But start with a python tutorial. I don't know which is the best, but other people should be able to help you.<p>I would suggest this order of learning though:<p>1. Python
2. Django
3. App Engine<p>Each introduces its own elements, so you're better proceeding step by step. Obviously you don't have to master python to get going with django, but you want to be comfortable.
The first step is to learn python. If you already know how to program this should be quick (< 72 hrs) following the official tutorial:<p><a href="http://docs.python.org/tutorial/" rel="nofollow">http://docs.python.org/tutorial/</a><p>The second thing, go through the django tutorial which should take < 48 hrs:<p><a href="http://docs.djangoproject.com/en/1.2/intro/tutorial01/" rel="nofollow">http://docs.djangoproject.com/en/1.2/intro/tutorial01/</a><p>Third, come up with a project for yourself and start trying to make it happen using the django docs and stackoverflow as references. This is the most important step. Don't worry too much about the right way to do things or efficiency, just get something working.<p>Also, don't worry about deploying your app (i.e. getting it running behind nginx, etc). Just use a sqlite3 database and the django dev server until you're comfortable with the different pieces of django.<p>Take a look at how the generic views, the contrib apps, and the popular 3rd party apps are written to get some feel for what are good practices in writing apps.
If you're looking to host on App Engine, I strongly recommend <a href="http://oreilly.com/catalog/9780596522735" rel="nofollow">http://oreilly.com/catalog/9780596522735</a><p>It is a great intro to App Engine & the datastore generally but also puts a bit more emphasis on Python/Django than on Java development, so it is well suited for Python devs.