PageSourceSearch

https://domdhi.com/logs

html domdhi.com collected 2026-10-02 01:27:29 UTC 103,052 bytes, 144 lines download raw bytes

1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta name="robots" content="noindex, nofollow"/><title>The Stream — Live Build Log | Domdhi</title><meta name="description" content="One feed, newest first. Writing, builds, milestones, and the raw commit log from Domdhi.OS. Not the highlight reel — the heartbeat."/><meta property="og:title" content="The Stream — Live Build Log | Domdhi"/><meta property="og:description" content="Writing, builds &amp; the occasional rabbit hole. One feed, newest first."/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary"/><link rel="icon" href="/favicon.svg" type="image/svg+xml"/><link rel="icon" href="/favicon.ico" sizes="48x48"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/><link rel="manifest" href="/site.webmanifest"/><link rel="alternate" type="application/rss+xml" title="Domdhi RSS Feed" href="/api/feed.xml"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><link rel="preconnect" href="https://api.fontshare.com" crossorigin="anonymous"/><link rel="modulepreload" href="/assets/entry.client-CAXdPubk.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/chunk-6CSD65Y2-D6zLy3dp.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/react-dom-xtO3DKtk.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/jsx-runtime-BGLTrfZy.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/root-Bcndpy-H.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/button-DrB63Wrb.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/error-page-DXluEbBN.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/use-toast-B-AEaVB6.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/nonce-CWOxB_-x.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/route-error-oT57U1b3.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/utils-UvpNVb9C.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/dist-DwVSkiDL.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/dist-CxHP7aHd.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/dist-CWWr0mHq.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/dist-k5UaVEGE.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/x-4NTPRLP3.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/createLucideIcon-Dya2zrSk.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/route-4AcQuCWI.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/PublicFooter-BtHZR4m5.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/logs-DGCHK-R_.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/calculators-aelNI-sd.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="modulepreload" href="/assets/time-utils-DcRCMNV5.js" nonce="HL-sPOhA3HxbJ5MTibI6Tw"/><link rel="stylesheet" href="/assets/root-WJoKqX3L.css"/><link rel="stylesheet" href="https://api.fontshare.com/v2/css?f[]=clash-display@600,700&amp;display=swap"/></head><body><div class="bg-void text-white font-mono min-h-screen flex flex-col overflow-x-clip selection:bg-amethyst selection:text-white relative"><div class="scanlines"></div><div class="fixed top-0 left-1/2 -translate-x-1/2 w-[800px] h-[600px] bg-amethyst/10 blur-[120px] rounded-full pointer-events-none z-0"></div><header class="fixed top-0 w-full z-50 h-[60px] flex items-center justify-between px-6 backdrop-blur-sm border-b border-white/[0.16] bg-void/95"><a href="/" class="flex items-center gap-2 no-underline" aria-label="Domdhi home"><img src="/favicon.svg" loading="lazy" width="32" height="32" alt="Domdhi logo" style="flex-shrink:0;display:block"/>
1<span class="font-mono text-[13px] font-bold tracking-[0.14em] text-white">DOMDHI<span class="text-amethyst">.OS</span></span></a><nav class="flex items-center"><div class="hidden md:flex items-center"><a class="inline-flex items-center justify-center font-bold font-mono uppercase tracking-[0.07em] transition-button disabled:opacity-50 disabled:cursor-not-allowed bg-transparent border border-transparent px-4 py-2 text-xs text-zinc-400 hover:text-violet hover:border-white/20 hover:text-glow-violet" href="/logs" data-discover="true">[/WRITING]</a><a class="inline-flex items-center justify-center font-bold font-mono uppercase tracking-[0.07em] transition-button disabled:opacity-50 disabled:cursor-not-allowed bg-transparent border border-transparent px-4 py-2 text-xs text-zinc-400 hover:text-cyan hover:border-white/20 hover:text-glow-cyan" href="/builds" data-discover="true">[/BUILDS]</a></div><a class="inline-flex items-center justify-center font-bold font-mono uppercase tracking-[0.07em] transition-button disabled:opacity-50 disabled:cursor-not-allowed bg-transparent border-2 border-white/20 hover:translate-x-[-2px] hover:translate-y-[-2px] active:translate-x-[1px] active:translate-y-[1px] px-4 py-2 text-xs text-white shadow-soft-amethyst hover:border-amethyst hover:text-amethyst hover:shadow-soft-amethyst hover:text-glow-amethyst active:shadow-soft-amethyst ml-3" href="/login" data-discover="true">[INITIALIZE →]</a></nav></header><main class="relative z-10 pt-20 flex-1"><div class="max-w-6xl mx-auto px-4 sm:px-6 lg:px-8 py-12 space-y-6"><div class="border-b border-white/10 pb-6"><p class="text-[10px] font-mono text-gray-500 tracking-[0.25em] mb-3">// THE STREAM</p><h1 class="font-display font-bold text-4xl md:text-5xl tracking-tight text-white leading-[0.95]">The stream.</h1><p class="text-[11px] font-mono text-amethyst tracking-[0.24em] mt-3 mb-3">WRITING, BUILDS &amp; THE OCCASIONAL RABBIT HOLE</p><p class="text-sm text-gray-400 max-w-[62ch] leading-relaxed">One feed, newest first. Commits roll up per repo so the writing doesn&#x27;t drown — hit <span class="text-emerald">SHIPS</span> for the raw, un-collapsed log. Not the highlight reel. The heartbeat.</p></div><div class="flex flex-wrap w-full" style="border-top:1px solid rgba(255,255,255,0.07);border-bottom:1px solid rgba(255,255,255,0.07)"><div class="flex flex-col gap-[5px]" style="padding:10px 16px;border-right:1px solid rgba(255,255,255,0.07)"><span class="font-mono uppercase" style="font-size:9px;letter-spacing:0.14em;color:#52525b">STATUS</span><span class="font-display font-semibold text-[#EDEDED]" style="font-size:14px"><span class="relative inline-flex mr-[7px] align-middle" aria-hidden="true"><span class="inline-flex w-[7px] h-[7px] rounded-full bg-emerald animate-pulse motion-reduce:animate-none" style="vertical-align:middle"></span></span>&gt; LIVE_BUILD_ACTIVE</span></div><div class="flex flex-col gap-[5px]" style="padding:10px 16px;border-right:1px solid rgba(255,255,255,0.07)"><span class="font-mono uppercase" style="font-size:9px;letter-spacing:0.14em;color:#52525b">LAST_PUSH</span><span class="font-display font-semibold text-[#EDEDED]" style="font-size:14px">1h ago</span></div><div class="flex flex-col gap-[5px]" style="padding:10px 16px;border-right:1px solid rgba(255,255,255,0.07)"><span class="font-mono uppercase" style="font-size:9px;letter-spacing:0.14em;color:#52525b">COMMITS_TODAY</span><span class="font-mono text-[#EDEDED]" style="font-size:13px">0</span></div><div class="flex flex-col gap-[5px]" style="padding:10px 16px;border-right:1px solid rgba(255,255,255,0.07)"><span class="font-mono uppercase" style="font-size:9px;letter-spacing:0.14em;color:#52525b">ACTIVE_REPOS</span><span class="font-mono text-[#EDEDED]" style="font-size:13px">0</span></div><div class="flex flex-col gap-[5px]" style="padding:10px 16px;border-right:none"><span class="font-mono uppercase" style="font-size:9px;letter-spacing:0.14em;color:#52525b">STREAK</span><span class="font-mono text-[#EDEDED]" style="font-size:13px">7 D</span></div></div><div role="group" aria-label="Filter the stream" style="display:flex;flex-wrap:wrap;gap:8px"><button class="inline-flex items-center justify-center font-bold font-mono uppercase transition-button disabled:opacity-50 disabled:cursor-not-allowed border transition-colors px-3 py-1 text-[10px] tracking-wider bg-white text-black border-white" aria-pressed="true" type="button">ALL</button><button class="inline-flex items-center justify-center font-bold font-mono uppercase transition-button disabled:opacity-50 disabled:cursor-not-allowed bg-transparent border transition-colors px-3 py-1 text-[10px] tracking-wider border-cyan text-cyan hover:bg-cyan/10" aria-pressed="false" type="button">WRITING</button><button class="inline-flex items-center justify-center font-bold font-mono uppercase transition-button disabled:opacity-50 disabled:cursor-not-allowed bg-transparent border transition-colors px-3 py-1 text-[10px] tracking-wider border-emerald text-emerald hover:bg-emerald/10" aria-pressed="false" type="button">SHIPS</button><button class="inline-flex items-center justify-center font-bold font-mono uppercase transition-button disabled:opacity-50 disabled:cursor-not-allowed bg-transparent border transition-colors px-3 py-1 text-[10px] tracking-wider border-amber text-amber hover:bg-amber/10" aria-pressed="false" type="button">MILESTONES</button></div><div style="display:grid;grid-template-columns:1fr;gap:0;transition:grid-template-columns 0.35s cubic-bezier(0.16,1,0.3,1)" class="motion-reduce:transition-none"><div class="min-w-0"><div><section aria-label="THIS WEEK"><div class="flex items-center justify-between" style="padding:10px 12px 10px 0;border-bottom:1px solid rgba(255,255,255,0.07)"><span class="font-mono text-[9px] tracking-[0.25em] text-zinc-500">// THIS WEEK</span><span class="font-mono text-[9px] tracking-[0.14em] text-zinc-600">2</span></div><div><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">2d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">AI-Augmented Development: The 8-10x Multiplier</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">
11,529 commits. 310,360 lines. 6,701 tests. 126 API endpoints. One person, 224 days, no team. Here&#x27;s the actual commit log, the months where it broke down, and an honest accounting of where the multiplier is real and where it&#x27;s marketing.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">4 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">6d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">The Autopilot Setup</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Forcing Functions was the why. This is the what. The exact account ordering -- 401k match, HSA, Roth, back to the 401k -- and why getting the order wrong quietly costs six figures over a career. Set once, runs forever, never asks how you feel about it.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">6 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button></div></section><section aria-label="EARLIER"><div class="flex items-center justify-between" style="padding:10px 12px 10px 0;border-bottom:1px solid rgba(255,255,255,0.07)"><span class="font-mono text-[9px] tracking-[0.25em] text-zinc-500">// EARLIER</span><span class="font-mono text-[9px] tracking-[0.14em] text-zinc-600">33</span></div><div><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">9d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">I Will Never Create Value I Cannot Capture</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">The mantra isn&#x27;t a flex, it&#x27;s a filter. Employment isn&#x27;t theft -- it&#x27;s a spread, and the spread is the entire business model. You produce, they capture, you get a number that was decided before you got good. Here&#x27;s how to tell the difference between building an asset and renting out your best hours.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">6 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">51d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">The Stack That Prints Money</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">13 modules. 270 test files. 6,696 tests passing. One operator. 204 MCP tools, 122 REST endpoints, roughly 218 method+path operations across them -- nobody hands you that, you build a stack that lets you print it. Edge runtime, typed boun
1daries, an 800-line ceiling, and an AI that stays sharp because the files stay small.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">55d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">The Glass Cockpit: Real-Time Financial Awareness</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Pilots don&#x27;t fly on vibes. They fly on instruments... airspeed, altitude, fuel, all live, all at once. Most people fly their finances the opposite way -- check the bank app once a month and hope the mountain isn&#x27;t close. I built the instrument panel instead. Net worth, burn, runway, days to FI, all live, all the time.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#BF40FF;box-shadow:0 0 10px #BF40FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-violet">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">58d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Own Your Library: Self-Hosting Your Media Stack</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">You don&#x27;t own a single show you stream. The catalog changes, the license expires, the price climbs, and one day it&#x27;s just gone. I built my own media server instead -- Jellyfin for video, Navidrome for music, a cheap mini PC doing the work -- and now nothing I own can be deleted out from under me. Here&#x27;s the stack and the math.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">62d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Forcing Functions: Architecting Life Outcomes</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Willpower is a stat that depletes. A forcing function is a mechanic that doesn&#x27;t care how you feel. 27% of every paycheck moves before I see it. 16% match on top of that. September 2030 is a public deadline, not a vibe. 11 tasks on a scoreboard I can&#x27;
1t lie to. This is the anchor -- every mechanic I actually run gets its own breakdown from here.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#BF40FF;box-shadow:0 0 10px #BF40FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-violet">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">65d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Cut the Cord: The $1,200 Subscription Audit</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Nobody runs this audit. I did. Netflix, Max, Disney+, Hulu, Spotify, YouTube Premium, cable, the works -- $103.42/month, $1,241.04/year, for content I don&#x27;t own and can&#x27;t keep. Here&#x27;s the math on what that number actually costs you over a decade, and the tactical cut that kills it.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">69d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Days to FI: The Only Metric That Matters</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Net worth is a corpse photo. Savings rate is better but still lies by omission. The one number that actually tells you how caged you are is days to financial independence... a live countdown that moves every time you buy a coffee or ship an invoice. I did the math. It&#x27;s the only metric that made me change behavior.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">72d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">The 530-Line Component Nobody Could See</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">530 lines of React. Category management, bill template CRUD, drag-to-reorder, preset loading, entitlement gating. Fully functional. Fully tested. Nobody could see it. For weeks. I built the component during a 12-commit sprint, moved on to the next feature, and never came back to mount it. A browser agent found it when it couldn&#x27;t find the gear icon.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">4 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease;border-top:1px solid rgba(0, 240, 255,0.4);padding-top:20px" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:0;transform:rotate(45deg)" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">◆ MILESTONE</span><span class="font-mono text-[9px]" style="color:#52525b">76d ago</span></div><div class="font-display font-semibold leading-[1.3] text-cyan text-[17px]">New course published: GIT 101: Version Control for People Who Ship</div><div class="text-[11px] truncate font-display font-bold text-[13px] text-[#9b9ba3]">9</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">76d ago</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">76d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">I Replaced My Payment Provider in One Day</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">I woke up and decided LemonSqueezy was dead. Not because it was bad s
1oftware -- it worked fine. But the checkout page looked like someone else&#x27;s SaaS template bolted onto my neobrutalist design system. 21 commits. 48 files. By midnight, grep returned zero references. Stripe Elements, WebCrypto signature verification on Cloudflare Workers, and a breaking API change at 9pm.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">4 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">79d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">From One Column to Nine Tables</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Every account. Every bill. Every income source. Every crypto holding. One JSONB column. It worked. That&#x27;s the dangerous part. You can&#x27;t query across users. You can&#x27;t enforce referential integrity. You can&#x27;t do RLS properly. February 3rd: 9 tables, 57 functions, one day. The migration had to work on the first run against production data.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">83d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">File Size Is an Architecture Decision</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">800 lines. That&#x27;s the hard limit on every route file in my codebase. This rule didn&#x27;t come from a software architecture textbook. It came from watching Claude lose its mind at line 900. AI tools have a context window of roughly 800-1,200 lines before they start hallucinating. portfolio.tsx was 1,896 lines. 12 commits later it was 782 lines across 12 files.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">86d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">When AI Tests Your UI</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">530 passing tests. Every one green. The TemplateManagerSheet was completely invisible to users. A browser agent caught it in 4 seconds because it c
1ouldn&#x27;t find the gear icon. Three rounds of AI-driven browser testing surfaced an unpushed migration, an unmounted component, and stale data from partial failures -- all invisible to npm run test.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">90d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">The Vacation Velocity Experiment</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">$87,150 in created value. 92 commits. 19 days. That was my vacation. Week 1 produced 10 garbage commits -- the decompression tax. Week 2 hit $4,800/day. Week 3 compounded to $11,625/day. One developer. Zero meetings. AI tools that have gotten genuinely scary good. The question was simple: what happens when you remove the job from the developer?</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">4 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">93d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">The Product That Tells You Not to Use It</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">YNAB costs $109/year. Monarch costs $99. They all need you checking in daily to justify that subscription. Here&#x27;s what actually happens when you check your debt balance every morning: nothing. I built a finance app that tells you to close it. &#x27;Your plan is set. Next milestone: credit card dead in 47 days. Go live your life. See you March 7th.&#x27; My ideal user opens the app 12 times a year.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">4 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">97d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">GO TO COLLEGE</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">I wrote those three words on a piece of paper at 24 years old, drunk, probably high, definitely not okay. Taped it to the wall so I&#x27;d see it if I woke up the next morning. Lost a full scholarship at 18 because my parents missed a FAFSA deadline. Five years of nothing. Then a Tom Hanks movie at 2am changed the trajectory. Three degrees for the price of one by reading the course catalog like a skill tree.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">3 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">100d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">A Calculator That Calls You Out</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Every financial calculator on the internet has the same energy. Enter your numbers. Get a chart. Feel mildly informed. Close the tab. Change nothing. I built a calculator that tells someone &#x27;You are a slave to the bank&#x27; based on their actual numbers. Six inputs. A gated scoring hierarchy. Five ranks from CAPTURED to SOVEREIGN. Polite doesn&#x27;
1t work.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">6 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease;border-top:1px solid rgba(0, 255, 159,0.4);padding-top:20px" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:0;transform:rotate(45deg)" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">◆ MILESTONE</span><span class="font-mono text-[9px]" style="color:#52525b">101d ago</span></div><div class="font-display font-semibold leading-[1.3] text-emerald text-[17px]">Savings rate held above 47% for 12 straight months.</div><div class="text-[11px] truncate font-display font-bold text-[13px] text-[#9b9ba3]">47.2%</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">101d ago</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">104d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">The 6 Stages of Financial Freedom</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Every finance tool treats you like the same person. YNAB doesn&#x27;t care if you&#x27;re $40,000 underwater or sitting on $300k in index funds. I mapped the entire financial freedom journey into 6 stages -- Drowning, Treading, Swimming, Optimizing, Coasting, Free -- then built a system that detects which one you&#x27;re in and hides everything that doesn&#x27;t matter.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">5 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">107d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Freedom Is a Math Problem</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">I performed 9 distinct roles while being compensated for one. 762.5 hours of documented unpaid overtime. $92k and a handshake. That&#x27;s when the math stopped being abstract. $100,000 per year in replacement income -- that&#x27;s the trigger. Not a feeling. Not a sign from the universe. A number. Two roads: 5 clients at $20k each, or 556 strangers at $15/month.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">6 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease;border-top:1px solid rgba(157, 78, 221,0.4);padding-top:20px" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#9D4EDD;box-shadow:0 0 10px #9D4EDD;outline:3px solid #020202;outline-offset:-1px;border-radius:0;transform:rotate(45deg)" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amethyst">◆ MILESTONE</span><span class="font-mono text-[9px]" style="color:#52525b">113d ago</span></div><div class="font-display font-semibold leading-[1.3] text-amethyst text-[17px]">domdhi.cockpit V1 — every test green.</div><div class="text-[11px] truncate font-display font-bold text-[13px] text-[#9b9ba3]">2,338</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">113d ago</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">214d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">I Made Claude Code Talk</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">
1I was 90 minutes into a session. Claude finished a task, dropped 400 words explaining what it did and why, and I had to stop. Stop touching the keyboard. Stop thinking. And read!
2
3That&#x27;s when I went — wait, why am I doing this...</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">4 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00F0FF;box-shadow:0 0 10px #00F0FF;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-cyan">WRITING</span><span class="font-mono text-[9px]" style="color:#52525b">261d ago</span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Velocity Is The Asset: How I Shipped 7 Features in 6 Hours</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">They tell you software development takes time. They tell you to plan sprints, hold grooming meetings, and estimate story points.
4
5They are lying to keep you slow.*</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">1 MIN READ</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">ARTICLE</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Hourly Rate</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">What your job actually pays once you count the hours nobody counts.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Automation ROI</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">What that repetitive task is quietly costing you every year.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Debt Destroyer</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Every payoff strategy, ranked by what it really costs you.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">1 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">401k Optimizer</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Are you leaving free employer match on the table?</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">True Cost</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">What you&#x27;ll really pay for that loan once interest compounds.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Tax Bracket</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Your real marginal vs effective rate — not the bracket myth.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">1 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Dollar Flow</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">The order to fund every dollar — the prime directive flowchart.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#00FF9F;box-shadow:0 0 10px #00FF9F;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-emerald">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Health Insurance</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Which plan actually costs less once you do the math.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expanded="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Coast FI</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">How long until you can stop saving and just let it ride.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button><button type="button" aria-expand
5ed="false" aria-controls="stream-peek-panel" style="display:grid;grid-template-columns:28px 1fr auto;gap:13px;align-items:start;padding:15px 12px 15px 0;border-bottom:1px solid rgba(255,255,255,0.05);border-left:2px solid transparent;cursor:pointer;text-align:left;width:100%;transition:background 0.12s ease" class="hover:bg-white/[0.025] focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-amethyst"><span style="width:9px;height:9px;flex-shrink:0;margin-top:5px;background:#FFB000;box-shadow:0 0 10px #FFB000;outline:3px solid #020202;outline-offset:-1px;border-radius:50%" aria-hidden="true"></span><div class="flex flex-col gap-[4px] min-w-0"><div class="flex items-center gap-[8px]"><span class="font-mono text-[9px] tracking-[0.18em] uppercase text-amber">BUILD</span><span class="font-mono text-[9px]" style="color:#52525b"></span></div><div class="font-display font-semibold leading-[1.3] text-[#EDEDED] text-[15.5px]">Roth vs Traditional</div><div class="text-[11px] truncate font-mono text-[#9b9ba3]">Roth or Traditional — which wins for your bracket path.</div><div class="flex items-center gap-[10px] mt-[2px]"><span class="font-mono text-[10px]" style="color:#52525b">0 RUNS · LIVE</span><span class="font-mono" style="font-size:9px;border:1px solid rgba(255,255,255,0.16);padding:2px 6px;color:#71717A;letter-spacing:0.1em">CALCULATOR</span></div></div><span class="font-mono text-[12px] self-center" style="color:#3f3f46" aria-hidden="true">→</span></button></div></section></div></div></div></div></main><footer class="relative z-10 border-t border-white/10 px-6 md:px-12 py-5"><div class="max-w-7xl mx-auto w-full flex flex-col md:flex-row justify-between items-center gap-4 font-mono text-[11px] text-zinc-500"><div>© 2026 <span class="text-white font-bold">DOMDHI</span><span class="text-amethyst font-bold">.OS</span><span class="text-zinc-700 mx-2">//</span>NO_COOKIES. JUST_DATA.<span class="text-zinc-700 mx-2">//</span>EDGE_REGION: US_WEST</div><div class="flex items-center gap-0"><a class="hover:text-white transition-colors" href="/privacy" data-discover="true">PRIVACY</a><span class="text-zinc-700 mx-2">//</span><a class="hover:text-white transition-colors" href="/terms" data-discover="true">TERMS</a><span class="text-zinc-700 mx-2">//</span><a class="hover:text-white transition-colors" href="/logs" data-discover="true">LOGS</a></div></div></footer></div><div aria-hidden="true" style="position:fixed;top:0;left:0;width:clamp(220px, min(34vw, 42vh), 520px);height:clamp(220px, min(34vw, 42vh), 520px);opacity:1;filter:blur(0px);mix-blend-mode:screen;pointer-events:none;z-index:1;will-change:transform, opacity, filter;transition:opacity 0.6s ease, filter 0.6s ease;transform:translate3d(72vw,74vh,0) translate(-50%,-50%)"><svg viewBox="0 0 100 100" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" class="w-full h-full" data-magnetic="true"><circle cx="50" cy="50" r="48" fill="none" stroke="#222" stroke-width="0.5" stroke-dasharray="1 2" opacity="0.8"></circle><circle cx="50" cy="50" r="46" fill="none" stroke="#1a1a1a" stroke-width="0.3"></circle><g class="spin-slow"><circle cx="50" cy="50" r="39" fill="none" stroke="#0e0e0e" stroke-width="6"></circle><circle cx="50" cy="50" r="41.5" fill="none" stroke="#2a2a2a" stroke-width="0.2"></circle><circle cx="50" cy="50" r="34.5" fill="none" stroke="#2a2a2a" stroke-width="0.2"></circle><path id="midRing" d="M 50,50 m -36.5,0 a 36.5,36.5 0 1,1 73,0 a 36.5,36.5 0 1,1 -73,0" fill="none"></path><text font-size="2.8" fill="#5a5a5a" font-family="monospace" letter-spacing="1.5" font-weight="bold"><textPath href="#midRing">0x59 0x4F 0x55 0x52 0x20 0x53 0x59 0x53 0x54 0x45 0x4D 0x20 0x59 0x4F 0x55 0x52 0x20 0x52 0x55 0x4C 0x45 0x53</textPath></text></g><path d="M50,15 L83,39 L71,78 L29,78 L17,39 Z" fill="none" stroke="white" stroke-width="0.3" opacity="0.18"></path><rect x="35" y="35" width="30" height="30" fill="none" stroke="white" stroke-width="0.3" opacity="0.12" transform="rotate(36 50 50)"></rect><defs><filter id="gf" x="-100%" y="-100%" width="300%" height="300%"><feDropShadow dx="0" dy="0" stdDeviation="2" flood-color="#00FF9F"></feDropShadow></filter><filter id="gr" x="-100%" y="-100%" width="300%" height="300%"><feDropShadow dx="0" dy="0" stdDeviation="2" flood-color="#FFB000"></feDropShadow></filter><filter id="gm" x="-100%" y="-100%" width="300%" height="300%"><feDropShadow dx="0" dy="0" stdDeviation="2" flood-color="#BF40FF"></feDropShadow></filter><filter id="gx" x="-100%" y="-100%" width="300%" height="300%"><feDropShadow dx="0" dy="0" stdDeviation="2" flood-color="#FF0055"></feDropShadow></filter><filter id="gt" x="-100%" y="-100%" width="300%" height="300%"><feDropShadow dx="0" dy="0" stdDeviation="2" flood-color="#00F0FF"></feDropShadow></filter><filter id="gc" x="-100%" y="-100%" width="300%" height="300%"><feDropShadow dx="0" dy="0" stdDeviation="4" flood-color="#9D4EDD" flood-opacity="0.6"></feDropShadow></filter></defs><circle cx="50" cy="15" r="3.5" fill="#020202" stroke="#00FF9F" stroke-width="1.5" filter="url
5(#gf)"></circle><circle cx="50" cy="15" r="1.5" fill="#00FF9F" class="npulse"></circle><circle cx="83" cy="39" r="3.5" fill="#020202" stroke="#FFB000" stroke-width="1.5" filter="url(#gr)"></circle><circle cx="83" cy="39" r="1.5" fill="#FFB000" class="npulse" style="animation-delay:0.5s"></circle><circle cx="71" cy="78" r="3.5" fill="#020202" stroke="#BF40FF" stroke-width="1.5" filter="url(#gm)"></circle><circle cx="71" cy="78" r="1.5" fill="#BF40FF" class="npulse" style="animation-delay:1s"></circle><circle cx="29" cy="78" r="3.5" fill="#020202" stroke="#FF0055" stroke-width="1.5" filter="url(#gx)"></circle><circle cx="29" cy="78" r="1.5" fill="#FF0055" class="npulse" style="animation-delay:1.5s"></circle><circle cx="17" cy="39" r="3.5" fill="#020202" stroke="#00F0FF" stroke-width="1.5" filter="url(#gt)"></circle><circle cx="17" cy="39" r="1.5" fill="#00F0FF" class="npulse" style="animation-delay:2s"></circle><circle cx="50" cy="50" r="16" fill="#020202" stroke="#333" stroke-width="1" filter="url(#gc)"></circle><g class="spin-rev"><path id="coreRing" d="M 50,50 m -13,0 a 13,13 0 1,1 26,0 a 13,13 0 1,1 -26,0" fill="none"></path><text font-size="2.2" fill="#9D4EDD" font-family="monospace" letter-spacing="0.8" font-weight="bold" opacity="0.85"><textPath href="#coreRing">0x44 0x4F 0x4D 0x44 0x48 0x49 0x2E 0x4F 0x53</textPath></text></g><text x="50" y="50" font-size="16" fill="#FFF" text-anchor="middle" dominant-baseline="central" font-weight="500" font-family="&#x27;Space Grotesk&#x27;, sans-serif">D</text></svg></div><div class="cursor-glow" aria-hidden="true"></div><div class="cursor-lens" aria-hidden="true"></div><div role="region" aria-label="Notifications (F8)" tabindex="-1" style="pointer-events:none"><ol tabindex="-1" class="fixed bottom-6 right-6 z-50 flex flex-col gap-2 w-[320px]"></ol></div>
5<script nonce="HL-sPOhA3HxbJ5MTibI6Tw">((storageKey2, restoreKey) => {
6		if (!window.history.state || !window.history.state.key) {
7			let key = Math.random().toString(32).slice(2);
8			window.history.replaceState({ key }, "");
9		}
10		try {
11			let storedY = JSON.parse(sessionStorage.getItem(storageKey2) || "{}")[restoreKey || window.history.state.key];
12			if (typeof storedY === "number") window.scrollTo(0, storedY);
13		} catch (error) {
14			console.error(error);
15			sessionStorage.removeItem(storageKey2);
16		}
17	})("react-router-scroll-positions", null)</script>
17<script nonce="HL-sPOhA3HxbJ5MTibI6Tw">window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"v8_passThroughRequests":true,"v8_trailingSlashAwareDataRequests":true,"unstable_previewServerPrerendering":false,"v8_middleware":false,"v8_splitRouteModules":true,"v8_viteEnvironmentApi":true},"routeDiscovery":{"mode":"lazy","manifestPath":"/__manifest"},"ssr":true,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamController = controller;}}).pipeThrough(new TextEncoderStream());</script>
17<script nonce="HL-sPOhA3HxbJ5MTibI6Tw" type="module" async="">;
18import * as route0 from "/assets/root-Bcndpy-H.js";
19import * as route1 from "/assets/route-4AcQuCWI.js";
20import * as route2 from "/assets/logs-DGCHK-R_.js";
21  window.__reactRouterManifest = {
22  "entry": {
23    "module": "/assets/entry.client-CAXdPubk.js",
24    "imports": [
25      "/assets/chunk-6CSD65Y2-D6zLy3dp.js",
26      "/assets/react-dom-xtO3DKtk.js",
27      "/assets/jsx-runtime-BGLTrfZy.js"
28    ],
29    "css": []
30  },
31  "routes": {
32    "root": {
33      "id": "root",
34      "path": "",
35      "hasAction": false,
36      "hasLoader": false,
37      "hasClientAction": false,
38      "hasClientLoader": false,
39      "hasClientMiddleware": false,
40      "hasDefaultExport": true,
41      "hasErrorBoundary": true,
42      "module": "/assets/root-Bcndpy-H.js",
43      "imports": [
44        "/assets/chunk-6CSD65Y2-D6zLy3dp.js",
45        "/assets/react-dom-xtO3DKtk.js",
46        "/assets/jsx-runtime-BGLTrfZy.js",
47        "/assets/button-DrB63Wrb.js",
48        "/assets/error-page-DXluEbBN.js",
49        "/assets/use-toast-B-AEaVB6.js",
50        "/assets/nonce-CWOxB_-x.js",
51        "/assets/route-error-oT57U1b3.js",
52        "/assets/utils-UvpNVb9C.js",
53        "/assets/dist-DwVSkiDL.js",
54        "/assets/dist-CxHP7aHd.js",
55        "/assets/dist-CWWr0mHq.js",
56        "/assets/dist-k5UaVEGE.js",
57        "/assets/x-4NTPRLP3.js",
58        "/assets/createLucideIcon-Dya2zrSk.js"
59      ],
60      "css": [
61        "/assets/root-WJoKqX3L.css"
62      ]
63    },
64    "routes/_public/route": {
65      "id": "routes/_public/route",
66      "parentId": "root",
67      "hasAction": false,
68      "hasLoader": true,
69      "hasClientAction": false,
70      "hasClientLoader": false,
71      "hasClientMiddleware": false,
72      "hasDefaultExport": true,
73      "hasErrorBoundary": true,
74      "module": "/assets/route-4AcQuCWI.js",
75      "imports": [
76        "/assets/chunk-6CSD65Y2-D6zLy3dp.js",
77        "/assets/PublicFooter-BtHZR4m5.js",
78        "/assets/route-error-oT57U1b3.js",
79        "/assets/jsx-runtime-BGLTrfZy.js",
80        "/assets/button-DrB63Wrb.js",
81        "/assets/utils-UvpNVb9C.js",
82        "/assets/dist-k5UaVEGE.js"
83      ],
84      "css": []
85    },
86    "routes/_public/logs": {
87      "id": "routes/_public/logs",
88      "parentId": "routes/_public/route",
89      "path": "logs",
90      "hasAction": false,
91      "hasLoader": true,
92      "hasClientAction": false,
93      "hasClientLoader": false,
94      "hasClientMiddleware": false,
95      "hasDefaultExport": true,
96      "hasErrorBoundary": true,
97      "module": "/assets/logs-DGCHK-R_.js",
98      "imports": [
99        "/assets/chunk-6CSD65Y2-D6zLy3dp.js",
100        "/assets/button-DrB63Wrb.js",
101        "/assets/calculators-aelNI-sd.js",
102        "/assets/route-error-oT57U1b3.js",
103        "/assets/time-utils-DcRCMNV5.js",
104        "/assets/jsx-runtime-BGLTrfZy.js",
105        "/assets/utils-UvpNVb9C.js",
106        "/assets/dist-k5UaVEGE.js"
107      ],
108      "css": []
109    },
110    "routes/_index": {
111      "id": "routes/_index",
112      "parentId": "root",
113      "index": true,
114      "hasAction": false,
115      "hasLoader": true,
116      "hasClientAction": false,
117      "hasClientLoader": false,
118      "hasClientMiddleware": false,
119      "hasDefaultExport": true,
120      "hasErrorBoundary": true,
121      "module": "/assets/_index-zW7cdRR3.js",
122      "imports": [
123        "/assets/chunk-6CSD65Y2-D6zLy3dp.js",
124        "/assets/PublicFooter-BtHZR4m5.js",
125        "/assets/OriginBlock-CbSpfUFF.js",
126        "/assets/PostRow-CyG6palb.js",
127        "/assets/button-DrB63Wrb.js",
128        "/assets/card-M0NVvXSP.js",
129        "/assets/route-error-oT57U1b3.js",
130        "/assets/time-utils-DcRCMNV5.js",
131        "/assets/utils-UvpNVb9C.js",
132        "/assets/jsx-runtime-BGLTrfZy.js",
133        "/assets/dist-k5UaVEGE.js"
134      ],
135      "css": []
136    }
137  },
138  "url": "/assets/manifest-a02d2527.js",
139  "version": "a02d2527"
140};
141  window.__reactRouterRouteModules = {"root":route0,"routes/_public/route":route1,"routes/_public/logs":route2};
142
143import("/assets/entry.client-CAXdPubk.js");</script>
143<!--$-->
143<script nonce="HL-sPOhA3HxbJ5MTibI6Tw">window.__reactRouterContext.streamController.enqueue("[{\"_1\":2,\"_3\":-5,\"_4\":-5},\"loaderData\",{\"_5\":6,\"_7\":8},\"actionData\",\"errors\",\"routes/_public/route\",{\"_299\":300,\"_301\":-5},\"routes/_public/logs\",{\"_9\":10,\"_11\":12,\"_13\":14,\"_15\":16,\"_17\":-5},\"entries\",[109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143],\"firehose\",[27,28,29,30,31,32,33,34,35,36],\"telemetry\",{\"_18\":19,\"_20\":21,\"_22\":23,\"_24\":23,\"_25\":26},\"nowISO\",\"2026-10-02T01:27:27.923Z\",\"error\",\"status\",\"\u003e LIVE_BUILD_ACTIVE\",\"lastPush\",\"1h ago\",\"commitsToday\",0,\"activeRepos\",\"streak\",\"7 D\",{\"_37\":38,\"_39\":104,\"_41\":65,\"_43\":-5,\"_44\":105,\"_46\":106,\"_48\":68,\"_50\":107,\"_52\":108,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":99,\"_41\":65,\"_43\":-5,\"_44\":100,\"_46\":101,\"_48\":68,\"_50\":102,\"_52\":103,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":94,\"_41\":65,\"_43\":-5,\"_44\":95,\"_46\":96,\"_48\":68,\"_50\":97,\"_52\":98,\"_54\":83,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":89,\"_41\":65,\"_43\":-5,\"_44\":90,\"_46\":91,\"_48\":68,\"_50\":92,\"_52\":93,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":84,\"_41\":65,\"_43\":-5,\"_44\":85,\"_46\":86,\"_48\":68,\"_50\":87,\"_52\":88,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":78,\"_41\":65,\"_43\":-5,\"_44\":79,\"_46\":80,\"_48\":68,\"_50\":81,\"_52\":82,\"_54\":83,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":73,\"_41\":65,\"_43\":-5,\"_44\":74,\"_46\":75,\"_48\":68,\"_50\":76,\"_52\":77,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":64,\"_41\":65,\"_43\":-5,\"_44\":66,\"_46\":67,\"_48\":68,\"_50\":69,\"_52\":70,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":59,\"_41\":42,\"_43\":-5,\"_44\":60,\"_46\":61,\"_48\":49,\"_50\":62,\"_52\":63,\"_54\":23,\"_55\":56,\"_57\":58},{\"_37\":38,\"_39\":40,\"_41\":42,\"_43\":-5,\"_44\":45,\"_46\":47,\"_48\":49,\"_50\":51,\"_52\":53,\"_54\":23,\"_55\":56,\"_57\":58},\"kind\",\"build\",\"id\",\"build:roth-vs-trad\",\"domain\",\"freedom\",\"date\",\"slug\",\"roth-vs-trad\",\"name\",\"Roth vs Traditional\",\"group\",\"FREEDOM\",\"description\",\"Roth or Traditional — which wins for your bracket path.\",\"routePath\",\"/calculators/freedom/roth-vs-trad\",\"runCount\",\"accent\",\"amber\",\"hex\",\"#FFB000\",\"build:coast-fi\",\"coast-fi\",\"Coast FI\",\"How long until you can stop saving and just let it ride.\",\"/calculators/freedom/coast-fi\",\"build:health-insurance\",\"finance\",\"health-insurance\",\"Health Insurance\",\"FINANCE\",\"Which plan actually costs less once you do the math.\",\"/calculators/finance/health-insurance\",\"emerald\",\"#00FF9F\",\"build:dollar-flow\",\"dollar-flow\",\"Dollar Flow\",\"The order to fund every dollar — the prime directive flowchart.\",\"/calculators/finance/dollar-flow\",\"build:tax-bracket\",\"tax-bracket\",\"Tax Bracket\",\"Your real marginal vs effective rate — not the bracket myth.\",\"/calculators/finance/tax-bracket\",1,\"build:true-cost\",\"true-cost\",\"True Cost\",\"What you'll really pay for that loan once interest compounds.\",\"/calculators/finance/true-cost\",\"build:401k-optimizer\",\"401k-optimizer\",\"401k Optimizer\",\"Are you leaving free employer match on the table?\",\"/calculators/finance/401k-optimizer\",\"build:debt-destroyer\",\"debt-destroyer\",\"Debt Destroyer\",\"Every payoff strategy, ranked by what it really costs you.\",\"/calculators/finance/debt-destroyer\",\"build:automation-roi\",\"automation-roi\",\"Automation ROI\",\"What that repetitive task is quietly costing you every year.\",\"/calculators/finance/automation-roi\",\"build:hourly-rate\",\"hourly-rate\",\"Hourly Rate\",\"What your job actually pays once you count the hours nobody counts.\",\"/calculators/finance/hourly-rate\",{\"_37\":144,\"_39\":294,\"_41\":146,\"_43\":295,\"_44\":296,\"_149\":297,\"_151\":298,\"_153\":146,\"_154\":160},{\"_37\":144,\"_39\":289,\"_41\":65,\"_43\":290,\"_44\":291,\"_149\":292,\"_151\":293,\"_153\":65,\"_154\":184},{\"_37\":144,\"_39\":284,\"_41\":42,\"_43\":285,\"_44\":286,\"_149\":287,\"_151\":288,\"_153\":42,\"_154\":184},{\"_37\":144,\"_39\":279,\"_41\":146,\"_43\":280,\"_44\":281,\"_149\":282,\"_151\":283,\"_153\":146,\"_154\":190},{\"_37\":144,\"_39\":274,\"_41\":65,\"_43\":275,\"_44\":276,\"_149\":277,\"_151\":278,\"_153\":65,\"_154\":190},{\"_37\":144,\"_39\":269,\"_41\":259,\"_43\":270,\"_44\":271,\"_149\":272,\"_151\":273,\"_153\":259,\"_154\":190},{\"_37\":144,\"_39\":264,\"_41\":42,\"_43\":265,\"_44\":266,\"_149\":267,\"_151\":268,\"_153\":42,\"_154\":190},{\"_37\":144,\"_39\":258,\"_41\":259,\"_43\":260,\"_44\":261,\"_149\":262,\"_151\":263,\"_153\":259,\"_154\":190},{\"_37\":144,\"_39\":253,\"_41\":65,\"_43\":254,\"_44\":255,\"_149\":256,\"_151\":257,\"_153\":65,\"_154\":190},{\"_37\":144,\"_39\":248,\"_41\":146,\"_43\":249,\"_44\":250,\"_149\":251,\"_151\":252,\"_153\":146,\"_154\":160},{\"_37\":161,\"_39\":239,\"_41\":146,\"_43\":240,\"_165\":241,\"_167\":242,\"_169\":243,\"_171\":244,\"_173\":245,\"_175\":246,\"_177\":247},{\"_37\":144,\"_39\":234,\"_41\":146,\"_43\":235,\"_44\":236,\"_149\":237,\"_151\":238,\"_153\":146,\"_154\":160},{\"_37\":144,\"_39\":229,\"_41\":146,\"_43\":230,\"_44\":231,\"_149\":232,\"_151\":233,\"_153\":146,\"_154\":190},{\"_37\":144,\"_39\":224,\"_41\":146,\"_43\":225,\"_44\":226,\"_149\":227,\"_151\":228,\"_153\":146,\"_154\":190},{\"_37\":144,\"_39\":219,\"_41\":146,\"_43\":220,\"_44\":221,\"_149\":222,\"_151\":223,\"_153\":146,\"_154\":190},{\"_37\":144,\"_39\":214,\"_41\":146,\"_43\":215,\"_44\":216,\"_149\":217,\"_151\":218,\"_153\":146,\"_154\":160},{\"_37\":144,\"_39\":209,\"_41\":42,\"_43\":210,\"_44\":211,\"_149\":212,\"_151\":213,\"_153\":42,\"_154\":160},{\"_37\":144,\"_39\":203,\"_41\":42,\"_43\":204,\"_44\":205,\"_149\":206,\"_151\":207,\"_153\":42,\"_154\":208},{\"_37\":144,\"_39\":198,\"_41\":42,\"_43\":199,\"_44\":200,\"_149\":201,\"_151\":202,\"_153\":42,\"_154\":184},{\"_37\":161,\"_39\":191,\"_41\":65,\"_43\":192,\"_165\":68,\"_167\":193,\"_169\":194,\"_171\":195,\"_173\":196,\"_175\":197,\"_177\":72},{\"_37\":144,\"_39\":185,\"_41\":65,\"_43\":186,\"_44\":187,\"_149\":188,\"_151\":189,\"_153\":65,\"_154\":190},{\"_37\":144,\"_39\":179,\"_41\":42,\"_43\":180,\"_44\":181,\"_149\":182,\"_151\":183,\"_153\":42,\"_154\":184},{\"_37\":161,\"_39\":162,\"_41\":163,\"_43\":164,\"_165\":166,\"_16
1437\":168,\"_169\":170,\"_171\":172,\"_173\":174,\"_175\":176,\"_177\":178},{\"_37\":144,\"_39\":155,\"_41\":146,\"_43\":156,\"_44\":157,\"_149\":158,\"_151\":159,\"_153\":146,\"_154\":160},{\"_37\":144,\"_39\":145,\"_41\":146,\"_43\":147,\"_44\":148,\"_149\":150,\"_151\":152,\"_153\":146,\"_154\":83},{\"_37\":38,\"_39\":104,\"_41\":65,\"_43\":-5,\"_44\":105,\"_46\":106,\"_48\":68,\"_50\":107,\"_52\":108,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":99,\"_41\":65,\"_43\":-5,\"_44\":100,\"_46\":101,\"_48\":68,\"_50\":102,\"_52\":103,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":94,\"_41\":65,\"_43\":-5,\"_44\":95,\"_46\":96,\"_48\":68,\"_50\":97,\"_52\":98,\"_54\":83,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":89,\"_41\":65,\"_43\":-5,\"_44\":90,\"_46\":91,\"_48\":68,\"_50\":92,\"_52\":93,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":84,\"_41\":65,\"_43\":-5,\"_44\":85,\"_46\":86,\"_48\":68,\"_50\":87,\"_52\":88,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":78,\"_41\":65,\"_43\":-5,\"_44\":79,\"_46\":80,\"_48\":68,\"_50\":81,\"_52\":82,\"_54\":83,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":73,\"_41\":65,\"_43\":-5,\"_44\":74,\"_46\":75,\"_48\":68,\"_50\":76,\"_52\":77,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":64,\"_41\":65,\"_43\":-5,\"_44\":66,\"_46\":67,\"_48\":68,\"_50\":69,\"_52\":70,\"_54\":23,\"_55\":71,\"_57\":72},{\"_37\":38,\"_39\":59,\"_41\":42,\"_43\":-5,\"_44\":60,\"_46\":61,\"_48\":49,\"_50\":62,\"_52\":63,\"_54\":23,\"_55\":56,\"_57\":58},{\"_37\":38,\"_39\":40,\"_41\":42,\"_43\":-5,\"_44\":45,\"_46\":47,\"_48\":49,\"_50\":51,\"_52\":53,\"_54\":23,\"_55\":56,\"_57\":58},\"article\",\"article:velocity-is-the-asset\",\"tech\",\"2026-01-13T23:19:03.925+00:00\",\"velocity-is-the-asset\",\"title\",\"Velocity Is The Asset: How I Shipped 7 Features in 6 Hours\",\"excerpt\",\"They tell you software development takes time. They tell you to plan sprints, hold grooming meetings, and estimate story points.\\n\\nThey are lying to keep you slow.*\",\"pillar\",\"readMinutes\",\"article:claude-code-tts\",\"2026-03-01T02:35:52.477+00:00\",\"claude-code-tts\",\"I Made Claude Code Talk\",\"I was 90 minutes into a session. Claude finished a task, dropped 400 words explaining what it did and why, and I had to stop. Stop touching the keyboard. Stop thinking. And read!\\n\\nThat's when I went — wait, why am I doing this...\",4,\"milestone\",\"milestone:9967be49-11f7-4916-9089-e5a7e4e2c568\",\"platform\",\"2026-06-11\",\"label\",\"PLATFORM\",\"statement\",\"domdhi.cockpit V1 — every test green.\",\"metric\",\"2,338\",\"metricLabel\",\"TESTS PASSING\",\"context\",\"Eighteen months of nights and weekends. The desktop GUI that runs every Claude Code project, agent, and memory store, finally at version one.\",\"verdict\",\"Zero investors. One engineer. V1 ships when it's right, not when it's funded.\",\"accentColor\",\"#9D4EDD\",\"article:freedom-is-a-math-problem\",\"2026-06-16T08:00:00+00:00\",\"freedom-is-a-math-problem\",\"Freedom Is a Math Problem\",\"I performed 9 distinct roles while being compensated for one. 762.5 hours of documented unpaid overtime. $92k and a handshake. That's when the math stopped being abstract. $100,000 per year in replacement income -- that's the trigger. Not a feeling. Not a sign from the universe. A number. Two roads: 5 clients at $20k each, or 556 strangers at $15/month.\",6,\"article:six-stages-financial-freedom\",\"2026-06-19T08:00:00+00:00\",\"six-stages-financial-freedom\",\"The 6 Stages of Financial Freedom\",\"Every finance tool treats you like the same person. YNAB doesn't care if you're $40,000 underwater or sitting on $300k in index funds. I mapped the entire financial freedom journey into 6 stages -- Drowning, Treading, Swimming, Optimizing, Coasting, Free -- then built a system that detects which one you're in and hides everything that doesn't matter.\",5,\"milestone:e49ebb0c-1631-4fb3-aaa3-b9808dc8a153\",\"2026-06-23\",\"Savings rate held above 47% for 12 straight months.\",\"47.2%\",\"TRAILING 12-MONTH AVERAGE\",\"Twelve months. No lifestyle creep, no heroics — just the number holding steady while everything else moved around it.\",\"That is 1,847 days of runway and counting. The grind funds the exit, not the lifestyle.\",\"article:calculator-that-calls-you-out\",\"2026-06-23T08:00:00+00:00\",\"calculator-that-calls-you-out\",\"A Calculator That Calls You Out\",\"Every financial calculator on the internet has the same energy. Enter your numbers. Get a chart. Feel mildly informed. Close the tab. Change nothing. I built a calculator that tells someone 'You are a slave to the bank' based on their actual numbers. Six inputs. A gated scoring hierarchy. Five ranks from CAPTURED to SOVEREIGN. Polite doesn't work.\",\"article:go-to-college\",\"2026-06-26T08:00:00+00:00\",\"go-to-college\",\"GO TO COLLEGE\",\"I wrote those three words on a piece of paper at 24 years old, drunk, probably high, definitely not okay. Taped it to the wall so I'd see it if I woke up the next morning. Lost a full scholarship at 18 because my parents missed a FAFSA deadline. Five years of nothing. Then a Tom Hanks movie at 2am changed the trajectory. Three degrees for the price of one by reading the course catalog like a skill tree.\",3,\"article:product-tells-you-not-to-use-it\",\"2026-06-30T08:00:00+00:00\",\"product-tells-you-not-to-use-it\",\"The Product That Tells You Not to Use It\",\"YNAB costs $109/year. Monarch costs $99. They all need you checking in daily to justify that subscription. Here's what actually happens when you check your debt balance every morning: nothing. I built a finance app that tells you to close it. 'Your plan is set. Next milestone: credit card dead in 47 days. Go live your life. See you March 7th.' My i
143deal user opens the app 12 times a year.\",\"article:vacation-velocity-experiment\",\"2026-07-03T08:00:00+00:00\",\"vacation-velocity-experiment\",\"The Vacation Velocity Experiment\",\"$87,150 in created value. 92 commits. 19 days. That was my vacation. Week 1 produced 10 garbage commits -- the decompression tax. Week 2 hit $4,800/day. Week 3 compounded to $11,625/day. One developer. Zero meetings. AI tools that have gotten genuinely scary good. The question was simple: what happens when you remove the job from the developer?\",\"article:when-ai-tests-your-ui\",\"2026-07-07T08:00:00+00:00\",\"when-ai-tests-your-ui\",\"When AI Tests Your UI\",\"530 passing tests. Every one green. The TemplateManagerSheet was completely invisible to users. A browser agent caught it in 4 seconds because it couldn't find the gear icon. Three rounds of AI-driven browser testing surfaced an unpushed migration, an unmounted component, and stale data from partial failures -- all invisible to npm run test.\",\"article:file-size-architecture-decision\",\"2026-07-10T08:00:00+00:00\",\"file-size-architecture-decision\",\"File Size Is an Architecture Decision\",\"800 lines. That's the hard limit on every route file in my codebase. This rule didn't come from a software architecture textbook. It came from watching Claude lose its mind at line 900. AI tools have a context window of roughly 800-1,200 lines before they start hallucinating. portfolio.tsx was 1,896 lines. 12 commits later it was 782 lines across 12 files.\",\"article:one-column-to-nine-tables\",\"2026-07-14T08:00:00+00:00\",\"one-column-to-nine-tables\",\"From One Column to Nine Tables\",\"Every account. Every bill. Every income source. Every crypto holding. One JSONB column. It worked. That's the dangerous part. You can't query across users. You can't enforce referential integrity. You can't do RLS properly. February 3rd: 9 tables, 57 functions, one day. The migration had to work on the first run against production data.\",\"article:replaced-payment-provider-one-day\",\"2026-07-17T08:00:00+00:00\",\"replaced-payment-provider-one-day\",\"I Replaced My Payment Provider in One Day\",\"I woke up and decided LemonSqueezy was dead. Not because it was bad software -- it worked fine. But the checkout page looked like someone else's SaaS template bolted onto my neobrutalist design system. 21 commits. 48 files. By midnight, grep returned zero references. Stripe Elements, WebCrypto signature verification on Cloudflare Workers, and a breaking API change at 9pm.\",\"milestone:489fcf2f-71c9-40e5-a93c-372e7590ddcc\",\"2026-07-18\",\"TECH\",\"New course published: GIT 101: Version Control for People Who Ship\",\"9\",\"LESSONS SHIPPED\",\"GIT 101: Version Control for People Who Ship is live at /education/git-101.\",\"Another course shipped.\",\"#00F0FF\",\"article:component-nobody-could-see\",\"2026-07-21T08:00:00+00:00\",\"component-nobody-could-see\",\"The 530-Line Component Nobody Could See\",\"530 lines of React. Category management, bill template CRUD, drag-to-reorder, preset loading, entitlement gating. Fully functional. Fully tested. Nobody could see it. For weeks. I built the component during a 12-commit sprint, moved on to the next feature, and never came back to mount it. A browser agent found it when it couldn't find the gear icon.\",\"article:days-to-fi\",\"2026-07-24T08:00:00+00:00\",\"days-to-fi\",\"Days to FI: The Only Metric That Matters\",\"Net worth is a corpse photo. Savings rate is better but still lies by omission. The one number that actually tells you how caged you are is days to financial independence... a live countdown that moves every time you buy a coffee or ship an invoice. I did the math. It's the only metric that made me change behavior.\",\"article:cut-the-cord-subscription-audit\",\"media\",\"2026-07-28T08:00:00+00:00\",\"cut-the-cord-subscription-audit\",\"Cut the Cord: The $1,200 Subscription Audit\",\"Nobody runs this audit. I did. Netflix, Max, Disney+, Hulu, Spotify, YouTube Premium, cable, the works -- $103.42/month, $1,241.04/year, for content I don't own and can't keep. Here's the math on what that number actually costs you over a decade, and the tactical cut that kills it.\",\"article:forcing-functions\",\"2026-07-31T08:00:00+00:00\",\"forcing-functions\",\"Forcing Functions: Architecting Life Outcomes\",\"Willpower is a stat that depletes. A forcing function is a mechanic that doesn't care how you feel. 27% of every paycheck moves before I see it. 16% match on top of that. September 2030 is a public deadline, not a vibe. 11 tasks on a scoreboard I can't lie to. This is the anch
143or -- every mechanic I actually run gets its own breakdown from here.\",\"article:own-your-library-self-hosting\",\"2026-08-04T08:00:00+00:00\",\"own-your-library-self-hosting\",\"Own Your Library: Self-Hosting Your Media Stack\",\"You don't own a single show you stream. The catalog changes, the license expires, the price climbs, and one day it's just gone. I built my own media server instead -- Jellyfin for video, Navidrome for music, a cheap mini PC doing the work -- and now nothing I own can be deleted out from under me. Here's the stack and the math.\",\"article:glass-cockpit\",\"2026-08-07T08:00:00+00:00\",\"glass-cockpit\",\"The Glass Cockpit: Real-Time Financial Awareness\",\"Pilots don't fly on vibes. They fly on instruments... airspeed, altitude, fuel, all live, all at once. Most people fly their finances the opposite way -- check the bank app once a month and hope the mountain isn't close. I built the instrument panel instead. Net worth, burn, runway, days to FI, all live, all the time.\",\"article:stack-that-prints-money\",\"2026-08-11T08:00:00+00:00\",\"stack-that-prints-money\",\"The Stack That Prints Money\",\"13 modules. 270 test files. 6,696 tests passing. One operator. 204 MCP tools, 122 REST endpoints, roughly 218 method+path operations across them -- nobody hands you that, you build a stack that lets you print it. Edge runtime, typed boundaries, an 800-line ceiling, and an AI that stays sharp because the files stay small.\",\"article:value-i-cannot-capture\",\"2026-09-22T08:00:00+00:00\",\"value-i-cannot-capture\",\"I Will Never Create Value I Cannot Capture\",\"The mantra isn't a flex, it's a filter. Employment isn't theft -- it's a spread, and the spread is the entire business model. You produce, they capture, you get a number that was decided before you got good. Here's how to tell the difference between building an asset and renting out your best hours.\",\"article:autopilot-setup\",\"2026-09-25T08:00:00+00:00\",\"autopilot-setup\",\"The Autopilot Setup\",\"Forcing Functions was the why. This is the what. The exact account ordering -- 401k match, HSA, Roth, back to the 401k -- and why getting the order wrong quietly costs six figures over a career. Set once, runs forever, never asks how you feel about it.\",\"article:ai-augmented-multiplier\",\"2026-09-29T08:00:00+00:00\",\"ai-augmented-multiplier\",\"AI-Augmented Development: The 8-10x Multiplier\",\"1,529 commits. 310,360 lines. 6,701 tests. 126 API endpoints. One person, 224 days, no team. Here's the actual commit log, the months where it broke down, and an honest accounting of where the multiplier is real and where it's marketing.\",\"isAuthenticated\",false,\"profile\"]\n");</script>
143<!--$-->
143<script nonce="HL-sPOhA3HxbJ5MTibI6Tw">window.__reactRouterContext.streamController.close();</script>
143<!--/$--><!--/$-->
143<script nonce="HL-sPOhA3HxbJ5MTibI6Tw">(function(){function c(){var b=a.contentDocument||(a.contentWindow&&a.contentWindow.document);if(b){var d=b.createElement('script');d.nonce='HL-sPOhA3HxbJ5MTibI6Tw';d.innerHTML="window.__CF$cv$params={r:'a43fecbf7d6f1054',t:'MTc5MDkwNDQ0Nw=='};var a=document.createElement('script');a.nonce='HL-sPOhA3HxbJ5MTibI6Tw';a.src='/cdn-cgi/challenge-platform/scripts/jsd/main.js';document.getElementsByTagName('head')[0].appendChild(a);";b.getElementsByTagName('head')[0].appendChild(d)}}if(document.body){var a=document.createElement('iframe');a.height=1;a.width=1;a.style.position='absolute';a.style.top=0;a.style.left=0;a.style.border='none';a.style.visibility='hidden';document.body.appendChild(a);if('loading'!==document.readyState)c();else if(window.addEventListener)document.addEventListener('DOMContentLoaded',c);else{var e=document.onreadystatechange||function(){};document.onreadystatechange=function(b){e(b);'loading'!==document.readyState&&(document.onreadystatechange=e,c())}}}})();</script>
143<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" nonce="HL-sPOhA3HxbJ5MTibI6Tw" data-cf-beacon='{"version":"2024.11.0","token":"fa9dd2df8ac84dfebea7843527bbd463","r":1,"spa":2}' crossorigin="anonymous"></script>
143
144</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.