Syntax Error: Troubleshooting Failures in Coding and Language

By | 15 May 2023

In Chen Chen’s poem ‘The School of Joy/Letter to Michelle Lin’ he writes of ‘walking to the school of try again.’ Coding is this kind of towards, and so is poetry. It’s a schooling that processes your preoccupations by investing time in unpacking them. Where is the error in my code? What lines are disrupting each other? Why is language at the centre of everything? So many kinds of trying make me want to escape from the world but in a digital project each new route that I take is actioning hope.

//Code like a poem because I’ve never completed a digital project by writing linearly. 
//Code like a poem in the way one function can make another function moot 
//if they say the same thing or you miss what they’re trying to say in the first place.

I wanted code to make my poetry more exciting. When I looked for examples, I found lots of old work using Java, half of which I couldn’t even play because the software and technical requirements are no longer supported. When I looked for tutorials or advice most of it was catered to moving objects, and designing images, and very little for text. I just wanted to make my words float prettily off the screen, letter by letter. I wanted to show the decay of language that I’m obsessed with in a visual way. What I wanted was possible, but my enthusiasm made it feel urgent. I had big ideas with no means of making them exist on the screen. The best lesson I learnt early on was to break down what I wanted to achieve into steps, describe the user experience, the animations, the interactivity in detail. Once I could describe what I wanted to make I could search with key words and it yielded more helpful results.

When I found Allison Parish’s website it was like finding the holy grail for beginner digital poets. Her creative coding notes were the basis of a university program with concepts I would never have understood on my own or been able to afford to learn in a paid coding course. Her guides are comprehensive and don’t use overly technical language, it’s easy to understand and there are sketches or photos throughout to show you what she’s explaining. Her homepage bio says her ‘teaching and practice address the unusual phenomena that blossom when language and computers meet.’ One of my most persistent dreams is to share knowledge with other creatives and cultivate a community of encouragement and approachability. I want resources to be widespread, skills to be shared, and a nurturing environment for digital poetics to thrive in.

Another mainstay of my learning journey, and current coding practice, is the Coding Train p5.js YouTube playlists. These playlists were the best way to develop familiarity with and understanding of coding concepts through creating work myself. I’m a devotee of note taking and with the help of the Coding Train tutorials and easily accessible p5.js sketch examples I went to town on writing a guide that made sense to me. These resources allowed me to learn at my own pace, without the pressure of deadlines or expectations.

I appreciate the generosity of digital creatives that are willing to share their knowledge with others openly – why gatekeep when increasing the number of people in the field also means more innovation, more people to collaborate with and turn to for support and inspiration? What I really want is a community to gush about digital poetry with. I want to complain about vague error messages and appreciate the time we spend looking at our code. At some point, I started looking at my poems as I look at my code. Maybe it was when I started thinking of my code as part of the art too. The actual end-product that most people see isn’t what digital creatives spend the most time looking at, and in some ways, I wish more people could appreciate that.

//How do I email the whole world 
//to let them know learning to code 
//is the funnest thing ever 
//and not scary in the least?

Writing before you begin editing can be an unconscious endeavour – water leaking from a cracked glass you haven’t realised is cracked until you pick it up and see the small puddle – but coding, for me, is not. The placement in relation to the rest of the code is considered before each new line is written, it might move in later stages but there are obvious places where it will not be registered if placed. The same can’t often be said for poetry. You will not find any lines of code in my notes app because one line of code does not pop into my head without the context of a whole block of code. Lines of poetry can be moved from one stanza to another, and it can better the piece or it can muddy it but wherever it shifts to it will still be communicating something.

Recently, while revisiting a digital work I made for a live audience, I found it colourless and no longer communicating. I try to use code comments in each project I work on to keep track of what is happening so I can return and understand what each block of code achieves. For this project, my comments were too vague and now I don’t know why it’s not working. This might be something I’m not supposed to admit but I think it’s important to be honest about how I work with my code. This specific piece isn’t lost forever, it’s fixable, but for it to regain functionality I would need to sit with it for hours to remember what I knew when I first made it. In Life in Code Ellen Ulman writes ‘You must not be interrupted. Any break in your listening causes you to lose a line here or there … You will create a bug and there’s nothing you can do about it.’ It sounds ridiculous to think of coding as a trance, or of poetry as being possessed by the muses, but this is often the way these processes are described, and when I return to work, I understand why. If I leave a piece for too long, or if I’m distracted while coding, I feel as if I’ve been cursed with a memory wipe. When this happens, I have no choice but to read the whole thing from the beginning, searching for the meaning and the line that I was stuck on.

It’s exciting that there are some things that I understand now, some lines of code that I can write myself without needing examples or looking at something I’ve done before. Like conversations, like stanzas, like a circle floating across the screen I need to know why and how x can equal x – 0.02 and what else needs to exist for this to be the case.

Click and move cursor to interact with the code sketch. This is best viewed on desktop.

This entry was posted in ESSAYS and tagged , , , , , , , . Bookmark the permalink.

Related work:

Comments are closed.