How I Use Kagi
My block list and some fun search lenses. Don't @ me that damn article about the guy whinging about Kagi.
My block list and some fun search lenses. Don't @ me that damn article about the guy whinging about Kagi.
How I built MacThrottle, a menu bar app that tells me when my Mac is thermal throttling, and the journey to find the right macOS APIs.
A developer's lament about Xcode's opaque errors, unreadable project files, and Apple's culture of pretending everything is fine.
Marcin ‘mbork’ Borkowski has a nice post showing us how he trims video clips from our beloved editor. Trimming clips is something I do from time to ti...
I’ve put together a 300+ page book with basically everything I learned the hard way over the last 10 years founding and working at several hardware startups. It started out as a self published work, but No Starch Press picked it up and it went through a very extensive editing process to make it even better.
A closer look at a fashion trend in printed circuit board design.
In GitHub Actions, you can use the shell keyword to specify the shell that runs a given run: block. This keyword is optional for workflows but mandatory for action definitions.
We all know the current US President is one hell of an orator and often assures us that he has “the best words”:
Revenge tale against Consumer Electronics "Control".
{/ truncate /}
The one where I deploy counter defences.
A spaced-repetition memory system combines the Testing effect and the Spacing effect to enable efficient memorization of many thousands of facts ( Spaced repetition memory systems are extremely efficient ). Some people also use them for a broader set of tasks (see below). Spaced repetition memory systems make memory a…
A tale of suspiciously cheap ADS1115s
A CLI tool is not an app, and none of you are reading the docs as carefully as you think you are
Sometimes called a to-done list.
Every time I look at someone’s simple static site generation setup for their blog, I feel a pang of envy. I’m sure I could make a decent blogging engine in 2,000 lines of code, and it would be something I’d understand, be proud over, able to extend, and willing to share with others.
I’ve been using Home Assistant for about seven years now, starting back when I was living in a small apartment. At the time, my setup was modest: I …
Valve and Itch have been in the spotlight for being more or less forced by "Payment processors" to pull certain adult content off their storefronts. The short story of it is Valve pulled a couple of games down while Itch pulled down everything marked mature/adult temporarily and had to sort through their entire…
Software Engineer
A checklist for configuring Mozilla Firefox for a more private browsing experience.
Multiple parallel Claude-Code sessions power a self-improving AI factory where agents write, review, and refine code.
How to lovingly handcraft your own git repositories
Why I decided to ditch Cursor and switch to running Claude Code in an isolated environment + diy guide!
A common source of confusion that I experience when posting my artwork on social media is: _why?_ Why use a plotter when you could use a printer? It's slower. Less exact. More expensive. It fails, far too often. Inkjet printers became ubiquitous in the 1980s because they solved nearly all of these problems. So why are…
Side projects I have shipped, sold, or shut down, from modern.css to older WordPress experiments.
Code music in the browser.
One of my favorite AI dev products today is Full Line Code Completion in PyCharm (bundled with the IDE since late 2023). It’s extremely well-thought out,...
Recently, I modified anthes.is to use my own subsetted versions of Atkinson Hyperlegible Next and Atkinson Hyperlegible Mono. Following the principle of eating your own dog food , I also switched to Atkinson Hyperlegible Mono in my terminal. After a month of daily use, I can now assess this font’s practical advantages…
Stop falsifying your motivations.
People do or do not use debuggers for a variety of reasons. For one thing, they are hard to setup in many codebases. Second, you can’t use them when your application is running on remote environments (such as kuberenetes). So, anecdotally, I have seen way more people using Print/ log.Debug compared to a debugger.