Dad Joke
- Why did the nearsighted man fall in the well?
- He couldn’t see that well!
Programming provides exciting opportunities for social scientists
- Digital data is exploding and programming is required to do research at scale
- Algorithms mediate more and more interactions and understanding programming can help us to analyze them
- Computational methods let us do new things
- Natural language processing
- Simulation
- Large-scale experiments
- There is value in “thinking like a computer”
Goals
- Learn basic programming
- Collect data using APIs
- Perform basic visualizations using Pandas
- Learn about fundamental computational social science techniques
- Read and evaluate computational social science research
- Meaningfully progress a research project that uses computation
This is an intense class intended to teach the basics of skills used by computational social scientists
- But we can do it!
- Module 1: Python for Everybody
- Module 2: Pandas, visualizations, and APIs
- Module 3: Data cleaning, version control, etc.
- Module 4: Work on final project
Day-to-day
- Lecture
- Recorded lecture on coding topic
- Notebook to follow along - download and run each day
- Class time focused on confusions + Coding Challenges
- Coding Challenges
- Random “cold calling” for reviewing solutions
- Example paper
- One person will present each Thursday + lead discussion
- Others will be prepared to discuss
- Co-working
Readings
- Getting kind of stale
- Help me find new things to read!
- Sign up to present twice on Google Spreadsheet
- Present the work as though you were the researcher
- Everyone else will skim and be prepared to ask questions
Coding Challenges
- Exercises from the book
- Jupyter Notebooks
- Suggested approach:
- Use AI (ChatGPT, Github Copilot, Claude, etc)
- Make sure you understand the result!
- Ask questions on Element
- Look up solutions (where available)
Coding Challenge Reviews
- The coldcaller will choose someone to share in class
- Do you want solutions posted as well? We can use Element rooms
Final Project
- Default option
- Jupyter notebook
- Short intro + Methods + Result section of paper
- Replication
- Do what is best for your future goals
- Let’s meet if you have questions
Project Milestones
- Final project
- Identify a dataset and general plan (September 5)
- Project planning doc (October 15)
- Project presentation + report (December 3 and 5)
Grades
- Goal is learning
- Two self-assessment reflections
Wiki
- Schedule
- Links to readings
- Slides and videos may be from older versions of the class
- I will try to stay 1-2 weeks ahead
Brightspace
- Readings
- Example Projects
- Announcements
Element
- Post questions and help each other
- Post solutions to homework problems