Programming

Personal Background

My first introduction to computers was the Commodore 64.At the time, my father was teaching computers at the ‘Saturday series’ program of his school district: an opportunity for upper class kids to get even more of an education. The children of teachers were allowed to join this elite world (if only that applied to the world-class high school) and so I took his computers class, sculpting, tennis and zoology (which had sounded nice on the signup sheet but was actually a semester spent dissecting fetal pigs)

And so I learned the basics of programming – and I do mean basic.

10 Print “Hello”

20 Goto 10

My dad programmed a basic version of Pong, and a maze that one guided on the computer. In the late 80s, this was not much less sophisticated than the professional programs out there. I should note that today my father doesn’t even have an e-mail address. Attempts to show this brilliant math teacher how to use the web have failed. When technology speeds ahead, sometimes even those who had mastered one stage are then left behind.

The Class

Today, Rebecca came into class and unpacked a jar of jelly, a jar of peanut butter, a loaf of sliced bread, and a knife. She explained that she had forgotten how to make peanut butter sandwich. After the class got over their hesitation at the pure bizarre nature, they walked her explicitly though the steps. The exercise demonstrated a facet of programming – namely that you are working from a complete blank slate, with no base of knowledge and with no assumptions.

The class will be using Scratch, a programming tool that is being released just to this class. The program is still in development (@ MIT), and will not be released until February. (more on that)

Even with Con Law reading piling up for tomorrow, I have been working with the program in an attempt to write a game. Scratch is unique and clever in that it is a WISIWYG version of a programming base – no fancy scripts required. That does not, of course, mean that there is no learning curve. Indeed, I am already frustrated. While I have figured out how to have my little icon move around and respond to clicks and arrows, I still cannot figure out how to implement more than one icon into it. This would allow the variables to create a game – catching or avoiding each other, etc. Essential.

While pouring fruitlessly though the tutorial for instructions on this simple task (it, of course, contains instructions on how to do many easy, obvious tasks and instructions on more complicated tasks which I have not yet reached, and I am afraid that I will get eated by the Three Bears before finding it) I came upon a useful paragraph.

“Learning to program is ultimately about learning to think logically and to approach problems methodically. The building blocks out of which a programmer constructs solutions, meanwhile, are relatively simply. Common in programming, for instance, are “loops” (whereby a program does something multiple times) and “conditions” (whereby a program only does something under certain circumstances. Also common are “variables” (so that a program, like a mathematician, can remember certain values).”

I will keep trying. On an interesting note, this blog appears to be part of the assignment for this week, which includes:

In your journal write an entry about your experience programming and your experience playing other students’ games. Address the question of the relationship of code to law in your game. Were there laws that you felt constrained by in writing your code? Were there laws that you used code to enforce? How about in the other students’ games? Were there rules that you wished were enforced? Rules that you wished weren’t enforced?

Which is why I am not trying to resolve my frustrations and wrap this blog into a neat little tale of overcoming them. Once again, it is a process.

On the other hand, similar frustrations with the very blog software I am using is making useful the only programming knowledge I actually have. (and no, I don’t mean BASIC). Without a way to change the font size, I gave up and entered the html version, easily entering my changes with a skill that comes in handy for this and other blogs, but is otherwise made defunct by Frontpage and the like. Unless we want to end up with pages that look like those from the early 90s (think Homer Simpson’s dancing Jesus), more sophisticated tasks are best tackled with a more sophisticated tool.

Comments are closed.