Technical Requirements for UTeach CS Principles 2020-21

The UTeach CS Principles curriculum requires no additional materials costs, which makes it flexible and easily accessible for a wide variety of districts, schools, teachers, and students. Recommendations regarding hardware and software are outlined below. 


UTeach CS Principles includes many collaborative, “unplugged” activities, making the curriculum more accessible for classrooms with technological limitations.  

  • Accessible on any device: The UTeach curriculum is hosted online through Canvas Learning Management System, which is accessible on any device. Teachers can easily adapt course content to their schools’ learning management systems by sharing hyperlinks or uploading the documents to share with students.
  • 1:1 computer access not required on a daily basis: Due to the collaborative, inquiry-based nature of the curriculum, students complete many activities and projects in pairs or small groups. This approach helps students develop communication and collaboration skills, while also allowing the flexibility to offer the course in contexts where students do not have 1:1 computer access on a daily basis. 
  • Unlimited access to online student textbooks: Students access course materials through a public link, with no login or passwords required. 
  • Adaptations available for classrooms with limited computers or wifi: UTeach provides a PDF version of the student textbook to teachers in classrooms with limited access to computers and/or wifi (about 15% of the curriculum requires NO access to hardware). 

Programming Languages

UTeach CSP uses Scratch and Python programming languages, which are both available for free on any modern web browser, with no downloads required. Students are able to program with these languages on any computer (including Chromebooks) or on Android-based tablets (some limitations exist for iPads). 

  • Scratch (block-based coding): Scratch’s visually-driven, drag-and-drop interface provides students with a “low floor, high ceiling” introduction to programming. Students will need consistent access to the Scratch platform to write, edit, and share their projects. Students can access Scratch online at or download Scratch’s offline editor at
  • Python (text-based coding): Students transition to programming in Python in the fourth unit of the course. Python is easy for teachers and students to learn, while also being well-suited for the new Create Task and more widely established as an industry-standard language. is recommended as an online integrated development environment (IDE) for programming assignments in Python.’s all-in-one text editor, compiler, and debugger can be accessed on any device, including Chromebooks.