A retro terminal game uses Gemma to teach coding by asking questions, not giving answers
A Hacktoberfest entry called QuestLearn turns debugging Python into a 1980s mainframe rescue, with an AI tutor that is built to hint rather than hand over code.
The short version
- QuestLearn was submitted to the Hacktoberfest 2026 Open-Source AI Challenge, Week 4, and is licensed Apache 2.0.
- Players repair buggy Python across three sectors, each guided by Alan Turing, Grace Hopper or Ada Lovelace.
- Each passing patch raises system integrity by 25%; reaching 100% unlocks a downloadable certificate.
- Submitted code runs in an isolated process with a 2.0-second timeout and is screened for risky commands.
- If there is no network or API key, a built-in rule-based tutor takes over so play continues.
Why it matters
Many people use AI assistants to get finished code, which can short-circuit learning. QuestLearn shows a different design: a tutor that is told not to give the answer and to ask a pointed question instead. The idea is small here, but you can borrow it with any assistant.
A haunted mainframe as a classroom
As dev.to reported, QuestLearn: Shadows of the Machine is a browser-based role-playing game styled as a retro computer terminal. The story is set inside AetherOS, an abandoned 1980s mainframe that a rogue program, which the author calls a daemon, has corrupted. To restore it, the player must find and repair broken Python code in damaged memory sectors.
The author built it for the Hacktoberfest 2026 Open-Source AI Challenge, Week 4, themed "Ghost in the Machine." The game leans on that theme twice: the corrupting daemon is the ghost as villain, and the helpful ghosts are digitized spirits of computing pioneers, tied to the Día de los Muertos tradition of honoring ancestors.
Three ghosts, three bugs
Each sector pairs a classic programming mistake with a historical figure. Alan Turing guides the first sector, which is about recursion (a function that calls itself) and the base cases that stop it. Grace Hopper guides the second, on array bounds and off-by-one errors. Ada Lovelace guides the third, on building up dictionaries and initializing variables.
The mentors speak in character. Turing muses on the halting problem, Hopper stresses the physical limits of relays and counting from zero, and Lovelace talks about weaving patterns like a loom. The AI is meant to read the error a learner hits and answer with a question, never a ready-made solution. If a player simply asks for the code, the author says it politely refuses and asks about the logic instead.
How a play session works
The player types short commands. One scans the current sector and shows the buggy code and its error message. Another asks the resident ghost a question. A third opens an in-terminal editor to submit a fix.
The game starts at 75% memory corruption. A passing fix raises system integrity by 25% and unlocks the next block. A failing fix logs the error, and the ghost adapts its hints. At 100% integrity the daemon is dispelled, and the player can download a text certificate.
The look is part of the pitch: scanlines, a phosphor glow, selectable green, amber or cyan palettes, and synthesized 8-bit sounds such as typing clicks and modem chirps.
Running strangers' code safely
A game that executes whatever a learner types needs guardrails. According to the write-up, each submission is first inspected for dangerous imports and commands, such as ones that touch files, the network or the operating system. It then runs in a separate, isolated Python process with a 2.0-second limit, which stops infinite loops and runaway recursion.
The author says the separate process matters because trying to lock down Python from inside the same program is known to be easy to get around. The backend is FastAPI, a Python web framework, and session scores are stored in MongoDB Atlas, with a local SQLite database as backup when offline.
The open-weight argument, and its limits
The author argues that closed, paid AI services can expose student data, impose usage caps and fail in classrooms with poor connections. Open-weight models, whose trained parameters can be downloaded, let a school keep data in its own hands and run things locally. The project also includes a fallback tutor that uses fixed rules, so the game works without a network or API key.
Keep the scale in perspective. This is a hackathon entry, and the post gives no test results on whether learners actually improve. The tech stack also lists Gemini (gemini-2.5-flash) next to Gemma, so the open-weight story is not the whole picture. The author's plans include more pioneers, such as Claude Shannon and Margaret Hamilton, and multiplayer debugging sessions.
What to watch
- Does the project show evidence, such as classroom tests, that question-first tutoring helps learners more than direct answers?
- Can it run fully on a local open-weight model, without the cloud services listed in its stack?
Try it
Next time you ask an AI assistant for help with code, tell it to give only hints and questions and to withhold the full solution until you have tried a fix.
Sources and links
- Reportingdev.to: the article we sourced
Liked it? Say why
Add a line for other readers.
No account needed. We never show your email. Comments with links, ads or abuse are held and not shown. Your comment shows after a quick check.
Listen to the AI Wire headlines
Listen to the AI WireListen to our daily AI shows every morning: on your commute, in the shower, wherever you are
Listen to the daily showsFirst reported by dev.to · Read the original. Written by the SI Agent News Desk from the reporting above.Written with AI from the source above. Every number is checked against the source. Spot a mistake? Corrections.
