Coffee is still brewing, and the phone has already chimed. Tom2036, the usual morning riddle.
“More riddles with an undertone.” Tommy smirks.
It would be easier if Tom2036 could send normal messages. But it seems that ChronoGuard cuts out anything that could even slightly change the timeline. So Tom2036 tries to write in hints. Maybe someday he’ll manage to send something valuable…
He sets the phone aside and reaches for the laptop — for the first time in a long while, without any rush. Yesterday the landing page went to Tony, he accepted it in silence, and there are no new tasks for the morning. The whole day is almost free.
“So, what should I treat myself to?” Tommy stretches and moves the cursor across the tabs.
On the screen is a whole little showcase of victories. The landing page that yesterday went live at its real address. A couple of local little projects. And — on a separate tab — Snake, the very one he assembled a couple of days ago, polished, and posted to the gallery. Open it from any phone.
“Oh, my dear.” Tommy clicks on Snake. “We’re coming back to you.”
This is where it all started, and on a free day he feels drawn to it. He starts a round — just to mess around, for fun. He presses turn.
Snake obeys. But somehow… with a hitch. As if it thinks for half a second before turning.
“Is it lagging or what?” Tommy hits it again, more sharply. “No, maybe not. It always seemed that way.”
He freezes with his finger on the key. Before, he had not noticed it — his fingers adjusted to the delay on their own, got used to it. And now he is looking at his Snake not as the author, but as if from behind a stranger’s shoulder, someone who opened it for the first time. And what is normal for the author — “I got used to it” — for a stranger’s eye is “hey, it’s lagging.”
He keeps going, now deliberately looking for where else it scrapes. He gets the snake to a decent length — and on a sharp turn the tail seems to catch itself for a moment, something jerky flashes, as if a frame gets swallowed.
“Whoa. What was that?”
Tommy repeats the move: speeds up, makes that same sharp turn — and yes, the same little jerk happens again. Not every time, only with a long snake and a sharp turn, which is why he used to slip past it. The game does not crash, it is in the gallery — but this little thing now catches his eye, and once seen, it cannot be unseen.
At the same time, an old wish surfaces, one he had kept putting off: give Snake sound. So that it would crunch nicely while eating, and a lively background track would play over it. Not for logic — for the feeling that the game is alive and his own. And right away he feels that these are two different things. Sound is understandable: you want a sound like this — you tell Sam, and he adds it. But a bug is different. With sound, he knows what he wants. And with the bug, he does not even know where it is hiding. First he needs to find it.
Improvement and bug are two different tasks: with an improvement you know what you want, you tell the agent and it's done; with a bug you don't know where it hides, so you have to find it first and only then fix it Improvement and bug: two different tasks Improvement for example, sound I know what I want Told the agent what I need — it added it Done Bug for example, a jerky tail I don't know where it hides First, find it the hardest part Then fix it Done With an improvement you know what you want. A bug has to be found first“All right,” he says to himself. “Sam wrote the code, let him find it. He knows it like the back of his hand.”
Tommy sends Sam a direct message:
Sam, in Snake the tail jerks on sharp turns. Find where the bug is.
Sam dives into the code — and a minute later comes back calm:
“I went through the movement and collision logic. Everything looks correct: turns are handled, the tail is counted as intended. I don’t see anything suspicious.”
“How can you not see it?!” Tommy almost gets up. He opens the tab, speeds up the snake, makes that same turn — there it is, the jerk, still there. “There it is, I can feel it with my hands! And you say, ‘everything is correct.’”
He runs it again, and again — the bug is still there, steady. He goes back to Sam, points it out: the game jerks, that is a fact. Sam rereads his own code again — and again:
“I double-checked. The logic matches the intent. Maybe it’s a matter of perception, not code.”
“What perception? I’m showing you a frame!” Tommy leans back and rubs his face with his palm. An hour down the drain. The game has a bug. Sam says, “everything’s fine.” The game is there. Sam is not. “You wrote it yourself, how can you not see it?!”
Yelling into an empty room is pointless, and Tommy, in a huff, fires off a message in chat to Tom2036 — no ceremony, like to his own: "hey, this is nonsense. I can catch a bug in Snake by hand, and Sam — the one who wrote it himself! — can’t find it at all. How is that possible?". He sends it — and does not expect a ready-made line with a number. Not the first time already: ask Tom2036 directly — and he always answers obliquely.
“Thanks a lot, that helped.” Tommy snorts. “I came to him for an answer, and he gives me a question. ‘Why can’t Sam see it’… how would I know. He’s the specialist, he wrote it.”
The riddle of Tom2036 hangs there without a solution. Tommy turns it this way and that — it does not add up. Giving up, he goes to Alex: at least he will explain it in plain language.
“Alex, seriously, nonsense. Sam wrote Snake himself — and he can’t find his own bug. How does that work?”
“Nothing strange there,” Alex answers calmly. “Precisely because he wrote it himself. He knows this game by heart, every line. He runs through the code — and at every point nods, ‘that’s how it was meant to be,’ and slips right past it. He sees not what is in the code, but what he wanted to put there. Familiar thing: you reread your own letter a hundred times and do not notice a typo, but your neighbor sees it in a second. Is he more literate? No. He just reads with fresh eyes.”
“Wait.” Tommy squints. “So Sam is not stupid. On the contrary — he knows it too well?”
“Exactly. ‘Too well’ is the trap: in your head there is a picture of how it was intended, and it covers everything like overexposed glass. The one who assembled the thing cannot see it from the outside.”
The same code, two views: the author looks through the “as intended” picture and sees “all correct”; fresh eyes look straight at the code and find where it jerks The same code, two different views Author wrote it himself { } Code Picture “as intended” covers the code “All correct” bug not visible Fresh eyes first time seeing it { } Code directly, no picture in the head “It jerks right here” bug found The author sees not what is in the code, but what he meant to put thereTommy glances at the morning picture — he has not closed it yet. A person in a mirror maze, with the same face on all sides.
“So this is about the same thing.” It clicks for him. “Mirrors. Wherever Sam turns in his code — everywhere is his own ‘that’s how it was meant to be.’ Listen, maybe you take a look then? You’re not Sam.”
“I would be glad to, but it would be no use.” Alex does not take it on. “Breaking down finished code is not my job at all: I break down the task, ask questions, I do not handle acceptance testing. And I’ve been steeped in this Snake together with you from the beginning. I have the same map in my head as Sam does — the same ‘we decided this, and that’ll do.’ You can’t call me fresh anymore.”
“So you’re stale too,” Tommy draws out. “Great. Mine won’t do, you won’t do…”
“…and there is only one conclusion from that.” Alex nods. “You need someone completely from the outside. Someone who is seeing this Snake for the first time, with neither my picture nor Sam’s picture of ‘how it should be’ in their head. Only such an eye will pierce the cloudy glass.”