detfalskested

Django is boring

There, I said it. And I consider it a major feature1!

I recently did a long overdue upgrade of a larger project from Django 2.1.x (last release in December 2019) all the way to the most recent version 5.2.x and it mostly just worked. I only had to tweak a few small things here and there, along the way2, while upgrading to newer versions.

The Django APIs have more or less stayed the same over the years. Because thoughtful decisions were made before they were introduced. And because the Django developers take pride in not breaking things.

The trickier part was upgrading 3rd party packages, but mostly nothing of significance. Except for a single package that was the reason for not being able to move past 2.1, until I've gotten completely rid of it. Which apparently took me way too many years to finally get around to do.

While a much smaller code base, I also just upgraded the version of Django running this blog from a similarly ancient version without any issues at all.

By the way, we're celebrating Django's 20th birthday in Copenhagen on the 10th of October. Come join us!


  1. Along with the lovely community and the great documentation. 

  2. While checking commit messages for the version upgrades, I stumbled upon this one when I celebrated reaching 5.0: "Ladies and gentlemen, this is Django number 5"