Django Debugging Tutorial

This post will go over my tutorial from DjangoCon US 2022. You can read more about my experience at DjangoCon here.

For those of you who prefer to get straight to the fun stuff, browse to the GitHub repo: github.com/tim-schilling/debug-tutorial/.

If you’d like to test your mettle, I encourage you to clone the repo and work through it. The documentation includes questions and walk-throughs on how I would solve it. Most of the solutions are implemented in the main branch except for those that would need database migration fixes.

The underlying idea of a collection of debugging challenges was inspired by hackthissite.org. Teenage Tim fancied himself a hacker, but never made it past the third challenge. Probably because he didn’t actually understand how the web worked.

Moving away from the odd third person narrative, if anyone has suggestions on how to better structure or organize a project like this, please reach out. The multiple branches works, but if it grows larger it’ll become more and more difficult to maintain.

If there’s interest, I can continue to add labs to this repo and grow the project. There’s a lot of value in exploring these bugs in a safe environment. I would love to provide a production environment where a person would have to use error-monitoring, logging and an APM. The difficulty there is how do I provide a way for beginners to use paid services at an affordable level?

This is one part of the grander idea I have for providing more examples and context to the Django web framework. I often fantasize about building a collection of examples of how to use all the various bells, whistles and knobs of Django. It would show an example, explain what it’s doing and in what scenarios it should be used.

I want to close by saying thank you to Ken Whitesell whose tweet about submitting a talk and tutorial inspired me to submit my own proposals. It’s still early, but I do feel that my experience at DjangoCon has altered the direction of my life. This community is fantastic and so if you’re on the fence of whether to join, come on in, the water is fine.