Onamap — Building a Django App From Scratch

David Janes
2 min readJan 21, 2025

--

I have been using — on and off — Django since verison 1 in 2009. For the last four (!) years, I’ve been a senior developer at a company that has created a site that has been used by tens of thousands of people, manages terabytes of storage, and has large and ever increasing amount of daily traffic. We started with Django 4, but upgraded to Django 5 last year. During 2024, we had to take a dev pause for a couple of weeks and focus purely on performance. Many lessons were learned, but I felt that I could do even better. So then over this Christmas, I decided to relearn Django “from scratch”, work my way through the Django Tutorial, and build an original website that maybe you guys will want to try.

The goals of this website are:

  • to be really really easy to use.
  • to be unreasonably performant. In particular, return webpages in usually less than 100ms (Google Search’s original goal was 500ms). Some delay for cache loading is acceptable.
  • to be really well designed and easy to maintain. In particular, I am going to do depth first development, where I really figure out the paradigms I’m going to use before adding new features.
  • use “state of the art” technology wherever possible.
  • to be be able to do real-time updates to multiple clients. This is something I’ve never really done well before, usually using something like long polling. There are better ways to do this.
  • to work well on mobile and desktop (it’s 2025).
  • do something really cool and useful (to me) without consideration of monetization.
  • to develop technology I can apply at my real job.

The goals of this article series are:

  • share this information with you.
  • record what I did, for posterity.
  • maybe you’ll like my project.
  • get your feedback.

I’ll tell you what Onamap is in the next post.

--

--

David Janes
David Janes

Written by David Janes

Entrepreneur. Technologist. Mercenary Programmer.

No responses yet