I never knew my father used to program.
It's a fact that probably would have passed me by completely if it weren't for a stack of old computer paper my grandmother had dug out of the attic in the house where he grew up. Sitting around the Christmas tree a few years ago, I was more than a little taken aback when he recognized the code on the page. He named the language, Fortran, in the same tone someone of that generation might talk about black and white television or 80's music - not something they'd go back to, but it was what they had at the time.
Reading over the faded symbols, I could just make out a vaguely familiar syntax. I tried to square the image I had of my father with that of a programmer, and with a little imagination it wasn't so hard. He was a math major in undergrad, after all, and most Computer Science departments grew out of math departments to start with. But just as I was coming to treasure the idea that my interest in computers might have been in part inherited, my aunt - his sister - spoke up as well, with her memory of the same class.
This was another surprise because while my aunt had a similarly analytical mind, she was a psychology major. I can count on one hand the number of psych majors that I had tutored in the three and a half years I held the position for my schools introductory CS classes. But she reported the fact with a similar matter-of-factness. They recounted the experience with the details I had come to expect - mainframe computers that took up half a room, the slow and limited calculations - but when I asked why my aunt, and even my father for that matter, had taken the class, they explained that it was encouraged much in the way of a keyboarding class. If you wanted to type, you needed to take keyboarding. If you wanted to use a computer, you needed to take programming.
My father is not a computer scientist, and he certainly doesn't program anymore. But he did show me all the good keyboard shortcuts, and he taught me how to use a terminal. He's certainly not intimidated by the computer. Thinking about it makes me wonder when the barrier between computer users and computer programmers become so well-defined. These days, someone can pick up an iPhone and access decades' worth of technology without understanding the smallest bit of how or why it functions the way it does. And I would say unequivocally that's a good thing. But I think we're coming full circle, back to a time when computer programming (or at least procedural thinking) is a necessary medium to access the full power of technology. I wonder if it's possible to go back to a mindset of simple practicality: If you wanted to type, you need to take keyboarding. If you wanted to design, build, imagine, compose, immerse, and transform, you needed to take computer science.