TLDR Dev

TLDR DEV 2025-10-14

5 sections14 entrieslinks blockcomplete parse

Parse notes

  • Subscription/account footer truncated before parsefooter_truncated

01ARTICLES & TUTORIALS

FROM MILLIONS TO BILLIONS

Geocodio needed to scale its request logging from millions to billions of requests monthly for billing and customer support, but its deprecated MariaDB setup with TokuDB was struggling. Its initial attempt to replace MariaDB with ClickHouse directly resulted in "TOO_MANY_PARTS" errors due to small, frequent inserts, and a subsequent attempt using ClickHouse buffer tables led to "TOO_MANY_LINKS" errors. The solution involved introducing Kafka for durable storage and high throughput and Vector to efficiently batch and load data from Kafka into ClickHouse.

geocod.io15 min read

ENVIRONMENT VARIABLES ARE A LEGACY MESS: LET'S DIVE DEEP INTO THEM

Environment variables are a flat, global dictionary of strings passed from parent to child processes through the `execve` system call. When a new program is launched, the kernel places these variables on the stack as null-terminated strings, which the program then copies into its own data structure (like a hashmap in Bash or an array in glibc). While the Linux kernel and glibc are liberal about the format of environment variables, it's generally recommended to use uppercase letters, digits, and underscores for names, and UTF-8 encoding for values to avoid potential issues.

allvpv.org9 min read

15 RECENT NODE.JS FEATURES THAT REPLACE POPULAR NPM PACKAGES

Node.js has evolved to include many features that previously required third-party npm packages, reducing dependency bloat. This post covers fifteen recent Node.js features that replace popular packages, including the global fetch() API (replacing node-fetch), built-in test runner (replacing mocha/jest), native WebSocket support, file system utilities like fs.glob() and recursive operations, and various other utilities for styling text, generating UUIDs, and handling URLs.

nodesource.com8 min read

02OPINIONS & ADVICE

TWO THINGS LLM CODING AGENTS ARE STILL BAD AT

LLM coding agents still feel awkward to work with due to two main issues: they don't copy-paste code like humans do (instead "remembering" and rewriting code from memory), and they're terrible at asking clarifying questions, preferring to make assumptions and brute-force solutions. These quirks make LLMs feel more like "weird, overconfident interns" rather than replacements for human developers.

kix.dev2 min read

ABSTRACTION, NOT SYNTAX

While alternatives to YAML are welcome, the focus should shift from superficial syntax improvements to configuration languages that allow for loops, variables, and formulas, like RCL. While these configuration languages introduce new trade-offs, such as needing an intermediate build step and possibly hurting greppability, the benefits of abstraction outweigh the costs for complex configurations.

ruudvanasseldonk.com7 min read

03LAUNCHES & TOOLS

NITRO

Nitro is a next-generation server toolkit for building and deploying web servers with TypeScript. It supports development with hot module replacement, zero-config deployment to any provider, and a compact output size.

nitro.buildTool

STEEL BROWSER

Steel is an open-source browser API for building AI agents and apps that interact with the web. It has features like full browser control using Puppeteer, session management, proxy support, extension support, debugging tools, anti-detection measures, and resource management. Devs can interact with the API through sessions, quick actions, and SDKs in Node and Python for tasks like web scraping, screenshots, and PDF generation.

github.comGitHub repository

JSON RIVER

JSON River is a lightweight JavaScript library for parsing JSON incrementally from streams. It provides a sequence of increasingly complete JSON values as they arrive. The library prioritizes correctness, matching JSON.parse behavior and throwing errors on invalid input, and has been tested against the JSONTestSuite.

github.comGitHub repository

04MISCELLANEOUS

LLMS ARE GETTING BETTER AT CHARACTER-LEVEL TEXT MANIPULATION

LLMs are getting better at character-level text manipulation, such as character replacement, counting, and decoding ciphers. Newer LLMs like GPT-5 and Claude Sonnet 4.5 show improved performance in these tasks compared to older generations, suggesting a better understanding of algorithms beyond simple memorization. This article tests models on Base64 and ROT20 encoded text, showing that larger models are more successful at tasks like decoding and character substitution, even with gibberish text.

blog.burkert.me7 min read

THREE WAYS FORMALLY VERIFIED CODE CAN GO WRONG IN PRACTICE

Formally verified code, despite being "correct" according to specifications, can still contain bugs in practice. These bugs arise from three main issues: invalid proofs, incorrect properties being verified, and wrong assumptions made during the verification process. "Correctness" in formal methods refers to conformity with a specification, which may not always align with real-world expectations or cover all potential issues.

buttondown.com8 min read