Skip to content

BNOTIONS/django-unchained

Repository files navigation

Django Unchained: An Introduction to Python and Django

By: Shah Warraich and Nahim Nasser

#Course Outline

  • Date: Thursdays
  • Time: 6:30pm - 8pm (1.5HR)
  • Cost: Free

##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.

Releases

No releases published

Packages

No packages published

Languages