WRITING ARCHIVE
2024
260 published posts.
- The Philosophical Problem Hidden Inside Causalityperspectives
- What Mutation Really Isperspectives
- If — Conditional Language and the Fragility of Certaintymusic
- Chic 'n' Stu — Consumer Desire Turned Into a Cartoonmusic
- Rate Limiting Is Not Authenticationwriting
- Manifest Bugs vs Runtime Bugs: Voiceware Had Both Kinds of Riskperspectives
- The Call Worked Until BYE: Debugging Dialog Routing in OpenSIPS and Drachtiowriting
- Serial Logging Is Work for the Processor Toowriting
- No Healthy Worker Is a User-Facing Signalwriting
- How We Learned to See Homeostasisperspectives
- Rollback Is a Feature of the Delivery Systemwriting
- Redis Replication Can Lose Acknowledged Writes During Failoverwriting
- The Gnome — Why Small Fantasies Can Feel Completely Seriousmusic
- My First OSPF Lab: Watching Routes Appear Instead of Typing Themwriting
- Firmware Has a Version; Configuration Needs One Toowriting
- Terraform for_each Keys Are Resource Identity, Not Loop Variableswriting
- QR Pairing Should Bind a Physical Device to a Backend Identitywriting
- Canary Checks Should Protect Unrelated Critical Services Toowriting
- Stop — The Moment a System of Thought Finally Interrupts Itselfmusic
- Celery Beat Is Not “Just Another Worker”perspectives
- PBX Registration Health Is Not Call Healthwriting
- The Measurement Stack That Made Subjective Audio Debuggablewriting
- How We Learned to See The Immune Systemperspectives
- PCF and Policy Control Made 5G Sessions Feel Less Staticwriting
- The PBX Scheduler Bug That Looked Like an ESP32 Audio Bugwriting
- Nüguns — Weapons, Language, and the Sanitizing Effect of New Namesmusic
- A Restore Alert Should Distinguish Failed from Stalewriting
- Migration Tests Catch a Different Class of Failure Than Unit Testswriting
- VLANs Made Sense When I Stopped Thinking of Them as Extra Networkswriting
- Record-Route Explained Why My BYE Took a Different Pathwriting
- SHA-256 Proves Integrity, Not Who Authorized the Firmwarewriting
- Container I/O Pressure Shows Waiting, Not Just Byteswriting
- A PHY Scan Should Produce Evidence, Not Just Console Noisewriting
- A Docker Storage Cache Needs Its Own Freshness Metricwriting
- Read-Only Posture Checks Are Useful Because They Are Safe to Run Oftenwriting
- Test One Layer at a Time or Debug Five Layers at Onceperspectives
- The Power of the Two-Minute Songmusic
- Jitter Buffer: Paying With Delay for Continuous Audiowriting
- The 80 to 240 Millisecond Bursts Needed Packet and Audio Timelines Togetherwriting
- Free Four — Mortality Delivered With an Almost Casual Surfacemusic
- Deployment Records Without Commit SHAs Are Operational Debtwriting
- The Cosmos and Life Beyond Earth Through a Systems Architect's Eyesperspectives
- The Grand Vizier's Garden Party — Percussion as Ceremony, Theater, and Exitmusic
- Which Identity Should Follow a Call Through the System?writing
- What Happens if Power Fails While Writing Flash?writing
- What Consciousness Really Isperspectives
- The Reticulum Container Needed to Observe Its Own Interfacewriting
- Scrape Interval Should Match Signal Speed and Collection Costwriting
- Ask the Operational Question Before Building the Dashboardwriting
- Zero Firing Alerts Does Not Mean Monitoring Is Healthywriting
- Config Drift Is a Monitoring Signalwriting
- Caddy Automatic HTTPS Cannot Fix a Port 80/443 Ownership Problemwriting
- TCP Retransmit Ratio Is Better Than Counting Retransmits Alonewriting
- Seven Days of Logs Was an Engineering Choice, Not a Defaultwriting
- PostgreSQL Connection Utilization Needs a Denominatorwriting
- Pending Alerts Are Useful During Change Windowswriting
- A Saucerful of Secrets — Structure Built From Atmosphere Instead of Explanationmusic
- Caddy Logs Exist, but They Still Do Not Answer Which User Request Failedwriting
- When a Disk Looks Slow, Inspect the Whole Read Pathwriting
- The Repository Layout That Made Voiceware Easier to Reason Aboutperspectives
- The Small Dip Produced by a Planetary Transitperspectives
- App-Only Flashing at 0x20000 Made Audio Iteration Fasterwriting
- A Home Server Became Production the Day I Needed a Recovery Timewriting
- Normalize Load Average by CPU Countwriting
- AUX Activity Proved Transmission Work, Not Remote Receptionwriting
- How I Recognize an Image-Pull Problem Before Blaming the Appperspectives
- Suggestions — Authority, Fear, and the Suggestion That Becomes a Commandmusic
- A Single Redis Replica Is a Design Choice, Not a Default Truthperspectives
- The Philosophical Problem Hidden Inside Proteinsperspectives
- Port 80 Appears Twice, but the Responsibilities Are Differentperspectives
- Battery and Signal Indicators Need Honest Granularitywriting
- Emergence Through a Systems Architect's Eyesperspectives
- Ping Works but the Browser Does Not: Separating IP, DNS and Applicationswriting
- Speaker Writes Over 20 ms Became My Local Deadline Signalwriting
- Eliminating the Downlink Stall Was More Important Than Tuning Tonewriting
- The celery-low Fix Was a Configuration-Contract Failureperspectives
- Secrets Are the Part of a GitOps Repo I Do Not Want to “Just Add”perspectives
- UNKNOWN Is Better Than a False FAIL When Metadata Is Restrictedwriting
- The Execute Bit on a Directory Is Really a Path Permissionwriting
- Redis Functions Are Atomic — Which Is Exactly Why Slow Ones Hurtwriting
- Reading My First SIP REGISTER and INVITE in Wiresharkwriting
- Where the formal language Analogy Breaksperspectives
- STABLE Should Mean a Device Actually Ran the Releasewriting
- Wi-Fi CSI Experiments Got Better When I Split Collection from DSPwriting
- No Reply Was an Inconclusive Result, Not Proof of RF Failurewriting
- No Data Is Not Zerowriting
- Sonar and the Time of a Returning Echoperspectives
- Memory Usage Is Not the Same as Memory Pressurewriting
- Full RAM and Memory Pressure Are Not the Same Thingwriting
- What Multicellularity Really Isperspectives
- What Language Really Isperspectives
- SSH Failure Alerts Need Warning and Critical Burstswriting
- Caddy Says My Upstream Is Unhealthy, but the App Is Finewriting
- OOM Events Need Container and Host Contextwriting
- When SSH Fails, Separate the Failure Layerswriting
- Raw Multichannel Capture Is the Ground Truth for AEC Debuggingwriting
- The Web UI Loads Through Caddy but Live Updates Never Connectwriting
- Latency Can Break AEC Even When the Signals Are Correctwriting
- The Intermittent 502 That Appears Only After a Connection Has Been Idlewriting
- A 100 Percent End-of-Line Test Needs Traceability, Not Just a Green LEDwriting
- Image Names Are Part of the Deployment APIperspectives
- Do Not Leave Decrypted DR Payloads Behind After Verificationwriting
- A Delivery ZIP Is Not Reproducible Until I Rebuild It After Extractionwriting
- Why Every Request Looks Like It Came from Cloudflare Instead of the Userwriting
- A Year of Small Network Labs: What Broke Most Oftenwriting
- Append-Only OTA Events Are the Fleet’s Incident Timelinewriting
- Goodbye Cruel World — Withdrawal as a Decision Rather Than a Moodmusic
- Drachtio Connectivity Is a Control-Plane Health Signalwriting
- Tailscale with Docker: Host-Level Tailnet or Per-Container Sidecar?writing
- What Production-Grade Means on Decade-Old Hardwarewriting
- Long-Call Drift Is Different from Short-Call Sound Qualitywriting
- A Clean Checkout Is the Real Test of Infrastructure Reproducibilitywriting
- Release Lifecycle Is an Operator State Machinewriting
- A Local Remote-Tracking Ref Can Be Stale While Git Says You Match Upstreamwriting
- Three Powered Radios Are Not Yet a Networkwriting
- The Philosophical Problem Hidden Inside Mutationperspectives
- Computation Through a Systems Architect's Eyesperspectives
- Time — The Cost of Not Noticing Life While It Passesmusic
- First Boot Is a Pending Transaction, Not Successwriting
- Backpressure Matters in Voice Systems Even When Work Is Asynchronousperspectives
- Airtime Is a Budget Toowriting
- The audio-fork Service Deserved Its Own Deployment Boundaryperspectives
- Where the planetary control system Analogy Breaksperspectives
- How I Read Tailscale Status: Direct Paths, Relays and What They Actually Tell Mewriting
- Metrics, Logs, Probes and State Checks Answer Different Questionswriting
- A Wrong Container Name Can Fail a Change Window Even When VoIP Is Healthywriting
- The VoIP Dashboard Must Follow a Call Across Layerswriting
- Why I Preserve ELF, MAP, Binaries and Failed Build Logswriting
- An INVITE Is Only the Start of the Call Contractwriting
- Understanding Small Linux Parts Makes Larger Systems Legibleperspectives
- Where the dependency ecosystem Analogy Breaksperspectives
- Take Up Thy Stethoscope and Walk — The Body as a Source of Urgencymusic
- One of These Days — Threat Built Almost Entirely From Momentummusic
- Queue Isolation Is a Capacity-Control Toolperspectives
- My Tailscale Failure Drill for a Home Server: Name, Peer, Policy, Port, Servicewriting
- Voice-Agent Speed Is More Than Model Speedwriting
- What prune: true Means in a Real Repositoryperspectives
- Causality Through a Systems Architect's Eyesperspectives
- Traffic Lights and the Shared Rules Behind a Signalperspectives
- Define the Questions Before Calling EVT a Successwriting
- Toxicity — The City as Both Home and Disordermusic
- Outside the Wall — What Remains After the Structure Finally Opensmusic
- Atom Heart Mother — Scale Without a Conventional Centermusic
- UDP Was a Deliberate Starting Point for the PBX MVPwriting
- New Questions for the Same Song in a Listening Archivemusic
- Sync Word Mismatch Can Look Like a Dead Receiverwriting
- Backup Age Is a Freshness Signal, Not a Recovery Guaranteewriting
- Why Chart.Name Was a Useful Naming Primitiveperspectives
- Docker Networks Hid Less Once I Drew the Packet Pathwriting
- Container Restart Counts Are Incident Breadcrumbswriting
- Embryonic Development Through a Systems Architect's Eyesperspectives
- Restart Counts Without Context Create Noisewriting
- SIP Transactions and Dialogs Finally Made Call Flow Less Confusingwriting
- Why Filebeat Was Treated as a First-Class Voiceware Componentperspectives
- The Philosophical Problem Hidden Inside Emergenceperspectives
- OpenTelemetry Cardinality Is a Data-Model Problem, Not Just a Cost Problemperspectives
- The cAdvisor Disk Scanner Was More Expensive Than the Data Was Worthwriting
- Seamus — What Happens When a Band Lets the Room Into the Recordmusic
- Local Knowledge Should Become Team Knowledgewriting
- What Climate Really Isperspectives
- Stay — The Awkward Distance Between Intimacy and Departuremusic
- Desired Release and Running Release Are Different Truthswriting
- CSP connect-src Should Be a Small Network Allowlistwriting
- Mode 2 Initiator and Mode 0 Target Was a Topology Contractwriting
- FLASH_PORT and Test Pads Are Insurance for the Unit That Does Not Bootwriting
- systemd Logs Became Part of My VoIP Troubleshootingwriting
- What Prometheus `for:` Really Buys You—and What It Cannotwriting
- Lonely Day — Why Simplicity Can Feel More Exposed Than Complexitymusic
- One ArgoCD Application per Voiceware Serviceperspectives
- SIP Proxy Failure Rate Needs a Windowwriting
- Album Art Opens Interpretation; It Does Not End the Evidencemusic
- Needles — Dependency Described as Something Living Inside the Bodymusic
- Cancer as a Systems Failure Through a Systems Architect's Eyesperspectives
- The Philosophical Problem Hidden Inside The Cellperspectives
- SIP Ladder Diagrams Became More Useful When I Added Media Eventswriting
- Voiceware Started With One Deployable Service, Not a “Platform”perspectives
- Mutation Through a Systems Architect's Eyesperspectives
- RTP Relays Made Container Boundaries Easier to Controlwriting
- Every Operations Job Needs a Timeoutwriting
- Secrets Are Part of Disaster Recovery Even When They Are Correctly Missing from Gitwriting
- The Brain Through a Systems Architect's Eyesperspectives
- Queue Retry Policy Is Part of Data Integritywriting
- Database Container Metrics Need Engine Metrics Beside Themwriting
- High, Standard, and Low Queues: Designing for Contentionperspectives
- The Real Architecture Work Was Finding Voiceware’s Runtime Boundariesperspectives
- Fast Burn and Slow Burn Are Different Incidentswriting
- Mr. Jack — Police Power, Suspicion, and the Moment Authority Becomes Personalmusic
- Why These Songs Rarely Resolve Politelymusic
- Remember a Day — Memory Before Nostalgia Becomes Comfortablemusic
- The Age of "Live" Environmental Datawriting
- Stop Restarting Caddy to Apply a Caddyfile Changewriting
- What the celery -A pbx Command Reveals About Runtime Ownershipperspectives
- The ACL That Worked Perfectly and Locked Me Outwriting
- The Audio Bug Was Not One Bugwriting
- Where the random code change Analogy Breaksperspectives
- The Slow Users Disappear Inside the Averagewriting
- What Emergence Really Isperspectives
- SHA-256 Proves Integrity; ECDSA Adds Authorshipwriting
- ModemManager Can Break a Perfectly Good RNode Sessionwriting
- How We Learned to See Mutationperspectives
- The Ethics of Interpreting Ambiguous Lyricsmusic
- Load Average Without CPU Count Is Almost Meaninglesswriting
- Soil — Grief, Anger, and the Question of What Remains After Lossmusic
- What the Early Voiceware Manifests Do Not Yet Proveperspectives
- Control Plane, Data Plane, and Queue Dependencies in Voicewareperspectives
- How We Learned to See Timeperspectives
- A Storage Cache Needs Its Own Freshness Metricwriting
- Terraform check, precondition, and postcondition Blocks Fail at Different Boundarieswriting
- Prison Song — When a System Becomes Large Enough to Hide Its Human Costmusic
- Cloudflare Tunnel Disruptions Need Log-Derived Monitoringwriting
- How We Learned to See Consciousnessperspectives
- Small Teams Still Need Production Disciplinewriting
- Debug Pads Are Insurance for the Units That Do Not Bootwriting
- Wi-Fi CSI Presence Detection Fails First at Calibration, Drift, and Synchronizationperspectives
- The Fastest Team Learns Faster, Not Just Deploys Fasterwriting
- X — Compression: How Very Little Time Can Still Carry an Argumentmusic
- App-Only Flashing at 0x20000 Protected the State I Was Not Trying to Changewriting
- Path-Based Policies Make Least Privilege Concretewriting
- Off-Host Encrypted Backups Change the Failure Domainwriting
- Restore Verification Needs Its Own Agewriting
- Terraform import Blocks Make Brownfield Adoption Reviewablewriting
- Question!: How Long Can a Question Stay Open?music
- WebRTC Connectivity Is Not “STUN or TURN” — It Is an ICE Candidate Selection Problemperspectives
- Stealing Society — Alienation, Complicity, and the Feeling That the System Is Already Insidemusic
- Diameter Started Making Sense When I Followed CER and CEA Firstwriting
- Inside a Caddy Container, localhost Is Caddy — Not Your Appwriting
- Chart.yaml Is Small, but It Gives a Service an Identityperspectives
- HTTP/3 in Enterprise Networks: QUIC Broke the Old Inspection Assumptionsperspectives
- Use Terraform -replace When the Object Is Broken but the Configuration Is Rightwriting
- Git as Desired State: The Voiceware Mental Modelperspectives
- Physical Controls Are Part of the Reliability Modelwriting
- I Deliberately Broke the Probe to Test the Monitoring Systemwriting
- Notification Authentication Belongs Outside Gitwriting
- Reuse Is an Engineering Decision Tooperspectives
- SIP Registration Expiry Explained Why Phones Disappeared After a Whilewriting
- Store Device Enrollment Secrets as Hashes When the Server Only Needs Verificationwriting
- The Philosophical Problem Hidden Inside Cancer as a Systems Failureperspectives
- Feedback Through a Systems Architect's Eyesperspectives
- Bike — Generosity, Absurdity, and the Joy of Unstable Logicmusic
- Journal Cursor Persistence Prevented Duplicate Log Ingestionwriting
- A WS2812 Powered from VBAT Makes Logic Margin a Hardware Questionwriting
- Terraform create_before_destroy Can Propagate Through the Dependency Graphwriting
- How I Use a Tailscale Subnet Router to Reach Devices That Cannot Run Tailscalewriting
- Question! — The Calm I Found in Not Knowingmusic
- A Public CA File Can Be Unreachable Behind a 0700 Parent Directorywriting
- A Forecast Should Show a Range of Possibilities, Not Just One Numberwriting
- When One VLAN Would Not Cross the Trunkwriting
- Prometheus Series Count Is an Observability Capacity Metricwriting
- A Clean Git Tree Does Not Prove You Deployed the Latest Codewriting
- Where the security stack Analogy Breaksperspectives
- Interstellar Overdrive — Repetition, Expansion, and Losing the Centermusic
- SIP Registration Is an Address, Not Complete Proof of Livenesswriting
- RPO and RTO Turn 'We Have Backups' into an Operational Requirementwriting
- The Philosophical Problem Hidden Inside The Nervous Systemperspectives
- Why Every Monitoring Component Had to Justify Its RAMwriting
- What Git History Adds to a Blogwriting
- A Handoff Is a Reliability Boundarywriting
- Walking a VoLTE Call End to End Connected the EPC, IMS and RTP Pieceswriting
- The Philosophical Problem Hidden Inside Numberperspectives
- Where the universal explanatory language Analogy Breaksperspectives