Long and short of it

Do not touch those dials.  We have control of your vertical.  We have control of your horizontal.

Do not touch those dials. We have control of your vertical. We have control of your horizontal.

I learned to program when dinosaurs walked the fern-lined corridors of cubicle-land. In fact, I never thought I was learning to program; I was doing research into adolescent criminal behavior, and then smoking behavior and then pregnancy, first as part of an undergraduate degree in psychology and then as research in a PhD program in Social Psychology. I just needed to get my numbers crunched. When my SAS or SPSS jobs failed to run I had to hack at them to make them work. The idea that this hacking was actual programming never dawned on me. When SPSS failed to transform a matrix properly and somebody introduced me to the concept of a program exit that would let me manually fix SPSS shortcomings via Fortran, well, I knew that was sort of programming, but it didn’t really matter because I just focused on getting my numbers crunched.

In the late 80s, if you lost track of what you should have been doing, you ended up programming, because programming and the need for more programmers was everywhere.

Today I learned about UITableViewControllers and Referencing Outlets, strong and weak references in Objective-C (weak allows an object to be removed from memory and is used to prevent what we used to call deadly-embraces, where two strong references result in neither allowing the other to let go). There’s a kind of mapping between the programming I did in the 80s and what you do with the iPhone, but the surface is completely different. If you brought somebody from 1915 forward to today, they would recognize a car as the futuristic descendent of the horseless carriage of their day, just with impossibly shiny surfaces, all the textures erased and a lot of automation. iPhone programming is the same. In the old days it was linear – you started at the top and fell through to the bottom with the occasional fun of a looping structure (in fact, this style of programming is generally known as ‘fall-through’). Now when you program, not only do you not write linear programs, your activity is all over the map – even though visual objects are programmed, you’d never get them right if you had to create them from raw code each time, so you drag them onto a stage and never see the code. They remain visual, the way the fuel-air mixture still happens in an internal combustion engine, but nobody would get it right if they had to set it with an adjustment screw on the butterfly element of a carburetor.

So you drag-drop and then program a bit on the new visual element, drag and drop some more, add some styling, program a little more. It’s a fractured and cobbled task; more sous-vide than the burger-flipping it used to be. It’s a total kick, and you have to hold way more in your head because you need to know the class libraries and have a series of bookmarks in your head as to where you were in one part of the environment while you patch things up in another.

It is very good for your concentration.

Anyway, I blew through the halfway mark in my iPhone programming class yesterday and today. I also read yesterday that Tim Cook admitted the iPod market is “maturing”, which is tech shorthand for having a foot in the grave. With luck I’ll finish my course on the iPhone before the technology is simply embedded in our retinas.


One thought on “Long and short of it

Leave a Reply