Growing up in a small town, computer class meant Mavis Beacon, PowerPoints, and spreadsheets. Of course, the latter came with the constant reminder not to hold down “Enter.” We would be in trouble if we printed blank pages! There were no advanced courses and no formal opportunities for a deeper understanding. After years of laughing off the “easy” class, I had a teacher encourage us to not go to college directly following graduation. He didn’t say this because he thought we were incapable. He didn’t say this out of frustration or anger. He said it because he understood our ignorance. He questioned how many of us wanted to become teachers not because teaching was our passion but because school was the majority of our lives. How easily we are convinced to make lifelong decisions before having the smallest of ideas at the number of opportunities out in the real world. He went on to explain several career paths that I had never heard of (or can even remember) and encouraged all of us not to settle but to find our passion. At the time, I wasn’t sure what to think. Now thinking back, I find this lecture both inspiring and disheartening. How many possible professions does one miss out on due to lack of exposure?
For me, it was my love of video games that led me to pursue colleges that offered video game development courses. Over time I learned that this meant a Computer Science degree and this later led to my career in software development. I will forever be grateful that my parents bought me the second edition of Game Programming for Teens as that encouragement led me to where I am today. However, I wonder how many others have missed out on finding their passion simply because it was never considered as an option.
This is why over the last two years I have gotten involved during Computer Science Education Week to help with the Hour of Code in my sister’s classroom. The Hour of Code is a movement by Code.org to encourage everyone that even they can learn to code and it can be fun! The students enjoy it because they are playing with familiar characters (we chose the Minecraft theme), but at the same time it is teaching them the basics of functional programming and problem solving.
In general the Hour of Code uses Scratch, a programming language created by MIT to allow for creation by dragging and dropping. A series of commands are provided on one side of the window, and they can be moved into the action window, where they are put into motion. Scratch can be leveraged from very simple demonstrations all the way up to creating animations, interactive stories, and even full games. No typing required.
This year in the classroom, we started the class on the Minecraft Designer activity. We were pleasantly surprised to find that most students were able to finish, and many students asked if there were more activities available. They progressed from laying out sequences of blocks manually to using loops and conditional statements to generate them automatically. Now when an enemy approached their character automatically fought back!
It was very satisfying to watch as their excitement and pride grew with each new problem, and I take pride in knowing that I helped bring an opportunity to a group of students that I never had for myself. It is never too late (or too early) to learn something new. Whether it be for a profession or a hobby, computer programming provides an excellent avenue for developing problem-solving skills and creativity. For anyone interested in learning more, I highly recommend exploring one of the many activities the Hour of Code provides. From simple lessons aimed at a younger audience, like the Minecraft activity we worked through, to more adult lessons where you write and run real code, Hour of Code provides something for anyone willing to start learning. My personal favorite is Code Combat, where you interactively program your hero through a role-playing adventure where you “defeat ogres, solve mazes, and level up.” If you are interested in a more serious and in-depth understanding of computer programming, I highly encourage you to check out Codecademy.