838+ in-depth articles

Deep dives into tools,
techniques & the web.

Practical guides covering developer tools, health metrics, SEO, converters and more — written to be actually useful.

✦ 7 Categories ✦ Updated Weekly ✦ Free to Read
✦ AI

✦ AI-powered — understands natural language

Your List Still Has Duplicates After Removing Duplicates
Text Tools Oct 20, 2026 Latest ✦

Your List Still Has Duplicates After Removing Duplicates

Four strings, one person, and exact matching keeps all four. The normalisation steps that determine whether deduplication actually works — whitespace, case, Unicode, invisibles.

Read article
Gauge Pressure vs Absolute Pressure: Why Almost Every Pressure Reading You See Is Actually a Difference
Converters Jun 16, 2026

Gauge Pressure vs Absolute Pressure: Why Almost Every Pressure Reading You See Is Actually a Difference

A tyre gauge reads "0" on a completely flat tyre — not "-14.7 PSI," which is what it would show if it were truly measuring zero pressure. This is gauge pressure: nearly every everyday pressure reading (tyres, blood pressure) is actually a difference from atmospheric pressure, not an absolute amount. Here's what absolute pressure means by contrast, why weather/barometric readings and gas-law calculations require absolute pressure specifically, and the subtle way altitude affects gauge readings independent of temperature.

Structured JSON Logging: How to Debug Production API Errors and Search Logs at Scale
Developer Jun 16, 2026

Structured JSON Logging: How to Debug Production API Errors and Search Logs at Scale

Structured JSON logs are queryable across millions of events in milliseconds; unstructured string logs require brittle grep. Here's why JSON logging matters, the OpenTelemetry log schema standard, structured logging libraries in Python/Node/Go, and how formatting API error responses reveals everything needed to debug a production incident.

What Developers Still Get Wrong About Password Storage in 2024
Developer Jun 16, 2026

What Developers Still Get Wrong About Password Storage in 2024

LinkedIn stored 117 million passwords as unsalted SHA-1 — cracked within days. Adobe used 3DES encryption (reversible) instead of hashing. These are the specific, named password storage mistakes that keep producing data breaches. Here's every common error, why it fails, and the correct modern approach with bcrypt and Argon2.

How File Hash Verification Actually Works: Determinism, the Avalanche Effect, and What "Match" Really Means
Developer Jun 16, 2026

How File Hash Verification Actually Works: Determinism, the Avalanche Effect, and What "Match" Really Means

Hashing the same file twice, a year apart, on different computers, produces the exact same hash — this single property, determinism, is the foundation of file-integrity verification. Here's how the avalanche effect guarantees "match or no match, with no partial credit," why fixed output size makes hash comparison practical for huge files, the proper download-verification workflow, and why where a published hash comes from matters as much as the comparison itself.

IEEE 754 Floating-Point: Why 0.1 + 0.2 ≠ 0.3 and What to Use for Financial Calculations
Developer Jun 15, 2026

IEEE 754 Floating-Point: Why 0.1 + 0.2 ≠ 0.3 and What to Use for Financial Calculations

0.1 + 0.2 ≠ 0.3 in nearly every programming language — because 0.1 can't be represented exactly in binary. Here's the IEEE 754 bit structure (sign, exponent, mantissa), special values (NaN, Infinity, -0), why integers above 2^53 lose precision in JavaScript, and why financial code should never use floats.

UUID Primary Keys in PostgreSQL, MySQL, and MongoDB: Performance Differences and Implementation Patterns
Developer Jun 15, 2026

UUID Primary Keys in PostgreSQL, MySQL, and MongoDB: Performance Differences and Implementation Patterns

PostgreSQL stores UUIDs as 16-byte native types with no performance penalty. MySQL's InnoDB clustered index makes random UUID v4 fragmentation far worse than in PostgreSQL. MongoDB's ObjectId is 12 bytes with an embedded timestamp. Here's how UUID primary keys actually behave in each database and the ORM patterns to use them correctly.

DNS over HTTPS: Why Your Browser and Your DNS Lookup Tool Might Be Talking to Different Servers
Internet Jun 15, 2026

DNS over HTTPS: Why Your Browser and Your DNS Lookup Tool Might Be Talking to Different Servers

Your computer's DNS settings and your browser's actual DNS resolution might be using completely different servers — DNS over HTTPS (DoH), increasingly implemented at the browser level, can bypass OS-level DNS settings entirely. Here's why DoH/DoT exist (encrypting DNS queries for privacy), why "dig shows the new record but my browser doesn't" can happen due to separate resolver caches, and how DoH interacts with network-level DNS filtering.

1000VA Isn't 1000W: Power Factor and Why UPS Sizing Often Goes Wrong
Converters Jun 15, 2026

1000VA Isn't 1000W: Power Factor and Why UPS Sizing Often Goes Wrong

A UPS rated "1000VA" and a power supply rated "1000W" sound like the same quantity — they're not. VA (apparent power) and W (real power) differ by the power factor, and many common devices have power factors well below 1.0, meaning a "1000VA" UPS often can't actually support 1000W of real load. Here's what power factor means, why UPS units are rated in VA in the first place, why "naive" sizing (treating VA and W as interchangeable) can leave far less headroom than expected, and how active PFC closes the gap in modern equipment.

Morse Code Timing: Why "Faster" Means Rescaling Five Different Things at Once
Text Tools Jun 15, 2026

Morse Code Timing: Why "Faster" Means Rescaling Five Different Things at Once

A Morse code message can be sent anywhere from 5 to 40+ words per minute — but unlike typing speed, "faster" doesn't mean "the same dots and dashes, sooner." Every timing element (dot, dash, and three different gap types) is defined as a ratio relative to a single unit, and that unit scales together across all five elements at once. Here's how WPM is calibrated using the word "PARIS," why high-speed Morse becomes a perceptual rather than counted skill, and why Farnsworth timing deliberately breaks the proportional system for learners.

JSON Inside JSON: Why Some Fields Are Strings Containing Their Own JSON, and How to Parse Them
Developer Jun 15, 2026

JSON Inside JSON: Why Some Fields Are Strings Containing Their Own JSON, and How to Parse Them

A field containing `"{\"name\":\"Alice\"}"` isn't broken — it's JSON stored as a string, inside a JSON document, a deliberate pattern in logging systems, GraphQL, and webhook relays. Here's how to recognize this pattern by its escaped quotes, why it requires two separate parsing steps, and how to tell when it's a legitimate design choice versus an unnecessary double-stringification bug.

Why Identical Keyword Density Can Produce Completely Different Rankings: Search Intent Explained
SEO Jun 15, 2026

Why Identical Keyword Density Can Produce Completely Different Rankings: Search Intent Explained

Two pages can have identical keyword density for "running shoes" — and one ranks while the other doesn't — because density measures word frequency, while rankings increasingly reflect whether the content type matches what searchers for that specific query actually want. Here's how to infer search intent by examining what content types currently rank, why "mixed intent" keywords support multiple content types, and why no textual analysis tool — including density or TF-IDF — can measure intent directly.

Shift Work and Sleep: Why Night Shifts Fight Your Circadian Rhythm and What Helps
Health Jun 15, 2026

Shift Work and Sleep: Why Night Shifts Fight Your Circadian Rhythm and What Helps

Night shift workers fight their own circadian rhythm — bright daylight signals "daytime" to the brain exactly when they need to sleep. Here's why standard sleep hygiene isn't enough for shift workers, the strategic light exposure techniques (including sunglasses on the commute home), rotating shift challenges, and napping strategies for night shifts.