speare.org — worksheet tech · tinkering

What I Got Wrong Building My First Homelab

The first version lived on a garage shelf in July, which in Texas is its own kind of decision. It ran six weeks. What killed it was not the heat.

What killed it was that I could not remember, four weeks later, why I had opened port 8443 or what was actually listening on it. The hardware was fine. The record of my own reasoning was gone.

Three rebuilds later the machine is boring, and boring is the entire point. Here is what I would hand to myself at the start.

Write down the why, not the what

Configuration files record what you did. They are perfectly silent on why, and why is the only part you need at eleven at night with something down. Every service now has a plain-text file beside it saying, in one sentence, what it is for and what breaks without it.

services/
  jellyfin/
    compose.yml
    WHY.txt      <- "Movies for the living room TV.
                     If down: nothing else cares."

It takes ten seconds to write and it is the only documentation I have never regretted.

The homelab is not the hardware. It is the set of decisions you made and can still explain.

Power before performance

I spent months on drive layout and roughly ten minutes on what happens when the power blinks. Then it blinked. Everything below is downstream of that afternoon.

  • A UPS sized to outlast the outage, not merely survive the transient.
  • Shutdown order that ends with storage rather than beginning with it.
  • A test you actually run — pull the plug on a Saturday, never a Tuesday.

None of this is advanced. All of it is the part I skipped, and skipping it is the reason there were three rebuilds instead of one.

What I would do differently

Start smaller than feels satisfying. One machine, two services, written down. The urge is to build the rack you want in three years, and the result is a rack you cannot explain in three weeks.

tech tinkering