Computing systems and networks
Students start by looking at how computers, phones, and the internet actually work. They learn to troubleshoot common problems and see how devices send data back and forth safely.
This is the year computing shifts from using tools to building them. Students write real programs, break big problems into smaller pieces, and test their code until it actually works. They also dig into how networks move data, how to spot patterns in a dataset, and how choices made by software affect real people. By spring, students can plan, write, and debug a working program and explain in plain language what it does and who it might help or hurt.
Students start by looking at how computers, phones, and the internet actually work. They learn to troubleshoot common problems and see how devices send data back and forth safely.
Students gather real data, clean it up, and turn it into charts and tables. They use that evidence to spot patterns and back up claims with numbers instead of guesses.
Students break bigger problems into smaller steps and write programs to solve them. They test their code, fix what breaks, and rewrite parts until the program does what it should.
Students work in teams to design apps, simulations, or models from start to finish. They give and take feedback, keep notes on what changed, and present their work to a real audience.
Students look at how technology shapes daily life, from privacy and security to who gets left out. They weigh the trade-offs of tools they use and think through the choices behind them.
Students pick the right hardware and software for a given job, then figure out what to do when something breaks. That means matching tools to tasks and solving problems when the setup does not work as expected.
Students learn how the internet moves data between computers and why some of that data is encrypted to stay private. They look at how networks make it possible to share files, send messages, and work with others online.
Students gather real data, clean it up, and display it in charts or graphs. Then they use code or software to spot patterns and explain what the data actually shows.
Students write and test programs that solve real problems or automate repetitive tasks. They also look at how their code works and figure out where it can be improved.
Students look at how technology shapes real life: who benefits, who gets left out, and what rules or laws should apply. They think through the trade-offs before building or using digital tools.
| Standard | Definition | Code |
|---|---|---|
| Identify, select, and apply hardware, software High School | Students pick the right hardware and software for a given job, then figure out what to do when something breaks. That means matching tools to tasks and solving problems when the setup does not work as expected. | ME-CSDF.C1.9-12 |
| Explain how computer networks and the Internet enable communication… High School | Students learn how the internet moves data between computers and why some of that data is encrypted to stay private. They look at how networks make it possible to share files, send messages, and work with others online. | ME-CSDF.C2.9-12 |
| Collect, transform, and represent data High School | Students gather real data, clean it up, and display it in charts or graphs. Then they use code or software to spot patterns and explain what the data actually shows. | ME-CSDF.C3.9-12 |
| Design, develop, and analyze algorithms and programs to solve problems… High School | Students write and test programs that solve real problems or automate repetitive tasks. They also look at how their code works and figure out where it can be improved. | ME-CSDF.C4.9-12 |
| Investigate the social, ethical, legal High School | Students look at how technology shapes real life: who benefits, who gets left out, and what rules or laws should apply. They think through the trade-offs before building or using digital tools. | ME-CSDF.C5.9-12 |
Students learn to build computing spaces where people with different backgrounds and experiences are included and heard. That means working alongside others whose identities differ from their own and treating those differences as strengths, not obstacles.
Students work in teams to plan, build, and refine a program or digital project. They split up tasks, share ideas with each other, and use feedback from teammates to improve the final product.
Students look at a real problem and decide whether a computer could help solve it. Then they break that problem into smaller pieces a program can actually handle.
Students take a complicated problem and strip it down to the parts that matter, then write code or design a system that works for more than one situation. The goal is a cleaner solution that handles the messy details without showing them.
Students build programs, simulations, or models by writing, testing, and revising their work in repeated cycles until the project does what it needs to do.
Students run tests on programs or apps they've built, look at what breaks or confuses users, and fix the problems. The goal is a program that works correctly and is easy for someone else to use.
Students explain how a program works or how technology affects people, using accurate terms, charts or diagrams, and real examples to back up what they say.
| Standard | Definition | Code |
|---|---|---|
| Foster an inclusive computing culture that values diverse perspectives and… High School | Students learn to build computing spaces where people with different backgrounds and experiences are included and heard. That means working alongside others whose identities differ from their own and treating those differences as strengths, not obstacles. | ME-CSDF.P1.9-12 |
| Collaborate around computing — divide work, share ideas High School | Students work in teams to plan, build, and refine a program or digital project. They split up tasks, share ideas with each other, and use feedback from teammates to improve the final product. | ME-CSDF.P2.9-12 |
| Identify and define problems that can be solved with computation and decompose… High School | Students look at a real problem and decide whether a computer could help solve it. Then they break that problem into smaller pieces a program can actually handle. | ME-CSDF.P3.9-12 |
| Use abstractions to simplify complexity, generalise solutions High School | Students take a complicated problem and strip it down to the parts that matter, then write code or design a system that works for more than one situation. The goal is a cleaner solution that handles the messy details without showing them. | ME-CSDF.P4.9-12 |
| Create computational artifacts — programs, simulations, models — by applying… High School | Students build programs, simulations, or models by writing, testing, and revising their work in repeated cycles until the project does what it needs to do. | ME-CSDF.P5.9-12 |
| Systematically test computational artifacts and refine them based on evidence… High School | Students run tests on programs or apps they've built, look at what breaks or confuses users, and fix the problems. The goal is a program that works correctly and is easy for someone else to use. | ME-CSDF.P6.9-12 |
| Communicate clearly with appropriate vocabulary, visualizations High School | Students explain how a program works or how technology affects people, using accurate terms, charts or diagrams, and real examples to back up what they say. | ME-CSDF.P7.9-12 |
Students work with five big areas: computers and how to fix them, networks and the internet, working with data, writing code, and thinking about how technology affects people. They also practice habits like breaking problems into smaller pieces, testing their work, and explaining what they built.
Basic comfort with numbers and logic helps, but coding is more about patience and problem solving than advanced math. Students who like puzzles, building things, or figuring out why something broke tend to do well.
Ask students to show what they are building and explain how it works. Talking through a bug out loud often helps them spot it. Free tools like Scratch, Python tutorials, and Khan Academy give plenty of low-pressure practice.
By spring, students should be able to take a real problem, break it into steps, write a working program, test it, and explain their choices. They should also be able to discuss privacy, bias, and the social effects of a piece of technology.
A common approach is to start with hardware and networks so students share a baseline, then move into programming and data through the middle of the year. Ethics and impact work best woven into every unit rather than saved for the end.
Decomposing a problem and debugging are the two that trip students up most. Many can write code that almost works but struggle to isolate why it does not. Short, repeated practice on reading error messages and tracing code pays off all year.
No. Many students start high school computer science with no background and finish strong. The first few weeks usually cover the basics, and steady practice matters more than a head start.
A lot of professional computing is collaborative, so pair programming and team projects belong in the plan. Build in clear roles, shared documents, and individual check-ins so each student can show their own thinking on assessments.
Readiness shows up when a student can plan a small project, write and test the code themselves, and talk about what worked and what did not. A portfolio of two or three finished projects is stronger evidence than any single test score.