Should I take this course?
General description
This course is open to graduate and undergraduate students at the University of Chicago. Usually, students who take this course come from a wide range of departments such as Data Science, Sociology, Psychology, Political Science, etc. Typically students are looking to learn programming and analytic skills they can apply to master’s projects or dissertation research.
I start from the perspective that you want to analyze social science data, and programming is a means to that end. In other terms, this is not a CS course on programming: you won’t not become an expert programmer, but will learn the basic skills and techniques necessary to conduct computational social science research, and gain the confidence necessary to learn new techniques as you encounter them in your own research.
We will cover many different topics in this course, including:
- Programming techniques (e.g., loops, conditional statements, functions)
- Writing reusable and clear code
- Problem-solving and debugging programs for errors
- Visualizing data
- Obtaining, importing, and munging data from a variety of sources
- Generating reproducible research
You will need to bring a computer to class each day. Class sessions are a mix of lecture, demonstration, and coding. It is essential to have a computer so you can follow along and complete the exercises. All class materials (including slides and notes) will be made available for your review.
If you have never programmed before prepare for a shock. This class will prove to be very beneficial if you stick with it, but that will require you to commit for the full course. I guarantee that there will be a rough learning curve, but the good news is that they will be rough for everyone! Your classmates are learning with you and you can learn from on one another to get through the worst part of the learning curve.
Who is this class for?
Meet some of the types of students you will find in this class. If you do not find yourself in these types, please reach out to me to assess whether this course might be a good fit for you.
Jeri
- Starting points
- Ph.D. student in Sociology
- Has experience analyzing data in Stata
- Feels comfortable with regression and other stats methods
- Tried to learn Git on her own once, quickly became frustrated and gave up
- Needs
- Wants to transition from Stata to R
- Will be analyzing a large-scale dataset for her dissertation
- Seeks a reproducible workflow to manage her data projects
Ryan
- Starting points
- Entering the MAPSS program
- Undergraduate degree in journalism
- Hasn’t taken a statistics class in years
- Took an online course of introduction to R, but hasn’t used it in his day-to-day work
- Needs
- Writing a master’s thesis in a single year
- Expects to analyze a collection of published news articles
- Wants to understand code samples found online and adapt them to his own work
Fernando
- Starting points
- Third-year undergraduate student
- Majoring in political science
- Has taken general education math/stats courses
- Does not have programming experience, but isn’t afraid to tackle a new challenge
- Needs
- Wants to work as a research assistant on a project exploring the onset of civil conflict, which is run in R
- Will start contributing to a new research paper next quarter
- Wants to produce high-quality visualizations
Fang
- Starting points
- First year grad-student
- Background in psychology, plans to apply for doctoral programs in marketing
- Has experience using Excel, SPSS, and Stata
- Needs
- Is going to analyze data collected by her lab members in the next six months
- Wants to produce analysis notebooks that are easily shareable with her colleagues
- Expects to take courses in machine learning and statistics which require a background in R
Acknowledgments
- Stock photos of student learners by Generated Photos
- This page has been developed starting from Benjamin Soltoff’s “Computing for the Social Sciences” course materials, licensed under the CC BY-NC 4.0 Creative Commons License.