$ git log --oneline --all

A blog where every article is a living document, tied to a real project.

What This Is

This isn't a blog where posts get published and forgotten. Every article here is tied to one of my personal projects β€” a homelab rebuild, an automation script that got out of hand, a self-hosted service deployment, whatever I'm currently breaking and fixing.

As the project evolves, the article documenting it evolves too. Updates, pivots, dead ends, breakthroughs β€” they all get committed, with a full revision history you can browse like git log.

✏️ Living Documentation

Each article is version controlled. You're not reading a snapshot β€” you're reading a project's entire commit history in narrative form. Every change is tracked, timestamped, and diff-able.

How It Works

When a project changes direction β€” say I swap Docker for Podman, or rebuild a config from scratch β€” I update the article and push a new revision. The old version isn't deleted; it's still there in the timeline, right next to the diff showing exactly what changed.

What You'll See on Every Article

● a1b2c3d Initial draft: raw notes from the crash (2026-07-01)
● e4f5g6h Add context: packaging everything as Docker containers (2026-07-08)
● i7j8k9l Major pivot: swapped Docker for Podman (deeper dive) (2026-07-15)
● m0n1o2p Rollback: Podman broke network stack, back to Docker + compose (2026-07-18)
● q3r4s5t Stable: final setup with docker-compose + watchtower for auto-updates (2026-07-22)

That graph above isn't fake β€” it's the same format every article uses. Click any revision in the timeline and see the article as it existed at that moment. Toggle the diff to see exactly what lines changed between iterations.

Why This Exists

Most tech blogs show you the final, polished solution. They skip the dead ends, the wrong assumptions, the "I tried this first and it failed" parts. Those are the parts that actually teach you something.

By keeping every revision visible, this blog does the opposite β€” it preserves the struggle. If you're following along with a project and hit the same wall I did, you'll see it in the commit history before I figured out the workaround.

⊞ One Project, One Article

One article = one active project. As long as the project is alive, the article keeps accumulating revisions. When the project stabilizes or ships, the article freezes. New project? New article.

The Git Breadcrumb Trail

Every revision comes with the same metadata you'd expect from a real commit:

commit a1b2c3d
Author: saltthefields
Date:   2026-07-01 09:23

    Initial draft: raw notes from the crash

commit e4f5g6h
Author: saltthefields
Date:   2026-07-08 14:30

    Add context: packaging everything as Docker containers

You can browse articles the same way you'd browse a repo β€” oldest commit at the bottom, newest at the top. Click any commit to see the article at that point in time. Check "Show diff from previous" to see the +additions and βˆ’deletions between versions.

What This Means for Readers

⬑ Current Status

This is a living experiment. I'm building it as I go β€” the blog itself will have its own revision history. Follow me on GitHub for updates, or just browse the articles and watch them evolve.