I'm Barry Books — software engineer, cyclist, traveler. I've been building things on the web for a long time, and writing software even longer. This is where I write about it.
theTube is a personal blog: technical posts, travel writing, and things I want to share with family and friends. Some of it is public. Some of it requires a login. The distinction isn't about paywalls — it's about audience. A post about a family trip belongs to a different group than a post about Lambda@Edge.
The site is built on static HTML with no server. Authentication is real — Cognito, JWT, Lambda@Edge — but it's all just files on S3. It works in Lynx. It costs about $1 a month. The architecture is its own argument for how much of the web doesn't need to be as complicated as it is.
theTube is built in public. Each idea starts as an issue, gets built, and gets written about. The code and the writing ship together. A stream of thoughts with the receipts attached.
I'm interested in owning what I write. Not because platforms are bad, but because a URL that belongs to me doesn't change when a company changes its terms. The content stays, the links stay, the audience I build here is mine.
Find me
This site
theTube is a serverless publishing platform. No server. No database. Everything is a file and a URL. The CDN is the platform — it serves content, handles auth, ingests events, and scales globally. What looks like a static site supports user input, real-time writes, and role-based access. Works in Lynx. Costs about a dollar a month.
The architecture is its own argument for how much of the web doesn't need to be as complicated as it is.
Files at URLs
The contract is three words: files at URLs. Writers put data at a path. Readers fetch from that path. Nothing cares what built the file or what reads it. S3 is the pipe between them.
Posts are Markdown files. Comments are text files. Logs are HTTP requests the CDN records. The feed is a JSON manifest. All files. All URLs. All decoupled.
Journal-driven development
The development methodology: vague idea → journal → spec → code, where the last three are a loop. The journal entry is the unit of work — one file, whole story. AI is the bridge between prose and implementation. The spec is the source code. The code is the object code — disposable, regenerable.
The journal stays current because it is the work. You can't build something without writing about it first. Five years later you can open the file and reconstruct the what, the why, and the how.
The Unix pipe model
GitHub Actions is the shell. The content repo writes Markdown. The renderer reads it and produces HTML. CloudFront serves it. The log ingests events. Lambdas process them. Each step does one thing. None of them need to know about each other beyond the format.
Doug McIlroy's pipe model applied to publishing. Small tools, clear interfaces, compose at the shell.
Built with AI
Written completely by AI, directed by a human. The human role is direction, judgment, and writing. The AI role is code, debugging, and implementation. The skills and specs give AI enough context to build without constant correction.
Source