About The Software Engineer

I have been a computer programmer for over 35 years. I started in grad school learning the "C" programming language and the Unix operating system on a PDP-11. As I worked on my doctorate, I decided that one of my dissertation projects would be a computer program running on the (at the time) newly introduced Macintosh computer. In that degree program, 7 dissertation projects were required, two of which were entirely compositions. To finish the degree, the student must write 90 minutes of music in a wide variety of genres plus a 20 minute orchestra piece (Webern would not have done well at this school because the length of the composition requirement exceeded the length of his entire catalog). But this was all nothing compared to the thousand of hours I put into this piece of software. The experience taught me an important lesson: you can expect to work long hours when you are trying to make software on a cutting-edge platform.
I recall discussing the time requirement with Dr. Charles Eakin (one of the composition professors) to which he said cooly, "Yeah, you can't be Webern here at this school." Other professors weren't as amusing or as calm as Dr. Eakin. Cecil Effinger became indignant when the issue came up at a private party (I didn't bring it up) and dumped his plate of barbacued ribs on his white shirt. When our host saw what Cecil had done, he promptly dumped his own plate on his own shirt, causing riotous laughter to erupt.
My first job was at a startup company in Boulder, Colorado building a commercial application in Turbo Pascal. The company had an old Compaq computer with 5.25 inch floppy drives. It also had a 5 megabyte hard drive. We've come a long way. Not long after starting the job, the company landed a contract to provide a custom made system to another vendor. It was to be written in the "C" programming language (thank you Northwestern U.!). It wasn't long before I was looked on as the "C" guru and was made the project manager.