Computer Science Principles is a rigorous, engaging, and approachable course that introduces students to concepts of CS and challenges them to explore how computing and technology impact the world. It requires teacher facilitation while students are using it. It can be assigned by a teacher and used independently by a student. Students need an email address, a desktop or laptop computer, and internet access – high bandwidth (e.g. for streaming video).