Last spring, students in a new computer science social change course developed software tools for a disaster relief organization to teach refugee children about science and technology, a Chrome extension to filter hate speech on the internet and a mobile app to help doctors during a patient visits.
Called CSCI 1951I: “CS for Social Change,” the course — now in its second iteration — was developed for computer science, design and engineering students to discuss and reflect on the social impact of their work while building practical software tools to help local and national partner nonprofits over the 15-week semester.
The course was initially conceived by Nikita Ramoji ’20, among others, who was a co-founder of CS for Social Change, a student organization that aims to addethics education to college computer science departments. “The (general consensus) was that we were getting a really great computer science education, but we didn’t really have that social (impact) component,” she said.
As the idea for a course began to emerge in the first semester of the club, Ramoji, along with a few other students, approached the head of the Computer Science department, Ugur Cetintemel, and found the CS department to be supportive of their efforts. A year later, in spring 2018, CS for Social Change became an official course offered by the University and taught by Cetintemel. The course was partially modeled after a similar course at Stanford University called “CS + Social Good,” where students work on projects with social innovation organizations outside the university.
Ruby Goldberg ’17, who co-founded the initial student organization, said her interest was borne out of a desire to see more dialogue about social impact in computer science.“When we started (at) Brown, there was basically no conversation about training the folks graduating to think about the impact of what they were building. There was no language for teaching engineers what impact they would make.”
Elaine Jiang ’19 is a head teaching assistant for the social change course who worked closely with Ramoji to develop the curriculum, and Vandhana Ravi ’18 was also heavily involved in the course’s development.
Jiang became interested in the project because, “as a (first-year), I felt the only track for a CS student was software engineering. And I didn’t even realize that there were other things you could do like research and nonprofit work, so I felt that this was important for not only current CS students but incoming (first-years).”
Each student praised Cetintemel’s help and support, as he worked closely with the students during the creation of the course and oversaw lectures.
“We need to think about downstream uses of whatever we build and be responsible (for it),” Cetintemel said. “There’s an amazing set of new problems that became so real in a very short period of time, and we don’t know yet how to deal with (them). So a course like this, where the students are actively thinking about these issues, working with nonprofit organizations … that’s where the course was coming from.”
During its first year, the class was attended by 12 students with Ramoji facilitating lectures. Now, Jiang and Heila Precel ’20, current co-president of CS for Social Change, serve as head TAs. The course was structured with two weekly meetings, with one half of the course dedicated to ethics education readings and discussions and the other half to project development for partner non-profits.
For the ethics part of the course, students would discuss readings on topics such as feminism and technology, addictive technology, post-colonial computing and algorithmic bias, as well as issues pertaining to internet privacy laws.
For the group projects, students were divided into groups of four based on skills and abilities and then paired with a nonprofit partner. They had weekly calls with the nonprofits, and the student TAs acted as project managers.
Zachary Shinkar ’19 is a part of a team that worked on building hate speech filtering algorithms to be used for identifying hate groups active on Russia’s largest social network, VK.com. “It’s been great to see how this work has been brought into fruition. They’ve been using it and giving us feedback as we go,” he added.
This spring, the course roster increased to 20 students and 5 collaborative group projects, each with a head TA leading the groups’ efforts as a project manager.
Ramoji described the process of developing and improving a new course. “We created constant anonymous surveys from every student (about) three times throughout the semester … and implemented those changes as the course went forward. As the course grows, I’m interested to see how it’s going to balance, as it’s one of the few courses at Brown where you get one-on-one (attention), not be one in 200 students. I think that format has been helpful, but I’m interested in making sure that it’s scalable.”
“Working with (the students), I learned as much, if not more, than the students,” said Jiang, reflecting on her experiences as a head TA for the course. Students gave overwhelmingly positive feedback, she added. “I think students are just really grateful that there is an ethics-related course in the department, and … I think the overall sentiment is we need more courses like these.”
The course will help the department’s foray into “Responsible CS,” which is an initiative geared towards integrating ethics education into regular computer science course curriculum, Cetintemel said. “If it is (just) one course, it almost becomes a check-box. The students go and take the course, learn something cool, and then just … forget about it. A better way to actually teach this type of material and have the students internalize it is to hit the same topics … in the context of different courses to create (different) perspectives,” he said.
Cetintemel also emphasized the crucial role of non-STEM faculty in developing ethics curriculum for students. “(We want) more people in (the humanities) who think about these issues. These are the defining problems of our time. And they need to be part of the solution.”
By the next school year, he plans to bring a new cadre of undergraduate “ethics TAs” to lead ethics discussions, alongside existing ethics-centered courses such as CSCI 1870: “Cybersecurity Ethics” taught by Adjunct Professor of the Practice of Cybersecurity Deborah Hurley and DATA 080: “Data, Ethics and Society” by Adjunct Lecturer in Computer Science Roger Blumberg.
“I’m excited to see what the CS department is going to be like in a few years,” Jiang said.
Correction: A previous version of this article stated that Elaine Jiang '19 and Heila Precel '20 were head TAs during the first year of CSCI 195I: "CS for Social Change." In fact, Jiang and Precel now serve as head TAs. The Herald regrets the error.
Clarification: A previous version of this article quoted NIkita Ramoja '20 saying that "The (general consensus) was that we were getting a really great computer science education, but we didn't really have that social component." In fact, Ramoja was referencing the "social (impact) component" of the education. The Herald regrets the error.