Karl Bartel's Website
I'm a Software developer in Berlin, Germany. I like free software, open data and keeping things simple.
Contact me via email[1] or find me on GitHub[2], Mastodon[3], LinkedIn[4]. Subscribe to the Atom feed[5] to get all new posts on this site.
1: mailto:karl@karl.berlin
2: https://github.com/karlb
3: https://fosstodon.org/@karlb
4: https://www.linkedin.com/pub/karl-bartel/a/a3a/6b7
5: atom.xml
Blog Posts
2026-02-28 - Can We Make Simpler Software With LLMs?
2026-01-17 - Raising Notifications From Terminal
2025-03-08 - Stack Traces are Underrated
2024-08-29 - Easily Entering Umlauts With a US Keyboard Layout
2023-09-17 - Consistent Handling of Git Repositories With Different Default Branches
2022-07-30 - Simple Testing with `git diff`
2022-06-14 - `make` as a Static Site Generator
2022-04-03 - When Is Complexity OK?
2021-05-01 - Formatting Numbers of Unknown Order of Magnitude
2021-01-31 - Adding Gemini Support With Just a Few Lines of Code
2021-01-06 - Tcl as a Shell Scripting Replacement
2020-08-30 - My Simple Custom Blog Software
2020-05-06 - Hacking on "smu", a Minimal Markdown Parser
2020-04-28 - Suckless Software on My Desktop
2020-04-19 - Exercises in Simplicity
Projects
Active Projects
- WikDict.com[1]: Free bilingual dictionaries based on Wiktionary.org
- blog.sh[2]: The minimalistic blog engine running this site
- smu[3]: Sane, minimal markdown-like markup (fork)
- dotfiles[4]: Basic configuration I use across computers
- sqlean python package[5]: Install SQLite extensions from PyPI
- calced[6]: Evaluate math inside plain text locally or on the web
1: http://www.wikdict.com
2: https://github.com/karlb/karl.berlin
3: https://github.com/karlb/smu
4: https://github.com/karlb/dotfiles
5: https://github.com/karlb/sqlite-sqlean
6: https://github.com/karlb/calced
Old Projects
- Land Rush[7]: Multi-player auction game
- Nuclear Chess[8]: Chess variant with AI, playable in the browser
- Do Again List[9]: A self sorting list of things you want to do somewhat regularly
- Lots of games[10], some cross-platform games and some games for the obsolete Sharp Zaurus and Agenda VR3 mobile devices.
- SFont[11], a very simple font library supporting fancy bitmap fonts (with colors and alpha channel) and basic kerning. Has been successfully used in dozens of projects by other people.
7: http://landrush.karl.berlin/
8: http://karlb.github.io/nuclearchess/
9: https://github.com/karlb/doagain
10: http://www.linux-games.com/
11: http://www.linux-games.com/sfont
Experiments
- TermStack[12]: Mix CLI and GUI commands inside a terminal-like compositor
- Litespread[13]: Adding a basic spreadsheet UI to SQLite, also nice for handling CSVs
- iprefer.to[14]: Rating site that uses comparisons instead of star ratings
- TrackMyOwe.com[15]: Track and settle owes online
12: https://github.com/karlb/termstack
13: http://www.litespread.com
14: https://github.com/karlb/iprefer
15: https://github.com/karlb/zerosum
Reachable via Gemini Protocol
- gmi.karl.berlin[16]: This site
- gmi.WikDict.com[17]: Free bilingual dictionaries based on Wiktionary.org
16: gemini://gmi.karl.berlin
17: gemini://gmi.wikdict.com