I make life easier, that is to say I've been writing software for 9+ years. Eschew hype; focus on delivery and performance.

Living in Switzerland 🇨🇭 since 2017.

    2024
  1. Soft-wrapping a Piece Table to draw with Raylib, in Odin
  2. Straightforward Programming (by Hasen Judi)
  3. The Retrieval Augmented Generation (RAG) pattern for LLMs
  4. A workable definition of simple
  5. Clean Code(tm), SOLID, OOP, and Gangs of Four are not simple, by definition
  6. Essential and Accidental complexity, and performance
  7. Learnings from Gadget Software
  8. Drawing text on a window with Odin - Part 1: GLFW
  9. The pleasure of writing Clean OOP code /s
  10. I've removed AI from my workflow
  11. My largest regret
  12. The only way forward for developers
  13. 2023
  14. Python project setup
  15. Using pyenv on DigitalOcean Ubuntu 22.04
  16. Basic security in Python Litestar projects (bonus HTMX CSRF config)
  17. Shallow thoughts are cheaper for experts
  18. Throw early for programmer errors
  19. Svelte v4 in Django using Webpack
  20. Twitter 3-legged OAuth with Django using Tweepy, for Twitter bots
  21. HTMX kills most single page applications
  22. Book Summary: Don't Make Me Think Revisited A Common Sense Approach to Web and Mobile Usability by Steve Krug
  23. 2022
  24. Adding TailwindCSS to Svelte components in a Django app
  25. Using Svelte components in a Django app
  26. Managing sync state
  27. Tailwind, using grid-cols-12 instead of mx-auto
  28. Generating a Swagger file with ASP.Net Core and generating API code for Angular
  29. Kubernetes RabbitMQ Certificate Revocation List
  30. 2021
  31. Devilboxを使ってローカルのWordPressサイトの最初のセットアップしよ
  32. 2018
  33. Exiting early, cognitive load
  34. Assigning variables, cognitive load
  35. Git config
  36. On Adblockers
  37. New website
  38. 2016
  39. How to run a Promises array in a series
  40. File navigation in Vim (my way)
  41. 2015
  42. Two months of OpenBSD
  43. Experience upgrading OpenBSD to 5.7
  44. Indentation and hooks in Emacs
  45. My switch to OpenBSD, first impressions
  46. December 2014 to April 2015
  47. 2014
  48. Respect, for respect is acknowledgement, and acknowledgement is a right
  49. Figuring out when you installed Arch Linux
  50. Minimal amount of fonts in Arch Linux
  51. Get it together Linux users/devs!
  52. The bleeding terminal background inside Vim + Tmux problem
  53. Getting used to software updates
  54. Barebones file navigation in Vim
  55. Navigating in the dark
  56. Knowing something but not registering it
  57. A week with Emacs
  58. A small project is not the same as a big project
  59. A projects page!
  60. Several VLC interfaces
  61. Enable `pass` auto-completion in Zsh
  62. Acknowledgements in communication
  63. Arch Linux font tip(s)
  64. My slow switch to Emacs
  65. New blog!
  66. My take on Vim vs. Emacs
  67. You need to understand JavaScript callbacks
  68. Neat trick for Vim keybindings
  69. Just switch to UTC
  70. My experience with the BSPWM and Sxhkd
  71. Write down the day ahead of you
  72. What the gut feeling is for me
  73. A technique to remember small stuff
  74. Out of sight is not out of mind
  75. Installing Arch Linux on a Dell Vostro 1500
  76. Text editor categories
  77. My experience with SolydXK (X)
  78. Disconnecting from the DocPad community
  79. Read stuff you have read before
  80. Real science, not bullshit
  81. My explanation of The Zone
  82. The world of Window Managers
  83. My trip to Switzerland, part 1, getting there
  84. 2013
  85. A love letter to Arch Linux
  86. Switching from Zsh to fish
  87. Light Table, the new Emacs
  88. Open source games without going poor