Key Resources to Learn Python & Django

Ok so you want to learn about Python and Django. Well read on and learn.

Python vs Other Languages

Understand the difference between Django and other languages.

Pythonic Style Coding

Advanced Python Features

Certain programming concepts in Python just don’t exist in Java, for instance closures and meta-programmin. Read the following articles to understand these concepts.

Python/Django Tutorials

These tutorials will help you get started and warmed up if you have programmed before. A must try. Some are videos, examples.

Best of Django Documentation

Read these parts of the official Django docs

  • Managers / Querysets how Django interacts with relational databases.
  • Request-Response / User, HTTP request information. The concept of Users and authentication is built into Django
  • Views / Templates – A good introduction on how the application-level code connects to the client-side HTML/JS/CSS code.
  • Django workflow handle requests coming from the HTTP server. This will help you understanding middleware, context processors and views work together and the sequence of events firing each. Read request/response cycle info from Simon Willison and James Bennett detailed information.

Python Tools

  • IPython – Although not specific to Django, IPython is a huge improvement over the standard Python shell. With its tab complete feature, it saves me a few extra seconds of distraction whenever I can’t remember a function or module name.
  • PDB / iPDB – The Python debugger tool is incredibly helpful going through a new piece of code, giving power to stop code at arbitrary points and inspect the variables at those points. iPDB gives you the power of PDB along with the features of iPython.
  • Eclipse for Django, if you use Eclipse, this is how to use with Python/Django
  • Sublime text editor, I’ve tried them all this one just works best.

Additional Resources