profile picture

Blog

OIDC for Grafana with Helm

October 30, 2023 - 1044 words - 6 mins
I've avoided installing an observability stack on my Kubernetes homelab1 — it's always seemed excessive in terms of the ratio of resources consumed to the scale of my operation. Of course, as these things go, I have begun to rely on my self-hosted infrastructure more and more. This became apparent w… read more

Adjust the Font Size for krunner

October 23, 2023 - 138 words - 1 mins
krunner is great, but I've always found it too small by default. This is really a general KDE trick, but you can create a ~/.config/krunnerrc: [General] font=Noto Sans,24,-1,5,50,0,0,0,0,0 The first two parts of this are what matter: they're the font name and font size respectively. Run kquitapp5 k… read more

GPU-Accelerated LLM on ARM64...in Docker!

August 19, 2023 - 911 words - 5 mins
I think the current "AI" hype is overblown, but certainly the recent advances in ML around large language models (LLMs) have been impressive. So, when Machine Learning Compilation (MLC) recently posted an LLM chat demo that can run on the Mali G610 GPU, I was intrigued. read more

Improving Failure Messages with Async Tests in Go

October 15, 2021 - 691 words - 4 mins
Testing highly asynchronous code can be highly time-consuming and tricky. If possible, I always try to include some sort of synchronization mechanism even if only exposed to unit tests. However, sometimes, there's no alternative, and an async test is better than no test! read more