War, famine, and economic upheaval continue to produce grave humanitarian issues in the Global South. Social media provides an invaluable resource to advocacy organizations who work to call attention to such crises and raise funds to help mitigate them. Before the advent of such sites, advocacy organizations were either forced to purchase expensive advertising in newspapers or on television or depend upon word of mouth to raise their profile. The viral spread of advocacy campaigns illustrates the potential of how activism to address humanitarian crises can spread rapidly across sites such as Facebook and Twitter. At the same time, social media has created an enormous competition for public attention. Though all advocacy organizations now have the potential to create a viral social media campaign by creating accounts on Facebook, Twitter, or Instagram, increased access to such tools has also heightened competition dramatically. Even advocacy organizations which succeed in creating viral social media campaigns to call attention to their cause face another formidable challenge: so-called “slacktivism,” or the campaigns that result in a large volume of likes, retweets, or other forms of public engagement, but generate relatively little concrete action to address the cause such as major increases in fundraising or people who volunteer to work within advocacy organizations or lobby their governments to create social change. This course will introduce students to the large, interdisciplinary body of research that examines how advocacy organizations generate public concern for their cause. In addition, it will provide students with the skills necessary to analyze social media data in order to assess the public impact of a social media campaign using the R programming language.
This course requires no prior knowledge of computer programming or social science. Students will obtain basic skills that will enable them to automate collection of social science data from social media sites, classify these highly unstructured data into discrete variables that can be analyzed using conventional social science models, and analyze them using a combination of techniques that includes screen-scraping, natural language processing and machine learning. We will also discuss the complex ethical and legal issues that arise when working with these novel sources of data.
This class alternates between discussions of assigned readings and “labs” where you will learn how to code computational social science. You must complete the assigned reading before each discussion class. However, You will complete lab assignments after each lab class. Note that there is no separate lab meeting outside the regular class hours, rather, every other one of these meetings constitutes a lab.
The required readings for this course are relatively short. You are responsible for understanding the readings. Make use of your fellow students, the Internet, a dictionary, and me to ensure that you understand the readings. Discussion sections will be used for substantive discussion and further exploration of the implications of the course readings, not for grasping basic concepts. Remember that this syllabus is a “living document.” By this I mean I reserve the right to change the reading assignments in response to your feedback as well as my own sense of our group achievement. No changes will be made without at least one week’s notice.
Your participation grade will be calculated on a continuous scale from 0 to 100 in order to reflect the quality of your contribution to classroom discussions. Once again, classroom discussions are not intended to clarify key concepts, instead, we will be discussing the pros and cons of each authors’ arguments, or extensions thereof. Therefore, your participation grade assesses the extent to which you have thoughtfully engaged with the reading material.
After each “lab” class, you will have a take-home assignment that will be graded on the following scale: 100, 90, 80, 0. Lab assignments will require you to submit your code as an html file (I will explain how to do this in detail well before the first assignment is due).
The bulk of your grade is determined by a 10-15 page final paper that will present an original research project that collects some type of social media data or other form of digital data in order to study how to help a non-profit group of your choosing call attention to their cause. This paper must include at least three visualizations that present analyses of the data you have collected as well as a summary that explains a) the importance of your research question; b) the theories you are using to address the social problem; c) the methods you used to collect and analyze the data; d) the meaning of your visualizations/results; and e) the implications of your research.
Your course grade will be calculated as follows:
Lab Assignments 30%
Final Paper 50%
Readings and resources
Greene, Joshua, 2013. Moral Tribes: Emotion, Reason, and the Gap Between, Penguin
Klein, Naomi. 2014. This Changes Everything, Simon and Schuster.
Zaki, Jamil. 2019. The War for Kindness: Building Empathy, Crown.
Annotated Computer Code
At the end of each class, I will upload the code we write together in order to help you complete the lab assignments.
The field of computational social science is going so rapidly that none of the resources I give you will remain at the cutting edge for long. You will almost certainly encounter issues unique to the data you collect for your final paper and/or incompatibilities between software packages and/or your computer. Stack Overflow is a website where computer programmers help each other solve such problems. Individuals ask questions, and others earn “reputation points” for solving their problems—these reputation points are awarded by the person who asks the question as well as other site users who vote upon the elegance/efficiency of each solution.
Many of the most important advances in computational social science appear first on Twitter or blogs. I therefore encourage you to open a Twitter account- if you don’t already have one- and follow the authors we read, or check out the people I follow. Of the many blogs that you might read, I recommend R Bloggers, which provides a concise overview of new functions in R as well as solutions to common problems faced by computational social scientists, as well as those in other fields.
Week 1.1:September 17: Moral Tribes, Introduction and Part 1 (pgs. 1-66)
Week 1.2: Lab #1 (Writing your first line of code)
Week 2.1: Moral Tribes, Part II (pgs. 105-146)
Week 2.2: Lab #2 (Mining Data from Twitter Part 1)
Week 3.1: Moral Tribes, Part III (pgs. 147-210)
Week 3.2: Lab #3 (Basic Data Structures)
Week 1.1: Moral Tribes Part V (pgs. 289-356)
Week 4.2: Lab #4 (Data Wrangling Part 1)
Week 5.1: The War for Kindness, Chapters 1 & 2 (pgs. 1-51)
Week 5.2: Lab #5 (Data Wrangling Part 2)
Week 6.1: The War for Kindness, Chapters 3 & 4 (pgs. 52-93)
Week 6.2: Lab #6 (Basic Programming Part 1)
Week 8.1: The War for Kindness, Chapters 5 & 6 (pgs. 94-143)
Week 8.2: Lab #7 (Basic Programming Part 2)
Week 9.1: The War for Kindness, Chapters 7 & Epilogue (pgs. 144-173)
Week 9.2: Lab #8 (Data Visualization Part 1)
Week 10.1: This Changes Everything, Introduction, Chapters 1 & 2 (pgs. 1-64)
Week 10.2: Lab #9 (Data Visualization Part 2)
Week 11.1: This Changes Everything, Chapters 4 & 5 (pgs. 120-190)
Week 11.2: Lab #10 (Text Analysis Part 1)
Week 12.1: This Changes Everything, Chapters 9 & 10 (pgs. 293-366)
Week 12.2: Lab #11 (Text Analysis Part 2)
Week 13.1: This Changes Everything, Chapters 11, 12, &13 (pgs. 367-418)
Week 13.2: Lab #12 (Open Session: Help with Final Projects)