Posts
There is an RSS Feed to stay updated.
Hetzner Request Limits
2025-12-30
Maybe don’t run watch -n 0.5 hcloud server list to interactively monitor the status of your Hetzner servers…
I still recommend that technique for commands where you are not rate limited. Especially, when working with Kubernetes a simple watch -n 0.5 kubectl get pod will make a huge difference for …
Read more
We don't share infrastructure code
2025-11-27
At my software development company Kition Software, we don’t share infrastructure code with our clients. For a long time I thought of it as our secret sauce, which has to be protected. But I came to realise that chefs of famous restaurants share their recipes all the time and are still famous. So maybe my …
Read more
You are able to know host keys before connecting?
2025-11-26
How often in your tech career have you just said yes when being confronted with the following prompt?
$ ssh 115.166.58.26 The authenticity of host '115.166.58.26 (6c22:3021:deb3:e62f::1)' can't be established. ED25519 key fingerprint is SHA256:Bm5pigTo5Xk2vJs4ecRw0Bt7mREt8zWjOScqFO+xAfw. This key is not …
Read more
Conditional Redaction in Django Templates
2025-10-16
Today I needed to redact names of users and some other sensitive strings from a significant part of a Django application. After starting to litter template code with {% if allow_unredacted %}...{% else %}...{% endif %} statements, I came to my senses and implemented a Custom Django Template Tag. That tag automatically …
Read more
Tricking Django's title Filter
2025-10-08
Django’s title filter is often used to prettify strings in templates, for example, when rendering model verbose names in an admin or API interface. When handling abbreviations it can be a bit too eager in capitalising, though.
What happens if you apply the filter to the following API key model?
class …
Read more
Testing Django Migrations with PostgreSQL and Foreign Keys
2025-10-01
The incredibly helpful blogpost Writing Unit Tests for Django Migrations delivers what the title promises. Making testing of migrations.RunPython feasible and easy … as long as you don’t have to fill foreign key relations on PostgreSQL.
Following the suggested approach, you’ll create records to be …
Read more
Clean Django Storage Backend Configuration
2025-09-25
TIL: You are able to pass arbitrary configuration values via the OPTIONS key to Django storage backends. They are passed as keyword arguments to the __init__ method of the storage backend.
That fact is pointed out in the Django STORAGES documentation and I apparently even used that before in …
Read more
Dynamic Vue.js configuration
2021-10-27
You are building a web application and want to easily swap an API endpoint URL, set API tokens or just don’t want to trigger a build pipeline for changing that one string - you need dynamic configuration.
Let’s get right to it. Here are three ways of doing dynamic configuration using Vue.js.
HTML data-* …
Read more
Sensible Solidity testing via Go Ethereum
2021-10-13
You have built a smart contract, tested it via unit tests, explored it via Metamask and a block explorer and now want to deploy to the Mainnet. Didn’t you forget something?
Until now you most likely tested your Solidity code via a local network like hardhat node, ganache-cli or the Ganache UI. Those are very …
Read more
We wont use Ethermine Polygon Payouts
2021-09-29
At D12S Ventures we run a small 612 MH/s Ethererum mining operation. With the rollout of EIP-1559 on 4th August 2021 Ethermine changed the payout policies for miners, where the miner has to pay the payout transaction fees. Ethermine argues that they won’t be able to cover these costs and therefore need to pass …
Read more
Foundation – Building in Public
2021-09-22
building I am building software since 2006. 10 years of that professionally. For me, creating software means solving problems and creating opportunities for real people. This is what keeps me going.
Most of what I build lives in the proprietary domain, solving specific problems for a business or product of that …
Read more