Specialty Area

Physical Computing

Content Progression

Physical computing is the combining of software and hardware to build interactive physical systems, including robotics, that sense and respond to the real world (Hodges et al., 2020). The foundational content for all students includes some learning outcomes related to physical computing. For continued learning beyond the foundation, we have defined the following content progression that includes two additional levels (fundamentals and specialty) that progressively build on this content. This progression may lead to a physical computing or a robotics major and ultimately to careers as a robotics engineer, industrial automation specialist, control systems engineer, or human-robot interaction specialist, among others.

Foundation

Prioritized foundational content specific to physical computing:

  • Programming basics
  • Social and ethical implications
  • Cybersecurity considerations
  • Use of documentation
  • Troubleshooting
  • Cleaning and using data
  • How networks work
  • Optimizing networking and OS settings
  • Troubleshooting
  • Using documentation
  • Network vulnerabilities

Fundamentals

  • Specifications and limitations of physical communication devices
  • Genesis of Internet of Things (IoT) from physical computing devices
  • Use of IoT devices
  • How to apply the engineering design process to physical computing, including debugging
  • Use a physical computing device to solve a real-world problem
  • Use sensors and peripherals appropriately as add-ons to physical computing devices
  • Communicate and present physical computing solutions so that others can understand the purpose and recreate the project
  • Security considerations for devices
  • Understanding and working with circuitry, including power systems, voltage, and batteries
  • Exposure to careers in physical computing and careers that involve physical computing

Specialty

  • Creating solutions to problems using physical computing 
  • Programming for physical devices
  • Software development processes (e.g., Agile/Scrum)
  • Networking for physical devices
  • Application development (e.g., mobile apps, virtual reality apps)
  • Team project work
  • Collaborative source control
  • Working with motors, microcontrollers

Example Course Pathway

The physical computing content progression can be packaged in a variety of ways to meet the local context and needs of individual schools and districts. This physical computing course pathway serves as an example of how content in this specialty can be implemented in high schools. Each box represents a course and can be expanded to view a corresponding description.

Foundation

see below

Computer Science Foundations supports all high school students, regardless of postsecondary goals, in developing the knowledge, skills, and dispositions necessary to navigate and understand the technology-driven world in which they live. Course content, organized into five Topic Areas (Algorithms, Programming, Data and Analysis, Computing Systems and Security, and Preparing for the Future), rests upon four Key Pillars (Computational Thinking, Inclusive Collaboration, Human-Centered Design, and Impacts and Ethics). Topic Areas and Pillars are essential components of this course and the student experience (see Section 2 of this report for more details).

Fundamentals

see below

Physical Computing is a course for students who have a foundational understanding of computer science and want to learn more about applying CS ideas to robots, sensors, and IoT devices. Students will use the engineering design process to address an individual/community need to solve an authentic problem. Content covered in this course aligns with fundamentals content from the Physical Computing content progression as defined in Section 3.4.

Specialty

see below

Robotic Systems is designed to be a follow-on course to Physical Computing. Students build upon existing knowledge of physical devices such as robots, sensors, and IoT devices in an effort to solve meaningful problems through thoughtful design and implementation processes. Content covered in this course aligns with specialty content from the Physical Computing content progression as defined in Section 3.4.
Software Development provides opportunities for extensive study in one or more programming languages, ideally that students have not experienced in previous coursework. Students learn about uses and advantages of particular programming languages and understand commonalities and differences across them. Students will engage in collaborative development processes to solve a problem or address a personal or community need using their programming skills. This course aligns with common first-year postsecondary programming courses (i.e., CS1, including AP CSA). Content covered in this course aligns with specialty content from the Programming content progression as defined in Section 3.1.

Advanced Application

see below

The Pathway Capstone Course is an opportunity for students to apply advanced computer science knowledge and problem-solving, communication, and collaboration skills to tackle a personally meaningful computing project. Students will design innovative solutions and present them to authentic audiences, preparing them for future academic and professional pursuits. This course is designed to inspire creativity, foster collaboration, and demonstrate proficiency in real-world application of the knowledge, skills, and dispositions developed during prior coursework and experiences.

View the Implementation and Integrating CS pages to learn more about how to teach foundational and specialty content to students.

Possible Careers:

Robotics or Embedded Systems Engineer, Robotics Research Scientist, Industrial Automation Specialist, Control Systems Engineer, Automation Engineer, Mechatronics Engineer, Robotics Software Developer, Drone Engineer, Human-Robot Interaction Specialist, Biomechanics Engineer
Reimagining CS Pathways: High School and Beyond