JournalLinksAboutSign in
  • 2026-05-21#tech#travel
    Travel Capture
    Share a photo while traveling, blog about it later. The log is the intent — "I saw something worth writing about." The photo stays in iCloud. The event stays in CloudFront.
  • 2026-05-21#tech
    My Own Name
    Everyone wants to own my identity. LinkedIn, GitHub, Apple. I need a namespace that's mine — one domain that mounts all the services without being tied to any of them.
  • 2026-05-21#tech
    Logs Are the Test Suite
    The system already records everything that happens. The test is just — did the expected thing show up in the record? No framework, no mock, no staging. Test in prod because prod is append-only.
  • 2026-05-21#tech
    Jolt, Coffee, Prosecco
    Story points are joyless. Jolt is the estimate, coffee is the effort, prosecco is the celebration. Same data as agile, different energy.
  • 2026-05-21#tech
    Git Notes as Memory
    Session context for AI lives in git notes — attached to commits, portable across tools, owned by you. No proprietary memory layer needed.
  • 2026-05-21#tech
    creat Needs an E
    The path was /log, then /events, now /create. The name catches up to what the system actually does — it creates files. Ken Thompson's one regret, fixed.
  • 2026-05-21#tech
    CGI Was Almost Right
    CGI was stateless, serverless, one-request-one-process. The only thing wrong with it was blocking. 202 fixes that — but the browser couldn't handle 202 until 2004.
  • 2026-05-21#tech
    AI Is Not the Intern
    People build guardrails to keep AI from deleting the database. Wrong problem. The architecture should make deletion impossible, not the process around the actor.
  • 2026-05-20#tech
    Unix in ROM
    Probably the first person to burn Unix into ROM. A diskless CRISP workstation that boots straight into the kernel. Power on, you're there.
  • 2026-05-20#tech
    Siri Thought Capture
    "Hey Siri, thought" — dictate, hit a URL, it's in the logs. Grep later, turn into journal entries. Works from the watch with a crown action.
  • 2026-05-20#tech
    Schema-Filtered Reads
    The schema declares @pii. The reader applies the filter. Same file, different view per consumer. Access control lives in the reader, not the storage.
  • 2026-05-20#tech
    Per-Repo Vault
    One encrypted file per repo. One script to show credentials. openssl and a password. No secrets manager, no service, no monthly cost.
  • 2026-05-20#tech
    MCP Log Reader
    An MCP server that reads CloudFront logs from S3. Query events, verify deploys, check comments — all from the chat without running CLI commands.
  • 2026-05-20#tech
    Kernighan Called Me
    I emailed him a CRISP compiler bug. He picked up the phone. That's Bell Labs culture — the person who wrote it is the person who fixes it.
  • 2026-05-20#tech
    jmux
    A Python terminal multiplexer. Two panes — Kiro CLI and a live markdown preview. SSH in, jmux journal.md, resume where you left off. The state is in git.
  • 2026-05-20#tech
    GitHub as CMS
    A custom GUI that commits to the repo. GitHub is the backend. No CMS server, no database. The WordPress experience without WordPress.
  • 2026-05-20#tech
    Contact Form
    Same pattern as comments. A form that hits /events/contact/submit. CloudFront logs it. You grep when you want. The log is the inbox.
  • 2026-05-20#tech
    Compose Queries
    GraphQL fragments compose into one query. @defer means they don't have to come back at the same time. Parallel fetches to different files, progressive rendering. No server.
  • 2026-05-20#tech
    Cleanup
    Small things skipped in the flow. Batch them later.
  • 2026-05-20#travel
    Business Card
    An SVG business card — the logo and a URL. That's all you need when the site is the portfolio.
  • 2026-05-20#tech
    Bluesky Handle
    Setting up thetube.today as a Bluesky handle. Your domain is your identity — no platform namespace required.
  • 2026-05-20#tech
    9P at Internet Scale
    Plan 9 and NFS had it right — files as the interface, namespace as the abstraction, stateless operations. HTTPS + CDN + JWT is the same model without the LAN constraint.
  • 2026-05-18#tech
    Same Hooks, No Server
    React hooks with the same API as Apollo or urql — but the backend is files and a CDN. No GraphQL server. The hook hides the implementation.
  • 2026-05-18#tech
    Real-Time Comments
    Same as moderated. Add a Lambda. That's it. The architecture doesn't change. The form doesn't change. The logging doesn't change.
  • 2026-05-18#tech
    Plugins Are Specs, Not Code
    A plugin isn't code you install — it's a spec you combine with your platform spec. AI generates the implementation that fits your site. No compatibility issues.
  • 2026-05-18#tech
    Moderated Comments
    Comments via batch events. You review, approve, they appear on next build. No spam, no real-time pressure. The log holds everything until you're ready.
  • 2026-05-17#tech
    The URL Is the Log Entry
    The browser fetches a URL with the event in the query string. CloudFront logs the request. No backend, no analytics service. The log is a side effect of the request existing.
  • 2026-05-16#tech
    Don't Let Your Repo Be a Junk Drawer
    The private repo started with fonts and ended up with Lambda code and CDK stacks. "Private" is not a concern — it's an access control label. The fork isn't a fix — it's an upgrade, and upgrades are cheap.
  • 2026-05-12#tech
    Short URLs in the Frontmatter
    A short URL in a post's frontmatter, a CloudFront function generated at build time. No third-party service, no database, no link rot.
  • 2026-05-11#tech
    Building theTube
    How I built this blog — static site, real auth, role-based content, no server.
  • 2023-11-11#tech
    Copilot Commit Messages
    Updated VSCode the other day and noticed Copilot will now create git commit messages. Since most of mine are "did some stuff" I figured, what's the worst that could happen.
© 2026
1bfe1ce · 37acad5 · b9e79f8 · 2026-05-21T19:09:14Z