dev diary livejournal

For: Weblog

Published: 19 October, 2019—— 03:33

Previously: Patterns

Next: Invocation

Hello friends! I meant to write you yesterday, but I got legswept by computer code. I’ve been working on a zine|tool|site|dream called Song Islands. I can speak of the project in one way, and it’s this lofty dream that combines everything I love about art, the past, the future, and the internet. I can speak of it another way and it’s basic site that lets you send a song to friends. Yesterday I felt confident, and was describing it to myself both ways at once...a lofty vision of the future that is so basic in my mind that I can realize it easily. I wanted to add a new element to the song islands, and would code it quick before setting out to write my evenings thoughts. Then I somehow broke my whole program, loading a blank page with every refresh, with the computer console returning the cryptic error message: “[cannot continue]...stop() is not a function”. So I spent the next couple of hours trying to fix this error, or at least understand it, stayed up far too late, and went to bed with a broken site and no diary shared.

I did not realize how lonely coding would be. A couple years ago, I felt a pull towards the computer, a wish to express myself through it, using a writing style that felt myserious and runic. And it still is! It turns out I love coding a lot! But I wasn’t anticipating how rough this midpoint would feel–where I am not practiced enough to articulate my feelings well in it, but have become rusty in all my old methods too.

The loneliness comes, I think, from not feeling like I can connect to y’all through it yet. I get such stress when talking about code here, an unfounded worry about the phantom expectations of my unknown website audience. If you, dear reader, are not interested in computers than I worry these words will be boring at best, and alienating at worst. And if you are into computers, then I worry all my words will be embarassingly wrong, and mispelled. To try to connect through the coded objects is tough, as so much of the work that made it meaningful for me is private. It’s being able to manifest an object that didn’t exist before and not knowing, until it appeared, whether it would ever be possible for me to do it.

This sounds mighty, but at my current ability, all the things i’m gobsmacked at being able to manifest are basic and small. For example, The next iteration of song islands, currently, is a blank page and an error message that sounds like a sports ad(“Gatorade: there is no stop”). I spent hours experimenting with my code to make that error message disappear, poring through documentation trying to uncover where stop() tried to, and failed, to exist. If I’m one day successful with this I’ll be able to have...a web page, with a peach backround, that shows a list of song titles.

So much of coding feels like climbing up a mountain to bring back a pint of milk, all showing it to yr friends like “can you believe it? I brought this back with my two hands and two feet, that’s it!” and they’re politely nodding, wondering why you’re so out of breath and how a pint of milk could make someone so sweaty.

~~*

I write all this as if it’s new, some undiscovered feeling whose shape I’m beginning to make out. But this loneliness is so common, and so shared! As I write this, I realize the core of this post is that there’s big dreams in my mind, and a frustration that I can’t make them real quickly enough, or that the thing that makes them special to me won’t be understood by you. But that’s the loneliness in all expression, the heart breaking as it opens fully, hoping you can recognize its shape. In other words, this is all a positive: I’ve just discovered a new way to break my heart, and it’s a program you can run in yr web browser.

Tonight, I had a spark of inspiration, read through the chat logs again for the coding framework I’m using, and found the answer I’d missed last night. There’s a notion of javascript called ‘promises’, which is a function that sets out to retrieve some data, but sits as an in-between placeholder until the true value arrives. I wanted to populate a page with track lists, and so used a promise to do so, which the compiler would not accept. The error message was the compiler’s attempt to tell me, “I can’t fill this page with promises, I need something tangible”. And though it’s way of speaking made no sense, I totally understood what it was going through.

It’s not sharable yet, but I got the peach page of tracks to appear and it feels fantaaaaaastic. But I didn’t need to tell you how it felt, I’m sure you get it.