Hi, I'm Matthias

I am a founding partner of Feinheit AG and Die Bruchpiloten AG. Find me on GitHub, Mastodon, Bluesky, LinkedIn or by email.

2024-12-20
Weeknotes (2024 week 51)

Building forms using Django I last wrote about this topic in April. It has resurfaced on Mastodon this week. I’m thinking about writing a feincms3-forms demo app, but I already have too much on my plate. I think composing a forms...

2024-12-06
Weeknotes (2024 week 49)

Django Steering Council elections I have been thinking long and hard about running for the Django Steering Council. I think there are a few things I could contribute since I’ve been using Django for 16 or more years, and have been...

2024-11-20
Weeknotes (2024 week 47)

I missed a single co-writing session and of course that lead to four weeks of no posts at all to the blog. Oh well. Debugging I want to share a few debugging stories from the last weeks. Pillow 11 and Django’s get_image_dimensions The...

2024-10-23
Weeknotes (2024 week 43)

I had some much needed time off, so this post isn’t that long even though four weeks have passed since the last entry. From webpack to rspack I’ve been really happy with rspack lately. Converting webpack projects to rspack is...

2024-09-25
Weeknotes (2024 week 39)

CSS for Django forms Not much going on in OSS land. I have been somewhat active in the official Django forum, discussing ways to add Python-level hooks to allow adding CSS classes around form fields and their labels. The discussion on...

2024-09-11
Weeknotes (2024 week 37)

django-debug-toolbar alpha with async support! I have helped mentoring Aman Pandey who has worked all summer to add async support to django-debug-toolbar. Tim has released an alpha which contains all of the work up to a few days ago....

2024-08-28
Weeknotes (2024 week 35)

Getting deep into htmx and django-template-partials I have been skeptical about htmx for some time because basically everything the library does is straightforward to do myself with a few lines of JavaScript. I am a convert now because,...

2024-08-14
Weeknotes (2024 week 33)

Partying It’s summer, it’s hot, and it’s dance week. Lethargy is over, Jungle Street Groove is coming up. Good times. Releases django-json-schema-editor 0.1: I have finally left the alpha versioning. I’m still not committing to...

2024-07-31
Weeknotes (2024 week 31)

I have missed almost two months of weeknotes. I’ve got some catching up to do. I have tried writing a larger piece on my thoughts about CMS, but with everything going on in my personal and work life I haven’t made much progress. This...

2024-06-07
Weeknotes (2024 week 23)

Switching everything from pip to uv Enough said. I’m always astonished how fast computers can be. Releases django-admin-ordering 0.18: Added a database index to the ordering field since we’re always sorting by it....

2024-05-22
Weeknotes (2024 week 21)

There have been times when work has been more enjoyable than in the last few weeks. It feels more stressful than at other times, and this mostly has to do with particular projects. I hope I’ll be able to move on soon. blacknoise I have...

2024-05-03
Weeknotes (2024 week 18)

Google Summer of Code has begun We have a student helping out with adding async support to the Django Debug Toolbar. It’s great that someone can spend some concentrated time to work on this. Tim and others have done all the necessary...

2024-04-06
Weeknotes (2024 week 14)

I’m having a bit of a slow week with the easter weekend and a wisdom tooth extraction. I’m recovering quite quickly it seems and I’m glad about it. This weeknotes entry is short and quick. I’m trying to get back into the habit of...

2024-03-16
Weeknotes (2024 week 11)

Estimates Jacob wrote an excellent post on breaking down tasks. I did like the post a lot. Maybe I’ll write a longer reply later, but for now just this. There definitely are good reasons for the pushback against estimation, and it’s...

2024-02-16
Weeknotes (2024 week 07)

This is a short weeknotes entry which mainly contains a large list of releases. The reason for the large list is that I haven’t published a weeknotes entry in weeks. Releases form-designer 0.23: Only small changes, mainly updated the...

2024-01-17
Weeknotes (2024 week 03)

Djangonaut Space I wish all participants a good time and much success. I do not have anything to do with it really but I enjoy the idea a lot and maybe there will be a pull request or two to review. Kubernetes After years and years of...

2024-01-03
Weeknotes (2024 week 01)

First weeknotes post for 2024! Happy new year! Looking back on 2023 Writing I have published almost 40 posts last year. That’s almost as many posts as I published in the time period from 2014 to 2023. Coworking to write more does work....

2023-12-15
Weeknotes (2023 week 50)

django-imagefield The path building scheme used by django-imagefield has proven problematic: It’s too likely that processed images will have the same path. I have changed the strategy used for generating paths to use more data from...

2023-11-30
Weeknotes (2023 week 48)

A few weeks have passed since the last update. The whole family was repeatedly sick with different viruses etc… I hope that the worst is over now. Who knows. 12-factor Django storage configuration I should maybe write a longer and...

2023-11-02
Weeknotes (2023 week 44)

Unmaintained but maintained packages There’s a discussion going on in the django-mptt issue tracker about the maintenance state of django-mptt. I have marked the project as unmaintained in March 2021 and haven’t regretted this decision...

2023-10-27
Weeknotes (2023 week 43)

Switching to ruff format ruff v0.1.2 includes the beta version of the ruff formatter. It formats the code almost the same way as black, but much much faster. I have started switching projects I’m working on and the experience has been...

2023-10-18
Weeknotes (2023 week 42)

Vacation in Italy We have spent a wonderful family week in Italy. The voyage by train was very comfortable and we had a great time there. I have lived close to lakes all my life but the sea is always something else. Now I enjoy the cold...

2023-10-04
Weeknotes (2023 week 40)

