Independent software that respects the people who use it.
I build tools that work offline, don't track anyone, and are paid for once. A knitting counter that doesn't need your location to count stitches. A timezone extension that converts times without phoning home. Writing about why the default state of software is hostile and what to do about it.
Terje Rutgersen · southern Spain · MIT License
Projects
- Kofteandroid
Knitting counter. Offline, one-time purchase. - Time Converterchrome · firefox
Timezone conversion, no permissions, no network. - Neon Depthsweb
Browser roguelike, built in five days.
Principles
Offline first. Your data belongs on your device. Our apps run locally and only reach the network to verify purchases through standard platform infrastructure.
No subscriptions. Pay once and own it. Software you've bought should keep working without a monthly fee attached to it.
No tracking. No custom analytics, no third-party telemetry SDKs, no ad networks. We only see the baseline, anonymized metrics platforms collect by default.
Small and sharp. One thing, done properly. Every feature has to justify its presence, and most don't.
Writing
- One Thing, Done Properlymar 2026 · privacy · android
- How Kofte Ships 16 Languages With Zero Librariesmar 2026 · android · localization
- Harden Your Web Servermar 2026 · security · self-hosting
- Host Your Own Websitemar 2026 · self-hosting
- Run Your Own VPNmar 2026 · privacy · self-hosting
- Deploy with Gitmar 2026 · self-hosting
- Automate Your Backupsmar 2026 · self-hosting
- The Wall of Shamemar 2026 · security · self-hosting
- Your Server Is a Jurisdictionmar 2026 · privacy · self-hosting
- CLI Cheat Sheetmar 2026 · linux · self-hosting
- Arch on the Desktop, Debian on the Servermar 2026 · linux · opinion
- Be a Bad Data Pointmar 2026 · privacy · opinion
- The Platform Phones Home Anywaymar 2026 · privacy · opinion
- Torrenting Was Right All Alongmar 2026 · opinion
- Neon Depths: The Gamemar 2026 · gamedev
Wall of Shame
This server has banned …† SSH brute-force attempts today. Bots scan every IP on the internet trying default credentials, and fail2ban catches them automatically. The whole site runs on a €6/month Debian box. Here's how it works.