Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Introduction to Python and Django
Python
branch: master

Merge pull request #3 from ivancho1707/patch-3

List comprehension example in 1-intro correction
latest commit 54d925e3bf
@NahimNasser authored

README.md

Django Unchained: An Introduction to Python and Django

By:

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

Description:

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

Outcomes:

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.

Prerequisites

  • 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).

Topics

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.

Flow:

  • 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 https://docs.djangoproject.com/en/1.4/intro/tutorial01/. 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.

Something went wrong with that request. Please try again.