Teaching Responsible Computing Playbook

Teaching Responsible Computing Playbook

Access to Technology

Authors: Atri Rudra

Perhaps the most common computing solution students and technologists come up with to solve problems in real life is to “build an app.” For many students, this comes from a place of good intentions but students do not always think about who will be excluded just from their decision to make an app (which e.g. will target those with smartphones). See e.g. Kate Crawford’s great example on issues with Street Bump (an app that collects information about potholes in neighborhoods via their app on smartphones inside of a car on a road and then sends aggregated information to the relevant municipal authority to help redirect resources to fix areas with pothole problems). As pointed out by Crawford, just assuming that a user has a smartphone disproportionately excludes older and poorer segments of the population-- e.g. as per a 2019 Pew study 29% of households with <30K income do not have access to a smartphone, while only 3% of households with income of 100K+ do not have a smartphone. The numbers are even more dire for high-speed Internet access.

This blind-spot of assuming everyone has a smartphone is one common example of a general phenomenon. A computing student may not consider who their planned computing solution will exclude. In 2020, COVID-19 has highlighted inequities in access to technology in general (and high-speed Internet access in particular) to the forefront of the public’s (and in particular college students’) consciousness, which makes it more timely to talk about access to technology in computing classes. Of course, access to technology is a vast topic with many facets -- we would like to point out two topics that this section is not about. One aspect of COVID-19 disruptions were issues with moving learning online, which extend beyond having access to technology. Second, accessible technology with regards to users with disabilities has been explored, which is clearly a very important topic as well. This section will focus on access-to-technology issues that arise due to structural reasons. In particular, this section talks about how to include material into a computing course that talks about access to technology.

The main challenge in creating the material that talks about access to technology is that students assume everyone has access to technology, which creates a potentially uphill battle for the instructor. On the flip side, if we can get through to the students that they should pay very close attention to who their computing solution is including and excluding, then this could have a lasting impact on how technology is built. As an added benefit, if an instructor is looking for a way to talk about structural/societal inequalities, then access to technology can be a great starting point to talk about these issues in a context that most students should be able to relate to on a personal level. See the sections Discussing Justice and Equity and Talking about Unanticipated Consequences, as well as the Resources section below, for more on this and related topics.

Key Questions:

  • What is the target learning outcome? Is the goal to use access to technology as a tool for students to learn about the societal impacts of computing? Or is access to technology itself what the students should learn about? Or is access to technology a starting point to talk about societal inequalities? See the Learning Outcomes and Assessments section for other ideas.
  • Which course(s) will be targeted? Given the learning outcomes, which course is most appropriate to introduce material on access to technology? The pervasiveness of access to technology in computing makes it possible to be introduced in a wide range of courses. For example, from theoretical in one extreme (see the Examples section for more on this) to hardware-oriented courses in the other extreme (access to technology happens via devices). See the Choosing Computing Courses section for other (more general) ideas.
  • Is the instructor of the course on-board incorporating access to technology material? Having instructor buy-in is necessary to include access to technology content. If not, does the instructor need more support/material to do so?
  • What will be the mode of delivery? How will the material on access to technology be incorporated in a target course? Some options include (i) an in-class activity, (ii) homework assignments, (iii) a programming project, (iv) non-programming projects.
  • Which technology will be targeted in a chosen course? It might be useful to focus on one technology (e.g. smartphones or broadband access) to make the in-class material more focussed. In which case, there is a choice that needs to be made.
  • Will the chosen technology resonate with the students? It is important to pick the access to technology stories that resonate personally with the students. If the students relate to the premise of the chosen material, then that will lead to more long-lasting learning. Another option is to challenge students to meet resource constraints so they can experience the constraints themselves or empathize with the constraint.
  • Are the instructors going to get feedback from students? Ideally, faculty should involve students from the target audience (e.g. UG TAs for a UG course) to help with the development or at least get critical feedback (multiple times) from the target audience.


☐ Identify relevant student learning outcomes.

☐ Identify target course(s).

☐ Acquire Instructor support and verify their willingness to incorporate the material.

☐ Identify mode of delivery.

☐ Target technology chosen with student interest in mind or have students work with constraints.

