MACS 305001 - Computing for the Social Sciences

All class meetings and office hours will be held on Zoom. Links to these meetings can be found on the Canvas site (UChicago authentication required).
  • Instructor: Benjamin Soltoff
  • Teaching Assistants
    • Natalie Ayers
    • Warren Liow
  • Meeting day/time: MTuWTh 10-12pm
  • Meeting location: On Zoom
  • Office hours (on Zoom)
    • Benjamin: MW 12-1pm
    • Natalie: M 5-7pm; W 3-5pm
    • Warren: TuTh 4-6pm
  • Prerequisites: None
  • Requirements: Internet connection and a computer

Course Description

This is an applied course for social scientists with little-to-no programming experience who wish to harness growing digital and computational resources. The focus of the course is on generating reproducible research through the use of programming languages and version control software. Major emphasis is placed on a pragmatic understanding of core principles of programming and packaged implementations of methods. Students will leave the course with basic computational skills implemented through many computational methods and approaches to social science; while students will not become expert programmers, they will gain the knowledge of how to adapt and expand these skills as they are presented with new questions, methods, and data.

Course Objectives

By the end of the course, students will:

  • Construct and execute basic programs in R using elementary programming techniques and tidyverse packages (e.g. loops, conditional statements, user-defined functions)
  • Apply stylistic principles of coding to generate reusable, interpretable code
  • Debug programs for errors
  • Identify and use external libraries to expand on base functions
  • Apply Git and GitHub workflows for version control
  • Implement best practices for reproducible research
  • Implement machine learning algorithms
  • Visualize information and data using appropriate graphical techniques
  • Import data from files or the internet
  • Munge raw data into a tidy format
  • Scrape websites to collect data for analysis
  • Parse and analyze text documents

  1. aka CHDV 30511/ENST 20550/MACS 20500/MAPS 30500/PLSC 30235/PSYC 30510/SOCI 20278/SOCI 40176/SOSC 26032 ^
Benjamin Soltoff

Benjamin Soltoff

Assistant Senior Instructional Professor in Computational Social Science & the College

University of Chicago


Benjamin Soltoff is Assistant Senior Instructional Professor in Computational Social Science & the College, as well as the Associate Director of the Masters in Computational Social Science program at the University of Chicago. He is a political scientist with concentrations in American government, political methodology, and law and courts. Additionally, he has training and experience in data science, big data analytics, and policy evaluation. He currently teaches courses in social scientific research design, computational modeling, data science, math/statistics, and data visualization.