Note: If you want to skip all the explanation and go straight to trying out the app, here’s the latest release page. Grab the
.dmgfile if you’re a Mac user, the
.AppImagefile if you’re on Linux, and the
.msifile if you’re on Windows.
Last year, we created the debug_trainer npm package to help students practice debugging without having to wait for bugs to show up in their day-to-day programming.
The idea was that Debug Trainer would:
The resulting program works, but as a command line program, it can be a lot for students who are new to the command line. So this year we ported the bug-making code to a desktop application, courtesy of the Tauri platform!
It’s got all the same functionality in a much nicer and easier-to-use package, plus a bunch of extra tips and hints. Check it out!
If you’re having trouble, there’s a page with a whole bunch of general tips and tricks for debugging.
If you’re want some extra info about the specific bug(s) you’re looking for; it can tell you either the type of bug (for example “I removed the word
return somewhere in this file”), or the line that the bug was introduced on.
This one may seem silly, but, hey, debugging can be stressful and demoralizing, and it was really fun to write. If you just need some general encouragement, there’s a tab for that!
Whether you manage to figure them out yourself or not, at the end, Debug Trainer will give you a full explanation of every bug it introduced.
That’s it! A program for getting practice debugging your own code as many times in a row as you want in a safe way without waiting for bugs to happen to you. It’s all open-source, so you can check out the code at github.com/kickstartcoding/debug_trainer_app, leave bug reports or feature requests at the GitHub issues page, and download the latest version on the latest release page (grab the
.dmg file if you’re a Mac user, the
.AppImage file if you’re on Linux, and the
.msi file if you’re on Windows).
Hope you like it! If all goes as planned, we’ve got some posts coming to talk more about how it was working with the Tauri platform, and how the app decides what bugs to introduce under the hood. Stay tuned!
Mark is a software developer and teacher. In his work he tries to write decent code, support diversity and social justice in tech, and energetically frown at people who use the word "disruption" more than they use the word "ethical”.
Outside of work, he hikes, attempts to commit to musical instruments, feels feelings about things, and silently guesses who uses Tumblr based on their word and spelling choices.