Inspiration
As a student learning software development, I noticed that most coding platforms focus on algorithm problems and coding from scratch. While these skills are useful, they rarely reflect what software engineers spend most of their time doing.
In real projects, developers work inside existing codebases. They trace bugs across multiple files, understand unfamiliar code, and fix issues without breaking other functionality. Yet there are very few places where learners can practise these skills in a realistic environment.
Recticode was created to bridge that gap by making debugging a skill that can be practised intentionally rather than learned only through experience.
What it does
Recticode is an open-source platform focused on teaching debugging through realistic software engineering challenges.
Users clone challenge repositories containing intentionally broken applications and must investigate the issue, understand the codebase, and submit a working fix.
Instead of solving isolated algorithm problems, users work with stack traces, logs, databases, APIs, and multi-file projects similar to those found in industry.
The platform also allows community members to submit their own debugging challenges, enabling the challenge library to grow over time.
Additionally, Recticode hosts events such as the Debugging Championship, where participants compete to solve debugging challenges and earn certificates and badges.
How we built it
Recticode was designed around a simple idea: make debugging feel as close as possible to a real development workflow.
We built 4 main systems. The CLI tool which the users interact with, an API which the CLI interacts with so that the user can see their progress and data, an execution runner which the API interacts with so that the submission code can be graded against test cases, and a landing page to explain the concept.
Challenges are packaged as repositories containing realistic project structures and a description of the bug. Users clone these repositories, investigate the problem locally, implement a fix, and submit their solution.
The platform was designed to be open source and community-driven from the beginning, allowing contributors to help create and improve challenges.
Challenges we ran into
One of the biggest challenges was designing debugging problems that are realistic without becoming frustrating.
Real-world bugs can be extremely difficult and often require extensive context. We needed to create challenges that still felt authentic while remaining accessible to students and newer developers.
Another challenge was deciding how much guidance to provide. Most educational platforms rely heavily on hints and step-by-step instructions, whereas real debugging rarely works that way. Finding the balance between realism and accessibility required significant iteration.
We also had to think carefully about challenge structure, difficulty progression, and how community-created content could be reviewed and maintained.
Accomplishments that we're proud of
- Creating a platform focused entirely on debugging rather than traditional coding exercises.
- Designing realistic challenge workflows based on real software engineering practices.
- Building a community-driven model where users can contribute their own debugging challenges.
- Making the project open source and free forever so that anyone can learn from it.
What we learned
Building Recticode taught us that debugging is a much broader skill than simply fixing code.
Effective debugging requires critical thinking and the ability to understand complex systems. We learned how difficult it is to design educational experiences that simulate these real-world skills.
We also learned the importance of balancing authenticity with usability. The most realistic experience is not always the most effective learning experience, and designing challenges requires careful consideration of both.
What's next for Recticode
Our next goal is to expand the challenge ecosystem with additional languages, frameworks, and difficulty levels.
We also plan to introduce team-based debugging events, improved challenge analytics, contributor tooling, and a larger community challenge marketplace.
Long term, we want Recticode to become the leading platform for learning practical debugging skills, helping students transition from solving coding puzzles to solving real software engineering problems.
Built With
- fastapi
- neon
- next.js
- python
- typer
Log in or sign up for Devpost to join the conversation.