Glob Patterns: Complete Syntax Reference with Examples
Part 2: A comprehensive reference covering every glob pattern from basic wildcards to advanced features like brace expansion and extended globs. Learn the rules that apply everywhere.
Part 2: A comprehensive reference covering every glob pattern from basic wildcards to advanced features like brace expansion and extended globs. Learn the rules that apply everywhere.
Glob patterns are everywhere - .gitignore, shell wildcards, build configs - yet most developers learn them by accident through copy-paste. Here’s why glob deserves explicit teaching.
Part 4: Learn how ZSH completions work under the hood. Build custom completions for your scripts, understand _arguments and completion contexts, and make tab completion actually useful.
More features always lead to more sprawl. The longer it goes on, the harder it is to bring back under control. Here’s how to treat your README like a landing page - with hooks, not walls of text.
A complete overview of Rust testing strategies: unit tests, integration tests, property-based testing, snapshot testing, parameterized tests, and doctests. Learn which testing approach fits your needs.
Three Rust error handling crates that seem to overlap but fill distinct roles. Learn when to use thiserror for typed errors, anyhow for application code, and error-envelope for HTTP boundaries.
The ? operator looks like magic. One character that handles errors, converts types, and returns early. Understand how it actually works under the hood and when to use it.
JSON recreated XML’s entire ecosystem modularly. JSX brought back XML’s syntax. What does this teach us about technology evolution? Explore the architectural zeitgeist, pattern survival, and the modularity paradox: choice vs. discoverability.
Everyone thinks they know JSON. But do you know why it was created, what problems it solved, and more importantly - what problems it created? Part 1 explores JSON’s origins, its triumph over XML, and the fundamental weaknesses that spawned an entire ecosystem of extensions.
JSON lacks types and validation - any structure parses successfully. JSON Schema solves this by adding a validation layer without changing JSON itself. Learn how to define schemas, validate at runtime, generate code, and build type-safe APIs.
Database-managed binary JSON formats solve storage and query performance problems. JSONB enables fast PostgreSQL queries with indexing, while BSON adds extended types for MongoDB. Learn when databases beat text JSON.
Beyond database storage, binary JSON formats optimize API data transfer. MessagePack provides universal serialization with 30-40% size reduction. CBOR adds IETF standardization for IoT and security. Learn when binary beats JSON for network efficiency.
REST is great for resources, but what about actions? JSON-RPC provides a simple, transport-agnostic protocol for calling remote functions. Learn the spec, implementation patterns, and why major projects like Ethereum and VS Code chose JSON-RPC over REST.
Standard JSON can’t stream - you must parse the entire document. JSON Lines solves this with one JSON object per line, enabling streaming processing, log aggregation, Unix pipelines, and handling gigabyte-scale datasets with constant memory usage.
JSON has no built-in security. The ecosystem response: JWT for authentication, JWS for signing, JWE for encryption. Learn how these work, common attacks (algorithm confusion, injection, timing), and how to secure JSON-based systems.
Needed offline GCP Secret Manager testing for CI/CD pipelines. Existing solutions were either too heavy or incomplete. Built a standalone gRPC emulator that works with the official Go SDK–zero credentials, zero network calls, 100% local.
Everyone uses Powerlevel10k, but do you understand how that fancy prompt actually works? Learn the ZSH primitives behind instant git status, command timing, and async rendering.
Understanding how programs convert runtime objects to bytes and back, enabling persistent storage, network communication, and cross-language data exchange.
Alpha, beta, release candidate, stable, LTS–what do they all mean? When are they required? This guide breaks down every stage of the software release cycle with real-world examples and popular strategies.
Master API communication patterns: REST, GraphQL, WebSocket, gRPC, webhooks, message queues, and more. Complete guide with diagrams, code examples, and decision frameworks for choosing the right pattern.
Protocol Buffers (protobuf) is Google’s binary serialization format - smaller, faster, and type-safe compared to JSON. Learn what protobuf is, how it works, and when to use it for APIs and microservices.
Started with Bitwarden-only shell scripts. Needed to support 1Password and pass without breaking anything. Built a shell abstraction layer, then ported it to Go. Same interface, three backends, zero breaking changes.
Complete guide to ZSH hooks: automate prompts, time commands, activate virtualenvs on cd, and filter secrets from history–without slowing down your terminal.
ZLE lets you create custom keybindings that manipulate your command line. Learn the fundamentals, build practical widgets (insert git branch, fuzzy file search), and understand how fzf integrates with ZSH.
Start on Mac, continue on Linux–same Claude conversation. Plus integrated AWS/Rust/Go/Python tools, extensible hooks, multi-vault secrets, and modular architecture. A framework, not just dotfiles.
Stop returning errors as plain text. Learn how to implement consistent, structured HTTP error responses in Go with support for Chi router, Gin framework, and Echo framework. Includes field-level validation and trace IDs.
I work on OSS projects, client work, and employer projects. Each needs different Claude Code configuration. Here’s how I stopped manually editing CLAUDE.md every time I switched contexts.