weekends are for leisure

Least-privileged Headlamp installation on Kubernetes

When I first explored Kubernetes many many years ago, Kubernetes Dashboard was a thing. However, the Dashboard project page says it is now deprecated and unmaintained, recommending Headlamp instead. So let’s install it! But with care, in least-privileged fashion.

Continue reading

Learning more Kubernetes

A few months ago I got the urge to refresh and expand my Kubernetes skills. I know the basics, but have never managed a cluster. Several companies I worked at used Kubernetes in some capacity, but sadly I was never on those teams. But that’s ok! I’m no stranger to learning on my own, and it’s a great excuse to expand my homelab.

Continue reading

James Recycling in Portland

There are so many beautiful people in Portland. This video features a man who partnered with a local plastics recycler to provide a way for residents to recycle plastics that aren’t accepted in their curbside bins.

Continue reading

I love Oregon Field Guide

I made more time for evening relaxation this year because it was a tremendously taxing one. I’m talking about the kind of relaxation where you lounge without moving, don’t touch your phone, and give your full attention to something for the full duration. When I need that level of rest, my TV show of choice is Oregon Field Guide. It is the epitome of wonderfully crafted nature communication, and has been my favorite PBS show for about 15 years.

Continue reading

Re-theme in progress

I’ve been fighting against the theme I was using for this blog for a couple years now. It hadn’t been updated to work with newer versions of Hugo, which is the tool I use to convert my writings into a themed, usable website.

So a month ago I decided to create my own theme, after avoiding this rabbit-hole for years. I knew there’d be a multi-hour learning curve involved, but now felt like the right time.

Continue reading

QNAP QWA-AC2600 on Linux, setting the country code for hostapd

Setting the country code within the hostapd config doesn’t work on Debian bookworm or Ubuntu 22 LTS. Nor does using iw reg set US without a workaround. The trick is to remove all kernel modules for the card, then use iw reg set US and reload the modules.

The card worked fine under Debian 11. I have a hunch things broke when Linux moved away from the CRDA package, but I’m not a kernel developer. If you know what may have happened, please let me know.

Continue reading

Tutorial: Using ARMv6 SIMD Intrinsic Instructions on a Raspberry PI Zero W

Raspberry Pi Zero W computers have a single core ARM1176JZF-S CPU that implements version 6 of the ARM11 ARM architecture. From the docs:

It supports the ARM and Thumb instruction sets, Jazelle technology to enable direct execution of Java bytecodes, and a range of SIMD DSP instructions that operate on 16-bit or 8-bit data values in 32-bit registers.

Continue reading

Rust Sharding StatsD Proxy: Performance Improvement

If it ain’t broke, make it faster.

I’m writing a sharding StatsD proxy as a way to learn the Rust programming language. This is just a toy project, but I’m treating it as if it were something I’d run in production where I care about performance.

Continue reading

Setting the Time on a PineTime running InfiniTime

I recently bought a PineTime watch on a whim. And I’m still not sure what I’m going to do with it, but it runs an open source operating system (InfiniTime based on FreeRTOS) so I’m lured by the thought of customizing or contributing in some way no matter how small.

Continue reading

Learning Rust - Sharding StatsD Proxy

TL;DR: I’m learning Rust, creating a sharding StatsD proxy as a learning project, and am creating YouTube videos of the process. See Relaxing With Code.

Continue reading