The course syllabus for Databases for Public Policy (CAPP 30235).


Lectures are twice a week, Tuesday and Thursday 9-10:20 am in Ryerson 277. Attendance is mandatory and you are expected to arrive on time and participate in class.

Topics Covered

The course will cover the foundations of Database Management Systems (DBMS). This includes data models, database design, SQL, core database system components (e.g. transactions, recovery, query processing), distributed databases, NewSQL/NoSQL, and systems for data analytics (e.g. column-orientated databases, data warehouses).

The goals for this class are for you to have:

  • The ability to model and design a database
  • An understanding of the core components of a database management system
  • The ability to write SQL
  • An understanding of the differences between databases and data models


Grades will be based on the following criteria:

  • Class Participation: 10%
  • Exams: 40%
  • Homework/Projects: 50%


  • Get Ubuntu 14.04+ running on bare metal or VM VM is preferred. Allocate a few GB of memory if possible. Allocate at least 20 GB of disk space. More if possible.
  • Ability to install open source databases (psql and others).
  • Install python and have the ability to install python libraries
  • Install git. Setup a github account. Learn GIT
  • Sign up for Piazza

Database System Concepts by Silberschatz, Korth, and Sudarshan. Other paper readings will be assigned.


Adam Dziedzic ady@uchicago.edu is the course TA.

Office Hours

Aaron’s office hours are in Ryerson 150. Tues 3-4 pm

Adam’s office hours are TBD.



Please send emails to aelmore@cs.uchicago.edu with [CAPPDB] in the subject heading.


Don’t do it. Guidelines if you need them

Issues with Grades

You must wait 24 hours to talk about issues with grading and it must be sent via email.

Cell Phones

Please keep your cell phones on silent/vibrate while in class.

Late Projects and Homeworks

Each day an assignment is late, it is marked down 20%. You have three total slack days to use at your discretion – extensions beyond this will be under extreme circumstances. Any assignment due after the reading period (last class before final) is not eligible for slack day use. An online form will be available for using slack days.