How It Feels to Look into a Monitor and Work with Letters and Characters that Orbit Around the Earth
Not that long ago I met a guy at a party who programmed satellites. I don’t remember his name (because I am bad with names), but do I remember that he had a nervous laugh. It was a low revving sound, a “hahnhnhnhnhn,” that filled his sentence like background noise. It was almost like a purr and it was almost charming.
I asked him what it was like to program a satellite.
“Oh, it’s about what you’d expect,” he said. “Hahnhnhnhnhn. I spend the first two or three hours of my day loading my head with what I knew yesterday, hahnhnhnhnhn.”
“Surely you haven’t forgotten that much over night.”
“No, it’s true! Hahnhnhnhnhn, I have! Every morning, it is a matter of loading up state. You need understand the system and you can only look at so much of it at once, hahnhnhnhnhn. There is this function over here, and there are those variables over there. Let’s say that I am trying to write a simple method affecting the distribution of power. Well first, I must know how power is currently being distributed. There is a whole system that has been balanced and tuned. I must approach it the way the computer does, hahnhnhnhnhn. The computer has read all of the lines of code and it has them all in memory, so I need them in my memory as well.”
I told him that for my day job I build websites, and that although it is nothing like real software engineering, perhaps in some small way I could relate.
“Well you have to understand,” he said, “I know nothing about how to build a website! Hahnhnhnhnhn.”
“It’s not hard,” I said. “It’s somewhere between following a recipe book and setting up a fish tank.”
“All of my fish always die! Hahnhnhnhnhn. Well you understand about threads, right?”
“I know not to touch them,” I said.
“Hahnhnhnhnhn, well, you yourself are a single thread. You can only see one thing at a time. And even if you have two monitors and even if they’re enormous, you are really only looking at one and understanding one. It might as well be a keyhole showing you one letter or one parenthesis at a time. And not only are you looking through this keyhole, but you are working through it as well. Putting letters in and and taking letters out. So maybe it is a ship in a bottle, I guess? Or it is like redecorating a dollhouse by reaching through the front door? Hahnhnhnhnhn, you would be better with words than me.”
“Let’s go with the keyhole,” I said.
“Right, the keyhole. So to read a sentence, you must look at all these letters one at a time to form an idea in your head of the overall meaning. And if it’s a long sentence, or even a paragraph– and keep in mind this is exceptionally technical stuff –well, sometimes you might lose your place, hahnhnhnhnhn. It can take a while to build up an accurate mental representation.
“But, but, but," he continued, "other times you must confront a problem of an entirely different nature. A whole block of code, the architecture of functions and abstractions, it forms completely in your mind, and you type type type just to get it down. It feels like it is coming from a place inside of you that you also cannot see, because you are making it up as you go, and yet it follows a learned logic. A little like improving a song, perhaps? You know how a song should work, and that there will be chorus, or that a melody should come back again.”
“Do you really think of it as a melody?” I asked.
“No, of course not, hahnhnhnhnhn, I am trying to be poet for you. But my point is, this whole mess is born entirely at once, and then you must spend several hours or perhaps even days asking yourself, ‘What have I built?’ and ‘Does it work?’ and ‘Can it be improved?’ and so on. ”
“Sounds exhausting,” I said.
“Incredibly! Hahnhnhnhnhn. But everyone has ways of blowing off steam. Myself, I ride a bike in the afternoon. I start at my office and go around the Embarcadero, up to Chrissy fields, sometimes across the bridge and into Marin. I need to work out my body without clearing the state out of my head. If I lose the state, I have to start all over! Hahnhnhnhnhn. Biking for me is the perfect amount brainless, hahnhnhnhnhn. To justify the time it takes to get going every morning, I must work long days, so I peddle a hard lunch and then work another six or eight hours.”
“And what do these satellites do?” I asked.
“Remote sensing! Hahnhnhnhnhn. Get it? Like they have a choice! They are in orbit, hahnhnhnhnhn. And tell me about you? When you were introduced, your friend said you were a writer, but you tell me you are a developer. Those seem like such different fields.”
“It is all typing,” I said.
“It is though!” I said, feeling defensive. “It is all typing one thing at a time and imaging the ‘state’ as you call it. For coding, you are imaging what the machine thinks of your work. For fiction-ing, you are imagine what a person thinks when they read your work.”
“Hah! So you are a man that has both a machine and a person on the inside and you’re trying to please both?”
“Yes,” I said. “That is the way it feels sometimes.”
“Well,” he said, “good luck walking in two directions at once!”
I told him good luck with the satellites and he we went into separate rooms at the party into order to talk to other people.