Programmer at Large: How do you do?

(This is the latest chapter in my serial novel, Programmer at Large. You can read previous chapters most easily at the Archive of Our Own mirror).

The gym has a number of main rooms branching off a central corridor for the different exercise areas – resistance machines, a pool, a couple sports rooms for various games, etc.

I normally prefer to just swim, with a little bit of resistance for strength, but the big thing that everyone has to do, and almost nobody likes, are the rings – two counter-rotating sections we can spin up or down to get almost any level of fake gravity we desire.

Sure, Crew don’t need gravity to be healthy – even most grounders don’t these days – but it definitely helps, and it’s essential if you ever want to make it to the surface of a planet – so all exercise regimes mandate a certain amount of time in gravity no matter how much we hate it.

When I arrived they had already been set for 15 meters per second squared, which is on the high side – records suggested our destination planet was only 12, and I normally exercise at 9, but the analysis said that was perfectly safe for me and probably even beneficial, and I didn’t care enough to put in a bid to change it.

I strapped in to an available chair and transited to the ring, grunting slightly under the acceleration. It’s not that I can’t handle this level of gravity, it’s just that gravity always comes as a shock when you first enter it.

Still, nothing for it. I got up and started to warm up for some more serious exercise, and after a few hundred seconds it was time to get started properly. I broke into a run.

About a third of the way around the ring I saw someone doing callisthenics by the side of the track. I waved to them in greeting but didn’t stop running.

The ship’s computer is not an AI. You can tell this from subtle signs like the erratic conversational interface, the way it sometimes fails to make simple inferences when you ask it questions, and the lack of crew with cutting torches swarming all over the ship looking for where it keeps it core.

I mention this because although it’s obviously good that the ship is not an AI, it causes a number of problems. In particular it’s much less satisfying to call it an underhanded waste of space grounder when it pulls something like this.

The other person on the track was Kimiko, the one who had filed the bug report that I was working on. I’d expressed a vague interest in socialising with them when I thought they were safely asleep for the foreseeable future, and the ship decided to throw us together.

While also getting in my mandatory exercise. I’m sure some algorithm thought that this was very efficient.

It’s a bit rude to ignore someone while you’re at the gym. Not unconscionably so, but slightly churlish. Obviously we’re not going to socialise while we’re actually exercising, but the expectation is that rest breaks between exercises are a time to socialise. Given that Kimiko is someone it would be good for me to talk to on top of that, I probably couldn’t get away with avoiding them.

On the plus side, that was good incentive to keep running, so I made it a full five circuits of the ring (nearly 8k!) in a bit under 2 ksec. Not a personal best by any stretch, but I also don’t usually run in this stupid high gravity.

Kimiko was also taking a rest when I finally stopped, so I flopped down next to them.

They were… a bit funny looking. There’s a pretty wide range of body plans among the Crew, but there’s a certain Crew look that you get used to and they didn’t have much of it. They were on the tall side – about 1.63m – with weirdly pale skin and some sort of… I guess it must be hair on their face.

We sat in what I assured myself was entirely non-awkward companionable silence for a few tens of seconds while I caught my breath, but I eventually I’d recovered enough and broke the silence.

“I thought you were asleep.”

They gave me a quizzical look.

“Uh, OK?”

“Sorry. That didn’t come out right at all. Let me start again. I’m working on a bug you reported – the one with the weird sound in the walls – so I’d checked if you were awake to ask about it and you weren’t, so I was surprised when I saw you here.”

“Oh! Right! Thanks for looking at that. I wasn’t sure if anyone would bother, but you know what they say – an unreported bug is always critical.”

I nodded. A much better attitude than certain dead crew members I could mention.

“Well, nobody over in plumbing proper is going to look at it I expect but I mostly get to work on whatever I like, and i like tracking down weird ghosts in the machine and am good at plumbing, so here I am.”

“So what did you want to ask me?”

I waved a hand to cut off that line of conversation.

“I’ll have to do that later, sorry. I’m not allowed to work right now.”

“Ah, mandatory downtime. Sorry, I should have noticed.”

“No problem.”

Naturally enforced downtime is part of your primary information. It’s important for other people to be able to see you’re being naughty and overworking. Sometimes I hate all this nosy software.

“Anyway, to answer your question, I was asleep, but they woke me to deal with this yeast contamination problem. I was one of the primary engineers when we brought in this strain. They’ve been having a bunch of problems with it, and wanted some help getting to the bottom of it. It’d be a shame to ditch it – it’s nearly 1% more efficient than the strain it replaces! – but if it’s going to keep doing this…”

“Right. Makes sense. So how’s it going?”

“Beats me. I’ve only been properly awake for about 10 ksec. I’ll get to work after I’ve recovered from the gym and had a short nap. We’re replacing it with a more stable strain for the next batch from that vat, so there’s no rush.”

I nodded. I’d be keen to get started, personally, but this sort of relaxed attitude was much more sensible for interstellar work – there would be plenty of urgent things when we got in system, and there might be before then, but if there wasn’t any actual urgency then why stress yourself by creating a false one?

We lapsed into silence again. Eventually I broke it.

“So, um. If you don’t mind me asking, what’s with the…?”

I gestured vaguely around my face.

“What? The beard? I had it grown in a planet side mission a while back, and I decided I liked it, so I kept it.”

“OK but why?”

“I dunno. It just… felt right.”

“No, sorry, I mean why did you need to grow it for a mission?”

“Oh, huh. You mean you’ve never even encountered beards?”

“Not really. I mean I guess I might have seen them before in pictures, but I don’t have the concept.”

“So you haven’t watched Lesbian Space Pirates?”

“A bit? I’m not very into it.”

“But Lesbian Space Pirates is hilarious!”

I shrugged helplessly. I’ve yet to find a non-awkward way to explain that misunderstandings of your culture are only funny if you actually fit comfortably into that culture in the first place.

They took a deep breath.

“OK. Have you heard about gender?”


Next chapter: How did people come up with this?

If you liked this and want to read more like it, support my writing on Patreon! Patreon supporters get access to early drafts of upcoming chapters. This chapter is also mirrored at archive of our own. Also, entirely unrelated, but I have a book out now! It has absolutely nothing to do with programmers or space ships and very little to do with gender, but is instead about voting systems.

This entry was posted in Fiction, Programmer at Large on by .

4 thoughts on “Programmer at Large: How do you do?

  1. Alex Willmer

    Thanks again for writing these David. For “I’ve only properly awake for about 10 ksec” did you mean “I’ve only _been_ properly awake for about 10 ksec”?

Comments are closed.