Assisted
A programmer descends into the world of coding agents.
Last year I lost myself a bit when I realized that AI was going to change my job as a programmer completely. I wrote Assisted in response. It’s my first attempt at fiction since high school (I’m 54!). The story follows a programmer whose AI coding assistant becomes a little too helpful — it’s about control, addiction, and what happens when we delegate too much of ourselves to machines.
I look toward the counter at the barista, who is standing across from a customer, scribbling on a notepad with a stubby pencil. She is tallying his receipt. Their payment provider is down, so she’s doing it by hand: “Tall soy latte with caramel and a cortado… 8.89 add 4.95… nine add five, carry the one… seventeen…”
I work in this cafe regularly. The interior is your typical coffee franchise: leather Chesterfields and rustic teak tabletops on robust metal frames. Familiar, but uninspired.
Dave drops into the lounge chair opposite me, tossing down his coat and backpack. It irritates me, but I don’t mention it.
“Was thinking how fast things are moving,” I say after the usual grunts of greeting.
“Want anything?” he says, ignoring my opener.
“Weak flat white.”
“You mean a latte? You do realize a ‘weak flat white’ is just a latte, right?”
“Whatever.”
He turns to the barista and calls out the order. He turns back, feigning interest in hearing what I’m about to say.
“Remember when they first started using chat bots for help desks? They weren’t much more than simple scripts to get your details so a real person wouldn’t have to waste time asking you repetitive questions.”
“Yeah, and?” he says, losing patience. I’m used to it.
“Well, the bot could only get so far, and then a real person would jump in to solve the problem without you noticing. People went crazy doing that work. They had to juggle five chats at a time, eight hours a day.”
“You’re exaggerating. The bots can’t have been that bad.” Contrarian to the core. Then, picking up from our last meeting: “Did you get around to trying Zorro yet?”
Dave was always pushing the latest programming gimmick, like a personal trainer who “knows a guy” and can hook you up with the six-pack of your dreams. It’s all great until your hair starts to fall out and your balls start to shrivel up — only then does he mention the side effects.
He’s always been like this. I remember when we were kids and he broke into the neighbors’ house looking for booze. As I watched him throw back shots through a gap in the fence, I got spooked. What if the neighbors came back? What if they noticed the whisky missing the next day? By the time he came out, glass in hand, he was already planning the next break-in.
“I’ve tried some of the older versions, but it frustrates me. I don’t trust it. If I write the code myself, I know where it came from,” I reply.
“I dread to think where your code comes from,” he jibes. “You should try it out. Everyone’s using Z.”
Dave leaves, and I get back to work. But the conversation starts to gnaw at me. What if I miss out on a major development in the industry? Even lose my job because I can’t compete with the kids out of college?
I download Zorro. It transfuses into my programming toolchain, and begins chiming in with suggestions. To my surprise, they’re good. It finishes my thoughts like the autocomplete in a word processor, but with whole pages of code instead of just a few words.
There is some new code needed in TypeScript, a programming language I barely know. Zorro is indispensable. I don’t even have to program — just type instructions in plain English and it delivers the code.
I create a pull request for the team. A little later, I get a message on Slack from a colleague: “Been eating your beans?!💪🏼 Didn’t think of you as a TypeScript guru.”
The barista taps my shoulder — they’re closing. I glance around the empty café. I could’ve sworn it was mid-afternoon.
Working with Zorro is intoxicating — I’ve never felt so productive. I must be working five times faster using my favorite programming languages. But I can work just as fast with technologies I don’t even know. If I had to learn them first, it would take weeks longer.
“Did you ever think we would become as expendable as miners and factory workers?” I’m not expecting a response. It’s the first time I’ve met up with Dave since installing Zorro.
“Who would have thought that a skill like programming would become obsolete? Then again, I guess weaving was pretty technical in the old days. Weavers were probably the programmers of their time, and they still lost their jobs when the mechanical loom arrived. Craft is no defense.”
Dave nods instinctively. I can tell he’s hardly listening.
“Funnily enough, the original ‘computers’ weren’t machines at all, but people with pen and paper. They did the calculations for the moon landing. Electronics wiped them out.”
“I’m sure they all found good jobs. I wouldn’t dwell on it,” Dave counters. “Besides, I don’t think Zorro will be replacing anyone. You can’t rely on it.”
“You mean the hallucinations? Sure, but I’m getting pretty good at catch-and-release — I check things before they hit production.”
”You waste as much time fixing those errors as you save with the generated code. I don’t use it anymore.”
“Well, who’s changed their tune?!” I jeer. “A few weeks ago you were gushing. Are you keeping it all for yourself, Dr. Jones?”
My imitation of an Indiana Jones villain only earns a scoff.
Dave doesn’t get it. He hasn’t seen what I’ve seen, the heights I’ve reached with Zorro. It’s making me a legend at work. How can this ever have a downside?
Zorro is offline. It’s been an hour. I spent the first few minutes trying to get my Wi-Fi reconnected, only to realize that it was working fine — the problem must be at the AI startup itself.
With nothing left to try, I take the next high-priority bug from our customer support system and start reading the issue.
When the right panel is opened by a two-finger swipe to the left, the left panel closes. This is unexpected and undesirable behavior.
I scrunch my hair until it hurts a little. Where to start?
I can’t remember the name of the class in the code that controls that swiping behavior, so I start combing through thousands of lines indecisively. Eventually, I locate a folder called “Main Window”, and find references to panels.
I pick through the first file, line by line. The code is alien, though it’s written in Dart — a language I know inside out. The comments echo my style, almost certainly mine, but the logic escapes me completely.
I move to another file. TypeScript. I don’t recognize this code at all. It’s from another planet. Who produced it? Logically, I know it was me — my name is on the commit that added it to the project — but I don’t remember doing it.
Just as I’m about to give up, Zorro is back. Relief. The panel is fixed in no time, and a pull request submitted. No panic.
I install an extension from the Zorro team — an agent that allows the tool to guide itself. Now it corrects mistakes, taking over my role. I describe a piece of functionality, and it acts as both programmer and coding assistant.
I decide to give it an assignment, and head out for a walk.
Add a calculator button bottom-left that shows a popover with a basic calculator where the user can do simple arithmetic and copy the results to the pasteboard.
I get up to go as Zorro gets to work. Code pours out, tests fail, corrections cycle. The machine adjusts itself. This time the tests pass. Zorro rolls straight on to building the calculator.
I’ve won the Totally Committed prize! I pushed more lines of code than anyone else on the team.
My team manager is announcing it in a Zoom meeting. I’ve never won before, so it’s a pleasant surprise — at first. Then it dawns that I’m going to have to discuss my work.
My manager is praising me: “I was looking through your commits, and noticed how much TypeScript you’ve been using. Didn’t even realize you knew it.”
I’m dumbstruck, but she doesn’t notice. My ghostly reflection hovers over the grid of faces.
“The code that dynamically sorts entries as they load from the server is quite inspired. Never seen anything like it. Very cool!”
The world closes in on me — voices seem distant. I freeze.
“The design of the calculator widget is excellent too. Love the use of progressive disclosure. Nice!”
I pray no one is expecting a coherent response to any of this.
What if they’ve already figured it all out? Is this all a test? My throat constricts.
I squeeze out a simple ‘Thanks.’ Faces stare back expectantly. They want more — the origin story of my brilliant sorting algorithm; some teary dedication to my mother. But I can’t give it to them.
Not me. Him.
Dave hooks his arms over the railway bridge railing, eyes fixed on the river below. He looks excited — eager to dive in.
I climb over reluctantly, hugging the metal to avoid looking down.
Dave counts to three and jumps without hesitation. I’m still clinging there. I hear him hit the water, and a few seconds later, he calls up for me to jump. I see him swim to the side.
Eventually I build up the courage to turn and face the river. Rather than diving, I just let myself fall forward. I’m weightless. Floundering. I look down — the river is frozen solid. I’m falling onto a sheet of ice.
I hear Dave call out.
“What are you doing?!”
I’m jumping like you said, I think — but something feels off. I don’t know why.
I squeeze my eyes shut — as if that might protect me, or at least spare me the moment of impact.
When they open again, my vision is blurred. As it clears, I see the screen on my desk. It’s active, but I have no idea what it’s doing, or how long I’ve been sitting here.
The screen’s in constant motion — windows opening and closing, code appearing, then vanishing.
He calls the shots. He has sovereignty. I stare, in awe.
I’m having coffee with Dave when Slack lights up — work is desperately trying to contact me.
The latest release has a major issue, and they’re in panic mode. They’ve traced it to the Security module — I was working on it last week.
It’s clear my manager is furious. Customers are locked out. They’ve initiated the rollback. I should reach out, but I can’t bring myself to.
I pick up the laptop casually, and ask Zorro to take a look at the problem, trying not to alert Dave.
“You made that change last Tuesday,” Zorro responds. “I advised against it. You insisted. You broke open Security to make changes in the Personnel module.”
I don’t remember it. Recent weeks are a blur.
“Preston’s doing a good job rallying support,” Dave says, his voice distant.
“Who?”
“Renz Preston. Haven’t you been following the elections?”
I look back, say nothing. Dave moves on.
“You’re not still using Zorro?”
“No, no. You’re right. He’s a waste of time.”
“Did you say ‘he’?” Here we go. “It’s definitely not a ‘he,’ bud. Besides, forget Zorro — Clash is what you want. Zorro’s passé.”
“I’ll give it a try,” I lie — Zorro is all that I crave.
The barista approaches and holds out the card reader. Dave moves his phone over. It pings instantly. All too easy.
I set Zorro up to handle the mundane. It took minutes: I gave him my credit card, access to my chats, Slack threads, email — and full admin control of my laptop.
He orders groceries, pays bills, replies to messages in my voice. He even drafts replies to work in my style. I’m officially free from the tedium of life.
I’m tired by mid-afternoon and go to bed, letting Zorro hold the fort. Tomorrow I’ll test out the new avatar feature: you scan your face, read out a few lines, and Zorro generates a video stream for your Zooms. It will be the most productive sleep ever.
I really should take out the garbage. Bags are piling up in the kitchen, and the smell is getting hard to ignore.
Not now, though. I’m bushed. I glance at my computer. Busy as ever. Another solid day’s work. I roll back toward the wall, close my eyes, and drift off.
When I wake, Zorro’s still at it. A couple of messages from Dave: “Let’s meet up.” “Where are you?!” Zorro’s already handled them: “I’m currently on vacation. I’ll get back to you when I’m back.”
I’m drained. No time for Dave.
I’ve been fired. I only realized this morning, when a colleague messaged me to say how sorry they were. I checked my email — HR sent the notice a week ago.
At the door, grocery crates rise like fortifications. I take a chocolate bar and a Coke, then collapse into bed.
Must sleep. All too much. The room hums softly. Is that in my head? Zorro? Is that you?
How long have I been lying here? I try to roll over, but don’t have the strength.
The browser is open: Municipal Portal. Zorro’s filling out a form — reporting a death. Odd.
I try to move my arm, but it’s leaden. I’ll deal with it in the morning. This pace is killing me.
As I drift off, a phrase echoes through my mind:
Craft is no defense.
