This is part 5 in my series of how the Mac reminded me why I fell in love with software development, and why it still matters.
While reading Andy Hertzfeld’s anecdotes (and those of his colleagues) of designing the original Macintosh computer, I was inspired, inspired to take account of my own passions, the passions that these stories reminded me of. Today, I continue that list:
I love to create new patterns. I love solving problems through discovery, inventing that which has never existed before. (From part 1.)
I love applying principles in new ways. I love working with abstractions, and turning them into concrete expression. I love challenging the status quo, breaking through the limits of what everyone else says is “possible.” (From part 2.)
I love achieving status through collaboration, which is compassionate conflict. I am not a baboon. I do not achieve a sense of status by beating up (literally or figuratively) on my colleagues and friends. But I do expect to be recognized for the ideas I bring to the table, and I want to be taken seriously. (From part 3.)
I love moving in the right direction. I believe in making the world a better place, one step at a time, and that helps fulfill my need for purpose. Whatever I work on, it’s more than the work itself; it’s also how that work changes the bigger picture. (From part 4.)
I love taking time to think, time to learn. A relatively small portion of my day is normally spent actively producing output, whether writing or developing software.
For many years now, I’ve cherished the freedom to take long walks— No. Not “cherished.” I’ve insisted on it.
I often pause my coding or writing, my creating, to get some fresh air and a little light exercise, during which I listen to podcasts or mull over some difficult problem that’s blocking me.
I once worked with a manager-programmer who had a negative reaction to this habit. Apparently, to him, programming was about sitting in front of the computer. And if I wasn’t physically sitting in front of the computer typing, then I wasn’t doing anything productive. This manager-programmer also wrote some of the worst code I’ve ever seen—no exaggeration. Coincidence?
As a writer, I’ve also had to wrestle with the converse, the desire to stop and think, not to unblock myself, but in order to distract myself from accomplishing anything productive. At one point, I believe, I was actually addicted to writer’s block. Because doing stuff other than writing is so much easier than barreling through some of the emotions that we writers sometimes wrestle with.
I don’t know that I’ve ever had that problem with programming. However, it is a lot of work to keep up to date on technology, processes, and practices. Even in a narrow niche, there’s always so much happening, there’s so much to read, so much knowledge to digest, so much to apply. (Writers should be so lucky. And a few of them are.)
One part of the Macintosh story that stuck out at me was the long hours the team sometimes worked. Andy Hertzfeld describes one such anecdote:
As pressure mounted to finish the software in time to meet our January 1984 deadline, we began to work longer and longer hours. By the fall of 1983, it wasn’t unusual to find most of the software team in their cubicles on any given evening, week day or not, still tapping away at their keyboards at 11pm or even later…
Steve Jobs had recently bragged to the press that the Macintosh team was working “90 hours a week”. They decided that the tag line for the sweatshirt should be “90 Hours A Week And Loving It”, in honor of Steve’s exaggerated assertion.
I have certainly worked long hours at a stretch… but never for months at a time. And those long hours are not where the inspiration happens. Inspiration happens in the quiet times before and after the chaos, when a person can read, learn, digest, think.
I spent a year at Avid, mostly working on the AirSpeed Classic I/O server, helping bring it to market. During that time, there was one particular two-week span when I became very excited over a certain project. During those two weeks, I worked on almost nothing else. I did not read my daily journals. I hardly even slept, I felt so passionate to finish that project.
As the two weeks came to a close, one of the hardware engineers came to me with an urgent problem that could be fixed in software. Okay… except my brain was so tired, I couldn’t figure out how to put the pieces together to make it work. I couldn’t even put together simple English words to form a coherent sentence.
Despite his urgency, I told him I needed to leave to pick up my kids or something, which was true (though perhaps a slight exaggeration). I figured that, despite the urgency, no one was going to die if I didn’t work on that problem right then right there. It could wait 12 hours for me to get a good night’s sleep. I spent that evening relaxing and sleeping, in that order. And the next morning, I had a simple solution to his problem. Just like that.
(To be continued.)