All posts
-
Nginx Rate Limiting Tutorial: limit_req, burst, and nodelay Explained
Bots hammering your API, brute-force attempts on /login, runaway clients eating connections — Nginx's built-in limit_req module stops abusive traffic in just a few lines of config. This guide starts from the leaky bucket algorithm, breaks down every parameter of limit_req_zone and limit_req with diagrams, compares the three common modes, and ends with battle-tested examples plus monitoring tips.
-
Claude Design: Anthropic's Natural-Language Pitch Deck and Mockup Generator
Anthropic launched Claude Design on April 17, 2026 — an experimental product powered by Claude Opus 4.7 that turns natural-language prompts into prototypes, slides, pitch decks, mockups, and one-pagers. It exports to Canva, PDF, PPTX, standalone HTML, and a Claude Code handoff bundle, and can ingest your codebase or design files to auto-build a reusable design system. This post covers the core features, subscription tiers, positioning against Figma, Canva, Google Stitch, v0, and Lovable, why Figma's stock dropped 7% on launch day, and the situations where Claude Design is not the right tool.
-
macOS GUI Terminal vs. SSH Sessions: Why launchctl managername Matters
Open Terminal sitting at your Mac, then SSH into the same machine as the same user — both spawn what looks like the same zsh, but they behave very differently: keychain unlock state, environment variables, TCC permissions, pbcopy, TouchID, osascript notifications all diverge. Every one of those differences traces back to a single thing — whether launchctl managername reports Aqua or Background. This post walks through the gotchas you actually hit, the launchd domain machinery underneath, and how to make SSH sessions behave more like GUI ones when you're treating a Mac as a server.
-
Claude Code /passes: Gift 7-Day Claude Pro Trials and Earn Referral Credits
Claude Code added a /passes command in December 2025 that lets Claude Pro Max subscribers send three 7-day Claude Pro trial passes to friends. Each invitee who converts to a paid Pro plan earns the sender a $10 Claude credit plus extra usage. This post walks through how /passes works, the conditions for both sender and recipient, how it differs from claude.ai gift subscriptions, and a few details Anthropic hasn't fully documented.
-
Claude Opus 4.7: Coding Upgrades, Pricing, Context, and the Mythos Backstory
Anthropic shipped Claude Opus 4.7 on April 16, 2026 as its new flagship. This piece walks through the coding and vision upgrades (CursorBench jumps from 58% to 70%, Rakuten SWE-Bench solves 3× more), how 4.7 compares to 4.6 on price, context, and features, and the unusual decision Anthropic openly disclosed: Opus 4.7 is a deliberately capability-reduced sibling of the still-gated Mythos Preview model — the reasoning behind that is worth a closer look.
-
Java LTS Evolution: From Java 8 to Java 25 — A Language Upgrade Guide
From Java 8's lambdas and streams to Java 25's virtual threads, stream gatherers, and compact object headers — a tour of the five LTS releases (8, 11, 17, 21, 25), each OpenJDK distribution's free-support deadline, and a quick look at what the just-GA non-LTS Java 26 brings. A reference map for anyone still on Java 8 / 11 thinking about upgrading.
-
Claude Extra Usage Credit: How to Claim Free Credits on Pro, Max, and Team Plans
Anthropic is giving Claude Pro, Max, and Team subscribers a limited-time Extra Usage Credit in April 2026 — up to $200 in free credit, redeemable across Claude, Claude Code, and Claude Cowork. This guide covers how much each plan gets, who qualifies, step-by-step instructions to enable Extra Usage and click Claim, plus the 90-day expiration and other fine print you need to know before the April 17 deadline.
-
macOS SSH and Claude Code "Logged Out": The Keychain Unlock Fix
SSH into a Mac, fire up Claude Code, and get prompted to /login — even though you're already signed in at the GUI Terminal and tmux sessions sometimes hit the same thing. It's not a Claude Code bug; it's the macOS login keychain not being unlocked in non-GUI sessions. One security unlock-keychain command fixes it. This post covers why SSH triggers it, why the command works, and other tools (gh, git, docker, codesign…) that hit the same wall.
-
Playwright CLI Tutorial: Browser Automation with Claude Code
Playwright is today's leading cross-browser automation framework, and playwright-cli turns its most common features into one-line commands — no project scaffolding, no test suite, just screenshots, recordings, and post-login scraping on demand. This article covers how Playwright compares to Puppeteer, why playwright-cli exists, how it differs from Playwright MCP, and walks through four practical workflows pairing it with Claude Code.
-
Evolution of Java's switch: From Java 7 to Java 26
A tour of how Java's switch keyword has evolved — String cases in Java 7, switch expressions and the yield keyword in Java 14, pattern matching shipped as a standard feature in Java 21 with null cases, when guards, and exhaustiveness for sealed types, and the still-previewing Primitive Types in Patterns up through Java 26.