Svelte 5 sites don’t work as expected in Safari 12 and 13
Quite recently I upgraded a Svelte 4 project to Svelte 5, and soon afterwards I found some problems inside of Safari 12 and 13 that needed a tricky workaround.
How to migrate your Poetry project to uv
So, like me you’ve decided to switch from Poetry to uv, and now you’re wondering how to actually migrate your pyproject.toml file? You’ve come to the right place!
Putting Svelte stores inside context for fun and profit
Solving problems by putting writable reactive stores in Svelte’s context.
Revisiting uv
Almost two months ago I compared Poetry with uv, and for me uv had some pretty significant drawbacks that kept me from switching over. The situation has changed quite a bit since then!
How to change MEDIA_URL for one FileField
I wanted to use a different MEDIA_URL for one of our FileField instances. It was very easy to do!
Django REST Framework versus Django Ninja
Let’s compare Django REST Framework with new kid on the block, Ninja.
Automatically deploy your site when you push the main branch
The best feature of Heroku is the ability to just push a branch, and it gets deployed. How do we replicate a workflow like that on our own server?
Trying out PDM (and comparing it with Poetry and uv)
After comparing uv to Poetry, I am trying out PDM. On paper it combines all the best things of Poetry and uv, without their downsides. How does it hold up?
How I configure my Django projects
There are many ways to configure Django, like multiple settings files or .env files. Here’s how I do it.
Validate PayPal webhooks using Python
Paypal’s documentation only shows a JavaScript example. How do you validate the webhooks in Python though?
Articles now with comments
I’ve added a comment section to the articles, powered by GitHub Discussions.
Poetry versus uv
Comparing two Python package managers: Poetry and new kid on the block uv.
Changing the way Django 5.1 generates admin list labels
Django 5.1 adds related field lookup to the model admin’s list_display, but with an annoying quirk. Let’s fix that!
Extend Django’s autocomplete widget actions
Extending Django’s autocomplete widget with a new action which copies the linked user’s email address to the clipboard.
SvelteKit architecture tip: return a writable store from your load function
How do you update content in real time when that content was fetched from the layout’s load function?
Hardening a web server against script kiddies
Webservers get hit by hundreds of thousands of requests to random (non-existing) PHP files. What can we do about this?
Quick review: 12.9” iPad Pro (2018)
I bought the 12.9” iPad Pro with the Apple Pencil back in 2018 and spoiler alert: I still use the iPad almost every day.
My one week with a Tesla
In December of 2023 my girlfriend and I went on an eight day vacation to Iceland, where we wanted to rent a car and travel the south coast. This seemed like the perfect chance to try out living with an electric car, since the charging infrastructure in Iceland is very good, and their electricity very cheap. So we rented a Tesla model 3 and let’s just say I have some opinions.
2023 in review
Another year in review - even though it feels like I wrote the previous one not so long ago. Time flies and it’s flying faster and faster each and every year.
Deleting anonymous users' baskets when their sessions expire
How do you delete baskets belonging to anonymous users when their sessions expires? It wasn't quite as simple as I thought.