You will get the most out of this class if you (1) attend class, (2) complete all the readings, and (3) engageTake detailed notes, work through the example code and try to understand it, have vivid dreams about statistics, etc.

with the readings.Also (4) ask for help!

To encourage attendance and preparation, I use an honor-system-based self-reporting system. At the beginning of every class, I will post a quiz on iCollege with the following questions:

  1. Are you here in class today?
    • Yes (3.5 points)
    • No (0 points)
  2. How much of today’s reading did you finish?
    • 100% (6 points)
    • 75–99% (5 points)
    • 50–74% (4 points)
    • 11–49% (2 points)
    • 0–10% (0 points)
  3. How well did you read?
    • I was engaged and read carefully (6 points)
    • I was fairly engaged and read fairly carefully (4 points)
    • I skimmed it (2 points)
    • I didn’t read it at all (0 points)

Each day is worth 15.5 points. It is unlikely that you’ll score a 15.5 every day.But it would be amazing if you did!

I will shift the distribution of everyone’s final preparation score up at the end of the course.

Problem sets

To practice writing R code, running inferential models, and thinking about causation, you will complete a series of problem sets.

There are 10 possible problem sets on the schedule. You must turn in 8 of the 10 problem sets. You need to show that you made a good faith effort to work each question. I will not grade these in detail. The problem sets will be graded using a check system:

You may (and should!) work together on the problem sets, but you must turn in your own answers. You cannot work in groups of more than four people, and you must note who participated in the group in your assignment.


The objectives of this class include “Become curious and confident in consuming and producing evaluations,” “Run statistical models,” and “Share your analyses and data with the public.” To help you with this, you will write a code-through tutorial of some program evaluation principle or approach.

One of the reasons R is so popular is because the R community is exceptionally generous and open and sharing.So are Python and other modern open source languages too.

The internet is full of tutorials and code-throughs where people explain how to do something interesting with R.

You will write one code-through or tutorial during the semester on a of your choice (related to program evaluation and causal inference, of course). Complete details for the assignment (along with a lot of examples to look at) will be given later. You will complete this on your own, but you can get help from your team (but you can’t all write about the same topic).

The R-Weekly e-mail newsletter includes dozens of these every week, and Mara Averick (chief tidyverse advocate at RStudio) regularly tweets out links to different posts as well. Here are some others examples to give you a jist of what you’ll be doing: Yours won’t be nearly as complicated as these, by the way. Nor do they need to be. You’ll illustrate and explain something simple.

This assignment will also be graded using the same check system from the problem sets.


There will be two exams covering (1) program evaluation, design, and causation, and (2) the core statistical tools of program evaluation and causal inference.

You will take these exams online through iCollege. The exams will be timed, but you can use notes and readings and the Google. You must take the exams on your own though, and not talk to anyone about them.Again, be honest.

I will post examples of exam questions prior to the actual exams.

Final project

At the end of the course, you will demonstrate your knowledge of program evaluation and causal inference by completing a final project.

Project details will be posted later once I settle on the best form for it. This much is certain so far:

There is no final exam. This project is your final exam.