The Past is Prologue
My first encounter with a computer was on a teletype in the basement of my university’s Math and Science building. The assignment was to write, compile and execute a for-next loop, printing out integer values 1 through 20. Even in those days that wasn’t rocket science but it was how one worked with a computer if you weren’t picking up a spilled deck of cards. As I recall it was interesting, but not what you would call one of those, “man I have to do this” moments. It didn’t seem a viable means of making a living.
My next experience was at the keyboard of a Radio Shack TRS-80. I had been conned by the sales person into believing that it would calculate and keep my 4th Grade students grades. Little did I know at the time of purchase there was no software for the machine, just a pathetic cassette recorder to store whatever code I managed to put together. This encounter, however, turned out to be career changing and within a year I was pursuing a job as a “programmer”. It paid more than teaching those days and the puzzle of getting a machine to do my bidding was a lot more fun, and easier by the way, than persuading 4th Graders to do their homework and study hard.
My first job was for a small turnkey outfit in Houston, Texas, that sold BASIC accounting packages that ran on a mini-computer (how quaint). It had 8K of real core memory nestled in a board the size of a pizza box. If you pulled the board out you could actually see the little iron donuts that were the memory. The system had a CDC 96MB hard drive about twice the size of a file drawer which took too people to lift and the terminals were 80 character by 40 row cathode ray tubes, now worthy of a place in Antiques Roadshow. Our database consisted of a linked list system. Each record had a pointer to the next record. Header records, such as an invoice record had first and last pointers to the invoice line items and with this we traversed our tables. But, surprisingly enough, the system was responsive and business was done.
Many years later I live in a world where if the machine doesn’t have at least 2GB of RAM (250,000 times the memory of my first box) it’s not even worth your attention. Most cell phones have multiples of that. If you count micro-chips as computers, in my household alone I estimate we have between 40 and 80 computers. Each adult has a laptop more powerful than first computer I worked on. My grandchildren use computers the way I played with blocks. And now computing is no long just a matter of using a single machine, as John Gage, Sun Microsystems CEO coined the term, “the network is the compuer”. Little did he know how right he was. There is no “computer” any more, but hugely complex web of people, processors and and software.
Computers are so ubiquitous these days that we lose sight of how deeply they’ve permeated our lives. Business, science, the arts, entertainment, and engineering have been revolutionized. In these realms it’s hard to imagine surviving without them. Our social lives are changing as a result of computers. Just the other day a New York Times article reflected on how computers are entering the sphere of religion. The question nowadays isn’t, what areas of human existence have been impacted by computers, but what areas haven’t. I’m hard pressed to think of one. Who would have thought?
In in these days of furious change, prognostication is a dangerous sport so I leave detailed soothsaying for the reckless young. Nonetheless, I can’t help but make a few observations.
- On reflection I can safely say that none of the software I wrote ten years ago, or before, survives today. I’ve written and co-written a lot of software and some of it held up for a good long time, one package in particular was good for almost ten years. But business changes, people’s demands change and the hard reality is that what people are writing now will be gone before my grandson is out of middle school (1st grade this year). So unless we devise a faster, less complex means of creating innovative programs, society will continue to bear the high cost of new programs that will be paid either through advertising or directly. So the old(ish) dictum, “hardware is cheap, programmers expensive” will live on. (On a purely parenthetical note, I wonder how long the advertising model can be sustained. Seems every device around is trying to sell me something. I’m tuned out. How about you?)
- While technology zooms breakneck ahead, human beings stolidly remain pretty much as they’ve been for thousands of years. This informs me that as a software developer what I’m writing for next year, and the next year, and so on, isn’t going to change much. Woody Allen’s “The heart wants what the heart wants” sadly drives what many developers end up creating, so I’m happy say that I work for a company that focuses on businesses that focus on the better side of human nature. There is still a lot of crap out there but corporations are slowly stepping toward the social breach that they were, in a some part, responsible for creating. I expect that enlightened self-interest will steer the corporate world on to better paths. Don’t expect a sudden transformation, but they have to get their engineers, financiers and the like somewhere, no?
- Emergent properties and behaviors are the very essence of our world. All we experience sprang unbidden, unknowable from something else. So be prepared to be surprised. Everyone is so busy these days surfing trends they forget that tulips were trendy once too, and dinosaurs. I’m not suggesting to jump off the bandwagon, but if you are one of the really smart folks you’ll keep a sharp eye on where that wagon is going, cliffs and all.