Today is my last day at Magenic. I am retiring after 50+ years of making a living wrangling software. I just turned 70 and the logic of the universe and of that particularly pesky part of the universe called the United States Federal Government all say that I have to start taking money that I have saved up. To be fair, the government really does not care if I take the money as long as I pay taxes on it. And thus it is time for my journey to take a new direction.
Before I say where I hope the next leg of my journey will take me, it is traditional to look back to see where I have been. I started as a computer operator at Purdue University in the fall of 1963 when punched cards were the norm; one of my jobs was to re-stock the card bins and empty the chads out of the IBM 026 and 029 card punches. I have been involved with computers ever since.
The first computer that I programmed was an IBM 1401 with 4096 bytes of ferrite core memory. There was a two-pass assembler in which each of the passes existed as a card deck of binary data that had to be read in each time you wanted to assemble your changes; the intermediate output from the first pass was punched out to be read in as input to the second pass. We are talking physical labor.
I have programmed in a dozen assembly languages since that first one. I have written programs in FORTRAN, COBOL, Algol, Ada, C, Snobol, Prolog, VB, VBA, VB.NET, and C#. I have created databases with Oracle, SQL Server, Access, Ingres, Informix, IMS, DB2, and a handful of other database systems whose names have slipped away. I have controlled my source with Visual SourceSafe, TFS, CVS, SVN, and GIT. I have written embedded, operating system, scientific, and line-of-business software as well as things that do not seem to fit into any of these categories.
I have always looked for the way to improve the process. Code generation was a rabbit hole that I fell down over and over. Testing frameworks, fourth generation languages, structured programming, six sigma, Capability Maturity Models, Waterfall, agile, unit testing, and more. I have survived several revolutions, more than a couple of paradigm shifts, and at least one “this changes everything” moments. In the end, it mostly came down to smart people trying to do the right thing.
There are a lot more stories that I could tell; 50 years is a long time. I lucked out that the last 8+ years were spent at Magenic. The place is filled with smart people who care about what they do and know how to work with others. The projects were stimulating and the managerial environment was distinctly non-irritating. It doesn’t get a lot better than that. I can see “big things” coming in mobile, the internet of things, big data, privacy, security, as well as other things as yet unnamed. Just think: the smart phone in my pocket probably has more computing power than all of the computers that existed in the world when I started programming professionally in 1964. Project that into the next 50 years. Oh boy!
There is a part of me that is saddened that I will not be a part of this. But it is time to slow down, to be able to read a book, take a nap or just sit and watch the river outside flow by, to travel with my wife of five decades, to watch and to ponder what all of these changes might mean. I have been a reader all of my life, fiction, non-fiction, whatever was at hand. I have always dreamed of writing fiction. Now is the time to actually do more than dream. I am in the process of writing the first of what I hope will be a series of novels. My efforts will probably not have the scope of the changes in the last 50 years but maybe, just maybe ….