Vendredi matin, 9 h 15. Françoise est dans son cockpit — trois écrans, à gauche l'Excel-pointeuse qu'elle tient à jour depuis quinze ans, à droite Sage, et au milieu Rembrandt depuis trois semaines. Sa tasse à la main, celle avec sa tête imprimée dessus que quelqu'un lui a offerte à Noël. Elle pivote sur sa chaise et me lance depuis son bureau : « Michel, combien on a d'inscrits pour la rentrée, d
« Hold on, we need to talk, this doesn't add up » Friday morning, 9:15 AM. Françoise is in her cockpit — three screens: on the left the Excel attendance sheet she's kept up to date for fifteen years, on the right Sage, and in the middle Rembrandt for three weeks now. Cup in hand, the one with her face printed on it that someone gave her at Christmas. She swivels in her chair and calls over from
So you've outgrown MySQL. Maybe you need better JSON support, real window functions, or you're moving to a managed cloud database that defaults to Postgres. Whatever the reason — MySQL to PostgreSQL migration trips up almost everyone the first time. The two dialects look similar but behave very differently under the hood. Why MySQL Dumps Don't Import Directly into PostgreSQL users ( id INT(11) NOT
Skip the theory rabbit holes. This is the caching knowledge that shows up in system design interviews, code reviews, and the 2 AM production incidents nobody warned you about. Why Caching — The 30-Second Version Where Do You Actually Cache? Cache-Aside — The Pattern You'll Use 80% of the Time Write Strategies — The Other Side of the Coin Eviction Policies — LRU, LFU, and When It Matters TTL — Gett
Building a Translation Pipeline for International Contract Bidding If your company bids on international contracts, you've probably dealt with the translation bottleneck. Technical proposals need precise translation, certified documents have strict formatting requirements, and procurement deadlines don't wait for anyone. After seeing how UK public procurement translation requirements can make or
Inside the five-stage pipeline from 1.1.1, there is another fork right after the parser. PostgreSQL classifies every SQL command into one of two camps. One side holds the optimizable queries, the other holds the utility commands. The classification is decided by a single field on the Query node, commandType, and from that point on the two camps travel completely different paths. One goes through t
Go is a compiled language — the code is converted into machine‑readable form before execution. From a beginner’s perspective, this means Go catches many errors during compilation, giving you cleaner, faster, and more predictable performance at runtime. Go is widely used for: API development CLI tools Microservices architecture Backend server. DEVOPS activity So it fits perfectly with the kind of
Why I built it I needed a PostgreSQL parser that could run inside Go tooling without CGO, external binaries, or runtime dependencies. SQL is not one grammar PostgreSQL has a lot of dialect-specific edge cases AST shape matters more than “can it parse” Error handling becomes a product feature Real-world SQL is uglier than examples No CGO, easy installation, works in CI, easy to embed in linters a