Coding is a very important skill for today’s students. Currently, computer science job openings outpace the number of qualified applicants, and as we move into the future, more and more industries will require employees to have some basic computer programming skills… But how exactly do you go about teaching programming to middle schoolers? It seems so complex and complicated, but I promise you it’s not!
Read on for some tips to get started and making your computer science course a success!
5 tips for teaching programming to middle schoolers
1. Get buy-in.
Middle schoolers have a reputation for being difficult, but if you can convince them that what you’re teaching is worth their time and attention, they are truly the best! So… how do you do that?
You can start by showing them why the content is important and how it connects to their lives. With computer science and programming, this is so easy! There are a ton of interesting and educational documentaries that will immediately answer these questions (I love PBS NOVA’s “Can we build a brain?). You could also lead a class discussion about the applications of programming and have students research careers in computer science. My students are always amazed by cool opportunities in this field and the potential salaries that come with them.
2. Start unplugged.
It is super tempting to get the computers out and dive into teaching programming to middle schoolers with a physical or virtual device, but I would recommend holding off and start with teaching the basics unplugged or without a device.
There are several benefits to starting unplugged, first it helps students who may feel uncomfortable or intimidated by technology to access computer science concepts in skills in a way that feels familiar. This assists with your buy-in. Second, you will force students to slow down and really think about the process and develop their algorithmic thinking skills. When they immediately jump into a coding program, they are often so excited about solving the puzzles, they miss out on the metacognition they need to do to develop the strong skills that will help them write more challenging programs in the future (Bell and Vahrenhold, 2018). This leads me to the next tip…
3. Teach best practices.
Even though students will be learning and writing very basic programs in the beginning, you need to have them slow down and use the best practices and problem-solving approaches that they will eventually rely on as the tasks get more difficult. In my classroom this means, students write algorithms, use flowcharts, and apply a troubleshooting process every time they write a program.
By practicing these skills and getting into the habit of using these strategies from the beginning, your students will have a much better change of approaching and solving complicated tasks later on.
4. When things go wrong, don’t stress… Model debugging!
As a teacher, sometimes we feel like we need to get everything exactly right and know all the answers before we present something to our students. But in STEM, and particularly computer science, this is just not the case!
While you are teaching programming to middle schoolers, you will also likely be learning new technology and growing as a computer scientist yourself. A really important skill is to be able to identify where a bug is occurring in a program and persevere until the problem is fixed. When you run into a problem with your code or technology, apply your debugging techniques and show your students how you go about solving it! This will teach your students a powerful lesson. As they say, your actions speak louder than your words.
5. Have fun!
Computer science is so much fun to teach! You can let students take the lead, use creativity, and follow their interests and passions. The opportunities and projects you can pursue are endless. Take the time to find a coding project or curriculum that truly sparks your and your students interest, so you can enjoy every lesson.
Looking for more ideas for teaching programming to middle schoolers?
Grab this Intro to Computer Science Unit and have the first 3 weeks of your computer science course done for you! This complete unit will engage and amaze your students as they learn about computers and the fundamentals of computer coding. The unit includes over 100 pages of resources that can be used individually where they fit best in your STEM course or as a 3-week middle school computer science unit.
Grab these lessons today to get back your nights and weekends while knowing your students will be engaged in learning the basics of computer coding.
Bell, T., Vahrenhold, J. (2018). CS Unplugged—How Is It Used, and Does It Work?. In: Böckenhauer, HJ., Komm, D., Unger, W. (eds) Adventures Between Lower Bounds and Higher Altitudes. Lecture Notes in Computer Science(), vol 11011. Springer, Cham. https://doi.org/10.1007/978-3-319-98355-4_29