--- tags: Homeworks-Summer21 --- # Homework 0: Perspectives on Socially-Responsible Computing ## Assignment Overview This assignment aims to introduce you to the key socially responsible computing (SRC) themes that undergird the technical content of CSCI0180. In particular, CSCI0180 will focus on systematically evaluating a program’s components and context to identify potential societal or environmental impacts of a program within and beyond its intended effects. ## Learning Objectives - Technical and Societal Impact Analysis: Identify potential societal impacts of a program on individual users or populations - Testing and Validation: Discuss how to detect whether a system has adverse impacts on individual users, populations, or organizations ## Task "Be Careful What You Code For" is a talk by danah boyd [she does not capitalize her name]. boyd is a technology and society researcher at Microsoft, the founder of the Data & Society Research Institute, and a Brown CS alum. Read a [summary of her talk](https://points.datasociety.net/be-careful-what-you-code-for-c8e9f3f6f55e) or watch the video of it (linked at the bottom of the summary), then answer the questions listed below each item, using 5-8 sentences per question (please clearly label your answer to each question within your document). **Question 1:** boyd identifies two problem areas for coders: ‘Area One: Environmental Consequences’ and ‘Area Two: Social Consequences’. Choose **one** of the following articles, and describe how the programs/technologies mentioned are contributing to one (or both) of these problem areas. - *Technology: GEDMatch law enforcement match feature and/or GEDMatch data storage technology* https://www.nytimes.com/2020/08/01/technology/gedmatch-breach-privacy.html - *Apple’s New Privacy Feature (and what it means for advertisers)* *https://www.cnn.com/2021/04/26/tech/apple-tracking-transparency-feature/index.html - *Technology: Health Insurance signup technology* (www.HealthCare.gov) https://digital.hbs.edu/platform-rctom/submission/the-failed-launch-of-www-healthcare-gov/ - *Technology: Predictive Policing Algorithms* https://www.theatlantic.com/ideas/archive/2019/06/should-we-be-afraid-of-ai-in-the-criminal-justice-system/592084/ - *Technology: Coinbase and other cryptocurrency transaction platforms* https://www.nytimes.com/2021/04/14/climate/coinbase-cryptocurrency-energy.html - **CONTENT WARNING**: mentions of suicidal ideation. *Technology: algorithms that display Google Search ads and results* https://www.nytimes.com/2019/07/07/opinion/google-ads.html To launch your (free) subscription to the New York Times, go [here](https://library.brown.edu/info/eresources/nytimes/). **Question 2:** boyd argues that technologists must conscientiously think about the social and environmental costs of their code and suggests that it is essential for code to be evaluated or audited. - Think about the article you just read, and identify the agent(s) involved in creating and/or spreading that technology. - For every program, there are individuals and organizations who will interact with or be impacted by the program; we call these *stakeholders*. For example, a non-exhaustive list of stakeholders of a Google search include the searcher, Google, advertising agencies, companies who sponsor the ads, and the subjects of the results. - List the stakeholders in the technologies from your article. - Given the social and/or environmental problems that the code has produced, what part of boyd’s suggested audit do you think the system's creator(s) missed? Discuss the impact of those oversights on the stakeholders you identified. If you're not sure how to think about the second question, you might take ideas from this table, where "agency" refers to which actions a stakeholder can do within the system. Using the table isn't a requirement. Use it as a guide to combinations of issues and system components that might be relevant to a given stakeholder. We welcome ideas that extend beyond these suggestions. | | Data | Agency | Algorithm | | -------- | -------- | -------- | ---- | | **Fairness, Inclusivity** | | | | **Privacy, Reputation** | | | | **Sustainability (both data and physical resources)** | | | ## Grading Our goal with this assignment is to get you started thinking about these issues, and to give you practice responding against the rubric that we will use for grading your SRC responses during the course. (*We are finalizing the rubric based on the just-arrived spring course evals, and will add it to the handout by the end of the weekend.*) We want you to practice writing good arguments and learning to ask the right questions when designing code. These skills will be critical to your success and impact as a programmer—part of determining “good” code is space, runtime, and style, but just as important are the actual impacts of that code on society. You want to make sure that the code you’re creating is serving people in the way that you intend with minimal unforeseen effects, and that requires careful consideration before, during, and after coding. *You will get feedback about how well you are meeting the rubric points, but this initial assignment will not count towards your course grade.* ## How to Hand in Submit your work as a PDF file to [Gradescope](https://www.gradescope.com/courses/224988). This, like all assignments, is subject to the [course collaboration policy](https://hackmd.io/@cs18-spring-2021/H1bI7WX1d). --- *Please let us know if you find any mistakes, inconsistencies, or confusing language in this or any other CS18 document by filling out the (mostly) [anonymous feedback form](https://cs.brown.edu/courses/cs018/feedback)!*