Last week I built a SQLite database of every monster in the D&D 2014 Monster Manual, ran statistical analysis on saving throw fail rates across four tiers of play, and definitively answered optimization questions that thousands of forum threads have debated inconclusively for a decade. The whole thing (ETL pipeline, normalized schema, analysis, writeup) took an evening. You can read the PDF outputs if you’re curious.
Maybe 5 people saw it.
The week before that, I built a fully containerized webhook-to-email automation pipeline with n8n and Docker Compose for a client proof of concept. Documented a confirmed API bug that silently eats your code, figured out the jq escaping pattern for embedding JavaScript in workflow JSON, and wrote up the ngrok sidecar pattern that makes the whole thing demo-ready in one command.
Literally 1 person saw it.
This is the pattern. I’m a fractional CTO and cloud solutions architect. I build things constantly: Django SaaS apps, home lab automation, PowerShell tooling, RAG pipelines, data analysis on novel datasets, a ComfyUI image generation stack that I recently upgraded to newer Flux models, a Sourcegraph MCP server that’s become central to how I navigate and understand any codebase. The work is interesting. Some of it is genuinely useful to other practitioners. And almost none of it gets shared, because by the time I’m done building the thing, I don’t have the energy left to write about it, format it, fight with a CMS, and promote it.
The bottleneck was never the content. It was the pipeline.
The Real Problem
I’ve had a Squarespace site for almost two years. It works fine. It looks professional. And it has three blog posts on it, because publishing to Squarespace feels like a separate job from the actual work. The editing experience is designed for people who are starting from the writing. I’m starting from the code, the data, the terminal output, the architecture decisions. By the time I context-switch into a WYSIWYG editor and start formatting things by hand, the momentum is gone.
Meanwhile, every project I work on already produces markdown. My Claude Code sessions generate decision logs, ADRs, completion reports, analysis writeups. All in markdown, all version-controlled, all sitting in git repos. I’ve built a reusable skills library that standardizes how these artifacts get created across projects. The content exists. It just has no path to publication that doesn’t involve me manually re-creating it in a completely different tool.
I’m also paying $384 a year for the privilege of this friction. $192 for the website plan, $192 for Acuity Scheduling that I haven’t used in over a year, plus variable payment processing fees for a Square integration that has processed exactly zero payments. That’s the kind of cost rationalization that, professionally, I help my clients eliminate.
What “Own Your Stack” Means
This series documents what I did about it: migrating from Squarespace to a zero-cost stack built on Hugo and Cloudflare Pages, using Claude Code as the primary development tool.
But the migration is the means, not the point. The point is building a publishing pipeline where the path from “I just built something interesting” to “it’s live on my site” is short enough that I’ll actually walk it. Markdown in, website out. No CMS context-switch. No formatting by hand. No fighting a platform that was designed for someone else’s workflow.
The stack costs nothing. The site builds in under a second. The deploy is a single command. And every piece of it is something I understand, control, and can modify when my needs change. Because OF COURSE they will.
The Series
- Part 0: The What (you’re here): Why I built a publishing pipeline instead of just writing more posts on the platform I already had.
- Part 1: The Why: Technology selection, the napkin math, standing up the project with Claude Code, and the theme trap that reminded me to plan before I build, even when I’m excited about building.
- Part 2: The How: Custom theme implementation, the three-color section system, contact form integration, and deploying to Cloudflare Pages.
- Part 3: Baseline SEO: A 30-year technologist who’s never done SEO uses Claude to learn the basics and optimize a Hugo static site.
- Part 4: Content SEO: Making every page worth indexing. Tag page enrichment, internal linking, and the SEO that actually matters for a small site.
- Companion: DNS Cutover: The full DNS migration to Cloudflare, and why AI-assisted planning is no substitute for infrastructure review.
- Companion: DNS Cutover: The full DNS migration to Cloudflare, and why AI-assisted planning is no substitute for infrastructure review.
Who This Is For
If you’re a technical practitioner who builds interesting things and doesn’t share them (not because you don’t want to, but because the publishing step is one context-switch too many), this series is for you. If you’re paying for a platform you’ve outgrown and you’re not sure what the alternative looks like, this is what I did and what I learned.
If you’re a small business owner wondering whether you actually need that website subscription, the napkin math in Part 1 might be illuminating.
The Clouditect helps businesses simplify their technology. If your tools are working against you instead of for you, let’s talk.