Feed

  1. Draft No. 4 by John McPhee


    | petemillspaugh.com
  2. Error translation in Go services


    | rednafi.com
  3. Dynamo: Amazon's highly available key-value store


    | rednafi.com
  4. Spec Driven Development isn't Waterfall


    | brooker.co.za
  5. The Real Cost of Model Migration - What Swapping LLMs Actually Requires


    | safjan.com
  6. Supply chain nightmare: How Rust will be attacked and what we can do to mitigate the inevitable


    | kerkour.com
  7. Under the hood of MDN's new frontend


    | developer.mozilla.org
  8. Weekly Update 498


    | troyhunt.com
  9. 0058: borrow-checking surprises, books, links


    | scattered-thoughts.net
  10. Borrow-checking surprises


    | scattered-thoughts.net
  11. Stacked log lines considered harmful


    | rednafi.com
  12. A Cryptography Engineer’s Perspective on Quantum Computing Timelines


    | words.filippo.io
  13. Help Me Understand How To Get Jetpack Search to Search a Custom Post Type


    | chriscoyier.net
  14. Evicted by Matthew Desmond


    | petemillspaugh.com
  15. Who contributed to DataFusion 53


    | notes.eatonphil.com
  16. April Cools Post: New York vs Chicago Pizza


    | buttondown.com
  17. I want an alarm clock


    | bell.bz
  18. Bugs that the Rust compiler catches for you: The revolution of compiler-enforced correctness


    | kerkour.com
  19. What’s up Python? New record type, new JIT perfs, new Python rest lib...


    | bitecode.dev
  20. Building More Resilient Local-First Software with atproto


    | jakelazaroff.com
  21. Weekly Update 497


    | troyhunt.com
  22. What's the ideal dispatch mechanism?


    | rednafi.com
  23. HIBP Mega Update: Passkeys, k-Anonymity Searches, Massive Speed Enhancements and a Bulk Domain Verification API


    | troyhunt.com
  24. Low-tech Magazine: The Uncompressed Book Series


    | solar.lowtechmagazine.com
  25. Taking multi-master MariaDB for a spin, reproducing a Jepsen report


    | notes.eatonphil.com
  26. Background jobs and inherited file descriptors


    | rednafi.com
  27. Hawai’i


    | chriscoyier.net
  28. Antithesis skills for agents


    | antithesis.com
  29. Building pentest devices with Rust and ESP32-C6 microcontrollers


    | kerkour.com
  30. What about juniors?


    | brooker.co.za
  31. Choose Boring Technology and Innovative Practices


    | buttondown.com
  32. Hypothesis, Antithesis, synthesis


    | antithesis.com
  33. Weekly Update 496


    | troyhunt.com
  34. LAN Party Calculator (Mario Kart, Kirby Air Riders, F-Zero)


    | sethmlarson.dev
  35. OpenAI bought Astral, will I keep using uv?


    | bitecode.dev
  36. Wait it out


    | bell.bz
  37. Observability Lessons From OpenAI


    | victoriametrics.com
  38. Testing unary gRPC services in Go


    | rednafi.com
  39. Announcing: Parrot.garden


    | btao.org
  40. Repositories, transactions, and unit of work in Go


    | rednafi.com
  41. Benchmarking Kubernetes Log Collectors: vlagent, Vector, Fluent Bit, OpenTelemetry Collector, and more


    | victoriametrics.com
  42. My heuristics are wrong. What now?


    | brooker.co.za
  43. How do you handle transactions with the repository pattern?


    | rednafi.com
  44. Getting started with the GameSir “Pocket Taco” with iPhone and Delta emulator


    | sethmlarson.dev
  45. Developer Spotlight: Somtochi Onyekwere from Fly.io


    | notes.eatonphil.com
  46. A static site generator and website transferring under 20kB


    | notes.eatonphil.com
  47. Meets Style Sheets


    | chriscoyier.net
  48. A declarative restoration


    | antithesis.com
  49. Building small and secure Docker images for Rust: scratch vs alpine vs debian


    | kerkour.com
  50. Python library “Requests” needs you to test type hints


    | sethmlarson.dev
  51. Hypermedia Friendly Model Context Protocol App Architecture


    | htmx.org
  52. Music To Build Agents By


    | brooker.co.za
  53. Is passing user ID through context an antipattern?


    | rednafi.com
  54. Just one more prompt


    | btao.org
  55. Weekly Update 495


    | troyhunt.com
  56. My favorite thing to do with AI doesn't really have a label


    | daniel.do
  57. What belongs in Go's context values?


    | rednafi.com
  58. When perfection is table stakes


    | lukeplant.me.uk
  59. AI (and) Maximalism


    | kerkour.com
  60. Do you need a repository layer on top of sqlc?


    | rednafi.com
  61. Wrapping a gRPC client in Go


    | rednafi.com
  62. Kermit Roosevelt


    | chriscoyier.net
  63. tree-style invite systems reduce AI slop


    | abyss.fish
  64. I’ve added human.json to my website


    | sethmlarson.dev
  65. In praise of the etcd codebase


    | rednafi.com
  66. AI is my CMS


    | chriscoyier.net
  67. New Notes RSS feed


    | btao.org
  68. Dear HTTP service, how can I trust you not to break my heart?


    | willem.dev
  69. Mojo's not (yet) Python


    | notes.eatonphil.com
  70. Untitled


    | chriscoyier.net
  71. Rust is slowly but surely eating PostgreSQL: Deep dive into Neon, ParadeDB, PgDog and more


    | kerkour.com
  72. The Normie Loop


    | btao.org
  73. Claude is an Electron App


    | chriscoyier.net
  74. LLMs are bad at vibing specifications


    | buttondown.com
  75. Announcing fluent-codegen


    | lukeplant.me.uk
  76. What’s up Python? d-strings, SSE in Pydantic and... a new Python?


    | bitecode.dev
  77. Weekly Update 494


    | troyhunt.com
  78. Examples for the tcpdump and dig man pages


    | jvns.ca
  79. Untitled


    | chriscoyier.net
  80. Go errors: to wrap or not to wrap?


    | rednafi.com
  81. Mad CSS


    | chriscoyier.net
  82. Untitled


    | chriscoyier.net
  83. A fighting retreat


    | antithesis.com
  84. Using Rust and Postgres for everything: patterns learned over the years


    | kerkour.com
  85. Mutate your locked state inside a closure


    | rednafi.com
  86. Relative “Dependency Cooldowns” in pip v26.0 with crontab


    | sethmlarson.dev
  87. Free Books


    | buttondown.com
  88. Me Trying To Take a Selfie in 2001


    | chriscoyier.net
  89. Man Cereal


    | joshcollinsworth.com
  90. Claude is an Electron App because we’ve lost native


    | tonsky.me
  91. The illusion of control in AI-assisted engineering


    | safjan.com
  92. FOREVERGREEN


    | chriscoyier.net
  93. Weekly Update 493


    | troyhunt.com
  94. External import maps, today!


    | lea.verou.me
  95. Source-available projects and their AI contribution policies


    | notes.eatonphil.com
  96. Everything changes, and nothing changes


    | btao.org
  97. Yes, and...


    | htmx.org
  98. Formal methods for the unsafe side of the Force


    | antithesis.com
  99. Navigating git diffs in VSCode with VSCodeVim


    | raphaelkabo.com
  100. Open Source Contributor Spotlight: Kosta Tarasov and DataFusion


    | notes.eatonphil.com
  101. Version Your Vectors - Index Versioning as the Missing Layer in RAG Observability and Compliance


    | safjan.com
  102. I’m unsubscribing from the AI discourse


    | bell.bz
  103. My AI wishlist


    | kerkour.com
  104. VictoriaMetrics February 2026 Ecosystem Updates


    | victoriametrics.com
  105. SFQ: Simple, Stateless, Stochastic Fairness


    | brooker.co.za
  106. Self-hosting Matrix Synapse with Docker Compose and Caddy


    | raphaelkabo.com
  107. Introducing RSS-O-Matic


    | btao.org
  108. I started a software research company


    | notes.eatonphil.com
  109. Breaking SHA-2: length extension attacks in practice with Rust


    | kerkour.com
  110. Weekly Update 492


    | troyhunt.com
  111. What canceled my Go context?


    | rednafi.com
  112. Can you reverse engineer our neural network?


    | blog.janestreet.com
  113. New Blog Post: Some Silly Z3 Scripts I Wrote


    | buttondown.com
  114. The Picture They Paint of You


    | ferd.ca
  115. Reading English from 1000 AD


    | lewiscampbell.tech
  116. Is NIST's cryptography backdoored?


    | kerkour.com
  117. We have pgvector at home


    | notes.eatonphil.com
  118. Editorial rigor


    | petemillspaugh.com
  119. Take It From Me by Alia Hanna Habib


    | petemillspaugh.com
  120. The Design of Books by Debbie Berne


    | petemillspaugh.com
  121. Unhurried ambition


    | petemillspaugh.com
  122. Structured concurrency & Go


    | rednafi.com
  123. Turn Dependabot Off


    | words.filippo.io
  124. Catching a caching bug at Readyset


    | antithesis.com
  125. Stream of Consciousness Driven Development


    | buttondown.com
  126. How Rust and Its Compiler Have Revolutionized Software Engineering and Reliability


    | kerkour.com
  127. Notes on clarifying man pages


    | jvns.ca
  128. exe.dev: a new hosting solution for your prototypes


    | bitecode.dev
  129. Weekly Update 491


    | troyhunt.com
  130. 0057: consulting, zest progress, reads that lasted, books, links


    | scattered-thoughts.net
  131. 2025


    | scattered-thoughts.net
  132. Home-cooked software


    | hamvocke.com
  133. How much time did you use your phone this weekend?


    | kerkour.com
  134. Generating vector embeddings for semantic search locally


    | notes.eatonphil.com
  135. Inspecting the Source of Go Modules


    | words.filippo.io
  136. Proving What's Possible


    | buttondown.com
  137. Deploying Rust to production checklist


    | kerkour.com
  138. VictoriaMetrics at FOSDEM, Cloud Native Days France, and CfgMgmtCamp Ghent


    | victoriametrics.com
  139. Results from the Advent of FPGA Challenge


    | blog.janestreet.com
  140. VictoriaLogs in VictoriaMetrics Cloud: Fast, Cost-Effective Log Management is Here


    | victoriametrics.com
  141. Weekly Update 490


    | troyhunt.com
  142. Every Man a Microservice


    | grantslatton.com
  143. Paths of MySQL, vector search edition


    | notes.eatonphil.com
  144. You Are Here


    | brooker.co.za
  145. Careless People by Sarah Wynn-Williams


    | petemillspaugh.com
  146. What's up Python? Astral's new service, pandas 3 and a new ORM...


    | bitecode.dev
  147. I design with Claude more than Figma now


    | blog.janestreet.com
  148. Publishing a Python CLI Tool to Homebrew


    | safjan.com
  149. Logic for Programmers New Release and Next Steps


    | buttondown.com
  150. Weekly Update 489


    | troyhunt.com
  151. I listen to a lot of I Prevail


    | bell.bz
  152. Rust is Just a Tool


    | lewiscampbell.tech
  153. What’s new in VictoriaMetrics Anomaly Detection (2025)


    | victoriametrics.com
  154. Companies behind Postgres 18 development


    | notes.eatonphil.com
  155. A Gentleman in Moscow by Amor Towles


    | petemillspaugh.com
  156. Manufacturing as Maintenance


    | grantslatton.com
  157. all eyes on minneapolis


    | j3s.sh
  158. Fun shadow coding challenge


    | bell.bz
  159. TAG Bulletin: Q4 2025


    | blog.google
  160. It really is the year of the website


    | bell.bz
  161. How we interfaced single-threaded C++ with multi-threaded Rust


    | antithesis.com
  162. Deep dive into Turso, the "SQLite rewrite in Rust"


    | kerkour.com
  163. The limiting factor at work isn't writing code anymore


    | safjan.com
  164. There and Back Again: From Quickstrom to Bombadil


    | wickstrom.tech
  165. Weekly Update 488


    | troyhunt.com
  166. Some notes on starting to use Django


    | jvns.ca
  167. VictoriaMetrics January 2026 Ecosystem Updates


    | victoriametrics.com
  168. The Value of Things


    | journal.stuffwithstuff.com
  169. Your Go tests probably don't need a mocking library


    | rednafi.com
  170. Elegant and safe concurrency in Rust with async combinators


    | kerkour.com
  171. Pass@k is Mostly Bunk


    | brooker.co.za
  172. Refinement without Specification


    | buttondown.com
  173. Fast Unrounded Scaling: Proof by Ivy


    | research.swtch.com
  174. Floating-Point Printing and Parsing Can Be Simple And Fast


    | research.swtch.com
  175. LLMs and your career


    | notes.eatonphil.com
  176. Weekly Update 487


    | troyhunt.com
  177. Weekly Update 486


    | troyhunt.com
  178. Full context commitment for AES authenticated encryption


    | kerkour.com
  179. Building Critical Infrastructure with htmx: Network Automation for the Paris 2024 Olympics


    | htmx.org
  180. On Burnout


    | btao.org
  181. My review of the Nüborn Baby at 3 months


    | joshcollinsworth.com
  182. Let's Fucking Encrypt Everything


    | kerkour.com
  183. Podcast: На Маке нет никаких шкафов @ Думаем дальше


    | tonsky.me
  184. My Gripes with Prolog


    | buttondown.com
  185. Towards safe and modern cryptography: state of the Rust ecosystem in 2026


    | kerkour.com
  186. VictoriaLogs Basics: What You Need to Know, with Examples & Visuals


    | victoriametrics.com
  187. Who Decides Who Doesn’t Deserve Privacy?


    | troyhunt.com
  188. The Insecure Evangelism of LLM Maximalists


    | lewiscampbell.tech
  189. What's New in VictoriaMetrics Cloud Q4 2025? New tiers, more deployment options, IaC and alerting rules.


    | victoriametrics.com
  190. ChaCha12-BLAKE3 is now ChaCha20-BLAKE3 and is stable and production-ready


    | kerkour.com
  191. Agent Safety is a Box


    | brooker.co.za
  192. Using MLflow-RAGAS Integration Without Tracing


    | safjan.com
  193. Pulling a New Proof from Knuth’s Fixed-Point Printer


    | research.swtch.com
  194. Floating Point Formatting


    | research.swtch.com
  195. So, you want to serialize a B-Tree (to save it to disk or send it over the network)?


    | kerkour.com
  196. Vibe coding tools observability with VictoriaMetrics Stack and OpenTelemetry


    | victoriametrics.com
  197. A data model for Git (and other docs updates)


    | jvns.ca
  198. RAG Evaluation with RAGAS and MLflow - A Practical Guide


    | safjan.com
  199. SIMD programming in pure Rust


    | kerkour.com
  200. Web dependencies are broken. Can we fix them?


    | lea.verou.me
  201. The Liskov Substitution Principle does more than you think


    | buttondown.com
  202. Fun with Algebraic Effects - from Toy Examples to Hardcaml Simulations


    | blog.janestreet.com
  203. go.sum Is Not a Lockfile


    | words.filippo.io
  204. Software Acceleration and Desynchronization


    | ferd.ca
  205. It’s hard to justify Tahoe icons


    | tonsky.me
  206. Distinguishing yourself early in your career as a developer


    | notes.eatonphil.com
  207. Writing for Developers by Cynthia Dunlop and Piotr Sarna


    | petemillspaugh.com
  208. December 2025


    | petemillspaugh.com
  209. Leaving Twitter


    | petemillspaugh.com
  210. Looking Back at 2025


    | hamvocke.com
  211. Year in community


    | notes.eatonphil.com
  212. What’s up Python? Astral's new type checker, McGugan's new tool and Django new CSRF protection


    | bitecode.dev
  213. 2025 Year in Review


    | joshcollinsworth.com
  214. Write your book like you’d run a startup


    | petemillspaugh.com
  215. The couch problem


    | petemillspaugh.com
  216. HTML Input Validation is (maybe) Good


    | htmhell.dev
  217. Bibliotech by John Palfrey


    | petemillspaugh.com
  218. Replacing JS with just HTML


    | htmhell.dev
  219. Class names for content not design


    | htmhell.dev
  220. Abbreviations done right: The <abbr> element and why not use it


    | htmhell.dev
  221. How a US Software Provider Improved Traffic Alerting with VictoriaMetrics Anomaly Detection


    | victoriametrics.com
  222. The three semantics of HTML


    | htmhell.dev
  223. Smartphones are black holes


    | kerkour.com
  224. Year in books


    | notes.eatonphil.com
  225. For the Love of <details>


    | htmhell.dev
  226. mprocs: start all your project's commands at once


    | bitecode.dev
  227. (Social) media manipulation in one image


    | kerkour.com
  228. Eating marshmallows


    | petemillspaugh.com
  229. The World Beyond Your Head by Matthew B. Crawford


    | petemillspaugh.com
  230. The HTML Elements Time Forgot


    | htmhell.dev
  231. Styling by Language: Using the lang Attribute for Multilingual Design


    | htmhell.dev
  232. The many lives of the page title


    | htmhell.dev
  233. Building a Transparent Keyserver


    | words.filippo.io
  234. Help my website is too small


    | lukeplant.me.uk
  235. Wrapping up 2025 (sort of)


    | bell.bz
  236. VictoriaMetrics 2025 Developer Experience: A Year in Review


    | victoriametrics.com
  237. Semantics beyond the tag name


    | htmhell.dev
  238. How PyTorch Generates Random Numbers in Parallel on the GPU


    | blog.codingconfessions.com
  239. Pop quiz: what time was it?


    | dave.cheney.net
  240. Forms are a badly designed part of HTML


    | htmhell.dev
  241. Secure your Rust projects against supply chain attacks with Dev Containers


    | kerkour.com
  242. System calls: how programs talk to the Linux kernel


    | serversfor.dev
  243. Don't leave the screen reader hungry


    | htmhell.dev
  244. Spotify’s performance & control across large monitoring environments with VictoriaMetrics


    | victoriametrics.com
  245. On the success of 'natural language programming'


    | brooker.co.za
  246. Giving pages a clear shape by using headings


    | htmhell.dev
  247. Making sense of the video formats / codecs / containers mess (and what to use for long-term video archival)


    | kerkour.com
  248. VictoriaMetrics Achieves Red Hat OpenShift Operator Certification


    | victoriametrics.com
  249. What Does a Database for SSDs Look Like?


    | brooker.co.za
  250. Statistics made simple


    | tonsky.me
  251. Them’s the Breaks


    | htmhell.dev
  252. Justified


    | bitecode.dev
  253. The Wonderful World of Web Feeds


    | htmhell.dev
  254. Tap compare testing for service migration


    | rednafi.com
  255. Hell is other people's markup


    | htmhell.dev
  256. Reviving a Dead Pet Project


    | hamvocke.com