Why did the team decide to create a new software development course for middle and high school students? Why now?
Jeff: "Students who are in middle and high school now are going to enter a computer programming job market that looks different from the one that existed just a few years ago. In the AI era, people simply aren't going to program computers the way they used to. But even with AI, programmers will still be in demand.
The people who can do it well now, with AI, can do it because they're professionals — they may have run user experience teams, they may have run development teams, and they understand what the software engineering cycle looks like. Some of them may not know how to do every step by hand anymore, but they know what needs to happen.
That's the challenge this program answers: educating the next generation of computer programmers with AI already built in. Students today will use AI to do their computer programming. They're not going to hand-code everything from scratch anymore, but they still have to be able to read code, and they need to actually understand what it looks like to hand-code something and get a little practice with it."
What exactly is the role of AI in Introduction to Computer Programming?
Jeff: “It’s a computer programming book that leverages AI, rather than an AI book that teaches you how to code. You could set AI aside entirely, and you’d still have a solid foundational computer programming course. Students learn to map out program logic with flowcharts, then write code step by step, building the real foundations: data types, operators, if-then-else statements, basic conditional logic, and how programs actually operate. Once a student has that foundation, then we show them how to keep tweaking and modifying that work with AI, so they become a smarter prompt developer and a smarter coder.”
What makes Introduction to Computer Programming different from other computer programming courses for middle and high school?
Jeff: “It’s brand new, and there’s just nothing else like it. It’s exactly what students need right now, both for the age of AI and for computer programming generally. It’s what students graduating in the next one to five years need to learn in this unique moment of transition in the computing industry.
Here’s a good way to think about the shift students will need to navigate: think about word processing versus the typewriter. We don’t use typewriters anymore, but students still need to understand the keyboard, how text is structured, and the fundamentals that carried forward into word processing. They don’t need to know how to change the ribbon on a typewriter or set the margins manually. Coding is moving through a similar transition. Some details of hand-coding are going to be less relevant, but we still teach those foundations so students understand what’s happening, can work intelligently with AI, and stay informed as the technology changes.”
Why does programming in the context of AI matter beyond students who want to be professional programmers?
Jeff: “A good example, for someone who’s never done any programming, is an Excel spreadsheet. If you’ve ever written even a basic formula, you know you can add, subtract, multiply, divide, and make the spreadsheet do things in a certain way. Or think about Microsoft Word. You need to know what questions to ask: Can I control the paragraph settings? Can I change the margins? Can I make it do this? A lot of people never get that far because they don’t know what’s possible. Knowing that something can be done is the biggest challenge. Once you know that, you can research how to do it and ask better questions. That’s a big part of what this course builds: an understanding of what’s possible, so students know what to do, so they can ask AI to support their program development.
The course also walks through the range of careers connected to computer programming today: UX/UI design, QA and testing, project management, data science and analysis, and AI and machine learning engineering. Someone who wants to go into UX or UI design, for example, benefits from this course because they see how to use some very basic tools to build rapid prototypes, even if they never write production code.”
How does the course reflect how students will apply coding skills in a real work environment, changed by AI?
Jeff: "AI coding assistants and tools are built right into how the course teaches development. They suggest new code, complete functions, and catch errors. You'll still need to know how to build a program from scratch and work through the steps as a developer, but then you run it through AI and ask: Where can I improve this? What can I do next? What's a more efficient way to do this?
It used to be that you'd try to nail down the colors and style of something right away, because it was so much work to go back and change all the code later to fix something fundamental. That's not how it works anymore. Now you can get something in front of a reviewer very quickly; and if they say, 'I want it to be blue instead,' you just ask the AI to change it. Writing new code from scratch and debugging it is becoming a lot easier, and the course is built around that reality."
What's unique about the program's approach to pedagogy and instructional support for teachers?
"It's very visual, hands-on, and is scaffolded well. The objectives are always clear, and it’s of course aligned to CSTA standards.
The teacher edition doesn’t assume the educator has taught computing concepts before, so it includes robust pedagogical support: program design, teaching computing concepts, assessing and evaluating student work, best practices for computing classrooms and labs, and computational thinking. It walks teachers through when to use direct instruction, collaborative learning, problem-based learning, and project-based activities. The lesson plans walk through instructional strategies for every single unit.”
What other courses should a student take alongside or before this one, and why?
“We also publish Introduction to Digital Skills and Computer Applications, and I’d put it simply: anybody with a job should understand what’s in that book. Really, students should leave middle school with these skills.
It covers the critical digital skills and computer applications every student needs: the basics of computing, using the web responsibly, Wi-Fi and cloud tools, collaboration, spreadsheets and data, image creation, document design in Word, and presenting ideas in PowerPoint. It’s really a guide to being a functional person using a computer. If you hired someone for a job, this is the baseline you’d expect them to know.”
How does Digital Skills relate to Computer Programming?
“The two courses don’t overlap, and that’s intentional. Computer Programming is about coding and understanding how programs work. Digital Skills is about being functional with a computer as a day-to-day productivity tool.
Students also have flexibility in when they take them. They don’t have to happen in a set sequence. Some students could take both in eighth grade; others might take Computer Programming much later. It really depends on the student and the district.”
Where does Digital Skills fit with your other computing courses?
“If a student takes Digital Skills in middle school, they’re in a much stronger position to move into our more focused Skills and Pathways courses later. It’s not a prerequisite, but it gives them a real foundation.
And these courses are designed to be turnkey. A teacher can walk students through them without having to do a huge amount of lifting themselves."