Skip to main content

Blog

Thoughts on AI tooling, Linux, developer workflows, and whatever else I find interesting.

115 posts · 111,000+ words · ~9 hours of reading

····

202629 posts

·15 min readHomelab

Uptime Kuma told me everything was fine. It wasn't.

Green checkmarks are not observability. Here is what I learned building a real monitoring stack.

·15 min readAI

What agentic coding actually looks like

Agentic coding changed how I build software. Not in the way the hype suggests.

·16 min readAI

Hermes Agent by Nous Research: the AI agent that actually cares about security

What Hermes Agent is, how it compares to OpenClaw on security and usability, and why it earned my trust.

·10 min readAI

How I would design an ad platform for LLMs

A technical breakdown of how a middleware ad layer for LLM APIs could work, why the economics demand it, and whether it should exist at all.

·11 min readWeb Dev

Why I built Omnibase: a universal database MCP server

I got tired of copy-pasting query results between DataGrip and AI agents. So I built an MCP server that gives AI agents secure, direct access to any database.

·7 min readWeb Dev

Delta libraries: how diffing works and which library to use

What delta libraries do, how diff algorithms work under the hood, and a practical comparison of the most popular options in the JavaScript ecosystem.

·6 min readWeb Dev

Offline-first apps: harder than it sounds

Building apps that work without internet is one of those things that seems straightforward until you actually try it. Here is what makes it hard and how to approach it.

·11 min readAI

Building RAG pipelines with local models

How to build a retrieval-augmented generation pipeline using local models and your own documents, without sending data to cloud APIs.

·3 min readAI

Using OpenRouter to access multiple AI models

How OpenRouter gives you a single API to access models from OpenAI, Anthropic, Google, and others without managing multiple accounts.

·5 min readOutdoor Tech

Starlink Mini: internet anywhere and peace of mind in remote places

How the Starlink Mini changed how I think about working remotely and adventuring in places with no cell coverage.

·3 min readAI

How agent skills work

What agent skills are, how they extend AI coding assistants with reusable workflows, and why they matter for developer productivity.

·3 min readAI

AI-assisted code review workflows

How I use AI tools to review code before committing, catch bugs early, and maintain consistency across projects.

·12 min readAI

What is an MCP server and why should you care?

An introduction to the Model Context Protocol, what MCP servers are, and how they let AI assistants interact with external tools and data.

·7 min readOutdoor Tech

Meshtastic: building an off-grid communication network

How Meshtastic turns cheap LoRa hardware into a mesh communication network that works without cell towers, Wi-Fi, or internet, and why it is perfect for outdoor adventures.

·11 min readAI

Getting structured output from language models

Techniques for getting LLMs to return JSON, typed objects, and other structured formats reliably, from prompt engineering to constrained decoding.

·2 min readAI

OpenCode: an open-source AI coding assistant

A look at OpenCode, an open-source terminal-based AI coding tool, and how it fits into my development workflow.

·9 min readAI

Fine-tuning small language models for specific tasks

A practical introduction to fine-tuning small LLMs for domain-specific tasks using tools like Unsloth and LoRA.

·4 min readOutdoor Tech

Kiwix: carrying Wikipedia (and more) offline

How Kiwix lets you download entire knowledge bases for offline access, and why I keep it on my devices for travel and remote adventures.

·3 min readSelf-Hosting

Self-hosting with Coolify: a PaaS on your own server

How Coolify turns your VPS into a Heroku-like platform for deploying apps, databases, and services with a clean web UI.

·4 min readAI

Comparing AI coding assistants: Claude Code, Cline, and OpenCode

An honest comparison of the AI coding tools I have used, what each does well, and which one fits different workflows.

·2 min readAI

Getting started with Open WebUI and Ollama

How to run local LLMs on your own machine with Ollama and put a clean web interface on top with Open WebUI.

·5 min readOutdoor Tech

What is LoRa and why does it matter for off-grid communication?

An introduction to LoRa radio technology, how it enables long-range communication without cellular or Wi-Fi, and why it is gaining traction with outdoor enthusiasts and tinkerers.

·3 min readLinux

Setting up a productive dev environment on Linux

The actual tools, terminal setup, and configuration I use for web development on Linux.

·16 min readAI

Building an MCP server with TypeScript

A step-by-step guide to building your own Model Context Protocol server in TypeScript to give AI assistants access to custom tools.

·3 min readLinux

Why I use Linux for web development

My case for using Linux as a web development environment, and the practical advantages it has over Windows.

·4 min readDeveloper Tools

Why shadcn/ui changed how I build React interfaces

What makes shadcn/ui different from traditional component libraries, and why copying components into your project is actually the better approach.

·3 min readDevOps

Automating workflows with n8n

How I use n8n as a self-hosted alternative to Zapier for connecting services and automating repetitive tasks.

·16 min readAI

What HuggingFace actually is

I thought HuggingFace was just GitHub for AI models, but that comparison sells it way short.

·3 min readWeb Dev

Deploying apps with Railway

How Railway makes deploying web applications simple without giving up control, and why I use it for side projects.