courses.pgbovine.net

Course Schedule and Due Dates

This schedule is subject to change.

All lecture videos are available here.

Part 1: Deep Dive into the Python Interpreter

Week 1

Sep 3 – Welcome to CSC 253, CPython interpreter overview

Week 2

Sep 8 – Python opcodes and main interpreter loop

Sep 10 – Frames, function calls, and scope

  • Include/code.h
  • Include/frameobject.h
  • Objects/frameobject.c
  • Python/ceval.c

Sep 12 – Code annotation assignment 1 due at 6:00pm

Week 3

Sep 15 – Code annotation assignment 1 discussion

Sep 17 – PyObject: The core Python object

Week 4

Sep 22 – Example Python data types

  • Objects/abstract.c
  • Objects/stringobject.c

Sep 24 – Code objects, function objects, and closures

  • Include/code.h
  • Include/funcobject.h
  • Objects/codeobject.c
  • Objects/funcobject.c

Sep 26 – Code annotation assignment 2 due at 6:00pm

Week 5

Sep 29 – Code annotation assignment 2 discussion

Oct 1 – Iterators

  • Include/iterobject.h
  • Objects/iterobject.c
  • Objects/abstract.c
  • Python/ceval.c

Week 6

Oct 6 – User-defined classes and objects

  • Include/classobject.h
  • Objects/classobject.c
  • Objects/abstract.c
  • Python/ceval.c

Oct 8 – Generators

  • Include/genobject.h
  • Objects/genobject.c
  • Python/ceval.c

Oct 10 – Code annotation assignment 3 due at 6:00pm

Week 7

Oct 13 – No class, fall term break

Oct 15 – Code annotation assignment 3 discussion, release midterm blog post assignment

Week 8

Oct 20 – No class, work on your midterm blog post

Oct 22 – No class, work on your midterm blog post

Oct 24 – Midterm blog post due at 6:00pm

Week 9

Oct 27 – In-class critique of midterm blog posts

Oct 29 – No class, Professor Guo out of town

Oct 31 – Midterm blog post revisions due at 6:00pm

Part 2: Software Development Final Project

Week 10

Nov 3 – Project ideas brainstorming

Nov 5 – Project ideas brainstorming

Nov 7 – Final project blog post 1 due at 6:00pm

Week 11

Nov 10 – Blog post 1 discussion

Nov 12 – No class

Week 12

Nov 17 – No class, Professor Guo away

Nov 19 – Final project progress update

Nov 21 – Final project blog post 2 due at 6:00pm

Week 13

Nov 24 – Final project blog post 2 discussion

Nov 26 – No class, Thanksgiving break

Week 14

Dec 1 – No class, Professor Guo out of town

Dec 3 – Final project progress update

Week 15

Dec 8 – Final project presentations (class meets until 5pm)

Dec 10 – No class

Dec 12 – Final project blog post 3 due at 6:00pm