A CS Double Agent

In August 2022 I started teaching high school Computer Science. I had been teaching high school Biology for 4 years prior. I don’t have any formal training as a teacher but I carry a degree in biological sciences and I like to think of myself as a learner. Up until this past August, I had grown a lot in the iterative process of teaching and developing curriculum and as I was approaching the conclusion of the post-bacc CS program, I was excited to apply my new expertise in the classroom. As I embarked on this venture, I quickly learned that this feat would not be so easy.

I think the nature of the challenge lies in the fact that knowing how to code, understanding code on a deep level, and being able to communicate that knowledge and understanding in English (or any other spoken language for that matter) are each very different abilities. I think I had the first pretty well under my belt and the second was growing. As much as I wasn’t a fan of the Systems Class and learning x86 Assembly, it definitely helped me better answer the sticky why questions that the curious few students like to ask. The third ability was a bit of a black box.

As an online learner of CS, I’ve read plenty of written explanations of code and listened verbal explanations on video but I can’t name a time when I had to give an in depth verbal explanation of what I had coded, how it works, and why it works, much less to an audience completely new to coding. The other facet of this challenge was that the languages I was using as a programming student, were not the ones I was teaching. I am hoping my students didn’t notice my embarrassment when I accidentally said “var” when giving a variable declaration in what is supposed to be a statically-typed language. I guess it is bound to happen when you’re writing hundreds of lines of JavaScript weekly for your Cloud App Development class but turning around to teach introductory Java.

I am currently 5 months into this life as a double agent, teaching by day and learning by night and I am pleased my progress in learning to play both roles. I still run into hiccups like the “var” incident and bouts of intense frustration in trying to help students identify missing semicolons and unclosed braces, but overall I think the challenge has helped me develop a deeper disciplinary literacy, differentiate functioning code from high-quality code, and simply be more patient and compassionate towards those with whom I work. As I start this Capstone course, I am looking forward to sharing my experiences and project with my students. Having been in their shoes not so long ago, it is hard to imaging short code segments growing into impactful software. The opportunity to produce such software and to share it with CS learners in one that I am grateful for.

Print Friendly, PDF & Email

Posted

in

by

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *