Weeknotes 2025-04-21
,Generic expert Python programming advice: "Or, you could just not do any of that." --David Beazley
Software Architecture and Django
I recently attended a Django-Cologne Meetup focusing on Django and software architecture—two topics I'm quite passionate about. The discussions were fascinating. I appreciate Django for its "batteries included" approach, allowing you to get projects up and running quickly, but it can become somewhat restrictive as projects grow in size and complexity.
From a software architecture perspective, inheriting from models.Model
presents a dilemma. You either make your business logic dependent on Django and tie it to your database structure (which isn't ideal), or you try to abstract Django away behind a Repository pattern, expending considerable effort going against Django's grain.
But perhaps there's a middle ground? What if we keep Django as an UI entry point handling mostly CRUD operations, while maintaining most business logic separately and only invoking it from Django when necessary? I'm still exploring this question, though I'll admit that implementing business logic directly in Django via fat models works well enough for many projects and might be the most practical approach in most cases.
New Podcast Episode: Bytes and Strings
It's been a while since our last release! I just published an episode we recorded almost two months ago—I simply couldn't find the time to get it out sooner. As a result, we ended up announcing a conference that has already taken place and discussing "news" that's no longer particularly new. Despite this timing issue, I really enjoyed the episode.
One challenge I often face is evaluating episodes shortly after recording them; it's difficult to judge whether content is actually interesting or boring when it's all still fresh in my mind. With this episode, enough time had passed that I'd forgotten many details, and revisiting it now, I found it quite engaging! This is definitely motivation for us to record more episodes soon.
Articles
- My most used command-line commands | For me it's git, rg, pytest.. nothing surprising here
- Turn me off and on again… | webcomic
- Django Admin Theme Roundup 2025 | Interesting - didn't even know those themes existed!