crashcode Back to the front door ↗

A personal field guide

Inside the lab.

Building useful things. Understanding how they work. Learning by running them.

I'm Chad, a developer and DevOps engineer. crashcode is where I build my own apps, explore infrastructure, and automate everyday life. It is a personal playground, but the services have a real job to do.

This guide shares the ideas and trade-offs behind the work, not a map of the private systems.

01 / The purpose

A workshop, not a showroom.

The lab has two roles: keeping engineering skills sharp and making useful things for everyday life. Some work is exploratory; some needs to keep working after the experiment is over.

Build

Write applications that solve problems I actually have, then take responsibility for running them.

Operate

Work with deployment, identity, monitoring, storage, and recovery as parts of one system.

Learn

Test assumptions, understand failures, and improve the design without turning every idea into a permanent dependency.

02 / The architecture

From an idea to a running service.

The foundation is a Kubernetes-based private cloud managed through GitOps. Applications and home automation sit on top of that foundation; identity, observability, and recovery cut across it.

  1. Code & configurationDescribe the intended state.
  2. ValidationCheck changes before delivery.
  3. GitOps reconciliationBring the runtime towards that state.
  4. Running servicesObserve what actually happens.

This is a conceptual delivery flow, not a device inventory or network diagram.

Infrastructure

Ansible handles host configuration; Kubernetes provides the application platform; Argo CD reconciles application configuration from Git.

Apps & automation

Self-written apps, self-hosted services, and home automation make the platform useful beyond the infrastructure itself.

Operational foundations

Identity boundaries, encrypted secrets, metrics, alerts, and backups support the services. None of them replaces the need to verify behavior.

03 / What lives here

Apps, automation & private cloud.

Apps I build myself

I don't just run other people's software. I also write my own apps, and the lab gives them somewhere to live beyond my development machine. Development and operations meet here: building something and running it are part of the same project.

A connected home

Home automation is one of the lab's everyday uses. Home Assistant brings devices and integrations together, with messaging and automation connecting them. It's a place where software interacts with the physical world, rather than staying behind a browser tab.

A private cloud

Self-hosted services and my own applications share a platform for deployment, storage, and day-to-day operation. Kubernetes and GitOps provide the foundation; monitoring, identity, and backups support what runs on it. Most of those services are private, so this guide describes the platform without becoming a directory of everything inside it.