Feed

  1. USPS! It’s not possible for me to use your Change of Address tool


    | chriscoyier.net
  2. One Fix for DNS Setting Itself On Restart to 127.0.0.1


    | chriscoyier.net
  3. Why This Old Python Performance Trick Doesn’t Matter Anymore


    | blog.codingconfessions.com
  4. Flags for discoverable test config in Go


    | rednafi.com
  5. Want to meet people, try charging them for it?


    | notes.eatonphil.com
  6. Statically checking Python dicts for completeness


    | lukeplant.me.uk
  7. Lecture: Queueing theory on a cocktail napkin


    | blog.danslimmon.com
  8. Rust: A programming language that grows with you, your career and your projects


    | kerkour.com
  9. You can cheat a test suite with a big enough polynomial


    | buttondown.com
  10. Weekly Update 457


    | troyhunt.com
  11. Debugging memory leaks in Postgres, jemalloc edition


    | notes.eatonphil.com
  12. Career advice, or something like it


    | brooker.co.za
  13. Homomorphically Encrypting CRDTs


    | jakelazaroff.com
  14. Making System Calls in x86-64 Assembly


    | blog.codingconfessions.com
  15. UN Open Source Week 2025: Security for the Long-Haul


    | sethmlarson.dev
  16. How to Dress and Undress your Home


    | solar.lowtechmagazine.com
  17. Media Diet


    | chriscoyier.net
  18. Solving LinkedIn Queens with SMT


    | buttondown.com
  19. Weekly Update 456


    | troyhunt.com
  20. Introduction to embedded development with Rust: Overview of the ecosystem


    | kerkour.com
  21. Lest We Forget The Horrors


    | chriscoyier.net
  22. The Gap Through Which We Praise the Machine


    | ferd.ca
  23. Weekly Update 455


    | troyhunt.com
  24. One Law to Rule All Code Optimizations


    | blog.codingconfessions.com
  25. AI is a gamechanger for TLA+ users


    | buttondown.com
  26. Pikmin 2 International Treasure Hoard


    | sethmlarson.dev
  27. Weekly Update 454


    | troyhunt.com
  28. Systems Fun at HotOS


    | brooker.co.za
  29. What's up Python? Faster CPython cancelled, a new installer and yet another type checker


    | bitecode.dev
  30. 0053: consulting, go tips, benchmark_mode, niri, linkrot, sea of nos, llm outsourcing, books


    | scattered-thoughts.net
  31. Consider Knitting


    | journal.stuffwithstuff.com
  32. Volunteer Responsibility Amnesty Day (Spring 2025)


    | sethmlarson.dev
  33. What does "Undecidable" mean, anyway


    | buttondown.com
  34. Streaming


    | chriscoyier.net
  35. Weekly Update 453


    | troyhunt.com
  36. Debugging X86-64 Assembly with GDB


    | blog.codingconfessions.com
  37. This generous donation fills me with positivity and hope


    | bell.bz
  38. Access Control Syntax


    | journal.stuffwithstuff.com
  39. Cheerleading


    | notes.eatonphil.com
  40. You probably don't need a DI framework


    | rednafi.com
  41. White Noise


    | chriscoyier.net
  42. Debugging memory leaks in Postgres, heaptrack edition


    | notes.eatonphil.com
  43. How to securely encrypt your sensitive data with envelope encryption and KMS in Rust


    | kerkour.com
  44. Finding hard 24 puzzles with planner programming


    | buttondown.com
  45. Announcing Markdown Ninja: Open Source alternative to Substack, Mailchimp and Netlify


    | kerkour.com
  46. Good Performance for Bad Days


    | brooker.co.za
  47. Have I Been Pwned 2.0 is Now Live!


    | troyhunt.com
  48. LLM Memory


    | grantslatton.com
  49. Weekly Update 452


    | troyhunt.com
  50. Building (and Breaking) Your First X86 Assembly Program


    | blog.codingconfessions.com
  51. Logo:


    | tonsky.me
  52. Petit manifeste low-tech


    | ploum.net
  53. Welcoming the Malaysian Government to Have I Been Pwned


    | troyhunt.com
  54. TAG Bulletin: Q1 2025


    | blog.google
  55. Enabling open working on Piccalilli with content collections


    | bell.bz
  56. Modeling Awkward Social Situations with TLA+


    | buttondown.com
  57. Comment l’université tue le livre (et les intellectuels)


    | ploum.net
  58. We launched a community supporters system for Piccalilli today


    | bell.bz
  59. Knowledge creates technical debt


    | lukeplant.me.uk
  60. Pour une poignée de bits…


    | ploum.net
  61. Claude Code


    | grantslatton.com
  62. Weekly Update 451


    | troyhunt.com
  63. The Am Dash


    | chriscoyier.net
  64. “I’d rather read the prompt”


    | chriscoyier.net
  65. After the Breach: Finding new Partners with Solutions for Have I Been Pwned Users


    | troyhunt.com
  66. Write the most clever code you possibly can


    | buttondown.com
  67. Welcoming the Isle of Man Government to Have I Been Pwned


    | troyhunt.com
  68. Animal CrosSCII


    | sethmlarson.dev
  69. How to build small and secure Docker images for Rust (FROM scratch)


    | kerkour.com
  70. Color models for humans and devices


    | developer.mozilla.org
  71. christopher.org for the next 100 years


    | chriscoyier.net
  72. The System-Level Foundation of Assembly


    | blog.codingconfessions.com
  73. Passkeys for Normal People


    | troyhunt.com
  74. Podfox: World's First Container-Aware Browser


    | val.packett.cool
  75. Voicemail for notifications


    | sethmlarson.dev
  76. Weekly Update 450


    | troyhunt.com
  77. The Have I Been Pwned Alpine Grand Tour


    | troyhunt.com
  78. jQuery Reunion


    | chriscoyier.net
  79. What's up Python? Python in hardware, lock file support and a new type checker


    | bitecode.dev
  80. Welcoming The Gambia National CSIRT to Have I Been Pwned


    | troyhunt.com
  81. When You Get to Be Smart Writing a Macro


    | tonsky.me
  82. Untitled


    | chriscoyier.net
  83. Chilis in Oregon


    | chriscoyier.net
  84. The worst nightmare of small entrepreneurs happened. Products access postmortem.


    | kerkour.com
  85. VSCode workspace shortcuts with .desktop files on Linux


    | lovergne.dev
  86. Differential Coverage for Debugging


    | research.swtch.com
  87. Solution-space Taste


    | grantslatton.com
  88. Requirements change until they don't


    | buttondown.com
  89. The next big thing in Python


    | bitecode.dev
  90. Sorting Algorithm: The Game


    | grantslatton.com
  91. Burn your title


    | notes.eatonphil.com
  92. Preventing accidental struct copies in Go


    | rednafi.com
  93. Transactions are a protocol


    | notes.eatonphil.com
  94. Decomposing Aurora DSQL


    | brooker.co.za
  95. Dédicace à Trolls & Vélo et magie cycliste


    | ploum.net
  96. The Halting Problem is a terrible example of NP-Harder


    | buttondown.com
  97. Avoiding memory fragmentation in Rust with jemalloc


    | kerkour.com
  98. À la recherche de l’attention perdue


    | ploum.net
  99. Go 1.24's "tool" directive


    | rednafi.com
  100. Concurrency in Haskell: Fast, Simple, Correct


    | bitbashing.io
  101. Binary Arithmetic and Bitwise Operations for Systems Programming


    | blog.codingconfessions.com
  102. Capturing console output in Go tests


    | rednafi.com
  103. Default styles for h1 elements are changing


    | developer.mozilla.org
  104. De l’utilisation des smartphones et des tablettes chez les adolescents


    | ploum.net
  105. Zig's new LinkedList API (it's time to learn @fieldParentPtr)


    | openmymind.net
  106. How to implement cryptographically-secure API keys in Rust


    | kerkour.com
  107. Solving a "Layton Puzzle" with Prolog


    | buttondown.com
  108. La fin d’un monde ?


    | ploum.net
  109. Typo Minimizing Keyboard


    | grantslatton.com
  110. A Fresh Coat of Paint


    | hamvocke.com
  111. The Curve is Bending


    | grantslatton.com
  112. Understanding Computer Organization from First Principles


    | blog.codingconfessions.com
  113. Graph Search Algorithm: The Game


    | grantslatton.com
  114. The blissful zen of a good side project


    | joshcollinsworth.com
  115. A rough survey of compilation, recompilation, and compile-time evaluation


    | scattered-thoughts.net
  116. An incredible week for Markdown Ninja


    | kerkour.com
  117. What's up python? Less perf, no sugar and more bugs


    | bitecode.dev
  118. Architecting and building medium-sized web services in Rust with Axum, SQLx and PostgreSQL


    | kerkour.com
  119. [April Cools] Gaming Games for Non-Gamers


    | buttondown.com
  120. Deferred teardown closure in Go testing


    | rednafi.com
  121. Talk: Clojure workflow with Sublime Text @ SciCloj


    | tonsky.me
  122. Things that go wrong with disk IO


    | notes.eatonphil.com
  123. Allocator.resize


    | openmymind.net
  124. Betteridge's Law of Software Engineering Specialness


    | buttondown.com
  125. How, as an indie author, I have fought and won against the piracy of my books


    | kerkour.com
  126. Black Hat Rust Promotion


    | kerkour.com
  127. One or Two? How Many Queues?


    | brooker.co.za
  128. Phil Eaton on Technical Blogging


    | notes.eatonphil.com
  129. Creating problems to sell the solution is evil


    | kerkour.com
  130. Three flavors of sorting Go slices


    | rednafi.com
  131. Podcast: Мир стал строго лучше @ Думаем дальше


    | tonsky.me
  132. Hardware-Aware Coding: CPU Architecture Concepts Every Developer Should Know


    | blog.codingconfessions.com
  133. Du désir profond de se faire arnaquer


    | ploum.net
  134. A 10x faster batch job by batching PostgreSQL inserts/updates with Rust and SQLx


    | kerkour.com
  135. The Compressed Book Edition


    | solar.lowtechmagazine.com
  136. Writing against the global lobotomy


    | kerkour.com
  137. Cofessions Of A Code Addict


    | lovergne.dev
  138. Verification-First Development


    | buttondown.com
  139. We may finally be able to ditch NIST (and FIPS) cryptography


    | kerkour.com
  140. Implications of Global Privacy Control


    | developer.mozilla.org
  141. ArenaAllocator.free and Nested Arenas


    | openmymind.net
  142. did u ever read so hard u accidentally wrote?


    | blog.danslimmon.com
  143. 0052: hytradboi videos and post-mortem, zest repo, no internet, on social media, my product is my garden, datafusion and clickhouse jits, books


    | scattered-thoughts.net
  144. Python Performance: Why 'if not list' is 2x Faster Than Using len()


    | blog.codingconfessions.com
  145. New Blog Post: "A Perplexing Javascript Parsing Puzzle"


    | buttondown.com
  146. Nil comparisons and Go interface


    | rednafi.com
  147. N’attendez pas, changez vos paradigmes !


    | ploum.net
  148. When worse is better


    | bitecode.dev
  149. Rohit Chess


    | grantslatton.com
  150. Computer, Enhance!


    | lovergne.dev
  151. What makes concurrency so hard?


    | lovergne.dev
  152. Models All the Way Down


    | lovergne.dev
  153. AI: Where in the Loop Should Humans Go?


    | ferd.ca
  154. Zig's dot star syntax (value.*)


    | openmymind.net
  155. Stacked middleware vs embedded delegation in Go


    | rednafi.com
  156. Web browsers and our future as developers


    | bitecode.dev
  157. HYTRADBOI 2025 postmortem


    | scattered-thoughts.net
  158. What's up Python? Better packaging and better debugging


    | bitecode.dev
  159. Minimal downtime Postgres major version upgrades with EDB Postgres Distributed


    | notes.eatonphil.com
  160. Tracking Down zsh Alias Plugin Sources


    | safjan.com
  161. GetOrPut With String Keys


    | openmymind.net
  162. A 16-Color Vim Color Scheme


    | hamvocke.com
  163. Other kinds of talks


    | scattered-thoughts.net
  164. [Course Launch] Hands-on Introduction to X86 Assembly


    | blog.codingconfessions.com
  165. Folding code blocks in VS Code


    | petemillspaugh.com
  166. Slashing my ".bashrc" in half


    | bitecode.dev
  167. AI software I'm surprised doesn't exist yet


    | grantslatton.com
  168. Comparing Strings as Integers with @bitCast


    | openmymind.net
  169. Five Kinds of Nondeterminism


    | buttondown.com
  170. CSS user-select


    | petemillspaugh.com
  171. An interview with Leonard Richardson


    | htmx.org
  172. De la soumission au technofascisme religieux


    | ploum.net
  173. My Top 15 OS Books: From Theory and Implementation to Systems Programming


    | blog.codingconfessions.com
  174. CSS ampersand selector


    | petemillspaugh.com
  175. A year of uv: pros, cons, and should you migrate


    | bitecode.dev
  176. From web developer to database developer in 10 years


    | notes.eatonphil.com
  177. Writing TILs


    | petemillspaugh.com
  178. this, self, window, global, globalThis, etc.


    | petemillspaugh.com
  179. Blob API


    | petemillspaugh.com
  180. 0051: hytradboi program and tickets, query compilers, decorrelation encore, books, misc


    | scattered-thoughts.net
  181. Switching on Strings in Zig


    | openmymind.net
  182. Christ the True and Better Frodo


    | lukeplant.me.uk
  183. Are Efficiency and Horizontal Scalability at odds?


    | buttondown.com
  184. Is ops a bullshit job?


    | blog.danslimmon.com
  185. CSS cascade layers


    | petemillspaugh.com
  186. CSS revert-layer


    | petemillspaugh.com
  187. Guide to Managing VS Code Keyboard Shortcuts


    | safjan.com
  188. Machine: Learning; Human: Unlearning;


    |
  189. Recording: How Modern CPUs Execute Your Code: A Deep Dive into Performance


    | blog.codingconfessions.com
  190. Why does Go's io.Reader have such a weird signature?


    | rednafi.com
  191. Using Generics to Inject Stubs when Testing


    | openmymind.net
  192. Technocapital


    | grantslatton.com
  193. Passwords suck a lot. Can passkeys replace them?


    | kerkour.com
  194. Go slice gotchas


    | rednafi.com
  195. Let's compile Python 1.0


    | bitecode.dev
  196. What Fekete's Anomaly Can Teach Us About Isolation


    | brooker.co.za
  197. Versioning versus Coordination


    | brooker.co.za
  198. Making Ham, 2025 Edition


    | hamvocke.com
  199. Writing a good design document


    | grantslatton.com
  200. What's up Python? A new Windows installer, ruff will type check, Pypi quarantines...


    | bitecode.dev
  201. "Passage"


    | grantslatton.com
  202. HYTRADBOI 2025 program and tickets


    | scattered-thoughts.net
  203. What hard thing does your tech make easy?


    | buttondown.com
  204. Incident SEV scales are a waste of time


    | blog.danslimmon.com
  205. Edit for clarity


    | notes.eatonphil.com
  206. A Software Engineer's Guide to Reading Research Papers


    | blog.codingconfessions.com
  207. In Zig, What's a Writer?


    | openmymind.net
  208. Goodbye, Griff. You were a good boy.


    | joshcollinsworth.com
  209. An interview with Chris Wanstrath aka @defunkt, Creator of pjax


    | htmx.org
  210. An interview with Makinde Adeagbo, Creator of Primer


    | htmx.org
  211. An interview with Mike Amundsen, Author of 'RESTful Web APIs'


    | htmx.org
  212. Vendoring


    | htmx.org
  213. Change Python's syntax with the "# coding:" trick


    | bitecode.dev
  214. Launching Live Courses on Systems Programming


    | blog.codingconfessions.com
  215. What should I know about JavaScript engines and runtimes?


    | petemillspaugh.com
  216. An explosion of transitive dependencies


    | notes.eatonphil.com
  217. Rare words in common phrases, and how to avoid getting them wrong


    | joshcollinsworth.com
  218. JavaScript Temporal is coming


    | developer.mozilla.org
  219. SHA-3 Explained: Understanding The Sponge Construction, Keccak, SHAKE, KMAC, TurboSHAKE and KangarooTwelve


    | kerkour.com
  220. Hacking Subaru: Tracking and Controlling Cars via the STARLINK Admin Panel


    | samcurry.net
  221. The Juggler's Curse


    | buttondown.com
  222. Embedding Python in Rust (for tests)


    | notes.eatonphil.com
  223. Gloomy Season


    | hamvocke.com
  224. Using SIMD to Tell if the High Bit is Set


    | openmymind.net
  225. The domain knowledge dilemma


    | rednafi.com
  226. Linux Context Switches: The Truth About TLB Flushes


    | blog.codingconfessions.com
  227. Kind Engineering


    | hamvocke.com
  228. Logical replication in Postgres: Basics


    | notes.eatonphil.com
  229. Simple In-Memory Knowledge Graphs for Quick Graph Querying


    | safjan.com
  230. What are the Rosettas of formal specification?


    | buttondown.com
  231. Peeking Behind Zig Interfaces by Creating a Dummy std.Random Implementation


    | openmymind.net
  232. Live Session: How Modern CPUs Execute Your Code: A Deep Dive into Performance


    | blog.codingconfessions.com
  233. Fix your website's Largest Contentful Paint by optimizing image loading


    | developer.mozilla.org
  234. How Unix Spell Ran in 64kB RAM


    | blog.codingconfessions.com
  235. Hierarchical rate limiting with Redis sorted sets


    | rednafi.com
  236. Alternatives to htmx


    | htmx.org
  237. The missing tier for query compilers


    | scattered-thoughts.net
  238. Yes, you should use a Python venv in a container like docker


    | bitecode.dev
  239. Dynamic shell variables


    | rednafi.com
  240. A Real World wasm to htmx Port


    | htmx.org
  241. Comptime as Configuration


    | openmymind.net
  242. MDN 2024 content projects


    | developer.mozilla.org
  243. "Logic for Programmers" Project Update


    | buttondown.com
  244. Link blog in a static site


    | rednafi.com
  245. Design Patterns


    | grantslatton.com
  246. The Joy of Under-Engineering


    | hamvocke.com
  247. Zig's @bitCast


    | openmymind.net
  248. All your Python project in one file with shiv


    | bitecode.dev
  249. How to write complex software


    | grantslatton.com
  250. TinyFeed


    | lovergne.dev
  251. The future of htmx


    | htmx.org
  252. blogs rot. wikis wait.


    | j3s.sh
  253. Benchmarking RSA Key Generation


    | words.filippo.io
  254. Running only a single instance of a process


    | rednafi.com
  255. Looking Back at 2024


    | hamvocke.com
  256. How I run a coffee club


    | notes.eatonphil.com