Backend
Deep dives into server-side concepts every backend developer encounters. From unique identifier formats like UUID and ULID to data serialization standards - practical explanations with real code examples in PHP, Python, and JavaScript.
Why "Unexpected Token" Is Almost Never a Typo in Your JSON
The JSON parse errors that actually reach production: HTML error pages, BOMs, truncated bodies, Python's NaN - and how to read V8's rewritten messages.
What Your JSON Parser Does When the Spec Says Nothing
I ran identical payloads through PHP, Node, Python and Go. They disagree on big integers, NaN, lone surrogates and nesting depth - usually in silence.
UUID v4 vs v7 vs ULID: What the Public Benchmarks Actually Show
Published benchmarks range from 35% faster inserts to 3x throughput collapse. Reconciling Percona, PostgreSQL 16 and Shopify - and which number is yours.
CSV vs JSON for Data Exchange: When Each Format Wins
CSV or JSON for APIs, pipelines and exports? Structure, parsing, streaming, schema enforcement and size compared, with clear rules for choosing.
NanoID vs UUID vs ULID: Choosing the Right ID for Your Project
Size, collision probability, alphabet customisation, URL safety and database performance compared - and when each ID format makes sense.
UUID vs GUID: Same Thing, Different Ecosystem
GUID is UUID v4 in a Microsoft costume. Uppercase, braces, newsequentialid() and Guid.NewGuid() - and when the distinction actually matters.
MongoDB ObjectID Explained: Structure, Timestamp, and When to Use It
Inside the 12-byte ObjectID: timestamp extraction, sorting behaviour, security trade-offs and comparison with UUID, with PHP and Python examples.
JSON vs YAML: Which Format to Choose for Configs, APIs, and Data
Syntax, readability, strictness and performance compared - plus YAML pitfalls like the Norway problem, and when each format is the right call.
UUID Versions Explained: v1, v3, v4, v5, v6, and v7
Every UUID version explained: time-based, name-based and random, with code in PHP, Python and JavaScript and a practical guide to picking one.
Unix Timestamps: The Developer's Complete Guide
What Unix timestamps are, why 1970, timezone pitfalls, milliseconds vs seconds and the Year 2038 problem, with PHP, Python and JavaScript examples.
UUID vs ULID: Which Unique ID Should You Use?
UUID v4, ULID and UUID v7 compared: internal structure, database index performance, security trade-offs and how to pick one for your table.
Choosing an Identifier, and Living With the Choice
Most of this category circles one decision: what goes in the primary key column. It is the hardest thing to change later, which is why it gets more space here than anything else. If you are starting from scratch, read UUID versions explained first, then the head-to-head comparisons - UUID vs ULID and NanoID vs UUID vs ULID.
The claim you will meet everywhere is that random keys wreck B-tree inserts. It is true, but the published numbers disagree wildly about how much - anywhere from a 35% slowdown to a threefold collapse. The benchmark reconciliation works out which of those numbers applies to a table like yours, which is usually a different answer than the blog post you got the figure from. If you are on SQL Server or .NET, the terminology trap is covered in UUID vs GUID, and MongoDB's twelve-byte variant has its own structure worth knowing in ObjectID explained.
The other half of the category is data formats and time. Config and API payload trade-offs are in JSON vs YAML and CSV vs JSON. Timestamps look trivial until a timezone or a millisecond-versus-second mix-up costs you an afternoon - the Unix timestamp guide covers the pitfalls, including Year 2038.
Every format discussed here has a tool on the site: generate UUIDs, ULIDs, NanoIDs or ObjectIDs, convert between JSON and YAML or CSV and JSON, and decode epochs with the timestamp converter.