☐ Solicit feedback from students.


University at Buffalo

Access to technology material was targeted in one course: CSE 331 (Algorithms and Complexity), which is required for all Bachelor of Science Computer Science students.

CSE 331 incorporated access to technology material in the following ways: (i) the introductory lecture asks students to think about how they would improve broadband access in Cattaraugus county (which is one county over from Erie, which is where Buffalo resides). Students are asked during the lecture to talk in small groups,discussing both technical as well as societal issues, as they think about how to solve the whole problem. (ii) Technical problems are related to greedy and dynamic programming algorithms where the underlying story follows up on building access to high-speed Internet. (iii) A coding project is based on a lawsuit brought by the NY Attorney General’s office against Spectrum, which is one of the main Internet providers in WNY (and in NYS in general). See this talk for an overview and a bit more detail on these aspects.

Check-list walk-through. We now give a quick walk-through of the check-list items to show how they were resolved at UB.

  • Identify relevant student learning outcomes.
    • While this was not a deliberate decision, we ended up using access to technology as a way to illustrate the societal impacts of computing. With access to high-speed Internet coming to the fore-front during COVID-19, we also plan to have students think about access to high-speed Internet on its own.
  • Identify target course(s).
    • As part of the Mozilla Responsible Computing grant, we intended to introduce a programming project in CSE 331 to incorporate responsible computing. One constraint we put in early was to make sure that the underlying technical concept was covered early in the course. Given the current course structure, the best option seemed to be selecting something related to the shortest path problem. On the other side, acknowledging that our student population is skewed towards students from Western NY (and NYS in general), we wanted to pick a scenario that was local. During the discussion stage someone suggested we look into the NYS Attorney General’s case against Spectrum that alleged serious unethical behavior of Spectrum towards their customer. The choice was finalized when we realized that we could create a programming project related to routing of packets in this context, which would tie directly to the shortest path problem that we had covered in class (and on which students have a programming assignment early in the semester).
    • This was not done deliberately (and something that escaped our attention even when creating the programming project mentioned above!), but CSE 331 already included:
      • the in-class activity on improving Internet access in Cattaraugus county (though the focus was mostly on the technical aspects-- starting in Fall 2019, students were explicitly asked to think about the societal issues as well)
      • the questions on greedy and dynamic programming algorithms, but the wording in Fall 2019 was changed a bit to make the story more in line with the overarching theme of access to technology.
    • In future iterations, the plan is to have students in groups create a video that walks through how they would improve high-speed Internet access in any place in the world of their choosing. The project would require the students to think about the societal inequalities directly impacting access to high-speed Internet.
  • Acquire Instructor support and verify their willingness to incorporate the material.
    • The instructor for CSE 331 was involved in the Mozilla responsible computing grant. In addition, the instructor was either already doing ethics or responsible computing related assignments in CSE 331 so the switch was smooth.
  • Identify mode of delivery.
    • We decided on a programming project because we wanted that project to be substantial (and students tend to prefer programming assignments especially in CSE 331, which otherwise is a theoretical course). Other activities, as mentioned earlier, already existed in the course.
  • Target technology chosen with student interest in mind or have students work with constraints.
    • Given the ubiquity of the Internet in what we do as computing professionals, access to high-speed Internet was something that all of our students would relate to. Also, Spectrum is the high-speed Internet provider for many of our students, which gave a local “hook” for the programming project. Further, the final part of the programming project asked students to generate as much revenue as possible while satisfying a fairness constraint on how the packets were routed.
    • The in-class activity related to Cattaraugus county resulted from an interaction of the CSE 331 instructor with one of their students. The student mentioned he lived in a rural part of WNY and had issues accessing the CSE 331 homework assignment (which is provided online only).
  • Solicited feedback from students.
    • The programming mini-project for CSE 331 was entirely developed by a subset of the Fall 2019 undergraduate TAs (UTAs) in summer of 2019. One of the big advantages of having UTAs developing the various assignments was that they also gave feedback as students (all the UTAs had been students in previous offerings of CSE 331).


Related Pages

Authors and Contributors

Image of Atri Rudra

Atri Rudra (author)


Udayan Das