Welcome to Programming and Data for Policymakers! We're excited that you've chosen to spend your J-term rolling up your sleeves and writing some code! Please make sure to do the following before the first day of class:
- Fill out the pre-course survey.
- Join the class Slack chat.
If you're new to programming, it is highly recommended that you start on the intro assignment (see below) before the course starts. Please also see the required course materials in the "Additional Course Materials" section below.
Knowing programming is not a prerequisite for this course, but having experience with some of the basic concepts will help things move a little more smoothly. We will not be assuming prior knowledge for the class, so don't worry if its all new to you. If you're new to coding, we highly encourage you to complete the Introduction (Chapters 1-8) and start on Conditions & Debugging (Chapters 11-14) of Python's Not (Just) For Unicorns before the class starts.
- Chapters 1-8, Introduction [Due by Tues. Jan 2]
- Chapters 11-14, Conditions & Debugging [Due by Fri. Jan 5]
- Chapters 16-22, Lists & Loops [Due by Sun. Jan 7]
- Chapters 24-27, Dictionaries [Due by Tues. Jan 9]
While only the introduction is due on the second day of class, if you're feeling good, feel free to keep going! Completing this assignment ahead of time will allow you to stay focused on the core content of the class during the J-term.
While the pre-work is a Python tutorial, this isn't a Python class. We will encounter various technologies in the course, but this tutorial should help you get in the mindset of learning code. It will help you:
- Build the muscle memory of writing code (not misspelling commands, closing brackets you open, etc...)
- Become familiar as well as some basic concepts (variables, lists, strings, logic). It will be easier to learn and use these concepts in class if you've encountered them before.
- Help you learn to think through coding problems and teach you some of the skills you will need to debug and get yourself un-stuck
The goal, for now, is not mastery, but familiarity.
If you have any questions or concerns, feel free to message the #help
channel in the class Slack!
- A personal computer (Mac, Linux or Windows 10+) that you have permission to install software on.
- Elements of Scrum by Chris Sims and Hillary Louise Johnson
- SCRUM: A Breathtaking Brief and Agile Introduction by Chris Sims and Hillary Louise Johnson
(I like to have these books handy as refernces, but if you want to save a few bucks, the Kindle editions are cheaper and can be read electronically on your browser through the kindle cloud reader even if you don't own a kindle.)