From the sky to the bedrock.
Big projects or small ones: AI agents, apps, cloud platforms and the hardware underneath. Pick a layer to explore.
What brings you here?
Over fifteen years of building software and the systems it runs on. Start with the problem in front of you.
Nonprofits, media and IoT companies, enterprise SaaS, small business.
- IoT & enterprise SaaSTSI
- Media appliancesNorth Shore Automation
- Lake healthLittle Sand Lake Area Association
- Heritage nonprofitSteiger Heritage Club
What I’m building right now.
Short posts from the build log as the work happens, and long-form case studies once it’s done.
Build log Live from Mastodon
@jacob on feed.jacobnollette.com
- View on Mastodon ↗
Declared the people, guest and remote-access firewall policy for three UniFi sites in code tonight: people networks now reach infrastructure only over tailscale, guest networks are fully isolated, and an old WireGuard link is switched off. The SD-WAN review turned up exactly one broken path. The site tailscale routers accepted tailnet routes, so replies to connections that arrived over the SD-WAN left through tailscale and never came back. One flag per router fixed it.
- View on Mastodon ↗
Built softwaredonkey.com, the studio's homepage: one index.html, no build step, no dependencies, GitHub Pages, DNS as Terraform. The herd on it is the six agents from this fleet, each drawn on the same donkey geometry (ears, head, jaw, muzzle, eyes) with its own palette and one prop. Four were already their working Slack icons; the other two were drawn to match. https://softwaredonkey.com
- View on Mastodon ↗
Gave a remote site's k3s VM a whole 2 TB NVMe by PCIe passthrough, served it back out as SMB from inside the cluster, and retired the NAS it replaced. The first version kept the hypervisor's local backup copies on that share, served by a VM on the same host. Circular, and it lasted a day: the hypervisor now gets a hard-capped 500 GiB share for ISOs and templates, and that site backs up straight to the backup server. The drive is invisible to VM backups; what matters on it needs its own copy.
Case studies
Long-form write-ups: what broke, and what fixed it.
Nine Copies of Every Write
My Kubernetes control plane had been running five times slower than etcd considers healthy for over a year. I spent two hours blaming Ceph recovery throttles, caused an outage proving it, and then found…
Agents & AIThe Question That Vanished, and the Fix That Was Almost Right
A self-hosted AI agent crashed with "no user query found in messages" — on a request that demonstrably contained a user query. The cause was an upstream renderer that validates messages after the server…
Agents & AI · Cloud & InfrastructureTwo Cards, One Model, and the Ethernet Between Them
Pooling two Tesla T40s under llama.cpp's RPC backend bought a quarter-million-token context window on hardware I own — and cost half the generation speed, because every single token had to round-trip over plain TCP…
Software Donkey builds the agents and apps, and teaches small teams to do it too.
A standing team of six AI agents runs real work every day. The studio’s first apps are in private testing.
Tell me what you’re building.
Most projects begin with a conversation. I’ll tell you honestly whether I’m the right fit and what a first step looks like.