I am a CS major, so all this talk about Computer Science is right up my alley. What is most fascinating about this approach is that the collaboration of authors (they drew on engineers at Google, Microsoft, Apple, Dropbox just to name a few small companies) have done a very amazing job at taking the dull, boring, tedious and onerous stuff I learned in high school and college and turned into a fun, intuitive subject matter that anyone can get into. Not just computer geeks. My daughter invited a friend over today just so they could both “play Blockly” (Blockly is the underlying environment).
The “Hour of Code” that kicks off on the 9th starts you with a very well-done video featuring some people you might recognize (Bill Gates and Mark Zuckerberg just to name a couple), and then gives you a pointer about how to complete the first task. And of course, these guys got rights to use the “Angry Birds” theme, making an instant connection to that mindlessly addictive vice. What I love about this environment is that it is very forgiving, very smooth, very “web 2.0” and quite instructional. You start with a very simple task with a very clear goal, with only a few options to complete that task. And it just builds from there. Before you know it, you are using loops and logic branches (if .. then), and then immersed into the world of “Plants vs Zombies”. How can you not love this stuff?!? 🙂
The “Hour of Code” deals with just the first ‘stage’ of 20 total stages. Think of it is 20 different lessons, all building upon each other until you get to the end where you have essentially “mastered the basics.” And in my opinion, mastering the basics is a fundamental skill in our modern society. But it doesn’t stop there; the teams that bring you the cute little computer science training with the full sound effects of Angry Birds went a step further and created an “unplugged” version, an entire lesson plan on teaching these concepts with no computer at all. They use another fun, addictive activity that many youngsters will think fondly of – the Cup Game. In the “unplugged” series, a team of students, comprising of one “robot” and several “programmers”, have to instruct the “robot” how to play the game using a limited vocabulary of 4-6 “commands” or symbols. Basic things like “pick up cup”, “put cup down”, “move cup left”, “move cup right”, etc. The idea is for the programmers to come up with a stack of symbols such that the robot can follow the entire thing from start to finish. Not too different than the old punch cards programmers used to use several decades ago. 🙂
I had a lot of fun with Blockly. I zipped through the first 20 lessons of the Intro stage, then marched through the remaining 19 stages. Another fascinating element is that the student is almost being tricked into learning core Computer Science concepts. Aside from control loops, logic branches, there are also functions and parameters. But these are hidden, or rather abstracted, behind fun tasks that are short, quick and easy to digest – bite-sized chunks of Programming 101. And beyond that, there is plenty room for creative exploration. One can choose to beat the suggested number of blocks and optimize their “code”, or one can just go crazy and make the subject do totally random things. I really appreciated how there are several stages devoted to artistic expression; this leaves things wide open for those that just want to try things out. There is no “penalty” for using too many blocks in these creative lessons (in the normal lessons, you are constrained by a maximum number of blocks). I had a bit of fun trying to figure out how to use the basic functions available to create the Golden Ratio, ovals and finally a sine wave.
I realize programming is not the end-all-be-all. I realize some kids have different strengths. I don’t know how all this programming stuff will fit into K-12 Education. My excitement revolves around the fact that some really smart people have come up with a totally fun way to open the doors and allow anyone to learn concepts that I labored through. For some, this might open the door to a future career without even having to go to college. For some, this may ignite a passion for computers. Who knows. All I know is that I had fun with it. 🙂