Mastering ZSH: Part 4 - Completion System Demystified
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.
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.