Archive
40 posts
2026
- 10.25 muse.ai Email Approval Cards Getting Skipped: Moving a Chrome Extension From Button Text to React Data Engineering
- 10.25 Two Minutes to Publish: Moving a Static Astro Blog to Rendering on Cloudflare Workers Engineering
- 10.06 Can You Trust a Backtest? Five Pitfalls, From TradingView Understating Drawdown to Lookahead Bias Investing
- 10.06 TradingView Webhooks to Binance Auto Orders: A Relay and Exchange-Side Stops for a BTC Daily Strategy Engineering
- 10.06 The Reconciliation Alert Fired Twice: Missed and Double-Counted Interest When Bitfinex Positions Switch Sides Engineering
- 10.06 Claude Code Triaging Sentry Alerts Read-Only: Locking It Down With --allowedTools, and the Pitfalls Engineering
- 10.04 Clickable Bands in Claude Code Mods: API Limits Shape the Design, and What leftovers Still Can't See Tools
- 10.03 React Number Input Pitfalls: Clearing Saves 0, Typing e in type=number Empties It Engineering
- 10.03 High Coverage, Still Missing Tests? Using the CRAP Metric to Find the Functions That Need Them Most Engineering
- 10.03 Catching Dependency Cycles in Rust and TypeScript: A Homemade Module Scanner With Layering Rules in CI Engineering
- 10.03 Claude Code Mods From a Month of Session Logs: Five Bands, Status Line Items, and Commands Tools
- 10.02 Guarding main When AI Agents Open PRs in Parallel: GitHub Required Checks, a PROD Preflight, and a Merge Script Engineering
- 10.02 Automating a Bitfinex Lending Rate Report: A Claude Code Routine Opens a PR, a Human Merges It Tools
- 10.02 Claude Code /code-review on an Entire Frontend: The Four Most Instructive Kinds Among 70-Plus Findings Engineering
- 10.02 A JWT Expiry Race, 2FA Copy, and Client-Side Password Encryption: Three Account Security Fixes Engineering
- 10.01 Lighthouse Timing Out on a Next.js Site? The Cause Was One Unread Response Body Engineering
- 10.01 SEO for a New Domain: Checking Search Volume With Self-Hosted OpenSEO Before Writing Long-Tail Guides Engineering
- 10.01 Image Models Can't Write Chinese Text: AI Illustrations, and HTML Plus Playwright for Figures Tools
- 10.01 Designing a SaaS Admin Console: Kill Switches, Broadcasts, and Telegram Notification Channels Engineering
- 10.01 Speeding Up Rust and Next.js CI on GitHub Actions: From 11.5 Minutes to 1.5 on a 2 vCPU Runner Engineering
- 09.30 Should You Change a Trading Strategy While Losing? Coding the Review Process, and 13 Variants That Failed Engineering
- 09.30 A Crypto Trend Strategy Backtested at 240x Lost 10.7% in 2.5 Days of Paper Trading: Survivorship Bias in the Coin List Investing
- 09.30 Publishing a Chrome Extension to the Chrome Web Store, Plus a Cross-Platform One-Line Install Script Engineering
- 09.30 Auto-Approving muse.ai Cards With a Chrome Extension: From Allow-All to a Trust List Engineering
- 09.30 SaaS Billing After Performance Fees: Plan Limits, Promotions, and Suspension in a Flat Subscription Engineering
- 09.30 Code Review After Porting Java to Rust: 15 Findings, 6 Bugs Carried Over From Java Engineering
- 09.29 Migrating From Java Spring Boot to Rust: Memory From 734 MiB to 32 MiB in One Cutover Engineering
- 09.29 Running Two LINE Accounts on One iPhone With LiveContainer: Three Free Apple ID Pitfalls Tools
- 09.28 GPT as a Read-Only Reviewer for Claude Code: Adversarial Review With Pi Tools
- 09.27 QQQ or SPY? Why I Dollar-Cost Average Everything Into QQQ on IBKR, and the Drawdown I Accept Investing
- 09.27 Market Timing vs Buy and Hold: Backtests Across Taiwan and US Stocks, Futures, and Crypto, and None Beat Holding Investing
- 09.22 Profitable in Simulation, Losing Live: An Honest Dry Run and Testing an AI Trading Model's Hit Rate Investing
- 09.22 A Full-Site Redesign With Design Tokens: AI Scores Make a Bad Gate, and One PR Reskinned 90% Engineering
- 09.21 An AI Trading Bot on Monad Mainnet: Requoting Every 300ms Costs Ten Times More Gas Than the Spread Engineering
- 09.21 Does Naked Candlestick Trading Work? Backtesting 1,026 Taiwan Stocks, It Lost to Random Entries Out of Sample Investing
- 09.21 Google Only Saw a Spinner on a Static Next.js Export: Multilingual Prerendering and robots.txt Fixes Engineering
- 09.15 Can Predicting Bitfinex Lending Rate Spikes Pay? Out of Sample It Kept About 10bp, So I Passed Investing
- 09.11 How Long Should You Lend on Bitfinex? Backtesting 2-, 30-, and 120-Day Lending and the Lock-Up Risk Investing
- 09.11 Bitfinex Lending's Hidden Clock: A Batch Auction Every 20 Minutes Investing
- 05.20 From a FastAPI Script to a Spring Boot SaaS: Rebuilding My Bitfinex Auto-Lending Platform Engineering