As I move on from the stage of just “getting my feet wet” with the Python-based web framework Django, I’ve found a lot of good resources for learning that weren’t very obvious initially. Although everyone’s case may be different, I’ve found the following strategy to be very helpful for my learning.
Get your hands dirty. After getting a feel for what Django is, start the tutorial. I recommend skipping version 0.96 and going straight to the development version of Django because there have been a lot of exciting new features added since 0.96. As long as I’ve been sure to keep up to date with recent changes, I haven’t had any problems using this development version.
Back up often! Make sure you keep copies of different versions of your files. Doing this will help your programming from the beginning, and it encourages you to improve your code instead of being afraid to touch it for fear of breaking something.
Read the Manual. I admit that I usually don’t understand the things I’ve read in the Django Documentation. However, the more I play around with Django, the more I start to understand in the documentation.
Get to know the community. Subscribe to the Django Community feed and find some authors you like to read. Skim the articles that come across and browse through blog archives for more information on subjects you aren’t familiar with yet. Some of my favorites Django authors are James Bennett and Malcolm Tredinnick, although there are plenty of others worth reading.
Take a look at other’s work. One place to start is the DjangoResources page on the wiki. Find a simple application and open it up – figure out why it works the way it does. There are plenty of places to look for this type, including Django Pluggables and Django Sites.
Don’t be afraid to ask! If you can’t find help on a given topic, try a few web searches. If that doesn’t give you what you’re looking for, ask for help on the django-users mailing list. As you learn more, be sure to give back to the communities that have helped you get to where you are now because there are new users who won’t have your experience, and sometimes freshly-learned information can be easier to share with newbies since you’ve been in their shoes recently.
As Django moves toward a 1.0 release in just a few months, there’s never been a better time to learn Django.