my role
Designer and developer

the project

The idea started while my family was running Nitro Paintball. I would tell jokes to younger players to get their attention, and I'd ask if they knew any. Soon I had my own little joke database in my head. Around the same time, I found The Angry Police Captain and loved its simple, single-purpose format. I decided to make something similarly unnecessary, but for all my new corny jokes.

inspired by The Angry Police Captain ↗

the system

I built the original site in PHP in 2011, then rebuilt it in 2024 as a practical Django learning project. It gave me a contained way to get familiar with Django models, forms, administration, templates, and application structure while keeping an actual site running.

Jokes are submitted by visitors and enter a moderation workflow before joining the public collection. Visitors can browse random jokes, find jokes by tag or submitter, and react to them. The application also exposes a versioned JSON API when that feature is enabled.

decisions and current state

Version one is complete and in production. I designed and implemented the whole application, remain its most prolific joke contributor, and continue to work on new features. The project does not need to be technically grand to do its job: it makes a bad joke easy to find and even easier to inflict on someone else.