Feed

  1. Weekly Update 484


    | troyhunt.com
  2. The couch problem


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


    | htmhell.dev
  4. Bibliotech by John Palfrey


    | petemillspaugh.com
  5. Replacing JS with just HTML


    | htmhell.dev
  6. Getting started with Playdate on Ubuntu 🟹


    | sethmlarson.dev
  7. Class names for content not design


    | htmhell.dev
  8. Blind Carbon Copy (BCC) for SMS


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


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


    | victoriametrics.com
  11. The three semantics of HTML


    | htmhell.dev
  12. Smartphones are black holes


    | kerkour.com
  13. Year in books


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


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


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


    | kerkour.com
  17. PEP 770 Software Bill-of-Materials (SBOM) data from PyPI, Fedora, and Red Hat


    | sethmlarson.dev
  18. Eating marshmallows


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


    | petemillspaugh.com
  20. The HTML Elements Time Forgot


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


    | htmhell.dev
  22. Weekly Update 483


    | troyhunt.com
  23. The many lives of the page title


    | htmhell.dev
  24. Backing up Spotify


    | annas-archive.li
  25. Building a Transparent Keyserver


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


    | lukeplant.me.uk
  27. How we interfaced single-threaded C++ with multi-threaded Rust and lived to tell the tale


    | antithesis.com
  28. Wrapping up 2025 (sort of)


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


    | victoriametrics.com
  30. Semantics beyond the tag name


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


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


    | dave.cheney.net
  33. Delta emulator adds support for SEGA Genesis games


    | sethmlarson.dev
  34. Forms are a badly designed part of HTML


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


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


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


    | htmhell.dev
  38. Weekly Update 482


    | troyhunt.com
  39. EMTBs in Bend


    | chriscoyier.net
  40. Spotify’s performance & control across large monitoring environments with VictoriaMetrics


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


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


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


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


    | victoriametrics.com
  45. Statistics made simple


    | tonsky.me
  46. What Does a Database for SSDs Look Like?


    | brooker.co.za
  47. Them’s the Breaks


    | htmhell.dev
  48. Justified


    | bitecode.dev
  49. In the economy of user effort, be a bargain, not a scam


    | lea.verou.me
  50. The Wonderful World of Web Feeds


    | htmhell.dev
  51. Media Diet


    | chriscoyier.net
  52. Tap compare testing for service migration


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


    | htmhell.dev
  54. Processing 630 Million More Pwned Passwords, Courtesy of the FBI


    | troyhunt.com
  55. Reviving a Dead Pet Project


    | hamvocke.com
  56. A11y Considerations in Math on the Web


    | htmhell.dev
  57. Ol’ Bob


    | chriscoyier.net
  58. How HTML changes in ePub


    | htmhell.dev
  59. Some Fun Software Facts


    | buttondown.com
  60. Firecracker deep dive: How Rust and microVMs are revolutionizing cloud infrastructure


    | kerkour.com
  61. Extracting Nintendo Switch “Play Activity” with OCR


    | sethmlarson.dev
  62. L’autocomplĂ©tion de nos intentions


    | ploum.net
  63. a11y freedom beaver


    | htmhell.dev
  64. Encryption protects AGAINST criminals


    | kerkour.com
  65. Discover Dialog


    | htmhell.dev
  66. What’s up Python ? Rust in CPython, immutable dicts, unpacking in comprehensions...


    | bitecode.dev
  67. Notes on building CRDT-based local-first and end-to-end encrypted applications


    | kerkour.com
  68. What's wrong with this HTML, and is it valid?


    | htmhell.dev
  69. Controlling dialogs and popovers with the Invoker Commands API


    | htmhell.dev
  70. 0056: consulting, zest progress, existentialize, modular borrowing, do we understand sql, zjit updates, books


    | scattered-thoughts.net
  71. Accessible by Design: The Role of the 'lang' Attribute


    | htmhell.dev
  72. Weekly Update 481


    | troyhunt.com
  73. The Jeopardy Phenomenon


    | chriscoyier.net
  74. Mais c’est plus joli !


    | ploum.net
  75. IDREFs: What they are and how to use them


    | htmhell.dev
  76. Referencing HTML elements inside Shadow DOM


    | htmhell.dev
  77. Why Does Have I Been Pwned Contain "Fake" Email Addresses?


    | troyhunt.com
  78. How CRDTs and Rust are revolutionizing distributed systems and local-first applications


    | kerkour.com
  79. When your customer leads your Series A


    | antithesis.com
  80. AI optimism is a class privilege


    | joshcollinsworth.com
  81. Getting from tested to battle-tested


    | blog.janestreet.com
  82. Speculation rules improvements


    | htmhell.dev
  83. Public library holds as your want-to-read book list


    | petemillspaugh.com
  84. Using the Ancient Evils for Debugging


    | htmhell.dev
  85. Weekly Update 480


    | troyhunt.com
  86. The Linux kernel is just a program


    | serversfor.dev
  87. Our latest updates across the VictoriaMetrics Observability ecosystem


    | victoriametrics.com
  88. Top layer troubles: popover vs. dialog


    | htmhell.dev
  89. Splintered failure modes in Go


    | rednafi.com
  90. We finished the Chinese release


    | annas-archive.li
  91. Working Faster with Git Worktrees and AI-Based Multi-Workflow Development


    | safjan.com
  92. Using Git Worktrees as Clean Rooms for AI-Assisted Coding


    | safjan.com
  93. It’s been a very hard year


    | bell.bz
  94. Pointer pop quiz


    | dave.cheney.net
  95. Too many people stopped learning after university. They will be the first replaced by AI.


    | kerkour.com
  96. Happy one year anniversary to Complete CSS!


    | bell.bz
  97. Is psql's scripting language Turing complete? Or: fibonacci in psql


    | notes.eatonphil.com
  98. How to get hired in 2025


    | tonsky.me
  99. I no longer block AI bots on my website


    | kerkour.com
  100. One more week to the Logic for Programmers Food Drive


    | buttondown.com
  101. Advent of FPGA — A Jane Street Challenge


    | blog.janestreet.com
  102. Weekly Update 479


    | troyhunt.com
  103. Pydantic can do what?


    | bitecode.dev
  104. Entrepreneurs and athletes


    | kerkour.com
  105. Nos comptoirs virtuels


    | ploum.net
  106. The 2025 Go Cryptography State of the Union


    | words.filippo.io
  107. Like solar, Rust is inevitable


    | kerkour.com
  108. What Now? Handling Errors in Large Systems


    | brooker.co.za
  109. How Cloudflare uses Rust to serve (and break) millions of websites at 50+ millions requests per second


    | kerkour.com
  110. It feels good to be online when most of the internet is down 😎


    | kerkour.com
  111. New Capacity Tiers in VictoriaMetrics Cloud


    | victoriametrics.com
  112. Logo: Clojure+


    | tonsky.me
  113. Why Strong Consistency?


    | brooker.co.za
  114. 80 characters? In this economy?


    | bitecode.dev
  115. La complainte du technopunk ringard


    | ploum.net
  116. Weekly Update 478


    | troyhunt.com
  117. Re-exec testing Go subprocesses


    | rednafi.com
  118. Winter is Coming: Build a Solar Powered Foot Stove


    | solar.lowtechmagazine.com
  119. Interpreting Crafting Crafting Interpreters


    | petemillspaugh.com
  120. Programmer-writer


    | petemillspaugh.com
  121. Soutenez Ploum, achetez un livre !


    | ploum.net
  122. TAG Bulletin: Q3 2025


    | blog.google
  123. Announcing 1B+ Downloads & Product Development With Logs, Traces, Metrics


    | victoriametrics.com
  124. Needy programs


    | tonsky.me
  125. x86 Addressing Modes, Part 1 — Immediate and Direct Access


    | blog.codingconfessions.com
  126. Weekly Update 477


    | troyhunt.com
  127. Get Logic for Programmers 50% off & Support Chicago Foodbanks


    | buttondown.com
  128. What's up Python? You already know :)


    | bitecode.dev
  129. Alchemy


    | joshcollinsworth.com
  130. How to Brew Solar Powered Coffee


    | solar.lowtechmagazine.com
  131. The Great (Refrigerator) Divide


    | chriscoyier.net
  132. AI Agents Observability with OpenTelemetry and the VictoriaMetrics Stack


    | victoriametrics.com
  133. La guerre que mĂšnent les robots ascientifiques contre la solitude intellectuelle


    | ploum.net
  134. Antithesis launches Kubernetes support


    | antithesis.com
  135. 2 Billion Email Addresses Were Exposed, and We Indexed Them All in Have I Been Pwned


    | troyhunt.com
  136. Rust is eating the world: From embedded firmware to cross-platform applications, databases and big servers


    | kerkour.com
  137. Image formats: Codecs and compression tools


    | developer.mozilla.org
  138. Thematic Book Series: Too Much Combustion, Too Little Fire


    | solar.lowtechmagazine.com
  139. ToiletTree Fogless Shower Mirror


    | chriscoyier.net
  140. Weekly Update 476


    | troyhunt.com
  141. An individual can change an organization


    | notes.eatonphil.com
  142. DSQL: Simplifying Architectures


    | brooker.co.za
  143. Claude Code Can Debug Low-level Cryptography


    | words.filippo.io
  144. The fetch()ening


    | htmx.org
  145. 0055: consulting, sql needed structure, slow forum, on the line, out of thin air, papers, other stuff


    | scattered-thoughts.net
  146. Quand éclatera la bulle IA



    | ploum.net
  147. Revisiting interface segregation in Go


    | rednafi.com
  148. Computer Says No: Error Reporting for LTL


    | wickstrom.tech
  149. They don't even have eyes


    | antithesis.com
  150. Microsoftℱ Ergonomic Keyboard (now sold by Incase)


    | chriscoyier.net
  151. Avoiding Homebrew Upgrades That Require Sudo on macOS


    | safjan.com
  152. Art Work by Sally Mann


    | petemillspaugh.com
  153. How Signal uses Rust to secure the communications of millions of people


    | kerkour.com
  154. Understanding Python Protocols - Structural Subtyping in Practice


    | safjan.com
  155. This Is for Everyone by Tim Berners-Lee


    | petemillspaugh.com
  156. I'm taking a break


    | buttondown.com
  157. How We (Almost) Found Chromium's Bug via Crash Reports to Report URI


    | troyhunt.com
  158. Discarding gRPC-Go: The Story Behind OTLP/gRPC Support in VictoriaTraces


    | victoriametrics.com
  159. Qu’est-ce que l’outil va faire de moi ?


    | ploum.net
  160. Pepsi, when they don't have coke


    | bitecode.dev
  161. Weekly Update 475


    | troyhunt.com
  162. Untitled


    | chriscoyier.net
  163. Transaction pooling for Postgres with pgcat


    | notes.eatonphil.com
  164. Evolution of Type Hints in Python — From Comments to Inline Typing and Beyond


    | safjan.com
  165. Keeping performance results in a separate Git branch using `git checkout --orphan`


    | safjan.com
  166. The Geomys Standard of Care


    | words.filippo.io
  167. A Systems Engineer’s Guide to Benchmarking with RDTSC


    | blog.codingconfessions.com
  168. Everything is Broken


    | chriscoyier.net
  169. Cleanup your lifetime annotations in Rust with Rc and Arc


    | kerkour.com
  170. Avoiding collisions in Go context keys


    | rednafi.com
  171. Fixing UUIDv7 (for database use-cases)


    | brooker.co.za
  172. Inside the Synthient Threat Data


    | troyhunt.com
  173. Plates


    | chriscoyier.net
  174. Modal editing is a weird historical contingency we have through sheer happenstance


    | buttondown.com
  175. I’ve been to 39 US states


    | petemillspaugh.com
  176. Diskcache, more than caching


    | bitecode.dev
  177. The Phase Change


    | buttondown.com
  178. Antithesis and the open source community


    | antithesis.com
  179. I created a Mastodon account for Pingoo


    | kerkour.com
  180. Understanding the Language Server Protocol through a Minimal Working Example


    | safjan.com
  181. Did you get lucky or unlucky?


    | antithesis.com
  182. I created a Bluesky account for Pingoo


    | kerkour.com
  183. Building SQLite extensions in Rust


    | kerkour.com
  184. I am sorry, but everyone is getting syntax highlighting wrong


    | tonsky.me
  185. vCPUs in the cloud: x86-64 vs ARM64 (aarch64)


    | kerkour.com
  186. La justesse au lieu de l’exactitude


    | ploum.net
  187. Using CSS Variables for Dynamic and Reusable Styling


    | safjan.com
  188. Oregon Rocketry


    | chriscoyier.net
  189. Python 3.14 - What didn't make the headlines


    | bitecode.dev
  190. Hacking the World Poker Tour: Inside ClubWPT Gold’s Back Office


    | samcurry.net
  191. Is Systems Research Really Just About Making Numbers Bigger?


    | brooker.co.za
  192. My Top 5 Favourite Features in Python 3.14


    | blog.codingconfessions.com
  193. Oatmeal on AI Art


    | chriscoyier.net
  194. Three ways formally verified code can go wrong in practice


    | buttondown.com
  195. A Retrospective Survey of 2024/2025 Open Source Supply Chain Compromises


    | words.filippo.io
  196. Notes on switching to Helix from vim


    | jvns.ca
  197. Programming in the Sun: A Year with the Daylight Computer


    | wickstrom.tech
  198. Bare Asterisk in Python Function Signatures - Keyword Only Arguments


    | safjan.com
  199. A beginner-friendly guide to view transitions in CSS


    | developer.mozilla.org
  200. Behind the Scenes of Pingoo: Slashing Rust allocations with mimalloc and heapless to build the fastest reverse proxy


    | kerkour.com
  201. Introducing “Moments”


    | hamvocke.com
  202. Organizing Go tests


    | rednafi.com
  203. Choosing between PostgreSQL and SQLite


    | kerkour.com
  204. What's New in VictoriaMetrics Cloud Q3 2025? From new region in Asia to proactive alerts


    | victoriametrics.com
  205. Hosting a website with automatic HTTPS and unmetered traffic for 3 € / month with Pingoo


    | kerkour.com
  206. Six Weeks, Real Progress - Exploring Shape Up for Product Work


    | safjan.com
  207. What's up Python? Lazy imports, django gets a task queue...


    | bitecode.dev
  208. How DreamHost Slashed Memory Usage by 80% and Scaled to 76 Million Time Series


    | victoriametrics.com
  209. Locality, and Temporal-Spatial Hypothesis


    | brooker.co.za
  210. Breaking “provably correct” Leftpad


    | lukeplant.me.uk
  211. #5 — September 2025


    | petemillspaugh.com
  212. DHH Is Way Worse Than I Thought


    | jakelazaroff.com
  213. Case Study: How Proton uses Rust to build secure cross-platform applications for millions of people


    | kerkour.com
  214. Email outage


    | kerkour.com
  215. Subtest grouping in Go


    | rednafi.com
  216. Understanding Weak References in Python


    | blog.codingconfessions.com
  217. How to find a domain for your startup


    | petemillspaugh.com
  218. Upcoming Conferences & Meetups: Where to Meet Our Team


    | victoriametrics.com
  219. VictoriaMetrics Long-Term Support (LTS): H2 2025 Update


    | victoriametrics.com
  220. New Blog Post: " A Very Early History of Algebraic Data Types"


    | buttondown.com
  221. My GitHub account has been blocked. Edit: Solved. Thank you all!


    | kerkour.com
  222. Implementing automatic HTTPS / TLS for Pingoo: Here is what it takes to build a secure internet


    | kerkour.com
  223. Creating a Sustainable Open Source Business Model - Introduction


    | victoriametrics.com
  224. Compiling Python to Run Anywhere


    | blog.codingconfessions.com
  225. What's a UUID, and what do you use that for?


    | bitecode.dev
  226. Simpler Parallelism with concurrent.futures


    | safjan.com
  227. Ongoing Tradeoffs, and Incidents as Landmarks


    | ferd.ca
  228. Let the domain guide your application structure


    | rednafi.com
  229. Is Zig's New Writer Unsafe?


    | openmymind.net
  230. Obscure feature + obscure feature + obscure feature = bug


    | antithesis.com
  231. De la mystification de la Grande Idée


    | ploum.net
  232. Seven Years of Firecracker


    | brooker.co.za
  233. Announcing Pingoo: The fast and secure Load Balancer / API Gateway with built-in service discovery, WAF and bot management (in Rust)


    | kerkour.com
  234. What Makes System Calls Expensive: A Linux Internals Deep Dive


    | blog.codingconfessions.com
  235. In response to a developer asking about systems


    | notes.eatonphil.com
  236. Test state, not interactions


    | rednafi.com
  237. Devotions on 1 Thessalonians 1, August 2025


    | lukeplant.me.uk
  238. Worldcat editions and holdings release


    | annas-archive.li
  239. Many Hard Leetcode Problems are Easy Constraint Problems


    | buttondown.com
  240. Protecting Rust against supply chain attacks


    | kerkour.com
  241. A simple clustering and replication solution for Postgres


    | notes.eatonphil.com
  242. Full-Stack Observability with VictoriaMetrics in the OTel Demo


    | victoriametrics.com
  243. Threading vs Multiprocessing in Python - GIL Implications and Choosing the Right Tool


    | safjan.com
  244. asyncio Basics - async/await and When to Actually Use Them


    | safjan.com
  245. Strong Eventual Consistency - The Big Idea behind CRDTs


    | lewiscampbell.tech
  246. Early return and goroutine leak


    | rednafi.com
  247. Everything is a []u8


    | openmymind.net
  248. What's up Python? Astral never stops, JetBrains gives us insights


    | bitecode.dev
  249. Weaving the Web by Tim Berners-Lee


    | petemillspaugh.com
  250. The Angels and Demons of Nondeterminism


    | buttondown.com
  251. Analytics query goes 6x faster with EDB Postgres Distributed's new analytics engine


    | notes.eatonphil.com
  252. SQL needed structure


    | scattered-thoughts.net
  253. #4 — August 2025


    | petemillspaugh.com
  254. 0054: zest namespaces, store tags after payloads, go allocation probe, everyones got one, pprof labelguns, go value types, go perf probe, tpde, anyblox, books


    | scattered-thoughts.net
  255. On the McPhee method


    | petemillspaugh.com
  256. Lifecycle management in Go tests


    | rednafi.com