TryBugHunt

About TryBugHunt

Courses teach you to write code. Almost nothing teaches you to fix it.

TryBugHunt is a free debugging-practice site where CS students and software engineers fix one real bug in working Python or JavaScript code, entirely in their browser.

Every developer has been here: the code looks right, it compiles or runs without throwing, and the final output is quietly wrong. No error message, no stack trace, nothing to search for. Traditional coursework rarely prepares you for this moment, because assignments are graded on writing code from a blank editor — and yet debugging and code reading make up most of what the job actually is.

How it works

You get working code with exactly one bug in it, and a description of the symptom rather than the cause. You find it, fix it in the browser, and run it against automated test cases. When it passes, you get an explanation of the pattern behind the bug — not just the diff.

That last part is the point. Knowing that this particular loop needed i + 1 is worth very little. Recognising the shape of an off-by-one, so you spot the next one in seconds instead of hours, is worth a great deal.

Everything runs in your browser

Python runs through WebAssembly (Pyodide) and JavaScript in a sandboxed Web Worker, right in the browser tab. There is no remote server executing your code — which means it is instant, works offline once loaded, keeps your data private, and requires zero cloud infrastructure.

The step-through visualiser

For challenges where the flaw is subtle, you can step through execution line by line, seeing the live value of every variable at each step. Watching the exact moment a value deviates from expectations builds an intuitive mental model that static code reading cannot match.

Who built this?

TryBugHunt was built by Viram Choksi, a software engineer who spent too many late nights tracking down off-by-one errors and unintended mutations. Having mentored CS students and junior engineers, it became clear that debugging is the single largest gap between academic programming and production software engineering.

The project is intentionally designed with a zero-cost architecture: static Next.js pages, client-side execution, and zero tracking cookies. There are no venture targets, no paywalls, no ads, and no selling of user data.

Found a problem?

Every challenge is written and checked by hand, and each one is executed before it ships — the broken version must fail at least one test, and the reference fix must pass them all. If an explanation is confusing or a test case has an edge-case gap, use the Report a problem button directly on the challenge workspace, or email hello@trybughunt.com. Every report is reviewed personally.

Start debugging challenges →