More work on hosting several websites from a single Django application server using feincms3-sites I have mentioned feincms3-sites last week in my last weeknotes entry; I have again given this package a lot of attention in the last...

2023-09-28
Weeknotes (2023 week 39)

Again a few weeks have passed since the last weeknotes entry :-) Moving feincms3 repositories into the feincms organization The feincms GitHub organization has seen more active days when FeinCMS 1.x was still actively developed. Since...

2023-08-20
Weeknotes (2023 week 33)

I’m not sure if I should call these posts weeknotes when I see the posting schedule, but oh well. Keep expectations up but also practice forgiveness when not meeting them, it’s fine really. py_modules using hatchling I converted...

2023-07-28
Weeknotes (2023 week 30)

Async Django I have used Django Channels successfully in a few projects from 2017 to 2019. A few months back I have worked with Starlette. And now I have finally started digging into using Django itself with an ASGI server, and not just...

2023-07-21
Weeknotes (2023 week 29)

I have mainly done work in private projects this week. Not much to talk about. Except for the ZIP file content-type bug which was interesting enough to justify its own blog post. Releases django-cabinet 0.13: I converted the package...

2023-07-12
Weeknotes (2023 week 28)

Releases html-sanitizer 2.2: Made the sanitizer’s configuration initialization more strict. Strings cannot be used anymore in places where the sanitizer expects a set (resp. any iterable). It’s useful that strings are iterable in...

2023-06-30
Weeknotes (2023 week 26)

Releases I released updates to a few of my packages; I have continued converting packages to hatchling and ruff while doing that. New releases in the last two weeks include: django-tree-queries 0.15: Added a new function,...

2023-06-16
Weeknotes (2023 week 24)

Life happened and I missed a month of weeknotes. Oh well. django-debug-toolbar 4.1 We have released django-debug-toolbar 4.1. Another cycle where I mostly contributed reviews and not much else. Feels great :-) Going all in on hatch and...

2023-05-12
Weeknotes (2023 week 18 and 19)

Not much programming this week :-( oEmbed Still occupying myself with oEmbed. I have been looking at a few libraries and have rediscovered micawber which probably does everything I need. Yay, another reinvented wheel avoided. I haven’t...

2023-04-28
Weeknotes (2023 week 17)

Birthday Another year achieved. Feels the same as last year. I’m glad. feincms3-cookiecontrol I have released feincms3-cookiecontrol 1.3. Mostly cleanups since 1.2, but also a new translation (already announced here). The script size...

2023-04-21
Weeknotes (2023 week 16)

Experiments with Stable Diffusion A friend and myself threw a few scripts together to automatically finetune a Stable Diffusion model using images downloaded from Google Image search. It’s terrifying how easy and fast generating fake...

2023-04-16
Weeknotes (2023 week 15)

Romansh translations for feincms3-cookiecontrol and django-fineforms The feincms3 cookie control banner and django-fineforms have received a small update: Support for the Romansh language. I would be surprised if any readers of this...

2023-04-05
Weeknotes (2023 week 13 and 14)

My son will be a teenager soon My eldest is now 12 years old and will be a teenager soon. We had a good time and two nice Birthday parties, one with his friends and one with family and our friends. Good times. django-debug-toolbar 4.0...

2023-03-24
Weeknotes (2023 week 11 and 12)

Mail user agents being mail user agents django-authlib is my collection of utilities for implementing passwordless authentication, either using OAuth2 or by sending magic links by email. The latter functionality has existed for a long...

2023-03-10
Weeknotes (2023 week 10)

FeinCMS bugs FeinCMS is really stable (since there isn’t much going on) but this week a Django upgrade surfaced bugs in the datepublisher extension. The extension uses a granular_now utility to determine if a page should be shown or...

2023-03-03
Weeknotes (2023 week 8 and 9)

Last week was a short work week. We spent a few nights in the mountains. Not much snow though. Enough for some skiing and sledging. This work week was … not normal. Many meetings, not enough time to work on projects. That shortens these...

2023-02-17
Weeknotes (2023 week 7)

iOS and Kiosk mode I did some research on easy ways to put an iPad into Kiosk mode because I want to build a surveying app for an exposition. The web platform is perfect for this especially given the budget constraints… I thought What...

2023-02-10
Weeknotes (2023 week 6)

Rust I made some progress learning Rust. I don’t have to look up each character and function and am slowly getting a feel for the language, unwrapping and the borrow checker, so that’s nice. I don’t have a use for it for now, but we’ll...

2023-02-04
Weeknotes (2023 week 5)

A long time has passed since I tried writing week notes. Oh well, here we go again. No committment here, just hope. Podcasts Really got into listening to podcasts in the last few weeks. That’s new for me, I never enjoyed listening to...

2021-04-11
Weeknotes (2021 week 13 and 14)

Sorting django-admin-ordering instances in Python code django-admin-ordering’s OrderableModel gained a __lt__ function (and functools.total_ordering) in 0.14 which allows sorting model instances in Python code. This is useful for my...

2021-03-28
Weeknotes (2021 week 12)

Not much open source work this week. The final thesis and presentation for the CAS in Interaction Design was due. I learned a lot but for now I’m just glad that it’s over. I’m looking forward to relearning how to do “nothing” on...

2021-03-21
Weeknotes (2021 week 11)

django-simple-redirects Django’s built-in django.contrib.redirects app has a hard dependency on django.contrib.sites. I’m a big fan of NOT hardcoding the current site into the database or into settings except where absolutely necessary....

2021-03-14
Weeknotes (2021 week 10)

I’m trying out the weeknotes format to hopefully write a bit more 😄. feincms3: Page types and moving torwards a 1.0 release The current beta release of feincms3 (0.90b*) introduces support for page types. This new concept unifies...