Introduction to Python and Django
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Django Unchained: An Introduction to Python and Django


Shah Warraich (Software Engineer - MarketIQ)

Nahim Nasser (Software Engineer - BNOTIONS)

#News and Announcements

The course has ended --- A reboot of the series will be starting in the coming weeks. Stay tuned for updates

#Course Outline


Participants will leave this session with an understanding of pythonic principles, django's architecture, and good programming practices.


By the end of the series, participants will have created a fully functioning django web application, and should have a background on the capability and potential of the both python and django.


  • Participants should be familiar with object-oriented programming.

##Software Required

  • Code editor (I use Sublime Text 2, but feel free to use whatever you like)
  • Web browser
  • Python 2.7
  • Terminal (Mac) or Powershell (Windows)

##Hardware Required

A computer / laptop able to run a modern web browser (Chrome, Firefox, Opera, Safari, IE9+), and a code editor (ie. Sublime, Notepad++, Eclipse, Pycharm, etc).


##Session 1: Intro to Python This session will discuss pythonic syntax, structure, and principles. Useful built-in functions, and data structures critical for use with django will be covered. We will be using the python interactive interpreter for a portion of this lesson.


  • Intro to Python: Why Python?
  • Data Structures: Strings, Integers, Floats, Dictionaries, Lists, Tuples, Sets. Talk about differences and use cases.
  • Statements and Functions: if, while, for, lambda, filter, sorted, map, dir, help, pdb

##Session 2: Django's architecture, design, and principles A high level overview of the various components in a django web application, and how they interoperate with each other. Django's MVC architecture will be broken down. Django's design philosophies will also be discussed.

##Session 3: Building a django application Part One An interactive session where we will build a fully functioning django application. We will walk through the tutorial presented on It is very well documented and will familiarize the student with the djangoproject website for future use. We will go over part 1 and part 2 in this session. This will cover core concepts on setting up a project, implementing models and utilizing the admin functionality.

##Session 4: Building a django application Part Two Part 3 and 4 will be presented in this session. We will cover views and templates here. After this session the student should be equipped with all the basic skills to set up a website.

##Session 5: Craftsmanship Core elements will be reviewed as students will attempt at building features for a website. They can choose from a pre-selected set of tasks or decide on something themselves. Students will present in front of the class and have their code ripped apart.

##Session 6: Natural Language Processing with Python Fundamental concepts of natural language processing will be discussed. We will build a basic spam filter using Pythons NLTK library.

##Session 7: Scalability with Django Database and server architectures that allow for scalability will be presented.