Highland offers a wide range of electives. Electives can be used to explore studies outside the core curriculum. Electives offered are anything from sports and journalism, to photography and programming. I am here today to talk about one particular elective: computer science with Mr. Peterson.
Back in my Junior year, I took computer programming as an elective. I liked my experience, as I thought the class was fun but simple, and Mr. Peterson was a great guy. The class taught me how to use Scratch and Google Sketchup, and unlike a lot of other classes, he gave us a lot of creative freedom. Most assignments had an end goal requirement, like “have it multiplayer” or “draw a house,” but anything else was up to us. We could decide what kind of multiplayer game it was, and what the details of the houses were.
Perhaps the reason why I did so well in the class, was because I had experience in programming and model design. As a kid I had always been very creative and loved Legos. Eventually, I turned to video games, but my creativity stayed the same. In games like Minecraft and Garry’s Mod I could explore and interact with my own creations; which is a wonderful, godlike experience.
Then I found LittleBigPlanet, a game that gave a limited range of tools that, if you knew your stuff, could create almost anything. The game is primarily a platformer, but I have seen people create shooters, RPGs, mini games, full length movies, anything and everything you can set your mind to, if you know how to make it.
How the programming in LittleBigPlanet works is a lot like Scratch; how you place and hook up modules to activate things. It is as complex as you make it. If I want to make it so that when the player grabs a button it turns on a light, I place an object called a “grab sensor,” and wire it up to a light.
I can make the same concept more complex too. Like if I want it to be that only certain characters can grab the button, and make the light turn on permanently, I can add a tag sensor and hook that and the grab sensor up to an AND gate, and hook that up to a counter set to 1, so when a certain player with a tag grabs the button, both conditions are met so the AND gate sends out a signal, activating the counter so it is at 1/1 and permanently sends out a signal to the light.
I have used this system to create some pretty complex stuff, like a character stealth system, movement speed of characters, etc.
So, if any of this sounds interesting to you, or if you would like to learn more about programming, you should check out Mr. Peterson’s elective class.