CIS 192: Python Programming

Spring 2019

Welcome! Python is a powerful language with both imperative and functional paradigms. As one of the fastest growing languages of all time, Python is widely across academia and industry. This course aims to not only teach you valid Python syntax, but also introduce you to the rapidly growing ecosystem. In particular, this course will familiarize you with algorithms, game development, web development and machine learning through programming assignments. The course also features a final project of your choosing! In past years, these final projects have been very impressive uses of Python.


Logistics

Instructor: Arun Kirubarajan
Time: Thursdays from 12:00 to 1:20 PM in Towne 309

Office Hours:
Pranab Krishnan @ Harnwell Mezzanine, Sundays 6 - 8 PM
Cassandra Li @ Weiss Tech House, Thursdays 3 - 5 PM
Sarah Payne @ Harrison Mezzanine, Wednesdays 6 - 8 PM
Arun Kirubarajan @ Weiss Tech House, Tuesdays 12 - 1 PM


Week Topics Resources Homework
Week 1 Logistics, Basic Python Syntax None None
Week 2 Data Structures, Functions Code Homework 0
Week 3 Args, Kwargs, Classes, File I/O, Functional Programming Code
Week 4 Python Packages, Virtual Environments, Git, Imports Code (Shell)
Week 5 Web Development Basics, REST APIs, Flask Framework Lecture Notes Homework 1
Week 6 Authentication, SQL and ORMs, Django Framework
Week 7 Account Systems, Django Forms, Docker Deployment