Software developer in Bremen.
I am Tim Kruse, and I build software that is allowed to stay small. Most of it was made for me, my family or a handful of friends: it starts from a problem someone actually had, and it rarely gets bigger than that problem calls for.
All of it runs on my own server in Germany, behind my own single sign-on. A provider would take that work off my hands — but if you hold data that people trusted you with, you should know where it sits and who can see into it.
I write down what I decide along the way. Most of the projects here carry more architecture decisions than lines of code per feature, and that is not tidiness: six months on, nobody remembers why something is the way it is — me least of all.
From 2007 to 2024 I coached football — youth teams first, later as assistant coach for the men's side, and finally as goalkeeping coach. Seventeen years, and in hindsight the same work as the day job: teaching someone something they cannot do yet. These days I run and cycle. And I am a father — some of the software on this site was built for my family, not as an exercise.
This page follows the same rule. It is static HTML, it loads no script and nothing from anyone else's servers; on top of that, the web server forbids both with a Content-Security-Policy.
What I work with
This list is drawn from the six project pages and names what is actually in use there. It says nothing about how well — a list cannot hold that honestly.
At work it is a different list. → Work