Posts

20 of 56 total posts (showing page 2 of 3)

Go's Value Philosophy: Part 3 - Zero Values: Go's Valid-by-Default Philosophy

In Python, undeclared variables don’t exist. In Java, local variables can’t be used before assignment. In Go, declaration creates a valid value. There is no uninitialized state - every value works from the moment it’s declared.

Go Interfaces: The Type System Feature You Implement By Accident

You write a struct with a Write method. Three months later, you discover it implements io.Writer. You never declared this. How did it happen? Exploring Go’s implicit interfaces and the power of accidental implementation.

Go's Value Philosophy: Part 1 - Why Everything Is a Value, Not an Object

In Python, everything is an object. In Java, everything is a class. In Go, everything is a value. These are fundamental design philosophies that shape how you write concurrent code, manage memory, and reason about performance.

Go's Value Philosophy: Part 2 - Escape Analysis and Performance

The Go compiler decides whether your values live on the stack or heap through escape analysis. Understanding this mechanism explains Go’s performance characteristics and helps you write faster code without sacrificing clarity.

The Python Paradox: How Python Dominates Big Data Despite the GIL

Discover why Python dominates big data despite the GIL: Python coordinates, C/Rust/JVM executes. Learn how NumPy, pandas, Polars, and PySpark bypass the GIL for true parallelism.

GPL & AGPL: Freedom Through Copyleft - Complete Guide to Viral Licensing

Why copyleft licenses ‘infect’ derivative works, how GPL differs from permissive licenses, and when viral licensing protects community contributions from proprietary capture

The Price of Everything Being an Object in Python

All Python developers know that everything in Python is an object. But at what cost? A deep dive into Python’s heap-only memory model and the 28-byte overhead of storing a simple integer.

Apache License 2.0: When Patent Protection Matters - Complete Guide

Why Apache 2.0 matters for patent-heavy projects, how it differs from MIT, and when explicit patent grants protect your users and contributors

Why Choose the MIT License? A Comprehensive Guide to Open Source Licensing

Why MIT became the most popular open-source license, when to choose it over GPL/Apache/BSD, and a decision framework for selecting the right license for your project

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.

Your README is a Landing Page, Not Your Documentation

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.

The Complete Guide to Rust Testing: Unit, Integration, Property-Based, and Snapshot Testing

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.

Rust Error Handling: thiserror, anyhow, and error-envelope

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 in Rust: Error Propagation Demystified

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.

You Don't Know JSON: Part 8 - Lessons from the JSON Revolution

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.

You Don't Know JSON: Part 1 - Origins, Evolution, and the Cracks in the Foundation

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.

You Don't Know JSON: Part 2 - JSON Schema and the Art of Validation

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.

You Don't Know JSON: Part 3 - Binary JSON in Databases

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.