Responsible Computing naturally lends itself to student teams: since responsible computing topics involve complex societal issues, students appreciate the nuances better if they work through them in a team. This leads to the first kind of student teams we consider in this section: teams of students taking a course where they are tasked with a project with responsible computing content. On the other side, once undergraduate students have had some experience with responsible computing content, they are potentially excellent ambassadors of spreading the light of responsible computing among their peers. One specific mechanism for this, which we also consider in this section, is student teams working on creating responsible computing material that may be included into computing courses.
We begin with student teams in computing courses. Team projects help students develop an important set of skills that are increasingly essential in their long-term career development. Such skills include goal setting, analytical skills, project management skills, collaboration skills, communication skills, conflict-resolving skills, and others. Because they include so many areas in which responsible computing plays a part, team projects are an excellent vehicle to introduce responsible concepts into the curriculum. For example, the following responsible computing-related practices can be included in team projects: (1) fostering inclusive and collaborative team dynamics; (2) understanding the diverse views and needs of users; (3) understanding and continuously practicing social responsibility in product development; and (4) considering legal requirements (copyright, IP, HIPPA, etc.) in project development.
However, from the perspective of the instructor, it can be challenging to properly select, design, structure, and supervise team project courses based on responsible computing principles. In a simple bottom-up approach, where a project is simply assigned or even proposed by a student team, there is no guarantee that any of the above mentioned goals can be achieved. In fact, team projects can sometimes backfire badly with poorly executed outcomes and disengaged/disgruntled students. Specific challenges exist for successful team project courses on responsible computing principles, including project design/selection, responsible computing principle instruction and evaluation of its outcome, effective instruction methods for instructors, and continuous development of responsible understanding for students.
Involving students in creating responsible computing material has many immediate benefits: students have a better sense of what will “click” with students in a course and can probably motivate responsible computing assignments better than instructors. If the UG students creating the material have themselves taken the targeted course, they can then use their personal experience as a student in the course to better design the responsible computing activities. Further, just as students in a course can discuss the various nuances of responsible computing, students can develop better responsible computing assignments if they work in a group. Further, creating student teams to develop responsible computing assignments is an excellent opportunity to include diverse viewpoints in the process by e.g. recruiting students from outside of computing to help create the assignments. Inviting students from different disciplines to work together to develop Responsible Computing pedagogical materials already goes a long way to diversifying approaches to problem solving and ways of thinking that the Responsible Computing curriculum frequently strives to achieve. Furthermore, it can be an effective way to build interdisciplinary efforts around Responsible Computing in situations where interdisciplinary collaboration at the faculty level is more challenging to achieve.
On the flip side, there are challenges in making sure that these student team led efforts can flourish. In particular, these teams need guidance from faculty members ranging from getting feedback from the course instructor on what kind of responsible computing intervention they feel comfortable incorporating in their course to a mentor making sure that the decisions that student teams make are compatible with power dynamics constraints of the institution. Further, it is important for proper incentives and forms of compensation (e.g. academic units, work experience, professional skill development, payment) to be put in place so that the teams remain motivated and further, the students can use their work to further their own career goals.
The first six questions are more specific to student teams working on projects while the remaining questions are more relevant to student TA teams creating responsible computing content.
- How are the course projects being designed? If the instructor is responsible for it, they should design/select projects that are suitable for teamwork and which raise issues related to responsible computing.
- What guidelines should students be given to choosing their group projects? Encourage students to select projects that might have a positive social impact. Giving students full freedom in choosing their projects without this encouragement would make it harder to achieve the goal of students thinking deeply about responsible computing.
- What support is being provided to the student teams? Students might need help identifying issues related to privacy, unintended negative impacts, limitations for different groups of users, etc. throughout the design process. Students also might not have a lot of experience in teamwork or know about how to create a functioning team.
- How do you plan to monitor team progress? Monitor teams so that they implement good team dynamics and maintain awareness of responsible computing product design issues.
- How will students reflect on their experience? It is important that the students reflect both on the responsible computing aspects as well as team dynamics.
- How do you train TAs to help students with their team projects? The TAs need to understand and monitor team dynamics and responsible computing product design issues.
- How do you plan on recruiting students to the team that will develop the responsible computing material? The typical (U)TA pool in a department might not have enough qualified candidates for such a group and you might need to be proactive in identifying the skills TAs need to have, defining their roles and deliverables, and recruiting such students.
- What support and structure will you provide to the student team developing the responsible computing material? Is the instructor of the targeted course on board and knows what help they should provide the team? What are the organizational issues the team needs to be aware of or perhaps needs to be shielded from? Is there a way for students to get paid (or get course credit) for the work they are doing? More generally, create a support structure for student teams to thrive in your organization. Make sure that someone is able to supervise their work, provide feedback on drafts, and, when necessary, project management.
- How do you plan to keep the student team motivated? UTAs typically have a lot of other activities on their plate and it is important to keep them motivated by, for example, making sure that the projects they are working on align well with their skills, interests, and plans for developing their experience and providing opportunities for them to publicly share what they have completed and understand how it will go on to advance the project of Responsible Computing at your institution.
- How do you ensure that this work helps the students in their career path? While the benefit to the department is clear what can students developing material get out of this other than gratitude and/or money for their work? Can they use their experience for their own research experience and/or help with their future career plans?
- What is the plan for “handover” to the teaching team? If the student team creating the material will not be part of the teaching staff or will be a part of the teaching staff, how do they “train” the teaching staff to successfully help students with the material. If possible, involve students in conversations with faculty who may be using the curricular intervention early, so that what they design will be a good fit for the course and will be more easily adopted.
Checklist for student team projects:
☐ If the instructor selects the projects, the instructor selects a diverse set of projects suitable for teams to work on and which raise issues related to responsible computing
☐ If students pick the projects, students evaluate the potential social impact of projects and consider possible adverse impacts or issues that must be addressed when selecting projects.
☐ Build support structure for student teams
☐ The instruction team provides evaluation and feedback on improving team dynamics
☐ Have students reflect on their experience (both teams dynamics and responsible computing aspects of their project)
☐ Train TAs to understand social and legal responsibilities and monitor inclusive team dynamics
Checklist for Undergraduate TAs working in teams to develop Responsible Computing curriculum:
☐ Create a recruiting plan for UTAs working on creating responsible computing material
☐ Identify and clearly describe to the UTAs their tasks and deliverables.
☐ Create a plan to keep the team motivated
☐ Create a pathway for students to use their work towards their future career plans, towards the completion of their degrees, and/or well compensated for their contributions.
☐ Create a handover plan for the student team to train the relevant teaching staff.
At the University of California, Davis (UCD), there are a number of courses that involve team projects, ranging from group sizes of two to fifteen. We focus on the capstone project course, ECS 193AB, as an example. Specifically, in ECS 193AB, students, mostly senior-year undergraduate students, self-form teams of four to work on real-life design challenges with real clients for two consecutive quarters. Specifically, in this class, student teams respond to real-life client design challenges by planning, implementing, and evaluating projects involving computational and computer systems. The types of projects that CS students have successfully completed include mobile apps, web apps, data mining, software/hardware interfaces, computer vision, and visualization. This is an ideal scenario for students to practice responsible computing principles because students can use real product development to study the social responsibility of a computer-system product in a continuous manner, analyze the goal of a real-life product, consider inclusiveness and accessibility of its UI/UX design, study privacy of data collection and data security, evaluate potential environmental impact and the impact on work and social communications. Furthermore, such a project allows students to develop and improve good team dynamics, listen and understand different views and needs, and communicate with a real-life client who may or may not be a computer scientist.
Checklist walkthrough. Since the focus in UCD was mainly on student teams working on projects we focus on the walkthrough for the first six checklist items:
- If the instructor selects the projects, the instructor selects a diverse set of projects suitable for teams to work on and which raise issues related to responsible computing
- Currently, the instructor selects a wide range of real-life projects (as long as they are ethical and legal) that are suitable for teams, in terms of the scope, suitable technical challenge level, and the ability to break up into smaller pieces for students to work together. The objective of the instructor is to provide diversity to engage student teams and allow them to practice responsible computing principles.
- If students pick the projects, students evaluate the potential social impact of projects and consider possible adverse impacts or issues that must be addressed when selecting projects.
- The instructor explains the responsible computingx principles and asks student teams to submit proposals including why they select a certain project and the social impact of their project. Furthermore, the teams are required to discuss the social, economical, and legal implications of their project in their design documents.
- Build support structure for student teams
- The instructor discusses in class what good team dynamics are, why they are necessary, and what are good practices. Teams are recommended to create and sign a team contract based on a template provided by the instructor. The goal is for the team to get to know each other and agree upon a set of team rules. The instructor also identifies challenging cases, especially commonly observed in classes, and discusses good strategies in class. The instructor also invites guest lectures on responsible computing principles.
- Consistently evaluate and provide feedback on improving team dynamics by the instructor and the TAs
- The instructor and the TAs have regular weekly meetings with the team and consistently monitor team dynamics. The TAs also sit in on multiple client meetings with each team to monitor communications with clients. Feedback is provided constantly. Students are also encouraged to contact the instructor or TAs should any questions arise.
- Have students reflect on their experience (both teams dynamics and responsible computing aspects of their project)
- Students complete two peer-review forms during the course to reflect on themselves and provide constructive feedback to each of the teammates (which are randomized to provide a degree of anonymity). The instructor and the TAs schedule individual meetings with a student if certain issues/challenges are identified, either by teammates or by self-reflection.
- During the course, student teams develop and update three versions of the design document that includes a social, economic, and legal analysis of the product. This allows them to continuously evaluate their progress and consider areas for improvement.
- Training TAs to understand social and legal responsibilities and monitor inclusive team dynamics
- Because the TAs meet with each team weekly and for a longer duration, TAs play a critical role in supervising the students in practicing responsible computing principles. The instructor coaches TAs on the principles, encourages them to ask questions, and to bring up any concerns. The instructor also tries to retain good TAs for multiple years when possible.
At the University of California, Berkeley, we used student teams to develop responsible computing material for the following courses: Data 8, Data 100, Data 102, CS195H, and data science Discovery projects. To see some of the students' finished work, please visit HCE Curriculum Packages. At Berkeley, UTAs worked with instructors to shape an intervention to add to the class. Students reviewed existing syllabi, consulted with other students that had taken the course (and also frequently drew upon their own experience of taking the course), and designed plans for interventions in homework, lectures, and discussions.In addition to 1) doing the research for and 2) designing the curricular materials and lesson plans, the teams 2) created grading rubrics, Designed 4) workshop/training material to train the student TAs in the courses where the materials would be used, and worked together with course TAs and instructors to integrate the materials.
Checklist walkthrough. Since the focus in Berkeley was mainly on student teams creating the responsible computing material we focus on the walkthrough for the second half of the checklist items:
- Create a recruiting plan for UTAs working on creating responsible computing material
- Berkeley's Data Science Undergraduate Studies program has a lot of infrastructures to support UTAs and so there already existed recruiting structures in place. The type of student that could support the development of Responsible Computing materials, however, was not the typical student in the TA pool. Therefore, we needed to clearly identify the necessary skills (e.g. technical skills, knowledge of critical thinking about technology and society, and commitment to responsible computing and educational change) for success in this kind of work. We started by recruiting students who took the course DATA 104: Human Context & Ethics of Data since that was a source of students who were interested in responsible computing to begin with and already had learned core theoretical foundations for thinking about and presenting to others issues of responsible computing (see Structured Ways of Thinking about Computing and Society section). It was useful to start building the momentum of student teams' work with students who had this experience and knowledge. Later, as our teams matured, our forms of student team management and supervision became more developed, and the scope of our work expanded, we have been able to invite less experienced students with interest in the Responsible Computing space who can be trained on the job.
- Identify and clearly describe to the UTAs their tasks and deliverables.
- We began by making sure that the students knew what steps they could take to begin the project and what a strong completed outcome looks like. We found it important to keep more challenging tasks well scaffolded along the way and provide a lot of back and forth between the supervisor and students (review of student work, opportunities for students to present their progress).
- Create a support structure for student teams to thrive in your organization
- We have two faculty who dedicated part of their time developing Responsible Computing material and helped the teams navigate the various organizational hurdles.
- We also tried to build a community of students interested in responsible computing. For many students, the Human Contexts and Ethics Student Team was a place not only for their work on curricular projects but a community of students who cared about Responsible Computing deeply and wanted to contribute to changing computing and data science education at Berkeley through their work. The Student Team was also a space for them to continue to learn, alongside peers and faculty, and through practical tasks what Responsible Computing looks like and how to pursue it. To support students' diverse needs and interests in being part of the Team, we created along the way reading groups on issues like queer and feminist theory as it pertains to technology and on data, computing, and justice. These groups helped to build an intellectual community among the students and supervisors and also inspired curricular innovations.Finally, it was essential for us to compensate students fairly for their work. We paid students for their work or offered academic credit (units) for those who preferred that. We clearly marked opportunities that were unpaid/ volunteer and made sure that students doing good volunteer work were moved into a paying position the following semester.
- Create a plan to keep the team motivated
- The peer-to-peer nature of the teamwork helped keep students motivated since they felt they were contributing to a larger group effort. We organized mid-semester check-ins where students shared with other teams their progress, final presentations that took advantage of other University spaces for presenting undergraduate work (so that their work could be visible to others), and advocated for and made more visible student work by advocating for institutional change towards more Responsible Computing curriculum with department leads and establishing collaborations with faculty of courses where the student final products would be used. We invited students to participate in all the faculty and administrative meetings where we could, which served not only to help them own their work because they recognized that it was a real contribution that was needed but also helped the administrators recognize the need for change thanks to the students' bottom-up energy and call for it.
- Create a pathway for students to use their work towards their future career plans
- First, we made sure that there was a good fit between the student's interest and the project they were working on, so that the final product and experience of working on it could advance their education and careers.
- We provided a lot of guidance and improvised training where we saw a need. For example, we ran a seminar that teaches the students how to do research on technology and society, since some of them were involved in integrating Responsible Computing issues and frameworks into Discovery-like projects as participant-observers. In particular, we talked about how to be an embedded social scientist in a team with technology groups (such a seminar did not exist before).
- We encouraged students to explore their interests with their projects and to use the final products to work towards their honors thesis or a capstone project.
- We build lasting relationships with students in a way that we could not have in a large course and are continuously supporting them by writing strong letters of recommendations testifying to their contributions to Responsible Computing and educational development at Berkeley.
- Create a handover plan for the student team to train the relevant teaching staff
- The student teams designed workshop/training material to train TAs for the target course. This was possible because part of the student team had taken the target course as a student. More generally, they know the arc of the degree and know potential places to intervene in the targeted course. Where possible, they also collaborated with the course TAs and instructors to integrate the curricular products into the classrooms.
At Bowdoin College and Colby College, we identified several early level CS courses (e.g., CS1, CS2, etc.) to develop and pilot computing ethics modules to share across institutions. Introductory course module topics include: CS representation and bias, gaming technologies, entertainment and media, facial recognition, and voting technologies.
During the development of these modules, there were a significant number of students who were CS and liberal arts domain double majors (CS/Sociology, CS/Economics, CS/Psychology, etc.) who were interested in the responsible CS ethics curriculum development and served as students researchers. These students were passionate about how discussions of ethics in CS might enhance their own classes and had many ideas for new module topics and narratives. They created and helped to pilot modules, curated narratives, created project dissemination materials such as conference papers and posters, and enrolled in Independent Studies with project faculty to devote more time to researching a particular topic related to their own interests.
- Berkeley’s HCE curriculum packages
Margo Boenig-Liptsin (author)
Xin Liu (author)