As recently as a decade or two ago, technology education consisted of typing, learning to draft emails, or doing a little work in a spreadsheet. Learning those skills may have been relegated to a business information class or weekly trips to a computer lab. Today, most students are expected to learn to code, and most states have coding requirements—some starting as early as kindergarten.
That’s a significant change in less than a generation. Computer science is a rapidly advancing field; educators have to make those changes if they are going to prepare their students for the modern world. Trying to teach a subject that’s ever-changing might feel a little intimidating to some teachers, especially if they don’t have a background in the field. Fortunately, the skills students learn in computer science are evergreen, and many of the changes within the field are manageable for the educators involved.
Here are three keys to preparing to teach this dynamic subject without feeling like the ground is constantly shifting under your feet.
Don’t be intimidated by “new” technology. It’s probably a lot like the old technology.
In reality, programming languages tend to have a lot in common with one another. It becomes easier and easier to learn new languages as you go. You might go about things in a slightly different way from one language to the next, but the overall approach you will take to any problem will be similar between languages.
More often, changes in computer science are less about the programming languages themselves and more about the special topics within the field. Cryptocurrency was absolutely huge a few years ago and remains important today, but the first cryptocurrency, Bitcoin, didn’t even exist until 2009. Artificial intelligence may be the hottest topic in computer science right now, but a decade or two in the past it would have been a more appropriate topic for a science fiction story than a technology class.
Learning new programming languages and special topics can be challenging, but it doesn’t mean educators need to start at square one every time a new computer concept grabs attention.
Focus on evergreen skills, even as you update curriculum.
Just as programming languages allow computer scientists to approach similar problems in the same way, the underlying approach of computer scientists doesn’t change. Computational thinking remains constant regardless of language or special topic.
More importantly, as students learn the content of programming languages or special topics, they are also practicing skills such as critical thinking, creativity, persistence, and attention to detail, among others. The content may change and require students and teachers to update their knowledge from time to time, but the skills students practice when they learn computer science transcend content and even disciplines.
While computer science is constantly changing, it’s more often a gradual evolution over time with core concepts remaining pretty stable. A teacher who leads a computer science class for three years, for example, will not have to relearn the central principles of the field or even learn entirely new special topics. They’ll be able to build comfort and a deep understanding of the majority of the material they will cover with their students in those three years.
One way teachers can keep up with changes is simply to keep an eye on the standards. Many standards are open-ended, such as the one requiring students to understand how emerging technologies are influencing culture and society. Those lessons can be updated with the most interesting and relevant topics. Twenty years ago, the “worldwide web” might have been an appropriate topic, but now we might want students to understand the implications of natural language processing.
Selecting an agile curriculum that is easily and frequently updated can also help computer science teachers stay on top of changes within the field. Updating a digital curriculum is much easier—and cheaper!—than reprinting a set of textbooks or student workbooks. Look for a provider that keeps an eye on both the standards and the current state of the art within computer science to make frequent changes to remain relevant in both areas.
AI is cool, but accessibility is essential.
In the near future, special topics that are likely to become more prominent include accessibility and artificial intelligence. As computers become more prevalent in society and necessary for navigating the world, they will need to become more accommodating to all kinds of human differences. If we are going to build a world in which people are required to use a computer to go to school or work or to access a bank account, we have to make sure that everyone can use computers regardless of differences in their abilities.
Lessons on accessibility will also likely include some focus on where and how computers connect to the internet. There are many places that still don’t have access to broadband internet, and future generations will need to understand the causes and implications of that digital divide if they are going to address it.
Artificial intelligence is generally handled as a special topic in high school and sprinkled in throughout the curriculum right now, but it will likely be introduced to students earlier in the near future. Many people don’t understand Chat GPT, but it has important implications for privacy and security online in the future. How will students know if they are interacting with a human or a chatbot online, and what does it mean if they can’t tell? Educators need to address these challenges in the classroom so future generations feel prepared to navigate the world and address problems in the future.
Computer science is becoming integrated with core topics.
Another change we’re likely to see is in where and how computer science is taught. Rather than a standalone class, computer science may well become integrated with other subjects, such as science and math. Such a shift will likely result in a focus on skills rather than content. Students will be encouraged to use computers and computational thinking to solve science and math problems.
Integrating computer science with core topics would also solve other challenges in computer science education. First, it would answer the question of where to fit this new topic into the school day. It’s difficult to find time in the schedule for a whole new subject, but not if it’s folded into other subjects.
Second, teaching computer science on its own implies that it’s a separate thing that lives on its own. That’s not how it works in the real world, though. Computer science underpins and helps to advance other disciplines.
Integrating computer science into other topics would likely lead to a more project-based approach in which students use computer science or computational thinking to help solve some challenge in math or science. It ties it all together into a nice package and is also more representative of how computer science is used in the real world.
If you were going to plant a garden, you wouldn’t try to tease apart the math knowledge from the science knowledge required, thinking about how much soil you’ll need to fill your garden bed and how many seeds you can plant given the space requirements of each species and then figuring out what kind of fertilizer you need and which plants are good compliments to one another. You’d think of it all in aggregate, seamlessly moving between math and science. Computer science could easily be baked into a STEM project in the same way.
Schools may not have the resources to bring computer science experts on staff or to purchase cutting-edge supercomputers, but teachers who enjoy learning alongside their students will find it an exciting subject that helps young people understand the world they live in and prepare to shape the one to come. All they really need is a willingness to embrace these new frontiers together.