I've heard it, and so have you: Coding is the key to future jobs and a necessity for all students. It's time to move coding skills out of technology courses and into all subject areas. So as you begin planning for the new school year, don't forget to incorporate coding into your classroom.
You don't need to be a coding expert (and neither do your students).
Let's face it, not many of us are going to be able to take the time to become skilled coders. It's a process that can take years, and since coding languages and conventions change constantly, maintaining your skills requires long-term effort. But that doesn't mean that we can't incorporate the principles of coding in our classrooms. In fact, it's the principles of coding that are so essential. Approaches like computational thinking and design relate to all of our course disciplines and can help students analyze and solve problems in any subject. And unlike coding languages or conventions, the principles aren't likely to change.
Learning to think like a coder means learning to approach problems in a logical, systematized way. When given a project or a task, people who write code have to envision the end product (game, app, editing program, etc.) and work backwards to construct the steps to make it happen. Isn't that how we want our students to approach a project and design experiments in the humanities or sciences?
Coding fosters collaborative learning.
Every coder knows that writing code also means making mistakes, finding them, and fixing them. When something doesn't work (and it’s inevitable that something doesn't work), it means going back to the code and figuring out where things went wrong. More often than not, this is a collaborative process, with people working together to identify and solve problems. Cooperation and resilience in the face of problems are exactly what we hope for in all our classes.
Coding promotes critical thinking and problem solving.
Coding activities and tasks executed in traditional classrooms provide lots of benefits to students, but it's not always practical to implement large-scale coding projects in core courses. However, by implementing a few sessions on coding, students build a framework in extended thinking and problem solving. These coding exercises aren't about being proficient in writing code. Instead, the goal is to engage students in critical thinking so that they're able to connect with the content in meaningful ways.
With the tools available to teachers, the only obstacle that really remains is time to facilitate coding in our classes -- that's why, as we make our preparations to head back to school, we need to plan for coding!
Coding provides a universal language.
When we bring coding into our core classrooms, we build and reinforce the skills we want students to internalize. Coding also provides a common language and reference point to talk about the kind of thinking in which we want students to engage. Coding vocabulary can help simplify assignment expectations in all courses, simply because the coding terms are universal. This helps students avoid confusion and plan for the finished product.
Start coding with easy-to-use edtech tools.
With minimal effort, teachers can find fully developed lessons that challenge students with projects that ask them to break down tasks into component parts and solve problems through experimentation. Code.org provides tutorials that walk teachers through projects beforehand and include guiding questions that help engage students in problem solving.