Sunday, August 22, 2010

My Dirty Little Secret

I actually have two dirty little secrets:

1. I'm a professional musician and I write computer programs; and,
2. I'm a professional computer programmer and I play the guitar professionally.

There... thank gawd I've got that off my chest.

In our right brain, left brain society, few people consider that there can be hideous hybrids among us who actually use both lobes of the brain, sometimes... gasp... AT THE SAME TIME!!! In my case, it's exacerbated by occasionally writing assembly code and dabbling in hillbilly music... dang ol' microprocessors anyway.

I don't even remember which activities are supposedly consigned to which brain half. I do know that, whether this is fair or not, a certain amount of distrust is created in others when they learn that you're not like them. The art students learn their faithful, former friend took a business class! The accountant's client realizes his once reliable reckoner writes poetry! Ah... the betrayal is beyond belief.

With a passion that I've only seen elsewhere in Canadians who discover other famous Canadians, I have collected a small, but representative group of these left/right brained mutants who threaten the fabric of society. Ready to name names?

Leonardo Di Vinci -- painter, sculptor, mathematician, scientist; so diverse in his activities that the term, Renaissance Man, is virtually synonymous with his name. Don't you just wonder what sort of music he might gravitate towards in today's world... I'm guessin' Hillbilly.

Robert Persig -- though maybe a little inclined toward the technical side, his Zen and the Art of Motorcycle Maintenance is the primer on the pathology of Bilobalism. (Note: I just made up this word and I claim common law copyright as of this moment!)

Charles Ives -- American modernist composer and pioneer in (gasp) life insurance and estate planning. If this weren't shameful enough, Ives was also a standout athlete at Yale. He was fond of Stephen Foster's music, which was certainly the hillbilly of its time.

Brian May -- writer of "Fat Bottomed Girl" and "We Will Rock You", former Queen guitarist, astrophysicist and current Chancellor of Liverpool John Moores University. "Betrayer of purity... we will rock you, indeed! Let us begin the gathering of the stones!", shouts the rabble in Monty Python voices. "Thing Called Love" is arguably akin to hillbilly.

Hedy Lamarr - Paragon of beauty and major contract star during MGM's "Golden Age". She was a math whiz and developed the basis for spread-spectrum communications technology used in WiFi and Bluetooth. Lamarr co-starred with Bob Cummings, who was born in Joplin, MO, Gateway to the Ozarks... you can't get more hillbilly than that!

And here's a good collection of Musicians with PhDs.

Thok Have Mammoth on Face -- Stone Age Programming

Welcome to my computer programming blog. I'm a first -- maybe second, depending on definitions -- generation programmer. If the "art" of programming were, say, visual art, my entry time would be about the equivalent of the point where prehistoric humans began to create images with dyes derived from plants, rather than just to chisel images on rocks using harder rocks.

My first programming language was FORTRAN IV. This sounds like it might be quite a ways up the generational ladder, and, in computer life terms where a second is like an eon, it is. However, in human years, the interval between the initial introduction of FORTRAN (IBM's Mathematical Formula Translation System) and the arrival of FORTRAN IV was only a blink -- less than the elapsed time between the introduction of the iPod and the iPad. In fact, when I was diligently creating programs in FORTRAN IV, it had already been replaced by FORTRAN 66, though this was primarily a standardized version of FORTRAN IV.

FORTRAN IV or FORTRAN Googol -- it didn't matter to me... I quickly moved on to much cooler computer concepts -- but more about that later. For now, let me assert that I discovered not only did the computer do things for me that I really hated to do for myself -- like long division -- but that I was really good at writing programs. This awakening was akin to something I'd experienced earlier when I first played an electric guitar. It just clicked. My set of genes was custom tailored to the task.

To appreciate how big a difference the computer made in the life of scientists, engineers, and, most importantly to me, college students, you have to consider the timeline. The first affordable personal desktop calculators were not available until the early seventies. My first one (which I still have, by the way) was a Radio Shack EC-375... nice big buttons, with several simple scientific-like capabilities such as Square Root. By this time, however, my years of cranking out the solutions to dreaded "word problems", was a hideous memory. Take your typical basic physics word problem (PLEASE, in Henny Youngman voice). It might require a few seconds to see how to get to the answer... but another 10 minutes to grind through to the ten digit number which represented the continuation of your student deferment. If you don't know what I'm talking about, just consider yourself lucky -- both about the ten digit number and the student deferment.

To me, it was fascinating that a means existed of describing to a machine how to work a problem, and then the machine would do the heavy lifting and spit out the answer in a millisecond or two. But how did the machine do this? All I knew at the outset was that I could type my program on a keypunch, give a stack of cards to a acne scarred sociopath with B.O. (called a sysop), and only a day or two later, get a ten pound sheaf of paper which somewhere within contained information about the errors that, if corrected by repeating the keypunch/submission process, would provide the very answer that I requested.

There were issues here that I very soon caused a hypersensitivity for me. The keypunch was like the Godzilla of Typewriters. The user would insert a bunch of IBM style punch cards into a hopper, and the machine would punch holes (in Hollerith Code, named for Herman Hollerith, the founder of the company that became IBM) that could be read by the computer's card reader. The sound created by the keypunch for each keypress was similar to the sound of a bad snare drum struck way too hard by an inexperienced drummer. I was already well acquainted with this noise by dint of a decade of participation in garage bands. An entire room of keypunches operating simultaneously was the drum corp nightmare that only became reality in the hands of Fleetwood Mac years later. Oh yeah... and the machines were always busy, requiring at least an hour of waiting time.

The noise and wait were a simple necessity. However, nothing could have prepared me for the anxiety produced in anticipation of potential damage to the deck of cards, sometimes numbering in the thousands, that could be inflicted by rain, wind, beer (always beer), or, gawd forbid, dropping the deck, particularly when said dropping was accompanied by rain, wind or beer. After one dropping in beer episode (a DIBE), I learned to insert sequence numbers on the cards. There was a card sorter that could read sequence number and re-order the deck after the damaged cards were retyped. Yikes... do you appreciate your Netbook a little more now?

The big mystery to me, though, was what did the computer do? How the hell did it make sense of those little punches, do the arithmetic, store the data, and print error diagnostics (usually) and answers (occasionally.) For my life, this was a jumping off point -- much like the reaction to the sound of the electric guitar's E-string that I first heard in 1957. This jumping off point, surprisingly, led me back in time, not forward, for a certain period. From that point, I could move forward with the foundation of the knowledge of basics.

In future blog articles, I hope to give non-technical readers an idea of what goes on in the computer, and just what manifestation of the mental malady called computer programming has led to writing this blog.