On software, jazz and the writing of novels

There was a time in my life when I was a programmer. Or software engineer, in more current parlance. This career in which I laboured during my young adulthood came to me via a university degree in a discipline that served an industry desperate for computer skills. I was living in California at the time, and these skills carried weight. So I was spoiled for choice, my good fortune fueled by lucky timing and external influences rather than personal design (my MSc was completed in large measure to please my father).

Programmers come in various hierarchies of skill, just like everyone else. As unlikely as it may seem, watching a great programmer at work is sort of like watching a great magician, or even better, watching great art-in-process. As odd as it may sound, reading an elegant module of code can be a moving experience, and I would look up to its practitioner as a sort of god. This brands me as serious geek, I know, but so be it. I was a reasonably good programmer, certainly not a great one. But there was one area in which I briefly floated with with the angels.

Soon after I graduated from UCLA I was hired by a company developing videogames at a time when the industry was just starting and was trying to gain a foothold in the public’s consciousness and purse. The machines, built by companies like Commodore, Atari, and TI were cheap, hoping to attract a young audience without much discretionary income. This meant that the various electronic components in the machine were also cheap – not much memory, little processing power. And this meant that the responsibility for being smart was transferred to the programmer, whose job it was to wring the most oomph from least capable components.

In particular, the lingua franca of videogame programming was Assembly language, an arcane and unfriendly machine dialect that bore very little relationship to the elegant and sometimes bloated languages in common use today. Its grammar was very close to the heart of the computer and there were few steps of translation from the world of humans to the world of electronics.  A command left the keyboard and made its way into the electronics to perform some small operation, like putting a red pixel in a location on the screen, or checking the position of a joystick. Worse yet, one had to perform the entire videogame program in the time it took for the TV’s electron gun to go from finishing painting the screen at the bottom right, and was retracing its way to the top left of the screen. This was 1/30 of second. This requirement has now become an historical oddity, as technology has leapfrogged ahead in many ways.

A strange thing happened in this window of time in which the constraints of the day required technological trickery and deception, without the benefit of big toolsets, and usually without the benefit of lots of time and money. I would sit down to program a section of a videogame and I would lapse into a strange solo state, almost an aloneness. I would be confronted with a visual problem (for instance, how to get my little skier to avoid hitting rocks on the slope of my game, which was entitled ‘Slalom’). And I would reduce my entire focus down to solving that problem, all other concerns, including food and phone calls and even bathroom breaks would become secondary while my head filled an unstructured modelling of possible solutions, traps, processor interrupts, synchronisation, memory limitations, processor cycles, bug eradications and the like. So complex and delicate was the web that I was weaving that a simple external interruption, like the sound of a telephone, would completely wipe out hours and sometimes days of careful internal mental construction as the myriad connections and teetering layers of logic disappeared in an instant. At the best of these times hours would pass in minutes, and a successful completion of the programming task would leave me exhausted, satiated and euphoric.

I became very good at it (I actually have 6 video games to my name, for which I got paid very little). The process of taming a problem with a mixture of learned syntax and imagination made for a deeply satisfying activity, performed for its own internal beauty before it was let loose for others to inspect. It was the perfect exercise of brain and spirit.

I have also played saxophone for decades. Initially I had dreams, like all young and aspiring musicians. These were quite quickly leveled in the Los Angeles of the 80s, as  I discovered great saxophone players far more talented than I would ever be toiling in unheralded bars and clubs, cloaked in the anonymity that was likely to last their entire lives. But occasionally, when the muse smiled, and I stepped up to the mike to invent an improvised solo guided by the mandates of song structure, melody and chords, I would play something interesting, new, surprising, moving, even close to perfect, at least against my somewhat flexible standards (and the core plot point of my latest novel, Imperfect Solo). The inner experience that occurs at such moments, which happen suddenly and without warning, are exactly the same in both detail and principle as that which I experienced when writing an elegant piece of computer code. No difference at all. Realtime subconscious invention within a body of knowledge is the definition of improvisation, it requires effort and practice and some talent and the serendipity of the moment, and it is like nothing else. It is a true and unfettered description of the self.

Which arrives, unsurprisingly, at writing. Having embarked on a writing career, and having published a few novels, I was struck again by the doppelganger of coding and jazz. Writing requires long periods of solitude. It requires, to a greater or lesser extent, a body of guidelines and syntax and knowledge (how to write a sentence, a paragraph, a chapter, a story). But above all, it requires constant and endless improvisation as one threads together all of the elements that colour the effort – the plot, the characters, the arcs, the relationships, the underlays and overpasses that make up 300 pages of text.

Writing, it seems to me, is the ultimate in improvisation. An improvised sax solo takes minutes, a coding problem takes days, maybe weeks. A book takes months and maybe years.  And notwithstanding story notes and chapter outlines and character summaries and the rest, even for the most organised and fastidious of writers, the moment arrives where the sentence starts, and until the end of the that sentence, improvisation rules. And the next, and the next, gradually chipping and improvising away until a scaffold and then an edifice and finally a structure appears. It is something built from nothing. It is made up in our heads. It is an act of magic.

It strikes me that everyone has a talent for something.  Accounting. Graphic arts (which I tried and was found wanting).  Childrearing. Bricklaying. Engineering. Dentistry. Kindness. Pet rearing. Loyalty. Homekeeping, And it strikes that in all these endeavours, the ultimate expression of love and passion and faith and optimism is the immediacy of improvisation.

From which we emerge, occasionally.

Exhausted. Satiated. Euphoric.

Be Sociable, Share!

    One thought on “On software, jazz and the writing of novels

    1. Pingback: Steven Boykey Sidley on Writing, Coding and All that Jazz | Pan Macmillan

    Leave a Reply

    Your email address will not be published. Required fields are marked *