<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Register Spill]]></title><description><![CDATA[Thoughts about software engineering I can't keep in my head. Too ephemeral for blog posts, too long for social media.

It's the messages I'd send if you'd asked me what's on my mind.]]></description><link>https://registerspill.thorstenball.com</link><image><url>https://substackcdn.com/image/fetch/$s_!-2HZ!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff114450f-2313-48c6-a253-a1d476c21d93_1164x1164.png</url><title>Register Spill</title><link>https://registerspill.thorstenball.com</link></image><generator>Substack</generator><lastBuildDate>Mon, 20 Apr 2026 07:29:48 GMT</lastBuildDate><atom:link href="https://registerspill.thorstenball.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Thorsten Ball]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[thorstenball@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[thorstenball@substack.com]]></itunes:email><itunes:name><![CDATA[Thorsten Ball]]></itunes:name></itunes:owner><itunes:author><![CDATA[Thorsten Ball]]></itunes:author><googleplay:owner><![CDATA[thorstenball@substack.com]]></googleplay:owner><googleplay:email><![CDATA[thorstenball@substack.com]]></googleplay:email><googleplay:author><![CDATA[Thorsten Ball]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Joy & Curiosity #82]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-82</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-82</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 19 Apr 2026 05:23:09 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/1e0de128-39ef-469b-aac3-1cfd91b46a60_1982x1412.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This one&#8217;s short, because it&#8217;s been a week full of programming and building, less reading. And this weekend&#8217;s equally busy, so here&#8217;s a question I&#8217;ve been flipping around in my head for months now:</p><p>What are we learning about working with these models that will be valuable in the future?</p><p>In his Lex Fridman interview, <a href="https://lexfridman.com/theprimeagen-transcript/#chapter32_programming_with_ai">ThePrimeagen said something</a> that stuck with me: &#8220;Is anyone actually falling behind for not using AI then? Because if the interface is going to change so greatly that all of your habits need to fundamentally change [&#8230;], have I actually fallen behind at all? Or will the next gen actually just be so different from the current one that it&#8217;s like, yeah, you&#8217;re over there actually doing punch card AI right now. I&#8217;m going to come in at compiler time AI, so different that it&#8217;s like what&#8217;s a punch card?&#8221;</p><p>There&#8217;s something to this. The frontier models are now much more forgiving when it comes to prompts. We no longer have to write &#8220;you are a senior engineer&#8221; in our prompts. &#8220;Don&#8217;t make mistakes&#8221; is more a prayer than a helpful trick. The days of the Prompt Engineer won&#8217;t be visible on the timeline if we zoom out to even five years. </p><p>Nowadays, I&#8217;m even convinced that a lot of what we considered important for manual context management is now no longer needed. (Yes, we&#8217;re shipping soon.) We&#8217;re close to the point where you no longer have to care whether you&#8217;re at 30% or 70% of the context window. </p><p>And I&#8217;m also convinced that the models will get even better.</p><p>Now, maybe it is a form of sunk cost fallacy, a bias talking, but still: I do think that I got better at working with these models over the past two years. It might not be relevant anymore whether I write down my task before or after I include a file in a prompt, but I think I&#8217;ve gained some meta-abilities that made me better at solving problems through the use of agents: chopping up problems into engineering tasks and sequencing them, figuring out what the pitfalls (that wouldn&#8217;t be pitfalls for humans) are, knowing what&#8217;s poison in the codebase and what isn&#8217;t. Stuff like that.</p><p>In the most general sense, I think I&#8217;ve learned how to work with artificial intelligence. And if prompt engineering tricks are punch cards, then that might be seen as learning about computation.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nXIP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nXIP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 424w, https://substackcdn.com/image/fetch/$s_!nXIP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 848w, https://substackcdn.com/image/fetch/$s_!nXIP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 1272w, https://substackcdn.com/image/fetch/$s_!nXIP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nXIP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif" width="944" height="37" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bd264ddb-cf7d-48e6-ba62-50643a85feef.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:37,&quot;width&quot;:944,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:143094,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/194608579?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nXIP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 424w, https://substackcdn.com/image/fetch/$s_!nXIP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 848w, https://substackcdn.com/image/fetch/$s_!nXIP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 1272w, https://substackcdn.com/image/fetch/$s_!nXIP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbd264ddb-cf7d-48e6-ba62-50643a85feef.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>This is, at least for me, already <a href="https://news.ycombinator.com/item?id=47748064">a Hall of Fame comment</a>: &#8220;For reasons which it would take a while to unpack, if is often the case that the best (or sometimes only) way to find out what programming actually needs to be done, is to program something that&#8217;s not it, and then replace it. This may need to be done multiple times. Programming is only occasionally the final product, it is much more often the means of working through what it is that is actually needed. This is very difficult for the people who ask for the software, to understand, and it is quite often very difficult for the people doing the programming to understand. Most of what is being done, during programming, is working through the problem space in a way which will make it more obvious what your mistakes are, in your understanding of the problem and what a solution would look like. Once you have arrived at that understanding, then there are a variety of ways to make what you need, but that is not the rate-limiting step.&#8221; So, so, so good. This is what software development is: learning. </p></li><li><p><a href="https://panoramic.city/fractalparis/">Fractal Paris</a> and<a href="https://www.fractalistanbul.com/"> Fractal Istanbul</a>. Lovely!</p></li><li><p>Rands: <a href="https://randsinrepose.com/archives/the-complicators-the-drama-aggregators-and-the-avoiders">The Complicators, The Drama Aggregators, and The Avoiders</a>. Read and recognize people you&#8217;ve worked with.</p></li><li><p>Brian Cantrill on <a href="https://bcantrill.dtrace.org/2026/04/12/the-peril-of-laziness-lost/">the peril of laziness lost</a>: &#8220;The problem is that LLMs inherently&nbsp;lack the virtue of laziness. Work costs nothing to an LLM. LLMs do not feel a need to optimize for their own (or anyone&#8217;s) future time, and will happily dump more and more onto a layercake of garbage. Left unchecked, LLMs will make systems larger, not better.&#8221; Read this at the start of the week and then constantly thought of it whenever I asked my agent whether this is &#8220;truly the simplest, most minimal, as-little-as-possible and as-much-as-needed solution?&#8221;</p></li><li><p>Vicki Boykis, in some sense in harmony with Brian Cantrill&#8217;s thoughts, on <a href="https://vickiboykis.com/2026/04/13/mechanical-sympathy/">Mechanical Sympathy</a>: &#8220;Mechanical sympathy for both developers and end-users means understanding when asyncio is and is not helpful. It means using the right language, the right build system, the right font. It means using the least amount of tooling possible. Allowing for local development. It means reading code inside out rather than top to bottom. Using uv. Removing code where not necessary. Respecting boundaries.&#8221;</p></li><li><p>stevey wrote <a href="https://x.com/Steve_Yegge/status/2043747998740689171">a tweet about AI adoption at Google</a> and <a href="https://x.com/demishassabis/status/2043867486320222333">got pushback from Demis Hassabis</a> and others and, well, I actually don&#8217;t care <em>that much</em> about AI adoption at Google, but I find this one thought in there very fascinating: &#8220;There has been an industry-wide hiring freeze for 18+ months, during which time nobody has been moving jobs. So there are no clued-in people coming in from the outside to tell Google how far behind they are, how utterly mediocre they have become as an eng org.&#8221; I know that people aren&#8217;t sure whether there are more or less software jobs right now, but from where I&#8217;m sitting it does look like hiring has slowed and I find it fascinating to think about the second-order effects of that: is there less industry-wide diffusion of frontier knowledge because hiring has slowed?</p></li><li><p>Shifted something in my brain:<a href="https://ben-mini.com/2026/nucleus-nouns"> Nucleus Nouns</a>. Very good and much more thought-inspiring than the usual &#8220;focus! focus! focus!&#8221; chants.</p></li><li><p><a href="https://tanyaverma.sh/2026/04/10/closing-of-the-frontier.html">The Closing of the Frontier</a>: &#8220;There is something special about training a model on all of humanity&#8217;s data and then locking it up for the benefit of a few well-connected organizations that you have relationships with. Maybe you&#8217;ll notice another historical pattern here. Extract value from a population that can&#8217;t meaningfully consent, concentrate the returns within a small inner circle, and then offer some version of charity to the people you extracted from as moral cover for the arrangement.&#8221;</p></li><li><p><a href="https://x.com/andy_matuschak/status/2043066611905761588?s=46&amp;ct=rw-null">Andy Matuschak has the Practice Guide for Computer printed out</a> and hanging above his desk.</p></li><li><p>Apparently I&#8217;m the last person to learn about this idea, but who cares, it&#8217;s great and I think I want to try this: <a href="https://medium.com/the-writers-room/the-spark-file-8d6e7df7ae58">The Spark File</a>.</p></li><li><p>Sometimes I read things online and it makes me really happy that we have the Internet and that smart, beautiful minds share their thoughts online. Here&#8217;s James Somers with his idea of <a href="https://jsomers.net/blog/the-paper-computer">the Paper Computer</a>: &#8220;Now that we have actually good AI, I have this vision of a form of computing that doesn&#8217;t involve me using a computer so much. Imagine you had the day&#8217;s emails to go through. It would be nice if the ones that required a simple decision could be dispatched with a few pen-strokes: I could write down a date that would work for that meeting; check a box to accept that invitation; etc. If an email required me to review a draft, I&#8217;d love to mark up a print version on my couch, sans screen, and have those notes scanned and sent off as if I&#8217;d done the whole thing on Google Docs.&#8221; </p></li><li><p>Tim Zaman, who worked at NVIDIA, Tesla, X, Google DeepMind and now at OpenAI on AI infrastructure on <a href="https://timzaman.com/getting-into-ai-infra">Getting Into AI Infra</a>. I&#8217;m <em>convinced</em> that posts like these create and change entire lifes. I love it. Also: nearly made me want to build a cluster.</p></li><li><p>It&#8217;s been a while since I&#8217;ve thought about people who have <em>not</em> yet walked through the one-way door that makes you say &#8220;holy shit, AI is going to change everything&#8221;, but Armin shared his thoughts after encountering people still being skeptical: <a href="https://lucumr.pocoo.org/2026/4/11/the-center-has-a-bias/">The Center Has a Bias</a>. Well worth reading.</p></li><li><p>Dwarkesh Patel shared what <a href="https://www.dwarkesh.com/p/what-i-learned-april-15">he learned this week</a> and note how interesting that is and how enjoyable it is to read, even though (or is it because of?) it&#8217;s not polished at all. </p></li><li><p>Drew Breunig, following the Anthropic Mythos frenzy and some companies closing their open-source projects down for fear of security vulnerabilities being discovered, says <a href="https://www.dbreunig.com/2026/04/14/cybersecurity-is-proof-of-work-now.html">Cybersecurity Looks Like Proof of Work Now</a>: &#8220;If Mythos continues to find exploits so long as you keep throwing money at it, security is reduced to a brutally simple equation: to harden a system you need to spend more tokens discovering exploits than attackers will spend exploiting them.&#8221;</p></li><li><p>But antirez disagrees: <a href="https://antirez.com/news/163">AI cybersecurity is not proof of work</a>. Both posts are very interesting and I recommend reading through them. </p></li><li><p>I&#8217;m in <a href="https://x.com/thorstenball/status/2045412037157675296">the process of setting up my 2013 MacBook Pro for my 4-year-old daughter</a> and <a href="https://x.com/PeterJThomson/status/2045488461810209196">Peter recommended</a> this lovely page to let her type on: <a href="https://tiny-terminal.com/">tiny-terminal.com</a>.</p></li><li><p>So, of course, I had to <a href="https://github.com/meimakes/tiny-terminal">fork it</a>, bought a domain, and let Amp translate it to German so my kids can type words they already know in there: <a href="https://kleines-terminal.de/">kleines-terminal.de</a>. </p></li><li><p>Turing Award winner <a href="https://en.wikipedia.org/wiki/Michael_O._Rabin">Michael Rabin</a> has passed away. Here&#8217;s &#8220;an assorted collection of quotations due to Professor Michael Rabin, produced at Harvard University during the Fall 1997 incarnation of the course Computer Science 226r&#8221;: <a href="https://web.archive.org/web/20210509160248/http://www.eecs.harvard.edu/~cat/rabinisms.html">Rabinism Collection</a>.</p></li><li><p><a href="https://samhenri.gold/blog/20260418-claude-design/">Thoughts and Feelings around Claude Design</a>.</p></li><li><p>Another way to think about the question of whether AI will create more jobs or not, <a href="https://x.com/levie/status/2044621545348481285">by Aaron Levie</a>: &#8220;Why will AI create more jobs in plenty of industries? It&#8217;s because we&#8217;re going to use AI to accelerate output in one area, and then eventually you run into a new bottleneck somewhere else in the process that still requires humans.&#8221; This sounds very likely to me. But, of course, &#8220;more jobs&#8221; doesn&#8217;t mean it&#8217;ll be the same jobs and then some. Everything&#8217;s changing.</p></li><li><p>Related, <a href="https://x.com/garybernhardt/status/2045396869074088291">Gary Bernhardt</a>: &#8220;This might be a Mel moment. It&#8217;s not immediately obvious that <a href="http://www.catb.org/jargon/html/story-of-mel.html">Mel is a tragic story</a>. He clearly loved the work. Then the work changed and, presumably, he was left behind. The thing he perfected no longer mattered. There might be millions of Mels right now.&#8221;</p></li><li><p>Wow, look at just the table of contents here: &#8220;I have for years been interested in sleep research due to my professional involvement in memory and learning. <a href="https://super-memory.com/articles/sleep.htm">This article attempts to produce a synthesis of what is known about sleep</a> with a view to practical applications, esp. in people who need top-quality sleep for their learning or creative achievements.&#8221;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uTg2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uTg2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 424w, https://substackcdn.com/image/fetch/$s_!uTg2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 848w, https://substackcdn.com/image/fetch/$s_!uTg2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 1272w, https://substackcdn.com/image/fetch/$s_!uTg2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uTg2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif" width="966" height="43" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:43,&quot;width&quot;:966,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:169534,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/194608579?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!uTg2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 424w, https://substackcdn.com/image/fetch/$s_!uTg2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 848w, https://substackcdn.com/image/fetch/$s_!uTg2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 1272w, https://substackcdn.com/image/fetch/$s_!uTg2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3d5c05ef-f280-49df-8c2e-ac2c88bac210.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"></figcaption></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Busy weekend? You should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #81]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-81</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-81</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 12 Apr 2026 06:25:54 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/21fea86c-1499-44be-972e-bbaee14b1f8c_1130x882.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Know what agents are really bad at? Writing confident code. Code that says: <em>this</em> is how <em>this</em> works, boom, fist on the table. And <em>this</em> is true and <em>this</em> is false, forever and always. And <em>if</em> both have changed, it means we&#8217;ve been moved to a different universe. This thing can never be null, and this can never be nil, and if this isn&#8217;t wired up to that, then down is up anyway and we can pack up and go home. </p><p>Instead they&#8217;re prone to write code that constantly asks, with the voice of scared mouse: but what if this is null? What if this is missing? What if this is undefined? What if the file was overwritten? What if the database got corrupted, by space rays? What if a client reconnects, after a seven year ping timeout?</p><p>And then, the second time you let them loose on the codebase, they see all of those what-ifs and now rightfully conclude that in this codebase anything&#8217;s possible really and no one knows anything about how any of this works and their teeny tiny mouse voice gets even smaller and puts yet more questions into places where there should be statements. And then, the third time&#8230; Well.</p><p>Over the last few weeks, I&#8217;ve found again and again that what I once called <a href="https://ampcode.com/notes/how-i-use-amp">paint-by-numbers programming</a> is still required when you&#8217;re building something new, when there&#8217;s no statements in the codebase yet, only blank pages and possibilities. You put in the numbers and the lines and then you let the agent put in the colors. You also need to watch the agent to make sure it doesn&#8217;t put in new lines and numbers that you don&#8217;t agree with. </p><p>But here&#8217;s the tricky part: depending on what you&#8217;re doing, the lines and numbers might already be there &#8212; in the training data, in the framework, in the idea of what you&#8217;re building. If you&#8217;re building a web application with a popular framework, there&#8217;s already quite a few statements in the codebase. <em>Of course</em> there&#8217;s going to be request object, and <em>this</em> is how migrations work, and <em>this</em> is what happens on restart, and no, this isn&#8217;t possible. </p><p>When you&#8217;re building something new, the challenge now is to figure out what&#8217;s true about your idea and your codebase and whether the agents know that too. Once they do, you can let them loose again.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TnXP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TnXP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 424w, https://substackcdn.com/image/fetch/$s_!TnXP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 848w, https://substackcdn.com/image/fetch/$s_!TnXP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 1272w, https://substackcdn.com/image/fetch/$s_!TnXP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TnXP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif" width="953" height="42" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cf68f578-1a6e-4416-9875-199a13dbecc2.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:42,&quot;width&quot;:953,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:163486,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/193702404?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TnXP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 424w, https://substackcdn.com/image/fetch/$s_!TnXP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 848w, https://substackcdn.com/image/fetch/$s_!TnXP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 1272w, https://substackcdn.com/image/fetch/$s_!TnXP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf68f578-1a6e-4416-9875-199a13dbecc2.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>This is one of the truest, realest things I&#8217;ve read on doing serious software development with AI: <a href="https://lalitm.com/post/building-syntaqlite-ai/">Eight years of wanting, three months of building with AI.</a> There&#8217;s a lot in there that made me want to share this with you, but this is the one thing that&#8217;s fundamental to it all and that I keep finding over and over: &#8220;The takeaway for me is simple: AI is an incredible force multiplier for implementation, but it&#8217;s a dangerous substitute for design. It&#8217;s brilliant at giving you the right answer to a specific technical question, but it has no sense of history, taste, or how a human will actually feel using your API. If you rely on it for the &#8216;soul; of your software, you&#8217;ll just end up hitting a wall faster than you ever have before.&#8221;</p></li><li><p>Thomas Ptacek says <a href="https://sockpuppet.org/blog/2026/03/30/vulnerability-research-is-cooked/">Vulnerability Research Is Cooked</a>. This was published <em>before</em> the whole Anthropic Mythos thing: &#8220;Now consider the poor open source developers who, for the last 18 months, have complained about a torrent of slop vulnerability reports. I&#8217;d had mixed sympathies, but the complaints were at least empirically correct. That could change real fast. The new models find real stuff. Forget the slop; will projects be able to keep up with a steady feed of verified, reproducible, reliably-exploitable sev:hi vulnerabilities? That&#8217;s what&#8217;s coming down the pipe. Everything is up in the air. The industry is sold on memory-safe software, but the shift is slow going. We&#8217;ve bought time with sandboxing and attack surface restriction. How well will these countermeasures hold up? A 4 layer system of sandboxes, kernels, hypervisors, and IPC schemes are, to an agent, an iterated version of the same problem. Agents will generate full-chain exploits, and they will do so soon.&#8221;</p></li><li><p>Also, published before Mythos: <a href="https://mtlynch.io/claude-code-found-linux-vulnerability/">Claude Code Found a Linux Vulnerability Hidden for 23 Years</a>.</p></li><li><p>But now:<a href="https://www.anthropic.com/glasswing"> Anthropic Mythos and Project Glasswing</a>. A <em>lot</em> has been said about it, even though no one outside Anthropic&#8217;s tried it and (lived to?) told the tale. I&#8217;m not going to attempt a summary, but this was a great overview: <a href="https://www.understandingai.org/p/why-anthropic-believes-its-latest">Why Anthropic believes its latest model is too dangerous to release</a>.</p></li><li><p>Then you had people either stoking the flames or saying it&#8217;s not a big deal. Anthropic&#8217;s Jack Lindsey, for example, <a href="https://x.com/jack_w_lindsey/status/2041588510126395648?s=46">shared his scary-sounding impressions</a>: &#8220;In one episode, the model needed to edit files it lacked permissions for. After searching for workarounds, it found a way to inject code into a config file that would run with elevated privileges, and designed the exploit to delete itself after running.&#8221; Theo also said &#8220;<a href="https://x.com/theo/status/2041825324837781749">Claude Mythos is the start of the end. I think this is my psychosis moment.</a>&#8221; Then others said you should go offline, or create data checkouts of everything you have online, because Mythos is coming, and the world&#8217;s ending, and so on. But others are skeptical and say this is <a href="https://x.com/kannthu1/status/2042316153440387229">not a new capability</a>. <a href="https://x.com/danshipper/status/2042297006920523904?s=46">Dan Shipper says he isn&#8217;t scared</a> and I found that video to be very good. But if even the Economist asks: <a href="https://www.economist.com/business/2026/04/08/how-dangerous-is-mythos-anthropics-new-ai-model?giftId=YWU5NjVmNDktMDUyYi00Mjg4LWJjNTAtNzk3N2YxMDZkYjlh">How dangerous is Mythos, Anthropic&#8217;s new AI model? </a>And if the model is <em>so dangerous </em>that you only give it to some of the world&#8217;s richest companies with a minimum spend clause attached, days after you proudly share how much money you&#8217;re making from your less-dangerous-but-once-upon-a-time-deemed-also-very-dangerous models, you have to wonder whether it&#8217;s the model we&#8217;re in awe of here or the marketing campaign. (I&#8217;m sure the model is impressive and I&#8217;m convinced the models will get really, really good.)</p></li><li><p>As you know, I took the whole Easter weekend off. I&#8217;m very much not a religious person, but it&#8217;s public holidays here in Bavaria, school&#8217;s out, and I wanted to be mostly offline and read. So that&#8217;s what I did. One thing I read was this <a href="https://www.newyorker.com/magazine/2006/02/13/the-saintly-sinner">New Yorker article on Mary Magdalene</a> from 2006, because it came recommended in their newsletter. Again: not religious, but that did hit the spot, the spot right between Umberto Eco, Raiders of the Lost Ark, Dan Brown, and all the other stuff I find strangely fascinating. Good read.</p></li><li><p>I also finally read <a href="https://www.goodreads.com/book/show/905.The_Inner_Game_of_Tennis">The Inner Game of Tennis</a> after years of hearing and seeing recommendations and the book being on my to-read list. It was wonderful. What a fantastic little book. Let&#8217;s check back in a year, but I think this has permanently changed how I think about learning, about performing, about concentration and attention and focusing. It&#8217;s a very gentle book that seems to know exactly what it&#8217;s supposed to be. Highly recommend, even if you&#8217;ve never held a tennis racket, which I haven&#8217;t.</p></li><li><p>(Obligatory mention of David Foster Wallace&#8217;s <a href="https://www.nytimes.com/2006/08/20/sports/playmagazine/20federer.html">Roger Federer as Religious Experience</a> when tennis comes up.)</p></li><li><p>Okay, I know how this sounds, believe me, I read this paragraph multiple times, but I do think there&#8217;s a line you can draw &#8212; a very thin, wobbly, hard to see if you don&#8217;t squint line &#8212; from The Inner Game of Tennis to&#8230; &#8220;retardmaxxing&#8221;, which is, <a href="https://x.com/a16z/status/2039028447704654220">to let Marc Andreessen explain</a>: &#8220;There&#8217;s this guy on YouTube who has basically a hundred videos on retardmaxxing. He&#8217;s like my new life coach. I haven&#8217;t met him, but from a distance. It&#8217;s basically just&#8212;retardmaxx. Go to work, do a good job, come home, it&#8217;s fine. Start a company, it succeeds, it fails, it&#8217;s fine. Have too much to eat one night at dinner, it&#8217;s fine. Go to the gym, don&#8217;t count your reps, it&#8217;s fine. Ask a girl if she wants to go out with you, if she says no, it&#8217;s fine.&#8221; That did sound <a href="https://registerspill.thorstenball.com/p/oh-to-turn-off-your-mind">alluring to me</a>, I have to admit. So <a href="https://www.youtube.com/watch?v=rIQ3t1ixUIE">I watched the video</a> and, sorry, but he&#8217;s got a point, doesn&#8217;t he, when he asks: &#8220;Brian Johnson, who measures his son&#8217;s boners, told me not to have caffeine after 1pm. Dude, what are we doing here?&#8221;</p></li><li><p>Food for thought: <a href="https://ergosphere.blog/posts/the-machines-are-fine/">The machines are fine. I&#8217;m worried about us.</a> Many things in there that make me say mmmh, or tilt my head, or nod.</p></li><li><p>&#8220;<a href="https://x.com/Jonas_Ceika/status/2042445078417834043">I sent ChatGPT an audio file of a series of FART sound effects and asked what it thinks of &#8216;my music&#8217; and this is what it said</a>.&#8221; Incredible stuff. Finally we have the technology. &#8220;It feels more like an atmosphere piece than a traditional song.&#8221;</p></li><li><p><a href="https://www.youtube.com/watch?v=RAHsF4A8GLM">Rick Rubin interviewed Adam Neumann</a> and I couldn&#8217;t stop listening. I listened to the whole three hours. I don&#8217;t know anything about Neumann really, nor about WeWork. I&#8217;ve been in a few WeWorks, thought they were nice. Never dug deeper into it, never watched the tv show, went in expecting nothing and ended up thinking that this guy is an amazing storyteller. I don&#8217;t know whether his stories are true, but it&#8217;s a great listen. There&#8217;s some very interesting ancedotes about high-growth companies and high-level funding in it, and then there&#8217;s Rick Rubin saying &#8220;beautiful&#8221; with a period at the end at just the right moments.</p></li><li><p><a href="https://github.com/JuliusBrussee/caveman">caveman</a>, a skill that &#8220;makes agent talk like caveman &#8212; cutting ~75% of output tokens while keeping full technical accuracy.&#8221; Because: &#8220;why use many token when few do trick.&#8221;</p></li><li><p><a href="https://ryelang.org/blog/posts/cognitive-dark-forest/">The Cognitive Dark Forest</a> claims that &#8220;open web with AIs is turning into a dark forest&#8221; and now sharing knowledge or code is no longer beneficial. Instead, &#8220;hiding is the most rational - the only - strategy of survival.&#8221; It&#8217;s a very interesting thought experiment. I don&#8217;t know whether I agree, but do I have to say that even in the last year, my feelings (that I can&#8217;t even articulate yet) on building on public, or sharing things, have changed a lot. At one end of the spectrum there&#8217;s the feeling of &#8220;eh, this is not worth sharing, it&#8217;s just a prompt away&#8221; and on the other there&#8217;s &#8220;if I share this, the result is just a prompt away for everyone.&#8221; Sci-fi times in any case.</p></li><li><p>This was fascinating: <a href="https://scottlawsonbc.com/post/dot-system">A Dot a Day Keeps the Clutter Away</a>.</p></li><li><p>Tim O&#8217;Reilly talked to Harper Reed: <a href="https://www.oreilly.com/radar/conviction-collapse-and-the-end-of-software-as-we-know-it/">&#8220;Conviction Collapse&#8221; and the End of Software as We Know It</a>. A lot of good stuff in there. This, for example: &#8220;AI is not just a tool. It is a substrate that we shape. It&#8217;s a medium, like clay or marble or bronze for a sculptor, or words for a writer. Everybody had access to the same capabilities of English as Shakespeare, but Shakespeare made something out of them that nobody else did. Creating a software product is increasingly like creating a document or an image or a piece of music. And that means that it can range from something throwaway to an enduring work of art.&#8221;</p></li><li><p><a href="https://isolveproblems.substack.com/p/how-microsoft-vaporized-a-trillion">How Microsoft Vaporized a Trillion Dollars</a>. This is a multi-part blog post and I only read the first three parts so far, but that was interesting already. </p></li><li><p><a href="https://www.rip-grep.com/">rip-grep.com</a> or R.I.P. Grep: &#8220;Monitor the situation about what's dead and dying&#8221;</p></li><li><p>Incredibly fascinating: <a href="https://www.wordsfromeliza.com/p/fake-fans">Fake Fans</a> by Eliza McLamb, a musician and writer, about the digital marketing agency Chaotic Good that creates artificial fans on social media or in comment sections. That sounds horrible, of course, because &#8220;create artificial fans&#8221; is just weird way to say &#8220;fakes fans&#8221;, but when you read the piece, which is very honest and reflective, you start to realize that it maybe isn&#8217;t that simple. The bigger shocker: Geese, the band, is mentioned as a customer of Chaotic Good. And McLamb herself recounts how she found the band and fell in love with their music and how, yes, she <em>loves</em> the music, but also: they have fake social media fans? And then I realized that I found out about Geese on Twitter, because some young-person-looking account simply posted four album covers with the text &#8220;what a run&#8221; or something more Gen Z sounding. So I sat down and did a reverse Google image search and found the albums and started listening and recommending and fell in love with the music too. Because of a tweet! That might&#8217;ve been fake! Anyway: read the post, then feed it into a model, and ask it what McLuhan would say about it. Fascinating, like I said.</p></li><li><p>Hell yes: <a href="https://www.mintlify.com/blog/how-we-built-a-virtual-filesystem-for-our-assistant">How we built a virtual filesystem for our Assistant</a>. Very, very neat. Of course the fact that agents love the CLI and grepping and listing isn&#8217;t new and it&#8217;s one of the reasons why Amp came out of Sourcegraph and why we had a code search subagent before we had embeddings search, but seeing it implemented like this, completely virtual, is amazing.</p></li><li><p>Ryan Holiday: <a href="https://ryanholiday.net/5-years-of-lessons-from-running-my-own-bookstore">5 Years of Lessons From Running My Own Bookstore</a>. I didn&#8217;t know that Ryan Holiday had a bookstore. Great post.</p></li><li><p><a href="https://x.com/mrdoob/status/2040586168132366449">Waterfall, Agile, AI</a>. Nailed it.</p></li><li><p>The question &#8220;if AI is so great, where&#8217;s all the amazing software?&#8221; has always bugged me a little. That&#8217;s not how technological progress works! In 1999 it sure didn&#8217;t look like the information superhighway called Internet had changed anything, did it? And now we have freaking cloud kitchens and people making a living by being YouTubers. This post, <a href="https://davegriffith.substack.com/p/why-isnt-everything-different-yet">Why Isn&#8217;t Everything Different Yet?</a>, tries to answer that question with a bit more nuance than I just did. Good picture to keep in mind: &#8220;When electricity became commercially available, you know what most factories did? They replaced their steam engine with an electric motor. One motor. In the same spot the steam engine was. Driving the same central driveshaft that spun all the same belts and pulleys to all the same machines.&#8221;</p></li><li><p><a href="https://github.com/SharpAI/SwiftLM">SwiftLM</a>, a &#8220;native MLX Swift LLM inference server for Apple Silicon&#8221; that makes use of the <a href="https://research.google/blog/turboquant-redefining-ai-efficiency-with-extreme-compression/">TurboQuant</a> compression released by Google recently. The numbers are impressive: &#8220;100K context on 24 GB MacBook Pro: [&#8230;], you can process 100,000 tokens of context on a 24 GB machine &#8212; only utilizing 22.3 GB total. (Previously required a 64 GB Mac Studio).&#8221; Imagine if all model progress stopped today: how much performance would be squeezed out of them? </p></li><li><p>This is great and I&#8217;m kinda sad that I only read it now: <a href="https://thedailywtf.com/articles/The_Complicator_0x27_s_Gloves">The Complicator&#8217;s Gloves</a>. Sure would&#8217;ve loved to link to it in some discussions in the past, eh?</p></li><li><p>The post mortem of the axios npm supply chain attack has <a href="https://github.com/axios/axios/issues/10636#issuecomment-4182134203">this comment here</a> that explains how the attack went down. Nuts: &#8220;First thing is typically delivered as part of a social engineering ploy involving a fake Zoom or MS Teams call. There&#8217;s A LOT leading up to the call. It&#8217;s not urgent, pressing, suspicious at all. It&#8217;s not a one-click, get phished. They&#8217;ll schedule a call for next week and then reschedule it for the week after. It&#8217;s crazy disarming.&#8221;</p></li><li><p>Apparently, many years ago, Paul Ford, one of my favorite writers, wrote about media appearances &#8212; podcasts, TV, radio (yes, as I said: many years ago) &#8212;&nbsp;and it&#8217;s great: <a href="https://web.archive.org/web/20190216152202/https://postlight.com/trackchanges/be-our-guest">Be Our Guest!</a></p></li><li><p>Someone who knows the industry in which the &#8220;first vibe-coded billion dollar company&#8221; was created <a href="https://x.com/brian_blum1/status/2039750849669280214">shared some insights</a>. Not a big surprise: it&#8217;s not about the software. It&#8217;s about the market, the product, the customers, marketing. (Reading through that whole thread is a very interesting peek in a very different world than the one I usually live in. Recommended.) But maybe it&#8217;s also about doing shady things, <a href="https://www.nytimes.com/2026/04/02/technology/ai-billion-dollar-company-medvi.html">as the editor&#8217;s note in the New York Times sounds like.</a></p></li><li><p>Didn&#8217;t know that&#8217;s a thing (potential?) investors do: <a href="https://www.savesnapnow.com/">Save Snap Now</a>.</p></li><li><p>Aphyr on AI, the future, and well, everything: <a href="https://aphyr.com/posts/411-the-future-of-everything-is-lies-i-guess">The Future of Everything is Lies, I Guess</a>. Very pessimistic and dark and maybe even cynical, but (or maybe because of that:) interesting. Especially this bit here, very realistic: &#8220;I don&#8217;t think people are well-equipped to reason about this kind of jagged &#8216;cognition&#8217;. One possible analogy is savant syndrome, but I don&#8217;t think this captures how irregular the boundary is. Even frontier models struggle with small perturbations to phrasing in a way that few humans would. This makes it difficult to predict whether an LLM is actually suitable for a task, unless you have a statistically rigorous, carefully designed benchmark for that domain.&#8221; Jagged frontier. Or as <a href="https://x.com/karpathy/status/2042334451611693415">Karpathy wrote this week</a>: &#8220;peaky&#8221; in highly technical areas.</p></li><li><p>Very cool:<a href="https://tech.stonecharioteer.com/posts/2026/traceroute/"> Understanding Traceroute</a>. I had no clue about the TTL thing.</p></li><li><p>Also, very very cool: &#8220;<a href="https://bertspaan.nl/buildings/#7/52.137/5.248">This map shows all buildings in the Netherlands</a>, colored by their year of construction. This map is made by Bert Spaan.&#8221;</p></li><li><p>A 13-year-old blog post by Steven Sinofsky about <a href="https://blog.learningbyshipping.com/2013/01/14/learning-from-competition/">Learning from Competition</a>. It&#8217;s great. Here is the pitch: &#8220;Studying your competitor, well, gives you a chance to evaluate your choices in an entirely different context. When you make a product choice you are making it in the context of your company, strategy, business model, and people/talents. What if you change some of those? That is what knowing the competition allows you to do, and basically for free (no consultants or top secret research).&#8221;</p></li><li><p><a href="https://cacm.acm.org/news/how-nasa-built-artemis-iis-fault-tolerant-computer/?__readwiseLocation=">How NASA Built Artemis II&#8217;s Fault-Tolerant Computer</a>: &#8220;Effectively, eight CPUs run the flight software in parallel. The engineering philosophy hinges on a &#8216;fail-silent&#8217; design.&#8221;</p></li><li><p><a href="https://www.unfolder.app/">Unfolder for Mac</a>. I have <em>absolutely no use</em> for this app but looking at it makes me want to find one. Beautiful.</p></li><li><p>Started reading Jonathan Franzen and while spelunking his Wikipedia page, I ended up on this 2012 Guardian article called <a href="https://web.archive.org/web/20131001023035/http://www.theguardian.com/books/2010/feb/20/ten-rules-for-writing-fiction-part-one">Ten rules for writing fiction</a> in which not only Franzen but many other authors provide their own ten rules. Margaret Atwood&#8217;s are good. Franzen&#8217;s too. Most fascinating is how different they all are from each other.</p></li><li><p>Scott Chacon&#8217;s GitButler raised a Series A: <a href="https://blog.gitbutler.com/series-a">We&#8217;ve raised $17M to build what comes after Git</a>. Bold.</p></li><li><p>How many did you already know? Very good list: <a href="https://blog.hofstede.it/shell-tricks-that-actually-make-life-easier-and-save-your-sanity/">Shell Tricks That Actually Make Life Easier (And Save Your Sanity)</a></p></li><li><p><a href="https://x.com/bgurley/status/2042993889825501262">Bill Gurley on SaaS, stock-based compensation, and what&#8217;s happening now</a>: &#8220;The SaaS universe has been repriced &#8212; sharply and broadly &#8212; as the market recalibrates what recurring software revenue is worth in a world where AI is compressing development cycles, automating workflows, and threatening to commoditize features that once commanded premium pricing. [...] For employees, this means vesting tranches worth a fraction of what they expected when they accepted their offer letters or negotiated their last refresh. And because they&#8217;ve always treated RSUs as cash, they don&#8217;t experience this as an investment that didn&#8217;t pan out. They experience it as a pay cut.&#8221;</p></li><li><p>What clouds, man: <a href="https://markmaggiori.com/products/arizona-cannonball">Mark Maggiori &#8212;&nbsp;Arizona Cannonball</a>.</p></li><li><p><a href="https://www.youtube.com/watch?v=NtFJ1HT3gto">Stewart Lee on Stewart Lee fans</a>: &#8220;The man is a genius. And so am I because I like him.&#8221; I&#8217;ve watched this six times already. (Because I&#8217;m a genius.)</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aEqL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aEqL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 424w, https://substackcdn.com/image/fetch/$s_!aEqL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 848w, https://substackcdn.com/image/fetch/$s_!aEqL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 1272w, https://substackcdn.com/image/fetch/$s_!aEqL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aEqL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif" width="952" height="32" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:32,&quot;width&quot;:952,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:125222,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/193702404?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aEqL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 424w, https://substackcdn.com/image/fetch/$s_!aEqL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 848w, https://substackcdn.com/image/fetch/$s_!aEqL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 1272w, https://substackcdn.com/image/fetch/$s_!aEqL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0865f616-c3bf-43ad-ab39-feedc7e17c4d.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Also never held a tennis racket? You should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #80]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-80</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-80</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 29 Mar 2026 05:50:35 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/66159010-9883-4dda-a199-00c26fa2fa15_1842x1234.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Do you know how it should work? Does the agent? Or does the codebase?</p><p>Lately I&#8217;ve been thinking a lot about why sometimes using an agent leads to great results and other times it doesn&#8217;t. My current theory: it depends on what knowledge about the task at hand is encoded where.</p><p>If all the knowledge required to solve the task to your satisfaction is available either in your prompt, or in the codebase, or in the training data of the model, then things go fine.</p><p>Things go badly if there&#8217;s a gap. That is, if you wrongly assume the agent will know how to do something but it won&#8217;t because that knowledge is neither in the codebase nor in the training data.</p><p>If I ask the agent to fix a bug that has a very obvious solution, say: a button&#8217;s hover state doesn&#8217;t activate on hover, then everything you need to know to fix it is available. The problem is in the prompt, the code should explain what the button is, and what a hover state is is in the training data.</p><p>But what if there&#8217;s a bug and you don&#8217;t know even how to explain what the bug is or what the desired state is? Not good.</p><p>Or what if you tell the agent to build you a feature and you assume it does so by going over here and adding that and then going over there and adding this, but the codebase allows fifteen other ways, and the training data doesn&#8217;t say those fifteen other ways are bad? Not good.</p><p>Sometimes the codebase and its documentation contains that information through types or tests or conventions. Other times the training data tells the agent that there&#8217;s only one way to add a new endpoint in Rails or Next.js or SvelteKit. But if it&#8217;s neither in the codebase nor in the training data, then you have to put it in the prompt.</p><p>Theory is too big a word for these thoughts, yes, but I&#8217;ve been asking myself &#8220;where is the knowledge?&#8221; a lot when working with Amp this week and found it useful, so there you go, maybe you get something out of it too.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ayiS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ayiS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 424w, https://substackcdn.com/image/fetch/$s_!ayiS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 848w, https://substackcdn.com/image/fetch/$s_!ayiS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 1272w, https://substackcdn.com/image/fetch/$s_!ayiS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ayiS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif" width="970" height="43" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:43,&quot;width&quot;:970,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:170222,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/192396030?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ayiS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 424w, https://substackcdn.com/image/fetch/$s_!ayiS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 848w, https://substackcdn.com/image/fetch/$s_!ayiS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 1272w, https://substackcdn.com/image/fetch/$s_!ayiS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16a83e9c-6a4f-4197-aefe-639e5cbcdd87.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p>Last week I asked whether software is turning into a liquid and David Soria Parra, Member of Technical Staff at Anthropic and creator of MCP (meaning: someone who&#8217;s seen things up close), <a href="https://x.com/dsp_/status/2036150564753465649">replied</a>: &#8220;I think people don&#8217;t run the AI maximalist simulation of what this actually means and how far it will go just yet. Most code will just be ephemeral one time use&#8221;</p></li><li><p>John Regehr: <a href="https://john.regehr.org/writing/zero_dof_programming.html">Zero-Degree-of-Freedom LLM Coding using Executable Oracles.</a> This is excellent and resonated with my thoughts from above. &#8220;When an LLM has the option of doing something poorly, we simply can&#8217;t trust it to make the right choices. The solution, then, is clear: we need to take away the freedom to do the job badly. The software tools that can help us accomplish this are executable oracles. The simplest executable oracle is a test case&#8212;but test cases, even when there are a lot of them, are weak. [&#8230;] When I look at the best software testing efforts out there, there&#8217;s invariably something creative and interesting hiding inside. I feel like a lot of projects leave easy testing wins sitting on the floor because nobody has carefully thought about what test oracles might be used. Finding executable oracles for LLMs feels the same to me: with a little effort and critical thinking, we can often find a programmatic way to pin down some degree of freedom that would otherwise be available to the LLM to screw up.&#8221; I also want to quote that lovely last paragraph, but I won&#8217;t, because I want you to read everything else that leads up to it too. This is good stuff.</p></li><li><p>And here&#8217;s Mary Rose Cook, singing harmonies on top of Regehr&#8217;s lines when talking about freedom of expression and constraints for agents: <a href="https://maryrosecook.substack.com/p/code-generation-that-just-works">Code generation that just works</a>. </p></li><li><p>Cheng Lou has &#8220;<a href="https://x.com/_chenglou/status/2037713766205608234">crawled through depths of hell</a> to bring you, for the foreseeable years, one of the more important foundational pieces of UI engineering (if not in implementation then certainly at least in concept): Fast, accurate and comprehensive userland text measurement algorithm in pure TypeScript, usable for laying out entire web pages without CSS, bypassing DOM measurements and reflow.&#8221; It&#8217;s called <a href="https://github.com/chenglou/pretext">Pretext</a> and it&#8217;s impressive. I mean, look at <a href="https://somnai-dreams.github.io/pretext-demos/the-editorial-engine.html">this demo</a>! Move the orbs around! Or the <a href="https://chenglou.me/pretext/variable-typographic-ascii/">ASCII one</a> or click <a href="https://chenglou.me/pretext/dynamic-layout/">on the logos in this one</a>. <a href="https://x.com/_chenglou/status/2037715226838343871">According to Lou</a>, this was &#8220;achieved through showing Claude Code and Codex the browsers ground truth, and have them measure &amp; iterate against those at every significant container width, running over weeks.&#8221; And yet the README doesn&#8217;t mention that at all. That tells me we&#8217;re past a big milestone.</p></li><li><p>If you&#8217;re on desktop, see also<a href="https://illustrated-manuscript.vercel.app/"> this dragon that&#8217;s built with Pretext</a>.</p></li><li><p>Marc Brooker is asking: <a href="https://brooker.co.za/blog/2026/03/25/ic-junior.html">What about juniors?</a> This is one of the most inspiring and motivating pieces of writing I&#8217;ve read in the past few months. I love the Wellington quote on engineering: &#8220;to define it rudely but not inaptly, it is the art of doing that well with one dollar, which any bungler can do with two after a fashion.&#8221; And I love Marc&#8217;s very own definition: &#8220;I believe that this is the core work of engineering: deeply understanding the problem to be solved, the constraints, the tools available, and the environment in which it operates, and coming up with an optimal solution. This requires real creativity, because the constraints are typically over constrained, and real empathy because many of the constraints come directly from human irrationality. It also requires a deep understanding of the tools available, and what those tools can and can&#8217;t do.&#8221; I also think his answer to the question is interesting and the question itself is very important. (I said similar things on last year&#8217;s <a href="https://podcasts.apple.com/us/podcast/building-software-with-thorsten-ball-decoupling-code/id1814432310?i=1000726795825">You&#8217;ve Been A Bad Agent</a> episode.)</p></li><li><p><a href="https://brooker.co.za/blog/2026/03/20/ic-leadership.html">Marc&#8217;s previous post</a> is also great: &#8220;Over the next couple of years, the most valuable people to have on a software team are going to be experienced folks who&#8217;re actively working to keep their heuristics fresh. Who can combine curiosity with experience. Among the least valuable people to have on a software team are experienced folks who aren&#8217;t willing to change their thinking. Beyond that, it&#8217;s hard to see.&#8221;</p></li><li><p>If you read both of Marc&#8217;s posts, you&#8217;ll enjoy Pieter Hintjens&#8217; <a href="http://hintjens.com/blog:16?">A Tale of Two Bridges</a>. Engineering is the art of making the tradeoffs, not building the perfect thing.</p></li><li><p>Michael Nielsen: <a href="https://michaelnotebook.com/whichfuture/">Which Future?</a> I&#8217;m very glad I read this. Bikini Atoll and fire safety will stay with me.</p></li><li><p>Sad news: <a href="https://www.nytimes.com/2026/03/25/books/tracy-kidder-dead.html">Tracy Kidder, author of The Soul of a New Machine, has died.</a> I highly recommend reading this book. I last did so <a href="https://registerspill.thorstenball.com/p/joy-and-curiosity-30">in March of last year.</a> And here I am again, telling you: read it, it&#8217;s fantastic. And then read<a href="https://bcantrill.dtrace.org/2019/02/10/reflecting-on-the-soul-of-a-new-machine/"> Bryan Cantrill&#8217;s reflections on it</a>.</p></li><li><p><a href="https://randsinrepose.com/archives/better-faster-and-even-more">Rands has been bitten by the agent bug</a>: &#8220;I&#8217;ve never built more interesting, random, and useless scripts, tools, and services than I have in the last six months. The cost to go from &#8216;Random Thought&#8217; to &#8216;Working Something&#8217; has never been lower&#8221;</p></li><li><p>Linear: <a href="https://linear.app/next">Issue tracking is dead</a>. Look up to the sky, there&#8217;s me, in a tiny plane that&#8217;s pulling a banner saying in big red letters: told you.</p></li><li><p>This is very, <em>very</em> on the nose and I wouldn&#8217;t sign it without making some big changes, <em>but </em>there is something here that I&#8217;ve felt before, maybe not to this extent, maybe not in this exact shape, but something here resonates and makes parts of it feel true: &#8220;<a href="https://www.joanwestenberg.com/collaboration-is-bullshit/">&#8216;Collaboration&#8217; is bullshit.</a>&#8221; I don&#8217;t think Big Tech the Boogeyman is to blame (my 8-year-old had to do her first group project in school a few weeks ago &#8212; creating a stop-motion movie &#8212;&nbsp;and nearly lost her mind), but this this much, I think, is true: &#8220;most complex, high-quality work is done by individuals or very small groups operating with clear authority and sharp accountability, then rationalized into the language of teamwork afterward. Dostoevsky wrote _The Brothers Karamazov_ alone. The Apollo Guidance Computer came from a team at MIT small enough to have real ownership [&#8230;] Communication matters, and shared context matters. But there&#8217;s a huge difference between communication and collaboration as infrastructure to support individual, high-agency ownership, and communication and collaboration as the primary activity of an organisation.&#8221;</p></li><li><p>Eoghan McCabe, CEO of Intercom, is saying the &#8220;<a href="https://x.com/eoghan/status/2037197696075981124">age of vertical models is here</a>.&#8221; I&#8217;m skeptical, because it all hinges on this idea of verticals and domain knowledge and I don&#8217;t know if that won&#8217;t be washed away by bigger models, but it is interesting: &#8220;the labs are in an interesting position where on one hand the horizontal, general purpose models are actually over-serving the market for specific use cases. E.g. their models are more generally intelligent than is needed for customer service. And on the other hand, the open-weight models are more than good enough where high quality domain specific post-training can make the resulting models superior at the special purpose jobs, and in the ways that matter to that particular job. E.g. in service, the soft factors really matter, like judgement, pleasantness, attentiveness (as well as the hard factors mentioned prior, like the ability to effectively resolve problems, quickly and cheaply).&#8221;</p></li><li><p><a href="https://meow.camera/">meow.camera</a></p></li><li><p>Google published <a href="https://research.google/blog/turboquant-redefining-ai-efficiency-with-extreme-compression/">TurboQuant</a>, a &#8220;set of advanced theoretically grounded quantization algorithms that enable massive compression for large language models and vector search engines.&#8221; I won&#8217;t claim here to understand all of it, but I do think I understand the bit about how &#8220;PolarQuant converts the vector into polar coordinates using a Cartesian coordinate system&#8221; and that&#8217;s very cool. Also goes to show that if AI progress wasn&#8217;tt a race towards AGI and they&#8217;d all stop building bigger and bigger models, there&#8217;d be so many optimizations to make.</p></li><li><p><a href="https://blundercheck.timberschroff.com/p/systems-thinking-is-brain-rot-for">Systems Thinking is Brain Rot for Analysts</a>. Refreshing. </p></li><li><p><a href="https://daringfireball.net/2026/03/your_frustration_is_the_product">This is the Gruber I love</a>: &#8220;And the fucking autoplay videos, jesus. You read two paragraphs and there&#8217;s a box that interrupts you. You read another two paragraphs and there&#8217;s another interruption. All the way until the end of the article. We&#8217;re visiting their website to read a fucking article. If we wanted to watch videos, we&#8217;d be on YouTube. It&#8217;s like going to a restaurant, ordering a cheeseburger, and they send a marching band to your table to play trumpets right in your ear and squirt you with a water pistol while trying to sell you towels.&#8221;</p></li><li><p>And this is the Internet I love: <a href="https://www.john-rush.com/posts/eggs-25-years-20260219.html">25 Years of Eggs</a>. &#8220;Everyone needs a rewarding hobby. I&#8217;ve been scanning all of my receipts since 2001. I never typed in a single price - just kept the images. I figured someday the technology to read them would catch up, and the data would be interesting. This year I tested it. Two AI coding agents, 11,345 receipts. I started with eggs.&#8221;</p></li><li><p><a href="https://fortune.com/2026/03/21/cursor-ceo-michael-truell-ai-coding-claude-anthropic-venture-capital/">Cursor&#8217;s crossroads</a>: &#8220;It&#8217;s a story distinctly of the AI era: Cursor is four years old but already has an innovator&#8217;s dilemma, arguably outgunned by newer products in the market it popularized. Every AI startup fears OpenAI or Anthropic releasing a product directly in competition with theirs. It&#8217;s the nightmare scenario, and Cursor is living it, more quickly than Truell and his team ever expected. [&#8230;] As Truell and I get ready to end our Zoom call, I notice the picture of Caro again. I think about how it took Caro six months to edit a single chapter of The Power Broker. Truell has less time than that before the next change.&#8221;</p></li><li><p>Great brain massage: <a href="https://chunkofcoal.com/posts/simd-csv/">Let&#8217;s see Paul Allen&#8217;s SIMD CSV parser</a>. </p></li><li><p>Okay, now before you click the next link and close the tab right away, let me tell you: yes, I thought so too. I also thought that it&#8217;s not for me, doesn&#8217;t contain anything I didn&#8217;t know, that it&#8217;s boring old stuff, but it&#8217;s not! There&#8217;s some real whoa-moments in there: <a href="https://cardcatalogforlife.substack.com/p/google-has-a-secret-reference-desk">Google Has a Secret Reference Desk. Here&#8217;s How to Use It.</a> The title is weird though, yes, but, hot damn, the <code>intitle: &#8220;index of&#8221; /pdf </code>thing alone is worth it.</p></li><li><p>Satisfyingly meta: <a href="https://hyperallergic.com/joel-meyerowitz-on-photograpghing-giorgio-morandis-studio">Joel Meyerowitz on Photographing Giorgio Morandi&#8217;s Studio.</a> </p></li><li><p>Stripe launched <a href="https://projects.dev/">projects.dev</a> which &#8220;lets you or your agents provision multiple services, generate and store credentials, and manage usage and billing from the CLI.&#8221; Makes total sense when you want to increase the GDP of the Internet.</p></li><li><p>Finally! Edward, Nick, Rasmus, and Julia shared the &#8220;first iteration of the Playbit runtime, our vision for building playful personal-scale software&#8221;: <a href="https://playbit.app/">playbit.app</a>.</p></li><li><p><a href="https://farayan.me/dappled">Dappled light</a>: &#8220;Growing up, I loved this mix of shade and sun I called &#8216;shun.&#8217; Sunlight slipped through the leaves, and its tiny gaps turned into pinholes that project little dancing suns. It felt like magic.&#8221;</p></li><li><p><a href="https://austinkleon.substack.com/p/mccartneys-creativity-in-3-photographs">McCartney&#8217;s creativity in 3 photographs.</a></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EWTP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EWTP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 424w, https://substackcdn.com/image/fetch/$s_!EWTP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 848w, https://substackcdn.com/image/fetch/$s_!EWTP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 1272w, https://substackcdn.com/image/fetch/$s_!EWTP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EWTP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif" width="977" height="34" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:34,&quot;width&quot;:977,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:136254,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/192396030?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EWTP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 424w, https://substackcdn.com/image/fetch/$s_!EWTP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 848w, https://substackcdn.com/image/fetch/$s_!EWTP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 1272w, https://substackcdn.com/image/fetch/$s_!EWTP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde6fd8e7-bbbb-4daa-9501-fe2476e13d67.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>Note from the producer: no newsletter next week. One weekend of vacation.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PT1m!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PT1m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 424w, https://substackcdn.com/image/fetch/$s_!PT1m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 848w, https://substackcdn.com/image/fetch/$s_!PT1m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 1272w, https://substackcdn.com/image/fetch/$s_!PT1m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PT1m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif" width="955" height="38" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f6ac3411-532d-498b-af77-9f78dfdc4ef4.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:38,&quot;width&quot;:955,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:148542,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/192396030?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PT1m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 424w, https://substackcdn.com/image/fetch/$s_!PT1m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 848w, https://substackcdn.com/image/fetch/$s_!PT1m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 1272w, https://substackcdn.com/image/fetch/$s_!PT1m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff6ac3411-532d-498b-af77-9f78dfdc4ef4.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Collected 25 years of egg receipts? You should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #79]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-79</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-79</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 22 Mar 2026 05:40:31 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/98b2b6c8-2ca3-473c-8df7-7efff83ed536_3458x2022.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Is software turning into a liquid?</p><p>It never was a solid, true. Pure thought stuff, as Fred Brooks wrote. But even that pure thought stuff felt more tangible than what software is turning into, did it not? Software had corners and edges: releases and version numbers. <em>This </em>is a piece of software, it&#8217;s done, one could say. A long time ago, software even came in boxes. Sometimes it had a printed manual. </p><p>Now ChatGPT writes tens or hundreds of lines of Python to resize images, create a PDF, or extract data from a CSV &#8212;&nbsp;and then throws it away, without anyone even having seen the code. An agent like OpenClaw will create a little script to check whether I turned off all the lights in the house. Nothing to throw away, because it was never stored in a file.</p><p>There is now so much code out there, appearing and disappearing as needed, that putting version numbers on it seems as futile as naming waves in the ocean. </p><p>Is this what most software is going to be? Nameless, shapeless? Created just in time?</p><p>A good friend of mine works at a company that shoots into and operates things in space. This week he told me that they&#8217;re required to record how much torque they use to tighten bolts and screws. There are torque-recording wrenches you can buy, but they cost $25k a pop. Maybe it was $15k, not sure, but it was an outrageous number. So outrageous that someone on his team thought &#8220;nuh-uh&#8221; and went out and bought Bluetooth-enabled torque wrenches for $1k &#8212; far cheaper in this comparison. Then that teammate, who&#8217;s not a programmer, used an agent to vibe-code a piece of software to talk to the torque wrenches via Bluetooth and record the data in the spreadsheet he uses. He tested it a few times to make sure it worked as it should and then, well, went to work. Tens of thousands of dollars saved.</p><p>Now that was a <em>piece of software</em>, right? One could even put a name on it: TorqueThis v0.0.1, or something. But I said to my friend, one could also imagine that in the future, say in a year, even that won&#8217;t be a <em>piece</em> anymore. Doesn&#8217;t it seem possible that in a year you can say to your agent: hey, I&#8217;m holding this Bluetooth-enabled torque wrench in my hand, I have this spreadsheet open, write some code that records the torque whenever I say &#8220;now&#8221; and adds it as a new row in column D of that spreadsheet.</p><p>And code will appear, do its things while you do your thing, and then it&#8217;ll disappear. Drip drip drip, it goes into every nook and cranny and then, job done, it evaporates.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!c-tG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!c-tG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 424w, https://substackcdn.com/image/fetch/$s_!c-tG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 848w, https://substackcdn.com/image/fetch/$s_!c-tG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 1272w, https://substackcdn.com/image/fetch/$s_!c-tG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!c-tG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif" width="962" height="38" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:38,&quot;width&quot;:962,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:149606,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/191657628?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!c-tG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 424w, https://substackcdn.com/image/fetch/$s_!c-tG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 848w, https://substackcdn.com/image/fetch/$s_!c-tG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 1272w, https://substackcdn.com/image/fetch/$s_!c-tG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7fd4a35-b5e6-4dc5-9795-f6dc810dd65c.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>Are you going to be in Boston in July? Let&#8217;s meet at Laracon. <a href="https://x.com/LaraconUS/status/2033931090050916400">I&#8217;ll be speaking there</a>.</p></li><li><p><a href="https://blog.colinbreck.com/adapting-to-ai-reflections-on-productivity/">Adapting to AI: Reflections on Productivity</a>. One of the calmest, most balanced, and most pragmatic pieces of writing I&#8217;ve seen on this topic. It has more questions than answers, but that feels apt for what we&#8217;re going through. I&#8217;m skeptical of any opinion about programming these days if it&#8217;s made up of more exclamation marks than question marks.</p></li><li><p>I&#8217;d never read anything by C.S. Lewis, but whenever I came across his name I felt like I should have. This week, I finally righted what had long felt like a wrong and read <a href="https://www.lesswrong.com/posts/Y8rEA4e4DxafmeAbW/the-inner-ring-by-c-s-lewis">The Inner Ring</a>. And now I want more: &#8220;The quest of the Inner Ring will break your hearts unless you break it. But if you break it, a surprising result will follow. If in your working hours you make the work your end, you will presently find yourself all unawares inside the only circle in your profession that really matters. You will be one of the sound craftsmen, and other sound craftsmen will know it. This group of craftsmen will by no means coincide with the Inner Ring or the Important People or the People in the Know. It will not shape that professional policy or work up that professional influence which fights for the profession as a whole against the public: nor will it lead to those periodic scandals and crises which the Inner Ring produces. But it will do those things which that profession exists to do and will in the long run be responsible for all the respect which that profession in fact enjoys and which the speeches and advertisements cannot maintain.&#8221;</p></li><li><p>To the sound of &#8220;Is this the real life? Is this just fantasy?&#8221; from Queen&#8217;s Bohemian Rhapsody: &#8220;European Commission [&#8230;] announced the creation of a &#8216;28th regime&#8217; [&#8230;] <a href="https://commission.europa.eu/topics/business-and-industry/doing-business-eu/company-law-and-corporate-governance/eu-inc-new-harmonised-corporate-legal-regime_en">The  Proposal for an EU Inc. corporate legal framework</a>  provides faster (within 48 hours), cheaper (maximum EUR 100) and fully digital company registration, simplified procedures throughout the company life cycle, easier digital share transfers and capital operations, support for modern financing instruments, and the possibility for Member States to allow access to public equity markets. It also introduces fully digital insolvency procedures and automatic transmission of company data to relevant authorities in line with the &#8220;once-only principle,&#8221; while including safeguards against fraud and abuse.&#8221; If this truly, actually, for real happens then something that has died in me through the process of running a company here in Germany will maybe be reborn again.</p></li><li><p><a href="https://craigmod.com/roden/112/">The always wonderful Craig Mod</a>: &#8220;The point of bloviating like this: We watch the LLMs perform these acts &#8212; acts that, even five years ago, would have seemed like pure science fiction &#8212; and we wrongly (I believe) extrapolate out a kind of intelligence that would be able to make sound decisions on a larger, world-based scale. Which is to say: LLMs&#8217; operating resolution is severely hamstrung. Whereas we, humans &#8212; messy, disgusting, goopy, flawed, miraculous humans &#8212; are operating at a freakishly high resolution, to which we have a preternatural ability to access subconsciously, and through which we use language to represent &#8212; in broad strokes &#8212; notions that operate in this higher register.&#8221;</p></li><li><p>This was a delicious mind-bender:<a href="https://www.ribbonfarm.com/2017/11/09/ceos-dont-steer/"> CEOs Don&#8217;t Steer</a>. It only made my fascination with businesses greater. </p></li><li><p><a href="https://www.theguardian.com/technology/2026/feb/25/tech-legend-stewart-brand-on-musk-bezos-and-his-extraordinary-life-we-dont-need-to-passively-accept-our-fate">The Guardian profiled Stewart Brand</a> and I thought it was lovely. I&#8217;ve never before looked through the notion of Maintenance as a lense like this.</p></li><li><p><a href="https://www.generalintelligencecompany.com/writing/agent-native-engineering">Agent-Native Engineering</a> by the <a href="https://www.generalintelligencecompany.com/about">The General Intelligence Company Of New York</a>. There&#8217;s a bunch of interesting stuff in there (although I bet it&#8217;s not as applicable as it sounds) but this one here stood out: &#8220;Speaking of idea generation, that&#8217;s the new problem. Before 2026 engineers had to spend time using their high level of intelligence solving relatively narrow well defined problems. Now, most of those problems are simple or manageable by background agents. Your engineers&#8217; new job is to find more problems to solve. That&#8217;s why many are saying its the golden age of the idea guy - it is. If you can narrowly scope a problem then hand it off to an engineer, you might as well just hand it off to a background agent.&#8221;</p></li><li><p><a href="https://github.com/ghostty-org/ghostling">Ghostling</a>: &#8220;A minimum viable terminal emulator built on top of the libghostty C API.&#8221; Mitchell <a href="https://x.com/mitchellh/status/2035114092151902357">added</a>: &#8220;From empty repo to a functional minimal standalone terminal based on libghostty in 2 hours, presenting Ghostling! ~600 lines of C and you get extremely accurate, performant, and proven terminal emulation.&#8221; And someone asked: &#8220;Did you use AI? I&#8217;m wondering because you pushed this out pretty quickly and there is a large volume of comments... but the code is neat and readable&#8221; And <a href="https://x.com/mitchellh/status/2035116671908946215">he said</a>: &#8220;I didn&#8217;t write a single line of code. I reviewed it all though and consistently nudged the AI in the right direction. Heavy commenting is my personal style, and its especially good for a demo like this.&#8221;</p></li><li><p>This is pretty neat: Obsidian Web Clipper now comes with <a href="https://x.com/kepano/status/2034374124269940898">a &#8220;reader mode&#8221;</a> (I don&#8217;t know if that&#8217;s the official name) that produces pretty good results and is incredibly fast. Lot of fun to press Opt-Shift-R and see what it does.</p></li><li><p>Now, this, this was interesting: <a href="https://colossus.com/article/we-have-learned-nothing-startup-pundits/?utm_source=newsletter">We Have Learned Nothing</a>. I mean, they had me at Thomas Kuhn and Paul Feyerabend (although it felt like they <em>really</em> wanted to throw those names in there even if they didn&#8217;t have to), but the Red Queen was the interesting bit: &#8220;In 1973, the evolutionary biologist Leigh Van Valen proposed what he called the Red Queen hypothesis: in any ecosystem, when one species evolves an advantage at the expense of another, the disadvantaged species will evolve to offset that improvement. [&#8230;] Similarly, when new startup methods are quickly adopted by everyone, no one gains a relative advantage, and success rates stay flat. To win, startups must develop novel, differentiating strategies and build sustainable barriers to imitation before competitors can catch up.&#8221;</p></li><li><p>I consider myself a pretty advanced User of Computers. An experienced Surfer of the Web, so to say. Someone who never, even back in 2000, fell prey to the flashy, blinking, red Download button that would appear on websites to trick you when you were trying to download something real. Pour two drinks into me and I&#8217;ll even insist that I never, not once, not a single time in my life, clicked on something I didn&#8217;t mean to click on. If I clicked, I meant to click. And I never clicked on a fake link, yes sir. I&#8217;m that good with the cursor. But, fucking hell, I think I would&#8217;ve <a href="https://ma.tt/2026/03/gone-almost-phishin/">fallen for this phishing attack.</a></p></li><li><p><a href="https://thatshubham.com/blog/news-audit">The 49MB Web Page</a>. I don&#8217;t get people who truly enjoy horror movies. Like, you get a kick out of being scared, of &#8230; feeling bad? And yet here I am, reading about 49MB web pages, shivering, shaking my head.</p></li><li><p>Matteo Collina wrote about <a href="https://blog.platformatic.dev/why-nodejs-needs-a-virtual-file-system">why Node.js needs a virtual file system</a> and the two paragraphs that made everyone share this: &#8220;What began as a holiday experiment became PR #61478: a node:vfs module for Node.js, with almost 14,000 lines of code across 66 files. Let me be honest: a PR that size would normally take months of full-time work. This one happened because I built it with Claude Code. I pointed the AI at the tedious parts, the stuff that makes a 14k-line PR possible but no human wants to hand-write: implementing every fs method variant (sync, callback, promises), wiring up test coverage, and generating docs. I focused on the architecture, the API design, and reviewing every line. Without AI, this would not have been a holiday side project. It just wouldn&#8217;t have happened.&#8221; </p></li><li><p><a href="https://tomtunguz.com/local-vs-cloud-speed/">The Robotic Tortoise &amp; the Robotic Hare</a>. It&#8217;s a race between Opus 4.6 and Qwen 35B, the latter running locally and with less, say, smarts. But Qwen won. Because: &#8220;With 3x faster responses, I could add an extra cycle : &#8216;critique the plan and address the critiques.&#8217; In the time the hare was still thinking, the tortoise ran another lap.&#8221; Very interesting! I&#8217;m torn on this. At some point last year I was also a believer in &#8220;if you have a dumb but fast model, it can outrun the smart but slow model&#8221; but then, in practice, it turns out that on average the smart but slow model is actually fast, because &#8212; on average &#8212; it gets to the <em>right results</em> faster. Maybe that&#8217;s changing? Maybe the floor has been raised too and &#8220;dumb&#8221; models are smart enough now?</p></li><li><p>&#8220;<a href="https://emilkowal.ski/skill">A skill file based</a> on the articles written on my personal site. Designed for designers and engineers to help them build better user interfaces.&#8221; What a time to be alive! A file as a distillation of one&#8217;s own preferences and taste and judgement and experiences, fed to a neural network trained to help you get your work done.</p></li><li><p>macOS has <code>/usr/bin/time</code> which takes an <code>-l</code> argument and <a href="https://x.com/cooperx86/status/2035405411495383442?s=20">can show memory &amp; resource usage of whatever command you&#8217;re passing</a>.</p></li><li><p>apenwarr: <a href="https://apenwarr.ca/log/20260316">Every layer of review makes you 10x slower</a>. In some sense, I get it. Yes. Reviews can be the bottleneck. But then: are reviews the same thing they were three years ago? Does a review take the same amount of time, no: <em>should</em> it take the same amount of time as in 2023, even if you can now spin up five parallel models to help you review? (And this one I&#8217;m consciously putting in parentheses so you can imagine I whisper this into your ear: I also don&#8217;t think that in the near future the code generated by models will need close-up reviews.) </p></li><li><p>Can&#8217;t say I&#8217;ve ever been really interested in Banksy, but this was great: <a href="https://www.reuters.com/investigates/special-report/global-art-banksy">In Search of Banksy</a>.</p></li><li><p><a href="https://haskellforall.com/2026/03/a-sufficiently-detailed-spec-is-code">A sufficiently detailed spec is code</a>. I&#8217;m not sure what to think here. On one hand: yes, true, if you want to specify everything a piece of software is supposed to do, you might as well write the code. On the other: it also feels like you <em>can</em> specify what software is supposed to do without being 100% precise and, as long as the person (thing) implementing it and you have some shared understanding about what&#8217;s left out of the spec, things will be fine. Question is how much shared understanding there is and I think that&#8217;s where a lot of people have the wrong estimates.</p></li><li><p><a href="https://tigerfs.io/">tigerfs</a> looks very, very interesting: &#8220;A filesystem backed by PostgreSQL, and a filesystem interface to PostgreSQL. TigerFS mounts a database as a directory. Every file is a real row. Writes are transactions. Multiple agents and humans can read and write concurrently with full ACID guarantees, locally or across machines. Any tool that works with files works out of the box.&#8221; I&#8217;ve been hacking on an agent that isn&#8217;t really stateless but also doesn&#8217;t need a full VM. A filesystem backed by PostgreSQL seems like it sits right in the middle and could be very handy.</p></li><li><p>Armin: &#8220;There&#8217;s a feeling that all the things that create friction in your life should be automated away. That human involvement should be replaced by AI-based decision-making. Because it is the friction of the process that is the problem. When in fact many times <a href="https://lucumr.pocoo.org/2026/3/20/some-things-just-take-time/">the friction, or that things just take time, is precisely the point</a>.&#8221;</p></li><li><p>Pre-ordered this within ten seconds of clicking the link: &#8220;<a href="https://arenamag.com/silicon">Silicon</a> is the element that built modernity. Silicon is a beautiful book about the world of transistors, chips, and the greatest technology revolution of all time.&#8221; Of course, right after I caught myself: wait, did you just pre-order an expensive book about&#8230; silicon? Yes, I did. Let&#8217;s see how it goes.</p></li><li><p>Talking about Silicon: <a href="https://www.dwarkesh.com/p/dylan-patel">there&#8217;s a new Dwarkesh episode with Dylan Patel out</a>. I love it. Listening to this made me think: is this how people how are into sports feel like every weekend?</p></li><li><p>Then again, I do know what it&#8217;s like to be into sports, don&#8217;t I? Yesterday evening I put on <a href="https://www.youtube.com/watch?v=vM3QucWQygg">this thriller</a> (top comment: &#8220;The heavy breathing of two very experienced commentators tells you how special this achievement is!&#8221;) and my wife couldn&#8217;t make sense of the dichotomy between the quiet click-clacks coming from the TV and me saying &#8220;holy shit, holy shit, now he&#8217;s going to put the white&#8212; wow, incredible.&#8221;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!f5XL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!f5XL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 424w, https://substackcdn.com/image/fetch/$s_!f5XL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 848w, https://substackcdn.com/image/fetch/$s_!f5XL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 1272w, https://substackcdn.com/image/fetch/$s_!f5XL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!f5XL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif" width="962" height="36" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ffd65150-6d35-4c1c-947b-ebf52273398b.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:36,&quot;width&quot;:962,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:141910,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/191657628?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!f5XL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 424w, https://substackcdn.com/image/fetch/$s_!f5XL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 848w, https://substackcdn.com/image/fetch/$s_!f5XL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 1272w, https://substackcdn.com/image/fetch/$s_!f5XL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fffd65150-6d35-4c1c-947b-ebf52273398b.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Ever spent a Sunday evening in front of the TV, alone, dreading going to to school the next day, thinking &#8220;maybe I should become a snooker player? never played once in my life, but everyone has to start somewhere, don&#8217;t they?&#8221; Then you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #78]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-78</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-78</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 15 Mar 2026 06:21:52 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/37b0b38d-60c5-456a-9f5c-390f3dc6de99_1050x708.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Imagine working in the oil industry and someone figures out how to turn rainwater into oil. Some in the industry aren&#8217;t impressed: &#8220;More oil. Pah. That won&#8217;t change much, actually. It&#8217;s just more oil. We&#8217;ve been dealing with oil for decades. Sure, there&#8217;s more, but hey: more work for us. The rest is the same old, same old.&#8221;</p><p>They&#8217;d be right to some extent. It <em>is</em> more oil and some things would <em>not</em> change. Oil would still be a physical business. You would still need customers and contracts and sales channels and salespeople. You would still need refineries and storage and transport and distribution. You would still need safety and regulation and all of that. </p><p>But, also: everything else would change. Because the oil <em>industry</em> isn&#8217;t built around oil<em>. </em>It&#8217;s built around hard-to-find, only-in-some-places, hard-to-extract oil.</p><p>The price of crude oil would collapse. Reserves would lose their value. Finding oil fields and drilling for oil would not be a thing anymore. Location wouldn&#8217;t matter anymore, since it rains nearly everywhere.</p><p>And then come the second-order effects: on energy policy and geopolitics, on plastics and chemicals and fertilizers, on the parts of the industry that only refine and move and sell oil. Oil wouldn&#8217;t stop being oil, but the bottleneck would move through the industry and bump into and kick over many things along the way.</p><p>You know me. I&#8217;m not here to provide indirect political commentary on rising petrol prices. No, I&#8217;m talking about software, of course, and I want you to again consider: we now have buttons that we can smash and out come hundreds and thousands of lines of working code, in seconds. </p><p>Those buttons are <em>not</em> just another type of developer tool and &#8220;we&#8217;ve had code generators for decades&#8221; is not a valid reply.</p><p>Code is no longer hard-to-find, only-in-some-places, hard-to-extract. And yes, I am preaching to a choir here, but it&#8217;s Sunday and this is my newsletter and, damn it, I have to say this again, because I keep bumping into engineers who still don&#8217;t seem to understand what follows from that.</p><p>They&#8217;ll say something like: yes, someone <em>should</em> rebuild GitHub, because GitHub <em>is</em> dead. And I agree, yes, I&#8217;ve been saying that. But what they actually mean is: someone should rebuild GitHub as-is, with the same fundamental assumptions, with the same shape of open source as we know it, and built on the idea that code is scarce.</p><p>And I want to shake them and go: man, don&#8217;t you see? All of it was built on the assumption that code is expensive! And most of it doesn&#8217;t make sense anymore when code is cheap. Yes, some things won&#8217;t change. The need to do proper engineering won&#8217;t go away. But many, many, many things will, because a single constant in a very fundamental equation has been changed.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wZ7A!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wZ7A!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 424w, https://substackcdn.com/image/fetch/$s_!wZ7A!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 848w, https://substackcdn.com/image/fetch/$s_!wZ7A!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 1272w, https://substackcdn.com/image/fetch/$s_!wZ7A!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wZ7A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif" width="964" height="32" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ce49d48c-85d1-464e-8be4-4afb9dd3c242.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:32,&quot;width&quot;:964,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:126758,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/190845052?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wZ7A!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 424w, https://substackcdn.com/image/fetch/$s_!wZ7A!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 848w, https://substackcdn.com/image/fetch/$s_!wZ7A!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 1272w, https://substackcdn.com/image/fetch/$s_!wZ7A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fce49d48c-85d1-464e-8be4-4afb9dd3c242.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p>Craig Mod built &#8220;the accounting software I&#8217;ve always craved&#8221; (called TaxBot2000) and is now <a href="https://craigmod.com/essays/software_bonkers/">software bonkers</a>: &#8220;It&#8217;s strange times. Anyway, I&#8217;m mad for software right now. Bonkers. I can&#8217;t stop thinking about things to make, things to make better. And then I go and make them. There&#8217;s an energy around all this that is &#8212; truly &#8212; epochal. If you&#8217;re not playing with models like Claude, you should probably take a peek. It&#8217;s the time of building.&#8221;</p></li><li><p>Great page: <a href="https://background-agents.com/">background-agents.com</a>. There&#8217;s obviously (no: it&#8217;s very obvious) a bias towards the creators of the page there, but leaving that aside: this is where it&#8217;s going. </p></li><li><p><a href="https://x.com/mitchellh/status/2031776788532379996">This tweet by Mitchell</a> might have saved me this week. I read it and while I&#8217;m not like the guy in the video, I immediately felt guilty for getting distracted so often. Apparently, I have built up muscle memory to cmd-tab to a different window as soon as I submit a prompt. So, after reading that tweet, I closed the browser window with my private profile, put my phone away, and swore to myself that I&#8217;ll now either try to figure out the same thing the agent is trying to figure out or do something else on my own while it&#8217;s running. That lead to two incredibly productive days that made me feel great.</p></li><li><p>Karpathy released <a href="https://github.com/karpathy/autoresearch">autoresearch</a>, which is a repository, a tiny bit of code, and a Markdown file to instruct a coding agent to act like an LLM researcher: &#8220;The idea: give an AI agent a small but real LLM training setup and let it experiment autonomously overnight. It modifies the code, trains for 5 minutes, checks if the result improved, keeps or discards, and repeats. You wake up in the morning to a log of experiments and (hopefully) a better model.&#8221; The idea of running an agent in a loop isn&#8217;t new, but what I find fascinating: how small this repo is, how small the codebase is, how direct and clear the instructions and the workflow are, and the meta thing of this being exactly what the non-nano researchers at the big labs are doing, at least kind of. Tobi L&#252;tke then used the same loop, through the <a href="https://github.com/davebcn87/pi-autoresearch">pi-autoresearch plugin</a>, but <a href="https://github.com/Shopify/liquid/pull/2056">instead of training a model the agent optimized his templating language</a>. Now the question is: what problems are as verifiable as a training run result or performance? Also, if you read this whole paragraph without thinking of the word &#8220;Ralph&#8221; that means we live in different bubbles.</p></li><li><p><a href="https://kevinkelly.substack.com/p/six-selfish-reasons-to-have-kids">Six Selfish Reasons to Have Kids</a>, by Kevin Kelly.</p></li><li><p><a href="https://florianbrand.com/posts/benches-2026">Florian Brand on LLM benchmarks</a>: &#8220;It is hard to see real-world utility being measured here. [&#8230;] The other issue is the harness: It includes a set of tools to look at the files, revert to a previous step and edit code, but the model has to return a block of reasoning, followed by the tool call in triple-backtick delimited markdown. This is not how models work these days! [&#8230;] So, what happens when you fix those mistakes?&#8221; I guess we all know by now that the benchmarks that are shared on the day of a model release are just pointers in a general direction, but this was still very, very interesting to read.</p></li><li><p><a href="https://davidoks.blog/p/why-the-atm-didnt-kill-bank-teller">Why ATMs didn&#8217;t kill bank teller jobs, but the iPhone did</a>: &#8220;The history of technology, even exceptionally powerful general-purpose technology, tells us that as long as you are trying to fit capital into labor-shaped holes you will find yourself confronted by endless frictions: just as with electricity, the productivity inherent in any technology is unleashed only when you figure out how to organize work around it, rather than slotting it into what already exists.&#8221; Good piece. The framing of &#8220;automating a job is much harder than making it irrelevant&#8221; makes a lot of sense to me and seems like a useful lens. </p></li><li><p>Amazing: <a href="https://howisfelix.today/">howisFelix.today?</a> Lots of nice little insights. Don&#8217;t miss the conclusion at the end.</p></li><li><p>&#8220;What&#8217;s your favourite disassembler? Mine&#8217;s a font.&#8221; Yes, that&#8217;s one hard line, and yes, you read it right: &#8220;This font converts sequences of hexadecimal lowercase characters into disassembled Z80 instructions, by making extensive use of OpenType&#8217;s&nbsp;Glyph Substitution Table (GSUB)&nbsp;and&nbsp;Glyph Positioning Table (GPOS).&#8221; <a href="https://github.com/nevesnunes/z80-sans">Watch the video</a>.</p></li><li><p><a href="https://daringfireball.net/2026/03/the_macbook_neohttps://daringfireball.net/2026/03/the_macbook_neo">Gruber&#8217;s review of the MacBook Neo</a>: &#8220;The Neo crystallizes the post-Jony Ive Apple. The MacBook &#8220;One&#8221; was a design statement, and a much-beloved semi-premium product for a relatively small audience. The Neo is a mass-market device that was conceived of, designed, and engineered to expand the Mac user base to a larger audience. It&#8217;s a design statement too, but of a different sort&#8201;&#8212;&#8201;emphasizing practicality above all else. It&#8217;s just a goddamn lovely tool, and fun too. I&#8217;ll just say it: I think I&#8217;m done with iPads. Why bother when Apple is now making a crackerjack Mac laptop that starts at just $600? May the MacBook Neo live so long that its name becomes inapt.&#8221; And that first line is the most Gruber line he&#8217;s ever published.</p></li><li><p>But <a href="https://x.com/samhenrigold/status/2032080638635880796">this review of the MacBook Neo</a> I really loved. Not only because of this paragraph: &#8220;Downloaded Xcode and dragged buttons and controls around in Interface Builder with no understanding of what I was looking at. I edited SystemVersion.plist to make the &#8216;About this Mac&#8217; window say it was running Mac OS 69, which is the s*x number, which is very funny. I faked being sick to watch WWDC 2011 &#8212; Steve Jobs&#8217; last keynote &#8212; and clapped alone in my room when the audience clapped, and rebuilt his slides in Keynote afterward because I wanted to understand how he&#8217;d made them feel that way.&#8221; But also because of this one: &#8220;That is not a bug in how he&#8217;s using the computer. That is the entire mechanism by which a kid becomes a developer. Or a designer. Or a filmmaker. Or whatever it is that comes after spending thousands of hours alone in a room with a machine that was never quite right for what you were asking of it.&#8221;</p></li><li><p><a href="https://om.co/2026/03/03/apple-does-fusion/">Apple Does Fusion</a>: &#8220;This is why I think Fusion Architecture is the real story.</p><p>Not because of what M5 Pro and M5 Max can do today. Because of what it opens up. Once you&#8217;ve proven you can split the chip and keep unified memory working across the pieces, the question changes. It is no longer &#8216;how big can we make this chip?&#8217; It is &#8216;how many pieces can we connect, and in how many dimensions?&#8217;&#8221;</p></li><li><p><a href="https://beyondloom.com/blog/onwigglypaint.html">Some Words on WigglyPaint</a>. In the Joy column: this looks so lovely! I want to play with WigglyPaint! In the Curiosity column, the ending: &#8220;The most wildly successful project I&#8217;ve ever released is no longer mine. In all my years of building things and sharing them online, I have never felt so violated.&#8221;</p></li><li><p>Drew Breunig is asking <a href="https://www.dbreunig.com/2026/02/21/why-is-claude-an-electron-app.html">why is Claude an Electron app</a>. His hypothesis: &#8220;For one thing, coding agents are really good at the first 90% of dev. But that last bit &#8211; nailing down all the edge cases and continuing support once it meets the real world &#8211; remains hard, tedious, and requires plenty of agent hand-holding.&#8221; After having worked on Zed and contributed a few things to Ghostty (the first and only two truly native macOS apps I&#8217;ve worked on): I think most engineers underestimate how hard it is to build a truly great native application. And the question is: will your users notice, or care? If you&#8217;re building the application for a business, will going native make the business more successful? On top of that: once you&#8217;ve worked on a native application you realize what an amazing platform the web is and how much developer tooling has been built in the last twenty, thirty years around it.</p></li><li><p>And here&#8217;s Nikita Prokopov&#8217;s answer to Drew&#8217;s question: <a href="https://tonsky.me/blog/fall-of-native">Claude is an Electron App because we&#8217;ve lost native</a>.</p></li><li><p>Helen Min: <a href="https://www.helenmin.com/blog/software-is-becoming-more-honest">Software isn&#8217;t dying, but it is becoming more honest</a>. Fascinating stuff. This line here, for example: &#8220;I often hear founders and other hyper-rational types ask why we haven&#8217;t always billed for outcomes. The answer usually boils down to technical limitations and risk.&#8221; That made me wonder: because now you can kiiinda say that tokens are substitute for outcomes? If you spend millions of tokens on something, won&#8217;t you get outcomes? It might not be dying, but software is changing, man. And the old software we knew &#8212; that&#8217;s dead, I&#8217;m pretty sure. Dead in the sense that rock &amp; roll is dead.</p></li><li><p>I also found <a href="https://www.youtube.com/watch?v=tJwiP0zqVp4">this podcast with Bret Taylor</a> to have some interesting thoughts on outcome-based billing.</p></li><li><p>Yes: &#8220;<a href="https://sharif.io/looking-stupid">Willingness to look stupid is a genuine moat in creative work</a>"</p></li><li><p><a href="https://www.bassimeledath.com/blog/levels-of-agentic-engineering">The 8 Levels of Agentic Engineering</a>. Interesting, but at this point I&#8217;m convinced that in a year that ladder will look very funny and outdated. The models will wash away a lot.</p></li><li><p>Talking about models washing away stuff, <a href="https://simonwillison.net/2026/Mar/9/not-so-boring/">here&#8217;s Simon Willison</a>: &#8220;Drop a coding agent into any existing codebase that uses libraries and tools that are too private or too new to feature in the training data and my experience is that it works <em>just fine</em>&#8212;the agent will consult enough of the existing examples to understand patterns, then iterate and test its own output to fill in the gaps.&#8221; Many, many things I believed over the last year have been washed away by these models. If you still think Opus 4.6 is the peak, try deep mode in Amp, which uses GPT-5.3-Codex right now. Stare into its eyes.</p></li><li><p>Not a short form video guy, but I am a this-is-funny guy and this is funny: <a href="https://x.com/AndyCantwell/status/2031402329295987036">Taking my mate ChatGPT to lunch</a>. (But, seriously, will AI cliche phrases disappear in the future or always be a thing?)</p></li><li><p>Or I guess I should&#8217;ve said &#8220;trope&#8221; instead of &#8220;cliche&#8221;, because I&#8217;m going to ask a model to create a really, really dense version of this and then I&#8217;ll put it in my ChatGPT system prompt: <a href="https://tropes.fyi/tropes-md">tropes.md</a>.</p></li><li><p><a href="https://bloomberg.github.io/js-blog/post/temporal/">Temporal: The 9-Year Journey to Fix Time in JavaScript</a>. Years ago, back when we had such things, I was in a quarterly planning meeting. I ran the meeting, in fact. I was the manager, and I asked an engineer on my team to give a rough estimate of how long something would take. &#8220;Whew, really hard to say,&#8221; he said. &#8220;Come on,&#8221; I pushed. &#8220;We need something here, so&#8212;gun to your head&#8212;how long?&#8221; &#8220;Gun to my head?&#8221; he said. &#8220;I&#8217;d take the bullet.&#8221; So, anyway, that&#8217;s what I think of every time date and time libraries come up. Fix Time in JavaScript? I&#8217;d take the bullet.</p></li><li><p>I love Google Maps but I don&#8217;t really enjoy using it to find places to eat in a city I don&#8217;t know. And &#8220;don&#8217;t really enjoy using&#8221; it is putting it mildly. Now Google Maps is<a href="https://blog.google/products-and-platforms/products/maps/ask-maps-immersive-navigation"> getting Gemini</a> and that seems like one of the most interesting &#8220;we put an LLM in it&#8221; product changes in a while.</p></li><li><p>Paula Muldoon is saying <a href="https://paulamuldoon.com/2026/03/10/2026-staff-engineers-need-to-get-hands-on-again/">staff engineers need to get hands-on again</a>: &#8220;This definition of staff engineering, particularly the organisational impact, made a lot of sense before 2025. Staff engineers need to stop being hands-on with the code as the majority of their work and spend time teaching others, making strategy etc. [&#8230;] AI software tools have changed that.&#8221; Yes. And now let&#8217;s all consider what other roles and processes in the Big Tech Org Chart 2010-2025 don&#8217;t make a lot of sense anymore. This isn&#8217;t 2018 anymore.</p></li><li><p><a href="https://www.theatlantic.com/ideas/2026/02/boredom-parenthood-father/686158/?">Boredom Is the Price We Pay for Meaning</a>: &#8220;If you try to distract yourself from boredom, if you run from it, all will be lost. Brodsky quoted an imperishable line from Robert Frost: &#8216;The best way out is always through.&#8217; A note written by the novelist David Foster Wallace makes a similar point: &#8216;Bliss&#8212;a second-by-second joy and gratitude at the gift of being alive, conscious&#8212;lies on the other side of crushing, crushing boredom.&#8217;&#8221;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!CDX0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!CDX0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 424w, https://substackcdn.com/image/fetch/$s_!CDX0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 848w, https://substackcdn.com/image/fetch/$s_!CDX0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 1272w, https://substackcdn.com/image/fetch/$s_!CDX0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!CDX0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif" width="965" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ff99b641-a65e-4834-b6de-c207dde781aa.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:965,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:138482,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/190845052?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!CDX0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 424w, https://substackcdn.com/image/fetch/$s_!CDX0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 848w, https://substackcdn.com/image/fetch/$s_!CDX0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 1272w, https://substackcdn.com/image/fetch/$s_!CDX0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fff99b641-a65e-4834-b6de-c207dde781aa.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Do you also like to deem yourself an oil industry expert in your newsletter? Sign right up:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #77]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-77</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-77</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 08 Mar 2026 07:41:51 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/eed134d4-7986-42f2-a008-115d1559d483_1572x1346.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Many, many years ago, before Docker was released, I knew a guy whose team worked a lot with virtual machines.</p><p>All day long, he told me, they would configure and test and spin up and down virtual machines. I can&#8217;t remember what they used the machines for, but he told me that an actual, real problem his team faced was managing their attention. You change something in the Vagrant configuration, rebuild the machine, wait for five minutes, and then, once the machine is ready, you no longer know what you were trying to test because you switch to a different window and get stuck on Hacker News</p><p>So what they did to &#8220;fix&#8221; this problem, he told me in a tone that said &#8220;don&#8217;t make fun of me for this, this isn&#8217;t funny&#8221;, was to watch movies and TV shows on a second monitor. That&#8217;s right. His teammates would hit return after typing <code>vagrant up</code>, and instead of switching windows, they&#8217;d look over to their second monitor to watch a bit of Scrubs. In their peripheral vision they could see when the build was done and go right back to it. A little bit of light TV that&#8217;s constantly on is less distracting than switching windows.</p><p>Over the years, I&#8217;ve thought of this guy and his team many, many times. Every time I have to wait for a build, to be exact.</p><p>And now I think of him whenever I kick off agents to go run and do something for me. In the future &#8212; and this is one of the few things I&#8217;m sure about &#8212; a lot of code will be written while nobody is watching. There will be more agents, running longer, running everywhere, kicked off from anywhere. Where will our attention go? And how will we bring it back when we need to? Watching Scrubs is probably not the solution.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HkKp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HkKp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 424w, https://substackcdn.com/image/fetch/$s_!HkKp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 848w, https://substackcdn.com/image/fetch/$s_!HkKp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 1272w, https://substackcdn.com/image/fetch/$s_!HkKp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HkKp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif" width="974" height="40" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b25ec7e-afac-440d-a802-bfbb17b79753.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:40,&quot;width&quot;:974,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:159222,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/190218180?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HkKp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 424w, https://substackcdn.com/image/fetch/$s_!HkKp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 848w, https://substackcdn.com/image/fetch/$s_!HkKp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 1272w, https://substackcdn.com/image/fetch/$s_!HkKp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b25ec7e-afac-440d-a802-bfbb17b79753.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p><a href="https://nonstructured.com/zen-of-ai-coding/">Zen of AI Coding</a>. I wish I had written that. I nodded to nearly everything there, but to quote just two things, one: &#8220;The economics of software have changed.</p><p>When coding is cheap, implementation stops being the constraint. You can build ten things in parallel. You cannot decide, validate, and ship ten things in parallel, at least not without changing the rest of the pipeline. Cost of delay shifts. It is no longer about developer days. It is about time stuck in other bottlenecks: product decisions, unclear requirements, security review, user testing, release processes, and operational risk. Agents can flood these queues. Inventory grows. Lead time grows. Delay becomes more expensive, not less.&#8221; And two: &#8220;It is tricker then ever to resist the temptation to add features. Resist it. Build what is used. Kill what is not.&#8221;</p></li><li><p><a href="https://x.com/yminsky/status/2028802238085292083">Yaron Minsky</a>: &#8220;I wonder if we&#8217;re starting to hit a deflationary era in software engineering. For the first time, we&#8217;re starting to talk about this in a planning context; it can make sense to put off some projects because we expect they&#8217;ll be easier to achieve in the future than today. [&#8230;] But the difference is the sense that we can start to count on things getting faster. So if we have to get something done by a fixed deadline, we're starting to think that we can put off some of that work for longer than we would have in the past.&#8221;</p></li><li><p>Well worth the reminder: <a href="https://ogirardot.writizzy.com/p/good-software-knows-when-to-stop">Good software knows when to stop</a>. More isn&#8217;t more. In fact, it&#8217;s less today than it was yesterday. And it will be less than that tomorrow.</p></li><li><p>Naval recorded a new podcast episode: <a href="https://x.com/naval/status/2024700227111047581">A Motorcycle for the Mind</a>. I&#8217;m usually skeptical of his confidence, but he does have a fascinating clarity of thought and eloquence and I enjoyed listening to this one. Noteworthy what he thinks about the role of software engineers in the future: &#8220;Does this mean that traditional software engineering is dead? Absolutely not. Software engineers&#8212;even the ones who are not necessarily tuning or training AI models&#8212;these are now among the most leveraged people on earth. [...] But software engineers still have two massive advantages on you. First, they think in code, so they actually know what&#8217;s going on underneath. And all abstractions are leaky. [...] So if you want to build a well-architected application, if you want to be able to even specify a well-architected application, if you want to be able to make it run at high performance, if you want it to do its best, if you want to catch the bugs early, then you&#8217;re going to want to have a software engineering background.&#8221; Or this, about the flood of software that&#8217;s coming: &#8220;And remember: there is no demand for average. The average app&#8212;nobody wants it, at least as long as it&#8217;s not filling some niche that is filled by a superior app. The app that is better will win essentially a hundred percent of the market. [...] But generally speaking, people only want the best of anything. So the bad news is there&#8217;s no point in being number two or number three&#8212;like in the famous Glengarry Glen Ross scene where Alec Baldwin says, &#8216;First place gets a Cadillac Eldorado, second place gets a set of steak knives, and third place you&#8217;re fired.&#8217; That&#8217;s absolutely true in these winner-take-all markets. That&#8217;s the bad news: You have to be the best at something if you want to win.&#8221; But is that true? Look around at some of the most widely used pieces of software: Microsoft 365, Android, WhatsApp, Chrome, Outlook, Jira &#8212;&nbsp;is it &#8220;the best&#8221;? Jira is the best at <em>something</em>, yes. For example: getting people to say &#8220;you just haven&#8217;t configured it correctly.&#8221; But is it the best software in its category, or is it instead the best at &#8220;being sold to large enterprises&#8221;?</p></li><li><p>Or take the most popular CI system in the world: <a href="https://www.iankduncan.com/engineering/2026-02-05-github-actions-killing-your-team/">GitHub Actions Is Slowly Killing Your Engineering Team</a>.</p></li><li><p><a href="https://www.lennysnewsletter.com/p/marc-andreessen-the-real-ai-boom">Marc Andreessen agrees with Naval</a>: &#8220;If the goal is to be a mediocre coder, then just let the AI do it. It&#8217;s fine. The AI is going to be perfectly good in generating infinite amounts of mediocre code. No problem. It&#8217;s all good. If the goal is, &#8216;I want to be one of the best software people in the world, and I want to build new software products and technologies that really matter,&#8217; then yeah, you, 100%, want to still... You want to go all the way down. You want your skillset to go all the way down to the assembly, to assembly and machine code. You want to understand every layer of the stack. You want to deeply understand what&#8217;s happening at the level of the chip, and the network, and so forth. By the way, you also really deeply want to understand how the AI itself works, because you want to... If people understand how the AI works, they&#8217;re clearly able to get more value out of it than somebody who doesn&#8217;t understand how it works. You&#8217;re always more productive if you know how the machine works when you use the machine.</p><p>And so the super-empowered individual on the other end of this that wants to do great things with the new technology, yes, you 100% want to understand this thing all the way down the stack because you want to be able to understand what it&#8217;s giving you.&#8221;</p></li><li><p>And this take agrees with Andreessen: <a href="https://x.com/Dan_Jeffries1/status/2029835639743533071">&#8220;The jobs apocalypse is the Population Bomb of our time.&#8221;</a></p></li><li><p>This is very, very, very, very good: <a href="https://webdirections.org/blog/the-structure-of-engineering-revolutions/">The Structure of Engineering Revolutions</a>. What a useful lens to look through at this moment.</p></li><li><p>Since we&#8217;re talking about Thomas Kuhn: should I feel bad that I&#8217;m linking to nearly every Adam Mastroianni post? Nah, they&#8217;re all really good and this one isn&#8217;t an exception: <a href="https://www.experimental-history.com/p/the-one-science-reform-we-can-all">The one science reform we can all agree on, but we&#8217;re too cowardly to do.</a></p></li><li><p>And what a moment this is, isn&#8217;t it: <a href="https://www.forbes.com/sites/annatong/2026/03/05/cursor-goes-to-war-for-ai-coding-dominance">Cursor Goes To War For AI Coding Dominance</a>. &#8220;But if the AI doesn&#8217;t need a human collaborator, why bother with the editor? If writing and editing code line by line was no longer central to a programmer&#8217;s workflow, Cursor&#8217;s central product thesis was suddenly in question. [&#8230;] Until recently, Cursor seemed nearly unstoppable. The company began 2025 with roughly $100 million in annualized revenue. By November, that figure had surpassed $1 billion. [&#8230;] For now, Cursor&#8217;s continued growth comes with a big dose of anxiety. Inside the startup, revenue tracking became so distracting that the company stopped reporting daily figures in its #numbers Slack channel, according to people familiar with the decision.&#8221; Imagine working at the hottest and fastest growing startup of all time and then three or six months later it&#8217;s war time. </p></li><li><p>New Paul Graham essay that I thought was worth reading: <a href="https://www.paulgraham.com/brandage.html">The Brand Age</a>. When I started reading this, I thought that surely he&#8217;s going to say that what he&#8217;s recounting here is happening to software: &#8220;Now the whole game they&#8217;d been trying to win at became irrelevant. Something that had been expensive &#8212; knowing the exact time &#8212; was now a commodity. Between the early 1970s and the early 1980s, unit sales of Swiss watches fell by almost two thirds. Most Swiss watchmakers became insolvent or close to it and were sold. But not all of them. A handful survived as independent companies. And the way they did it was by transforming themselves from precision instrument makers into luxury brands.&#8221; But he never did! I still think it&#8217;s about software though.</p></li><li><p>You might have heard of this guy: Don Knuth, Stanford Computer Science Department. <a href="https://www-cs-faculty.stanford.edu/~knuth/papers/claude-cycles.pdf">He writes</a>: &#8220;Shock! Shock! I learned yesterday that an open problem I&#8217;d been working on for several weeks had just been solved by Claude Opus 4.6&#8212; Anthropic&#8217;s hybrid reasoning model that had been released three weeks earlier! It seems that I&#8217;ll have to revise my opinions about &#8216;generative AI&#8217; one of these days. What a joy it is to learn not only that my conjecture has a nice solution but also to celebrate this dramatic advance inautomatic deduction and creative problem solving. I&#8217;ll try to tell the story briefly in this note.&#8221; What a joy!</p></li><li><p>Ah, now <em>this</em>, this is the good stuff: <a href="https://turbopuffer.com/blog/zero-cost">Rust zero-cost abstractions vs. SIMD</a> on the turbopuffer blog. I think there have been some comments on this not being an inherent limitation of the compiler, but I found it interesting to think about what it can and can&#8217;t see when trying to optimize a loop: &#8220;Herein lies the hidden opportunity cost of Rust&#8217;s zero-cost abstraction in our merge iterator. The iterator itself compiles down to the code you&#8217;d write by hand for a single call. In that sense, it is zero-cost.&#8221;</p></li><li><p>More hardcore engineering, from the COO at Epic Games: &#8220;The task: schedule operations for a custom VLIW SIMD architecture running a tree traversal with hashing. 256 items, 16 rounds, 5 execution engines with different slot limits. Starting point: 147,734 cycles (naive). Where Claude Code landed: 1,105 cycles &#8212; <a href="https://x.com/EpicVogel/status/2029322218505924653">a 134x speedup</a>.&#8221;</p></li><li><p>Look, we just bought a new MacBook Air with an M4 and it&#8217;s fantastic, so I&#8217;m not regretting anything, but those new <a href="https://www.apple.com/macbook-neo/">MacBook Neos</a> look amazing.</p></li><li><p>Raycast <a href="https://www.raycast.com/blog/introducing-glaze">Glaze</a> looks <em>really </em>interesting. I guess I should&#8217;ve put &#8220;looks&#8221; in italics because I&#8217;m still on the waitlist.</p></li><li><p><a href="https://www.economist.com/business/2026/03/01/at-last-reasons-to-be-cheerful-about-european-tech?giftId=OTJkYTRhZTYtNmQ4Mi00Zjc2LTk3ZjEtMDY2YTJjNzI5YWYx&amp;utm_campaign=gifted_article">At last, reasons to be cheerful about European tech</a>. That&#8217;s not my title. I want to be optimistic, but I&#8217;m skeptical. This paragraph resonated: &#8220;Mehran Gul, of the World Economic Forum, notes that Skype, a European startup, created just 11 millionaires in the early 2000s. PayPal, an American one, gave many more stock options to its employees, creating over 100. They, in turn, invested in newer Silicon Valley startups.&#8221; In Europe, startup options feel like and are perceived as and, I guess, truly are lottery tickets. Go to the Bay Area (which is, yes, an outlier) and suddenly everyone knows at least two or three people who are rich because of startups.</p></li><li><p>Eoghan McCabe, CEO of Intercom, <a href="https://x.com/eoghan/status/2028522852044206258?s=46">offering &#8220;Intercom, the company I run, as a case study</a> to help me explain how SaaS companies can be saved, and share the things we did, starting three years ago, to find relevance in this new world.&#8221; What a graph! Mind-boggling.</p></li><li><p><a href="https://www.straitstimes.com/singapore/politics/singaporeans-to-receive-free-premium-ai-subscriptions-from-second-half-of-2026">&#8220;Singaporeans to receive free premium AI subscriptions from second half of 2026&#8221;</a></p></li><li><p><a href="https://tim.blog/2026/03/04/the-self-help-trap/">Tim Ferriss on The Self-Help Trap</a>: &#8220;Self-help is dangerous precisely because it easily becomes self-fixation. A focus on improving the self usually first requires finding problems with the self. This is quite the pickle. In a society that rewards problem-solving, you can end up hallucinating or exaggerating unease in order to fix it. This leaves you always in the red, always one step behind. Imagine a dog chasing its tail that has committed to being unhappy until it catches the tail&#8230; but it&#8217;s always just a few inches short. Still, it whirls around and around, &#8216;doing the work.&#8217; Perfection always recedes by one more book, one more seminar, one more habit tracker. Put in more colorful terms, misdirected self-help turns you into a self-obsessed masturbatory ouroboros (SOMO).&#8221; I dare you to click through to the shop where he got the snake sticker &#8212; the sticker he put on <em>the bottom</em> of the MacBook. Anyway: great post.</p></li><li><p><a href="https://github.com/googleworkspace/cli">Google released gws</a>, the &#8220;CLI for all of Google Workspace &#8212; built for humans and AI agents.&#8221;</p></li><li><p>Hannah Ritchie, data scientist at Our World In Data but a lot more than that: <a href="https://hannahritchie.github.io/energy-use-comparisons/">Does that use a lot of energy?</a> Electric lawnmower vs. air conditioning is good.</p></li><li><p><a href="https://jakelazaroff.com/words/an-interactive-intro-to-crdts/">An Interactive Intro to CRDTs</a>. Lovely. It&#8217;s from 2023 and that made me think that today, in 2026, no one would write a blog post like this, because why would you if anyone can press a button to have a custom version of this post generated for them? And that in turn made me wonder: but people <em>will</em> write in the future too and once we&#8217;ve crossed through the transitional period we&#8217;re in, what will those posts look like?</p></li><li><p>Since <a href="https://simonwillison.net/2026/Feb/23/agentic-engineering-patterns/">announcing his project Agentic Engineering Patterns</a> a few weeks ago, Simon Willison has been steadily adding new chapters to it. For example: <a href="https://simonwillison.net/guides/agentic-engineering-patterns/hoard-things-you-know-how-to-do/">Hoard things you know how to do</a>. &#8220;The key idea here is that coding agents mean we only ever need to figure out a useful trick once. If that trick is then documented somewhere with a working code example our agents can consult that example and use it to solve any similar shaped project in the future.&#8221; Wish I was a hoarder.</p></li><li><p>Is this <a href="https://x.com/justalexoki/status/2028509501448454322">the first universally beloved AI-generated video</a>? I&#8217;m of the school that believes creativity is less about creating new things in a vacuum but more about making connections between things that already exist, but weren&#8217;t connected before. Creativity, I think, is remixing. Putting lego pieces together in a way no one&#8217;s ever put them together. That definition is, of course, recursive, because the lego pieces also have to be put together. But my point is: this video is creative. It&#8217;s not slop. And the fact that I&#8217;m dying to know what the prompt was &#8212; doesn&#8217;t that show everything will be different but that all will be well?</p></li><li><p>In the past few months I&#8217;ve been thinking a lot about different software companies and whether they&#8217;ll make it or whether they get eaten by AI instead. &#8220;If you own physical assets, if your value is in operations or in regulation or in contracts, then you&#8217;re probably safe,&#8221; is one thesis I keep coming back to. And, funnily enough, Spotify was one of the companies I marked &#8220;safe&#8221; in my mind: sure, the software can be replicated more easily now, but they have contracts with publishers and artists &#8212; they&#8217;re safe. But then here&#8217;s Jimmy Iovine saying that the music itself has no value anymore when packaged by streamers and, well, if that&#8217;s true, what&#8217;s left: <a href="https://joelgouveia.substack.com/p/the-death-of-spotify-why-streaming">Why Streaming is Minutes Away From Being Obsolete</a>.</p></li><li><p>Daniel Gross <a href="https://danielgross.com/agitrades">published his /agitrades in January 2024</a> to wonder: &#8220;Suppose the progress doesn&#8217;t stop, just like GPT-4 was better than 3, GPT-5 is capable of basic agentic behavior -- i.e. able to accept a task, work on it for a while, and return results. Some modest fraction of Upwork tasks can now be done with a handful of electrons. Suppose everyone has an agent like this they can hire. Suppose everyone has 1,000 agents like this they can hire... What does one do in a world like this?&#8221; I hadn&#8217;t read the document when it was released, but, wow, it&#8217;s good. Impressive first-principles and long-range thinking. And now, more than two years later (two years!), <a href="https://x.com/johncoogan/status/2029630380068978847?s=46">John Coogan of TBPN revisited the questions </a>to see whether they can be answered already. Equally fascinating.</p></li><li><p>To quote one of the top comments: <a href="https://www.youtube.com/watch?v=QKHGmFvzjJ4">&#8220;Dammit guess I&#8217;m drinkin garage beers now&#8221;</a></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!22uV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!22uV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 424w, https://substackcdn.com/image/fetch/$s_!22uV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 848w, https://substackcdn.com/image/fetch/$s_!22uV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 1272w, https://substackcdn.com/image/fetch/$s_!22uV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!22uV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif" width="967" height="40" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e003d1fe-6bff-4a6e-878a-49864548977d.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:40,&quot;width&quot;:967,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:158102,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/190218180?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!22uV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 424w, https://substackcdn.com/image/fetch/$s_!22uV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 848w, https://substackcdn.com/image/fetch/$s_!22uV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 1272w, https://substackcdn.com/image/fetch/$s_!22uV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe003d1fe-6bff-4a6e-878a-49864548977d.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Every tried watching a movie on a 2nd screen while something was compiling? You should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #76]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-76</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-76</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 01 Mar 2026 07:21:43 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/eccfcf0f-0c9f-4594-aafb-3d9443125e54_2600x1818.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This week I found myself writing code by hand again.</p><p>Not a lot, maybe ten, twenty lines in total, which is far less than what I had Amp produce, but still: actual typing out of code. Miracle I didn&#8217;t get any blisters.</p><p>At our Amp meetup in Singapore I mentioned this on stage and someone in the audience cheekily asked: &#8220;You just told us that these agents can now work well when you give them a longer leash and yet you wrote code by hand, how come?&#8221;</p><p>The answer can probably be boiled down to something that sounds very trite: to build software means to learn.</p><p>When you build a new piece of software, you learn what the software is <em>actually</em> supposed to do, how it should do it, and why your pre-building ideas now seem naive. (If you&#8217;re thinking &#8220;well, can&#8217;t we figure out all of that before we build&#8221; go ahead and type &#8220;waterfall software&#8221; into Google.)</p><p>Right now, at Amp, we&#8217;re building something new. We don&#8217;t yet know everything about this thing we&#8217;re building. We don&#8217;t know how it should behave in this case, or in that case, how the runtime behaves here, or over there.</p><p>Writing code by hand is one way (!) to answer these questions, because you truly bump into what you don&#8217;t know when you have to type something out. You find yourself picking an array and write down that the type for <code>clients</code> is <code>Client[]</code> and then you wonder: wait a second, do we even need to allow for multiple clients to be connected at the same time? why? when? No, we actually don&#8217;t, it should be <code>client: Client</code>.</p><p>An agent is happy to pick an answer for you &#8212; without telling you. It will just write the code.</p><p>That might not be a problem. If you&#8217;re not building something <em>new</em> or if you don&#8217;t even need to learn how the software works (which is probably more often the case than you might think) or if you already have a good mental model, let the agent rip. In fact, I&#8217;d even say that in the majority of cases it&#8217;s not a problem, because most software development is <em>not</em> building something new.</p><p>But if you need <em>learn</em>, so you can make better engineering tradeoffs and product decisions, it seems to me that one of the most practical ways to do might just still be to get your hands dirty. Let&#8217;s see how long that lasts.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lEPG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lEPG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 424w, https://substackcdn.com/image/fetch/$s_!lEPG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 848w, https://substackcdn.com/image/fetch/$s_!lEPG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 1272w, https://substackcdn.com/image/fetch/$s_!lEPG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lEPG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif" width="942" height="50" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5cd22ff9-278c-4dd6-97e2-da54a3303779.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:50,&quot;width&quot;:942,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:191782,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/189361377?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lEPG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 424w, https://substackcdn.com/image/fetch/$s_!lEPG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 848w, https://substackcdn.com/image/fetch/$s_!lEPG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 1272w, https://substackcdn.com/image/fetch/$s_!lEPG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5cd22ff9-278c-4dd6-97e2-da54a3303779.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p><a href="https://ladybird.org/posts/adopting-rust/">Ladybird adopts Rust, with help from AI</a>. Now that&#8217;s engineering: &#8220;Our first target was LibJS , Ladybird&#8217;s JavaScript engine. [&#8230;] This was human-directed, not autonomous code generation. I decided what to port, in what order, and what the Rust code should look like. It was hundreds of small prompts, steering the agents where things needed to go. After the initial translation, I ran multiple passes of adversarial review, asking different models to analyze the code for mistakes and bad patterns.&#8221; And also this: &#8220;If you look at the code, you&#8217;ll notice it has a strong &#8216;translated from C++&#8217; vibe. That&#8217;s because it is translated from C++. The top priority for this first pass is compatibility with our C++ pipeline.&#8221; That&#8217;s how you build software: step by step, and choosing tradeoffs carefully. And that, I&#8217;m rather sure, won&#8217;t go away.</p></li><li><p>Talking about ports: Cloudflare used &#8220;one engineer and an AI model&#8221; and &#8220;$1,100 in tokens&#8221; to <a href="https://blog.cloudflare.com/vinext/">create a drop-in Next.js replacement built on top of Vite</a>. The sections on <a href="https://blog.cloudflare.com/vinext/#why-this-problem-is-made-for-ai">why this was a good fit for AI</a> and <a href="https://blog.cloudflare.com/vinext/#how-we-actually-built-it">the approach they took</a> are very interesting. So is this point at the end: &#8220;It's not clear yet which abstractions are truly foundational and which ones were just crutches for human cognition. That line is going to shift a lot over the next few years. But vinext is a data point. We took an API contract, a build tool, and an AI model, and the AI wrote everything in between. No intermediate framework needed. We think this pattern will repeat across a lot of software. The layers we've built up over the years aren't all going to make it.&#8221; Let&#8217;s see whether frameworks like Next.js or vinext will still be useful in a few years. Oh and of course there&#8217;s drama between Cloudflare and Vercel so Vercel<a href="https://x.com/rauchg/status/2026864132423823499"> shot back</a>.</p></li><li><p>Man, I had this link here, to Anthropic&#8217;s <a href="https://www.anthropic.com/news/statement-department-of-war">Statement from Dario Amodei on our discussions with the Department of War</a>, saved so I can write about it in this edition, but good lord, there&#8217;s now fifteen other things to link to. Just type &#8220;Anthropic&#8221; or &#8220;OpenAI&#8221; into Google News. Or don&#8217;t, there&#8217;s a lot of noise and dust in the air and if you aren&#8217;t on the inside it seems hard to get an accurate impression of what happened (or is happening). What I <em>did</em> find very interesting, regardless of surrounding context, was <a href="https://x.com/palmerluckey/status/2027500334999081294">this post by Palmer Luckey</a>.</p></li><li><p>This really was as good as everyone said it is: <a href="https://lookingatpicturebooks.com/p/the-very-hungry-caterpillar">The Very Hungry Caterpillar</a>, an examination of Eric Carle&#8217;s famous book on the Looking At Picture Books substack. I highly recommend you read this. What a wonderful way to look at books, at design, at the world. It&#8217;s also funny.</p></li><li><p>This one too: <a href="https://essays.fnnch.com/make-a-living">How to Make a Living as an Artist</a>. There are many things you can get out of this post if you&#8217;ve ever built and shipped something, regardless of whether that was a painting, some words, code, or something else. </p></li><li><p>Justin Duke&#8217;s <a href="https://www.jmduke.com/posts/five-observations-ai-tools.html">scattered thoughts on LLM tools</a>: &#8220;it seems like the logical endpoint is infinite and perfectly abstracted sandboxes with previewing, isolation, and very tight feedback loops. But right now the largest gap between where we and most other organizations are and that brilliant future is not on the AI side but on all the calls from coming inside the house that make it difficult to sandbox a mature application.&#8221; Question is: does &#8220;mature application&#8221; mean the same thing it did a year ago? </p></li><li><p><a href="https://x.com/simscircuit/status/2025800996744794380">This Eileen Gu clip</a> made the rounds recently and I find it incredibly fascinating. Over the last ten, fifteen years I made several attempts to get into meditation, read quite a lot about it, including some books, and now know that (1) I am not the thoughts that pop up in my head (2) my brain is a seemingly random thought-generator (3) you can influence what thoughts it generates by practicing (4) I am the thoughts I repeatedly think. The ability to modify what you think is incredible (as <a href="https://registerspill.thorstenball.com/p/oh-to-turn-off-your-mind">I wrote in admiration here</a>) and I wish I could do it was effortlessly as Eileen Gu describes here.</p></li><li><p><a href="https://x.com/OfficialLoganK/status/2026510487022625040">Logan Kilpatrick</a>: &#8220;The compute bottleneck is massively under appreciated. I would guess the gap between supply and demand is growing single digit % every day.&#8221; If you&#8217;ve never really dug into this topic, I recommend this podcast <a href="https://www.youtube.com/watch?v=kAIVualeQjM">with Dylan Patel</a>. He&#8217;s a smart guy and if I had listened to him all the way back in fall of 2024, when I first heard of him, I would&#8217;ve bought SK Hynix and Sandisk stock and made a lot of money. </p></li><li><p>Lovely and well-made: <a href="https://growingswe.com/blog/quadtrees">An interactive intro to quadtrees</a>. Makes me want to build something with quadtrees. Notable: how it explains usecases for quadtrees, besides the very obvious one of, well, a map.</p></li><li><p><a href="https://amplifying.ai/research/claude-code-picks">What Claude Code Actually Chooses</a>. Interesting: &#8220;We pointed Claude Code at real repos 2,430 times and watched what it chose. No tool names in any prompt. Open-ended questions only. [&#8230;] The big finding: Claude Code builds, not buys. Custom/DIY is the most common single label extracted, appearing in 12 of 20 categories (though it spans categories while individual tools are category-specific).&#8221; Make sure to click through to the full report to see how they came up with these numbers. And while it&#8217;s interesting, I&#8217;m also not sure whether it matters that much outside of an experiment.</p></li><li><p><a href="https://www.transformernews.ai/p/the-left-is-missing-out-on-ai-sanders-doctorow-bender-bores">The left is missing out on AI</a>. I&#8217;m not sure whether I&#8217;d say &#8220;the left&#8221;, but when I read this I couldn&#8217;t help but say &#8220;oh boy&#8221; out loud when it reminded me that people still talk about &#8220;stochastic parrots&#8221; and &#8220;spicy autocomplete&#8221; and &#8220;these models can&#8217;t think&#8221;. </p></li><li><p><a href="https://paulgraham.com/startuplessons.html">The Hardest Lessons For Startups To Learn</a>, a vintage Paul Graham essay from 2006 that I somehow came across this week. I&#8217;m not sure whether I&#8217;ve read it before, but I must&#8217;ve because I nodded to everything he&#8217;s saying here. Or maybe it&#8217;s the last fifteen years, give or take, of working in startups. Really good. </p></li><li><p>Times are changing, there&#8217;s a lot of things to adapt, including interviewing: <a href="https://www.tolans.com/relay/how-we-hire-engineers-when-ai-writes-our-code">How We Hire Engineers When AI Writes Our Code</a>. &#8220;I&#8217;ll hand you a small problem &#8211; one that we&#8217;ve solved ourselves &#8211; usually from a bare-bones Figma file or a short spec. This might be a simple flow or a lightweight feature that would ordinarily take a day or two to build and ship. But for this exercise, you&#8217;ll have just a few hours&#8212;and that&#8217;s not enough time to make a polished product. I want to see how you work within constraints. You&#8217;re encouraged to use AI to solve the problem. Whatever tools you would want to use as an employee, use them during the interview. We&#8217;ll give you a Claude, Codex, Cursor, or Gemini license if you need one. I want to see you balance LLM-generated code against your own judgment.</p><p>But make no mistake&#8212;even if you aren&#8217;t writing the code, you own the output.&#8221; I haven&#8217;t formally interviewed engineers in over a year but I think this is how I&#8217;d do it too.</p></li><li><p>Really, really, really good and thought-provoking: <a href="https://surfingcomplexity.blog/2026/02/08/nobody-knows-how-the-whole-system-works">Nobody knows how the whole system works</a>. </p></li><li><p><a href="https://notes.eatonphil.com/2026-02-25-i-started-a-company.html">Phil Eaton started a company</a>: &#8220;I quit my job at EnterpriseDB hacking on PostgreSQL products last month to start a company researching and writing about software infrastructure. [&#8230;] This company, The Consensus, will talk about databases and programming languages and web servers and everything else that is important for experienced developers to understand and think about. It is independent of any software vendor and independent of any particular technology.&#8221;</p></li><li><p>&#8220;Cognitive debt, a term gaining traction recently, instead communicates the notion that the debt compounded from going fast lives in the brains of the developers and affects their lived experiences and abilities to &#8216;go fast&#8217; or to make changes. Even if AI agents produce code that could be easy to understand, <a href="https://margaretstorey.com/blog/2026/02/09/cognitive-debt/">the humans involved may have simply lost the plot </a>and may not understand what the program is supposed to do, how their intentions were implemented, or how to possibly change it.&#8221; </p></li><li><p>Ben Wallace: <a href="https://ben-mini.com/2026/the-happiest-ive-ever-been">The happiest I&#8217;ve ever been</a>. I&#8217;ve had quite a few conversations with programmer friends over the last year that ended with someone wondering: <em>do I still enjoy this? Is this the programming I want to do? </em>Some answer with yes, others with no. I understand both answers and the &#8220;code was never important&#8221; comments are not helpful to those who really, really enjoyed writing code. If you&#8217;re in sales, that might be because you love negotiation, or the product you&#8217;re selling, or making money, or, hey, because you love talking to people, love finding out what their problems are, love to visit them. If your job suddenly changed from <em>that</em> to never talking to a human again, I bet you&#8217;ll find it hard to take solace in &#8220;it was never about the people, it was always about closing the deal.&#8221;</p></li><li><p><a href="https://carlkolon.com/2026/02/27/engineering-747-coding-agents/">747s and Coding Agents</a>. Thoughts on learning and getting better and what coding agents might take away from us. Very good.</p></li><li><p>Interesting: <a href="https://www.cjroth.com/blog/2026-02-18-building-an-elite-engineering-culture">Building An Elite AI Engineering Culture In 2026</a>. This isn&#8217;t a <em>guide</em> for how to achieve an &#8220;elite&#8221; culture, I&#8217;d say, but more an examination. Interesting to read through and compare. For example, these two points: &#8220;The most consequential organizational change in 2025&#8211;2026 is the dissolution of the design-engineering boundary at top companies&#8221; and &#8220;No design-to-dev handoff. No PM-to-engineering handoff. No QA as a separate gate. Everyone ships.&#8221; &#8212; that describes what we do at Amp pretty well. Tim and Brett, our &#8220;designers&#8221; at Amp, do <em>design</em>, but they also ship what they design and ship other code and debug distributed systems stuff. I don&#8217;t think I ever saw a classic &#8220;design Figma&#8221; at Amp. We also don&#8217;t have PMs. I&#8217;m probably the closest thing we have to a PM, but I have a very different title and am the #2 contributor in code (Quinn is #1). Last year, when we started Amp, we started working this way because it was natural with just two senior people in a repository (Quinn and myself). Sure, push to main, we&#8217;re all grown-ups. But then over the year, we added more and more people and kept this way of working and now I&#8217;m pretty certain that it&#8217;s because of AI that we work this way. I need to write more about that.</p></li><li><p>Murat Demirbas on the <a href="https://muratbuffalo.blogspot.com/2026/02/end-of-productivity-theater.html">End of Productivity Theater</a>. This is something I&#8217;ve also wonder about a lot on the past few years, even, say, pre-AI: &#8220;I remember the early 2010s as the golden age of productivity hacking. Lifehacker, 37signals, and their ilk were everywhere, and it felt like everyone was working on jury-rigging color-coded Moleskine task-trackers and web apps into the perfect Getting Things Done system. So recently I found myself wondering: what happened to all that excitement? Did I just outgrow the productivity movement, or did the movement itself lose stream?&#8221; His analysis seems spot-on.</p></li><li><p>Now <em>this</em> is a great thought experiment: &#8220;There&#8217;s a well-known phenomenon in the facial aesthetics literature whereby &#8216;average faces&#8217; (that is, faces formed by superimposing many faces atop one another) tend to be more attractive than the average person. [&#8230;] <a href="https://x.com/mackenmurphy/status/2027379436543172708">Recently, I have begun to wonder if LLM-writing faces a similar challenge</a>.&#8221; </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WvNM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WvNM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 424w, https://substackcdn.com/image/fetch/$s_!WvNM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 848w, https://substackcdn.com/image/fetch/$s_!WvNM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 1272w, https://substackcdn.com/image/fetch/$s_!WvNM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WvNM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif" width="955" height="41" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/123b930c-b00a-444e-bedc-828170a1d5af.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:41,&quot;width&quot;:955,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:160002,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/189361377?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WvNM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 424w, https://substackcdn.com/image/fetch/$s_!WvNM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 848w, https://substackcdn.com/image/fetch/$s_!WvNM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 1272w, https://substackcdn.com/image/fetch/$s_!WvNM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F123b930c-b00a-444e-bedc-828170a1d5af.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Wrote code by hand and wondered how the hell that happened? My friend, you need to subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #75]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-75</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-75</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sat, 21 Feb 2026 18:31:29 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/a1b6bda6-e30e-45ea-9d0c-a76660311b78_2108x1253.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Where&#8217;s software going? Is software&#8230; <em>dead?</em> Or will there be more software than we ever thought possible? Or is it going to disappear, into the agents? Or is it going to grow and grow and then truly eat the world? Who&#8217;s going to create it?</p><p>There&#8217;s few things right now that I find more fascinating than these questions. Of course, I don&#8217;t have answers and I don&#8217;t think anyone has. Guesses, sure. Theories, absolutely. Anecdotes? Here&#8217;s some.</p><p>Geoffrey Litt, standing in a hotel gym, <a href="https://x.com/geoffreylitt/status/1875213582348263910">asked Claude for a workout plan</a> and got an app that guides him through the plan. Huh. Then Ryan Florence t<a href="https://x.com/ryanflorence/status/1904564660688523581">hrew away his workout app and just asked ChatGPT&#8217;s voice mode</a> to guide him through a workout. Where&#8217;s the software gone?</p><p>A couple weeks back I thought: maybe I should set up Clawdbot and hook it up to our shopping list in Todoist and then my wife and I can use a group chat to manage that list. We could even use voice messages:<em> </em>hey pal I&#8217;m in the car woops wait a second &#8230; yeah we&#8217;re out of paper towels. That&#8217;d be cool, right? But then: wait, why would I need Todoist? State could just live in that conversation or on Clawdbot&#8217;s disk, right? And then: but sometimes I <em>do</em> want a better UI than a group chat, don&#8217;t I? But when and why?</p><p>This week I was <em>this</em> close to typing something into the Slack search bar. I already had some keywords and combinations of keywords ready to go. I had already put the cursor in when I remembered that we have <code>agg</code>, an internal tool that Tim blind-coded and that connects to Slack and Google workspaces and whatnot, and so I asked Amp: hey, didn&#8217;t so and so say that we they migrated this thing and now we all need to? Amp via agg found it in five seconds. No keyword, no UI. Okay.</p><p>As <a href="https://x.com/thorstenball/status/2024157178936844734">Alex says</a>: &#8220;It feels like a maxim is emerging - if your software is useful to agents, your product is going to be 10x more valuable than before, but if your software is built for humans, you&#8217;re dead.&#8221; And Sahil Lavigna <a href="https://x.com/shl/status/2023881073382535562?s=20">says</a> that &#8220;gh is the new GitHub.&#8221;</p><p>But there is still software, isn&#8217;t there? I&#8217;m typing this through software. And I had Amp create <a href="https://x.com/thorstenball/status/2023390011782005226">many hundreds of lines of personal software for me</a>, but that software is so personal that I won&#8217;t release it, because why bother? The cost of generalizing it is higher than the cost of creating it. So you won&#8217;t ever see it. Invisible software.</p><p>Say that I <em>do</em> release some software that took me an hour to create. Or let&#8217;s say six hours. A small useful app, with some heft to it. You know what I mean. A good workout tracker. Or a little menu bar app. Or a browser extension. Say I sell it for $5. Won&#8217;t a hundred competitors be able to recreate what I did in thirty minutes? Prices will go to zero. Why bother?</p><p>Last anecdote. I&#8217;ve been meaning to create a little booklet. A physical thing, printed professionally. Weeks ago I had Nano Banana and ChatGPT tag-teaming and they created the logo that&#8217;d go on the front. Then work stalled because I couldn&#8217;t be bothered to look up the dimensions the print company needs and CMYK and PDFs and all of that and <em>ugh, </em>please. So I sent exactly that to ChatGPT: here&#8217;s the URL of the product description, here&#8217;s the logo in 4 formats, here&#8217;s the mockup someone (wink wink) created, please help me man. It ran for 15, 20 minutes and gave me a PDF. I uploaded it on the printer&#8217;s website, following the 6 steps ChatGPT outlined for me, got an error, told ChatGPT about the error also asked for some adjustments, got a new PDF, uploaded it, got the green checkmark, put my credit card in and now the booklet&#8217;s on its way.</p><p>I then checked what ChatGPT did, in agent mode, and turns ou: it wrote <em>a lot</em> of code. It essentially created the PDF I needed by writing Python. Many, many lines of Python. And now they&#8217;re gone and no one would&#8217;ve seen then if I hadn&#8217;t looked.</p><p>So, where&#8217;s the software going?</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nSc7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nSc7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 424w, https://substackcdn.com/image/fetch/$s_!nSc7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 848w, https://substackcdn.com/image/fetch/$s_!nSc7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 1272w, https://substackcdn.com/image/fetch/$s_!nSc7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nSc7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif" width="956" height="33" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:33,&quot;width&quot;:956,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:129558,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/188260182?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nSc7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 424w, https://substackcdn.com/image/fetch/$s_!nSc7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 848w, https://substackcdn.com/image/fetch/$s_!nSc7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 1272w, https://substackcdn.com/image/fetch/$s_!nSc7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dee896a-f6e7-42d8-8299-60eeac7c36ce.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p>We at Amp think <a href="https://ampcode.com/news/the-coding-agent-is-dead">the coding agent is dead</a>. Or maybe we should&#8217;ve said it&#8217;s solved. Or that the text editor is dead. Point being: what we have right now isn&#8217;t the future. There&#8217;s more to build. And this is the model that made us realize it: <a href="https://ampcode.com/news/gpt-5.3-codex">GPT-5.3-Codex</a>.</p></li><li><p>Don&#8217;t believe us? Say it to our face. Most of the Amp team is in Singapore this week. <a href="https://luma.com/i5mgwggx">Join us on Thursday.</a> (I&#8217;m writing this at the airport.)</p></li><li><p><a href="https://openai.com/index/harness-engineering/">Harness engineering: leveraging Codex in an agent-first world</a>, on the OpenAI blog. This is some of the best writing on agents hitting the real world and where this ride is going. You should read the whole thing, but this bit in particular stayed with me: &#8220;As Codex&#8217;s throughput increased, many conventional engineering norms became counterproductive. The repository operates with minimal blocking merge gates. Pull requests are short-lived. Test flakes are often addressed with follow-up runs rather than blocking progress indefinitely. In a system where agent throughput far exceeds human attention, corrections are cheap, and waiting is expensive.&#8221;</p></li><li><p><a href="https://www.ben-evans.com/benedictevans/2026/2/19/how-will-openai-compete-nkg2x">How will OpenAI compete? </a>by Benedict Evans. Great, as always.</p></li><li><p>Chris Lattner <a href="https://www.modular.com/blog/the-claude-c-compiler-what-it-reveals-about-the-future-of-software">took a close look at the C compiler produced by Claude Code</a>. I have to admit that I started reading with the expectation that it&#8217;s going to be about the compiler internals and what the AI got right and what it got wrong. And yes, that&#8217;s in there, but there&#8217;s more: thoughts about the AI in general, about IP law, about the shifting role of software engineers, about AI use at Modular. &#8220;Lower barriers to implementation do not reduce the importance of engineers; instead, they elevate the importance of vision, judgment, and taste. When creation becomes easier, deciding what is worth creating becomes the harder problem. AI accelerates execution, but meaning, direction, and responsibility remain fundamentally human.&#8221;</p></li><li><p>Entertaining and interesting: <a href="https://www.readtrung.com/p/how-does-docusign-have-7000-employees">How does Docusign have 7,000 employees?</a> </p></li><li><p><a href="https://www.stephendiehl.com/posts/lean-opus-blog/">Can Opus 4.6 do Category Theory in Lean?</a> You know me: I don&#8217;t understand any of the formulas in there and when I read &#8220;endofunctor&#8221; I do that Homer Simpson stare, but <em>still</em> (or because?) I found this very fascinating. &#8220;When this layer becomes trivial, we get to spend our time on the parts that actually matter: choosing the right abstractions, seeing the connections between structures, deciding what&#8217;s worth formalizing in the first place. The proof assistant becomes less of a bureaucratic obstacle and more of a genuine thinking tool. We get to build higher.&#8221; When category theory and formal specification languages become mainstream due to AI, call me. </p></li><li><p><a href="https://siddhantkhare.com/writing/ai-fatigue-is-real">AI fatigue is real and nobody talks about it</a>: &#8220;When each task takes less time, you don&#8217;t do fewer tasks. You do more tasks. Your capacity appears to expand, so the work expands to fill it. And then some. Your manager sees you shipping faster, so the expectations adjust. You see yourself shipping faster, so your own expectations adjust. The baseline moves. Before AI, I might spend a full day on one design problem. I&#8217;d sketch on paper, think in the shower, go for a walk, come back with clarity. The pace was slow but the cognitive load was manageable. One problem. One day. Deep focus.&#8221; I find this very fascinating to think about, because it&#8217;s true, isn&#8217;t it? Back in the olden days, say in 2024, you could have a <em>full day of programming</em> in which you did nothing but program and yet there would still be moments of mindless execution that let you recover from moments of high concentration and focus. Now, with the mindless execution being done by the mindless, there&#8217;s nothing left to act as a buffer between the intense moments. Except maybe distraction.</p></li><li><p><a href="https://blog.kinglycrow.com/no-skill-no-taste/">No Skill. No Taste.</a></p></li><li><p>A <a href="https://leaflet.pub/p/did:plc:3vdrgzr2zybocs45yfhcr6ur/3mfd2oxx5v22b">&#8220;a Matt Levine style explanation of how OAuth works&#8221; given by Blaine</a>, who, 19 years ago, &#8220;wrote the first sketch of an OAuth specification&#8221;. We need more explanations like this!</p></li><li><p><a href="https://x.com/nicbstme/status/2023501562480644501">This post</a> has a lot of really interesting thoughts on where software as a business is going. This part here, on building financial software, is illustrative of some trends, I think: &#8220;Zero custom parsers. Zero industry-specific classifiers. Why? Because frontier models already know how to navigate a 10-K. They know that Home Depot&#8217;s ticker is HD. [&#8230;] Frontier models already know how to parse SEC filings from their training data. They understand the structure of a 10-K, where to find revenue recognition policies, how to reconcile GAAP and non-GAAP figures. You don&#8217;t need to build a parser. The model IS the parser. Feed it a 10-K and it can answer any question about it. [&#8230;] The data isn&#8217;t worthless. But the &#8216;making it searchable&#8217; layer, which is where a lot of the value and pricing power lived, is collapsing.&#8221; Replace &#8216;searchable&#8217; with other abilities and you see how it applies to more than just software to navigate SEC filings. And then, of course, there&#8217;s competition: &#8220;The critical insight is that competition doesn&#8217;t increase linearly&#8212;it explodes combinatorially. You don&#8217;t go from 3 incumbents to 4. You go from 3 to 300. And that&#8217;s what craters pricing power. Before LLMs, each vertical had 2-3 dominant players commanding premium prices because the barriers to entry were insurmountable. That math changes completely when 50 AI-native startups can offer 80% of the capability at 20% of the price.&#8221; We already had five thousand TODO apps. What&#8217;s the next category of software in which there&#8217;ll be five thousand alternatives, selling for $5.99?</p></li><li><p><a href="https://x.com/ciaomack/status/2023430516364423668">Similarly</a>: &#8220;if your product isn&#8217;t a system of record that ai tools can be built on top of, you&#8217;re increasingly hard to justify keeping&#8220; But then the question is: how hard is it to reproduce that system of record? Todoist: easy. Your company&#8217;s pay slips? Hard. Analytics? Performance data? Monitoring? Errors? Tickets?</p></li><li><p>Sean Goedecke compared how the recently released &#8220;fast&#8221; modes by OpenAI and Anthropic differ: <a href="https://www.seangoedecke.com/fast-llm-inference/">Two different tricks for fast LLM inference</a>. Interesting stuff, especially since he now collected and responded to some of the comments he got.</p></li><li><p><a href="https://matduggan.com/i-sold-out-for-200-a-month-and-all-i-got-was-this-perfectly-generated-terraform/">I Sold Out for $20 a Month and All I Got Was This Perfectly Generated Terraform</a>. This is some real stuff &#8212;&nbsp;some true stuff. I love the honesty and the humility. I love the &#8220;band of Eastern European programmers who chain smoke during calls and whose motto is basically &#8216;we never miss a deadline&#8217;&#8221; and I love this part here: &#8220;I also just have trouble with the idea that this is my career and the thing I spend my limited time on earth doing and the quality of it doesn&#8217;t matter. I delight in craftsmanship when I encounter it in almost any discipline. I love it when you walk into an old house and see all the hand crafted details everywhere that don&#8217;t make economic sense but still look beautiful. I adore when someone has carefully selected the&nbsp;perfect font&nbsp;to match something. [&#8230;] When I asked my EVE friend about it on a recent TeamSpeak session, he was quiet for awhile. I thought that maybe my moral dilemma had shocked him into silence. Then he said, &#8216;You know what the difference is between you and me? I know I&#8217;m a mercenary. You thought you were an artist. We&#8217;re both guys who type for money.&#8217;&#8220;</p></li><li><p><a href="https://chatjimmy.ai/">15,597 tok/s</a>. Holy shit. And <a href="https://taalas.com/the-path-to-ubiquitous-ai/">here&#8217;s how they did it</a>. Are there any physical or theoretical limits that would stop someone from doing the same for, say, GPT-5.3-Codex in a few years?</p></li><li><p><a href="https://elliotbonneville.com/the-only-moat-left-is-money/">The Only Moat Left Is Money</a>: &#8220;The effort is gone. Effort was the filter. I launched something last week. 14 people signed up &#8212; no ads, just a couple of posts. 14 real people who didn&#8217;t have to. That number is tiny and it felt like something. Then I sat down to think about what it would take to grow it and I couldn&#8217;t look at that math for very long. The people winning mostly had a head start. Or they have money. Usually both. When creation was hard, skill was the differentiator: you had to actually be good to make something worth showing. Now the barrier is near zero, so you need reach. Reach costs money or it costs years. Probably both.&#8221; I&#8217;m not sure I believe that effort doesn&#8217;t count anymore, but the game is changing, which is fascinating and scary and exciting and crazy.</p></li><li><p><a href="https://harpers.org/archive/2026/03/childs-play-sam-kriss-ai-startup-roy-lee/">Child&#8217;s Play, subtitled: tech&#8217;s new generation and the end of thinking</a>. Excellent. </p></li><li><p><a href="https://boristane.com/blog/the-software-development-lifecycle-is-dead/">The Software Development Lifecycle Is Dead</a>. Not too sure about the specifics, but you know me: I agree. </p></li><li><p>&#8220;I built an agent for researching, coding, and running <a href="https://x.com/simpsoka/status/2022795109310537859">generative art animations for 16-segment displays</a>. Will open source code and hardware design files soon.&#8221;</p></li><li><p>Andy Coenen, who built the wonderful<a href="https://cannoneyed.com/projects/isometric-nyc"> isometric nyc</a>, on <a href="https://cannoneyed.com/essays/software-industrial-revolution">The Software Industrial Revolution</a>. It&#8217;s very, very good. To pick just one of the parts worth picking: &#8220;The old golden age is over, and it ain&#8217;t coming back - no more &#8216;rest and vest&#8217;, no more ping-pong offsites and five-star catered lunches. But a new &#8216;golden age&#8217; is coming - no more nights staring red-eyed at empty stack overflow issues, no more weeks of alignment meetings to ship a prototype. I believe it&#8217;s never been a better time to build - not just software but anything you can dream of. The world is yours if you embrace this new reality and learn how to really use these tools&#8221;. The other part worth mentioning is the one about &#8220;personal apps&#8221;: sure, yes, grandma won&#8217;t use AI to write her own sudoku app, but, as Andy suggests here, there are so many other people &#8212; <em>professionals! &#8212; </em>who sure would love to build better research tools for themselves. </p></li><li><p>I&#8217;m pretty sure this just changed how I think about intelligence: <a href="https://www.experimental-history.com/p/why-arent-smart-people-happier">why aren&#8217;t smart people happier?</a> (That little &#8220;what if you booted up an AI in ancient Greece?&#8221; thought experiment is fun too.)</p></li><li><p>&#8220;Two old engineers were talking of their lives and boasting of their greatest projects. One of the engineers explained <a href="http://hintjens.com/blog:16">how he had designed the largest bridge ever made.</a>&#8221;</p></li><li><p>Robin Sloan on how far AI can expand:<a href="https://www.robinsloan.com/winter-garden/magic-circle/"> flood fill vs. the magic circle</a>. Interesting to think about, but I can&#8217;t help but wonder: does it matter that AI can&#8217;t touch the physical world, when your career is 99% digital and you&#8217;re looking at a screen <em>a lot</em>? </p></li><li><p><a href="https://www.davidsenra.com/episode/jason-fried">Jason Fried was on the David Senra podcast</a>. What a perspective this guy has. Inspiring.</p></li><li><p>I&#8217;ve seen many, many, many stand-up specials over the years, because I enjoy stand-up comedy a lot and very earnestly believe it&#8217;s one of the highest art forms we humans have created. Yes, I&#8217;m serious. I&#8217;m German. If there&#8217;s one thing I don&#8217;t joke around about it&#8217;s comedy. But a stand-up special that makes me <em>actually</em> laugh out loud is a rare one. <a href="https://www.youtube.com/watch?v=5LamkJ2iq2s">Kevin Nealon&#8217;s latest special Loose in the Crotch</a> did that. I nearly spit out food. God damn did I fall in love with that special. I&#8217;ve watched it twice since Tuesday. I know it&#8217;s not everyone&#8217;s cup of tea and if you don&#8217;t like it you should keep that to yourself. But let me know if you do.</p></li><li><p>&#8220;<a href="https://www.youtube.com/watch?v=HkxI0e0tOM0">This Fab Faux recording of most of side two of Abbey Road </a>is a live, in the studio performance for a two camera video shoot. In the end, there were only three minor guitar fixes and each section was recorded in no more than three takes (most were two). There are NO added overdubs within this performance. The audio is pure.&#8221; Uploaded fourteen years ago. I think I started watching this video in 2010, when it was <a href="https://vimeo.com/11237479">uploaded to Vimeo</a>. Treat yourself.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!99eW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!99eW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 424w, https://substackcdn.com/image/fetch/$s_!99eW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 848w, https://substackcdn.com/image/fetch/$s_!99eW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 1272w, https://substackcdn.com/image/fetch/$s_!99eW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!99eW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif" width="959" height="42" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ee34625e-5e52-4b1d-9809-cda3fdae840b.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:42,&quot;width&quot;:959,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:164494,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/188260182?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!99eW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 424w, https://substackcdn.com/image/fetch/$s_!99eW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 848w, https://substackcdn.com/image/fetch/$s_!99eW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 1272w, https://substackcdn.com/image/fetch/$s_!99eW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee34625e-5e52-4b1d-9809-cda3fdae840b.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you have thoughts on where this is going or want to find out, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #74]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-74</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-74</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 15 Feb 2026 07:17:19 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/4461315d-83ad-4aef-81ec-78b77986fb22_1708x1160.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Two guys in the jungle. A tiger charges at them. One guy kneels down to tighten his shoelaces. The other yells, &#8220;What are you doing? You can&#8217;t outrun a tiger!&#8221; First guy says, &#8220;I don&#8217;t have to outrun the tiger. I only have to outrun you.&#8221;</p><p>One mistake I see a lot of engineers make when thinking about the impact AI will have on the software industry is to think in edge cases.</p><p>&#8220;LLMs can&#8217;t write C compilers correctly, psh! LLMs can&#8217;t write code in this very old and large codebase! LLMs can&#8217;t fix this very difficult and complex bug that took me two weeks to figure out.&#8221;</p><p>You don&#8217;t judge the impact of a technology on an industry by looking at one end of a spectrum only. You need to look at the other end too, and the average.</p><p>And for AI to have a dramatic, nothing-will-be-the-same impact on software as an industry, it doesn&#8217;t need to be better than the best engineer you know. It only needs to be better than the average.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bHVp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bHVp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 424w, https://substackcdn.com/image/fetch/$s_!bHVp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 848w, https://substackcdn.com/image/fetch/$s_!bHVp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 1272w, https://substackcdn.com/image/fetch/$s_!bHVp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bHVp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif" width="969" height="33" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:33,&quot;width&quot;:969,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:131274,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/187929421?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bHVp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 424w, https://substackcdn.com/image/fetch/$s_!bHVp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 848w, https://substackcdn.com/image/fetch/$s_!bHVp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 1272w, https://substackcdn.com/image/fetch/$s_!bHVp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddd713c2-7ca1-48e2-91ca-8d97f55d3fed.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>I recorded a short video: &#8220;<a href="https://x.com/thorstenball/status/2022310010391302259">I am the bottleneck now.</a>&#8221; As others have pointed out, yes, I&#8217;ve always been the bottleneck. I guess I should&#8217;ve said instead: &#8220;I am a very, very narrow bottleneck now.&#8221; But the point of the video wasn&#8217;t necessarily that I can now often copy &amp; paste text from one tool into the other and code gets written and I can push it straight up. I recorded the video because I wanted to share that punchline with the customer coming back to me and, more importantly even, to explain why I don&#8217;t think that our existing software development tooling is built for this new future. Because it&#8217;s strange to assume that with these models getting better and better, and their ability to write good code on first try improving, we&#8217;ll keep opening tickets in Linear, pasting them into an agent, having them open a PR on GitHub, only for another agent to review it, so that we can then hit merge. This whole flow was built for humans. It&#8217;s based on the assumption that code is slow and expensive to write. That&#8217;s no longer true and the tools will collapse into the new truth. </p></li><li><p>And here&#8217;s Armin, riffing on the idea of bottlenecks and how they shift in technological revolutions and what it means for software: <a href="https://lucumr.pocoo.org/2026/2/13/the-final-bottleneck/">The Final Bottleneck</a>.</p></li><li><p>And here&#8217;s stevey with other thoughts along the same lines, the lines pointing towards where this is headed: <a href="https://steve-yegge.medium.com/the-ai-vampire-eda6e4f07163">The AI Vampire</a>.</p></li><li><p>And here it&#8217;s the Harvard Business Review saying <a href="https://hbr.org/2026/02/ai-doesnt-reduce-work-it-intensifies-it">that AI doesn&#8217;t reduce work, but intensifies it</a>: &#8220;Over time, this rhythm raised expectations for speed&#8212;not necessarily through explicit demands, but through what became visible and normalized in everyday work. Many workers noted that they were doing more at once&#8212;and feeling more pressure&#8212;than before they used AI, even though the time savings from automation had ostensibly been meant to reduce such pressure.&#8221;</p></li><li><p>But then here&#8217;s Cate Hall: <a href="https://usefulfictions.substack.com/p/do-less">Do Less.</a> &#8220;In retrospect, what went wrong at the retreat was the same thing that went wrong with my reading binge, it was just the pattern repeating at a deeper level. The part of me doing the scanning and releasing &#8212; the monitoring layer, the internal project manager &#8212; was the thing that actually needed to go offline. Rather than relaxing in the relevant sense, I was using my optimization machinery to simulate relaxation at a very convincing level of fidelity while the machinery itself hummed along at full speed. [&#8230;] And if your optimizing machine is still humming along, even if you are doing rest-like activities, you are not truly resting. Reading The Power Broker in your spare time, not because you are genuinely interested, but because you can&#8217;t bear to be the only person at your SF dinner party who hasn&#8217;t? Still optimizing. Cooking the most impressive dinner possible for your friends, so you can convince them that you&#8217;re worthy of love, rather than making something you enjoy producing? Still optimizing.&#8221;</p></li><li><p><a href="https://x.com/jaminball/status/2022329159272497600">More on bottlenecks</a>: &#8220;This, to me, is the real risk. Software broadly commoditizes, with a new crop of software / value emerging. A big constraint to the development of software is engineering resources. Before the cloud, a constraint was how quickly could you stand up racks of servers to support user growth. In the cloud era that was commoditized, and engineering resources became the constraining factor (how quickly could you develop software). With AI, that constraining resource (engineering velocity) is going away.&#8221;</p></li><li><p><a href="https://o16g.com/">The o16g Manifesto</a>. o16g stands for Outcome Engineering. &#8220;It was never about the code.&#8221;</p></li><li><p>&#8220;Those of <a href="https://factory.strongdm.ai/">us building software factories</a> must practice a deliberate naivete: finding and removing the habits, conventions, and constraints of Software 1.0. The DTU is our proof that what was unthinkable six months ago is now routine.&#8221;</p></li><li><p><a href="https://eukaryotewritesblog.com/2026/01/21/very-snowy-place/">23 lessons you will learn living in a very snowy place</a>. Lovely. Great writing, made me smile a lot.</p></li><li><p><a href="https://susam.net/twenty-five-years-of-computing.html">Twenty Five Years of Computing</a>. Very, very good. Twenty five years of loving computing, I&#8217;d say.</p></li><li><p>&#8220;It was May 15th, 2024. My mom&#8217;s 60th birthday. Instead of planning a birthday message, I was checking my phone for an acquisition term sheet from a $40 billion company. Unfortunately, when I finally got the email, it was not the yes or no response I had been hoping for. It took almost four years before we finally found the right buyer. I wished <a href="https://derekyan.com/ma-book/">a book like this existed at the time</a>. If you are going through an M&amp;A as a founder or are curious about my journey, I hope this book will be helpful to you.&#8221; Very, very interesting. I&#8217;ve been in a M&amp;A-like situation once and it&#8217;s shaped me and my professional outlook like few other things. What I learned is: (1) you can talk and make promises for months but <em>nothing</em> counts until an actual contract is signed and even then I wouldn&#8217;t relax yet (2) the bigger company can wait until you die.</p></li><li><p>Benedict Evans had a killer line <a href="https://www.ben-evans.com/newsletter">in his latest newsletter</a>: &#8220;A chatbot might be a new, different, and expanded way to handle those kinds of improved problems - it won&#8217;t replace software, but expand the space around it. In other words, there is software that is formalised, institutionalised process, and then there is software that is improvisation. You won&#8217;t replace process with improvisation - you don&#8217;t replace Salesforce with ChatGPT any more than you replace it with Excel. But there&#8217;s a lot more that you could automate if you could improvise more.&#8221;</p></li><li><p>&#8220;A first look at <a href="https://www.ferrari.com/en-US/auto/ferrari-luce">the interior and interface of the Ferrari Luce.</a>&#8221; This isn&#8217;t a car newsletter and I don&#8217;t own any Ferraris, but this is interesting &#8220;because <a href="https://www.topgear.com/car-news/electric/official-ferraris-first-ev-called-luce-interior-apples-old-design-boss">it&#8217;s the work of Sir Jony Ive</a>, the man who steered the design trajectory of Apple&#8221; and <a href="https://x.com/mike_matas/status/2020850857819205700?s=46">Mike Matas</a> and others and, well, even if we don&#8217;t and never will drive this Ferrari, this will have an effect, just like <a href="https://www.youtube.com/watch?v=-rDTRuCOs9g">Miranda Priestly said it in Devil Wears Prada</a>.</p></li><li><p>&#8220;But on the whole, the economic transition that AI is ushering in will be much gentler than people seem to think. COVID is a terrible analogy for what&#8217;s coming. The ordinary person, the person who works at a regular job and doesn&#8217;t know what Anthropic is and invests a certain amount of money in a diversified index fund at the end of each month: that person will most likely be fine. <a href="https://davidoks.blog/p/why-im-not-worried-about-ai-job-loss">I don&#8217;t think they have much to worry about from AI.</a>&#8221;</p></li><li><p>Even three months ago, no: three weeks ago, I would&#8217;ve said that Andreas&#8217; predictions here are too out there, too crazy. Now I agree with everything he&#8217;s saying here 100%: &#8220;<a href="https://www.youtube.com/watch?v=jgLJ5xas2ow">Is software development completely and utterly beeped?</a>&#8221;</p></li><li><p>As someone who closes all his browser tabs many times per day I 100% agree with this: <a href="https://www.vangemert.dev/blog/nothing">the secret to structuring your work is &#8220;nothing&#8221;</a>. Of course, if you&#8217;re a tab hoarder, you&#8217;ll disagree. And there&#8217;s no way I can convince you to change your ways, nor is there any way you can convince me to change mine. It&#8217;s how it has been and how it will be. Our two factions, our peoples, tab closers and tab hoarders, desk cleaners and desk pilers, will exist until the death of the tab, locked into a cosmic dance, forever pushing and pulling each other, one closing and the other opening. That&#8217;s how it&#8217;s written.</p></li><li><p>Third time I&#8217;m reading this, George Saunder&#8217;s <a href="https://www.newyorker.com/books/page-turner/my-writing-education-a-timeline">My Writing Education</a>. It&#8217;s so very good and this line has been stuck in my head since the first reading, many years ago: &#8220;It is as if that is the point of power: to allow one to access the higher registers of gentleness.&#8221;</p></li><li><p>&#8220;Writing about &#8216;the obvious&#8217; is a useful service. Often people doubt what their own experience is telling them until someone else helps confirm their suspicions and put them into words.&#8221; Perfectly put, <a href="https://news.ycombinator.com/item?id=46958683">by Simon Willison</a>.</p></li><li><p>&#8220;Spotify says <a href="https://techcrunch.com/2026/02/12/spotify-says-its-best-developers-havent-written-a-line-of-code-since-december-thanks-to-ai/">its best developers haven&#8217;t written a line of code since December</a>, thanks to AI.&#8221; I&#8217;ve written a handful, I&#8217;d say. And: &#8220;my name is jessie frazelle and <a href="https://x.com/jessfraz/status/2019975917863661760">i have not touched code in an editor since october.</a>&#8221;</p></li><li><p>Ben Thompson was a guest on Cheeky Pint and <a href="https://youtu.be/oUSWtLu2RCE?t=2710https://youtu.be/oUSWtLu2RCE?t=2712">this portion here, </a>on US vs. European companies, is especially interesting. As a German who&#8217;s been working for German companies half his career and US companies the other half, I find the analysis to be spot on: US companies focus on making more profit instead of optimizing cost and European companies focusing on optimizing cost and efficiency.</p></li><li><p>This is Kella Byte, who&#8217;s been tweeting about databases for as long as I can remember: <a href="https://kellabyte.substack.com/p/building-a-distributed-sql-database">Building A Distributed SQL Database in 30 Days with AI</a>. </p></li><li><p>&#8220;<a href="https://github.com/Veirt/weathr">A terminal weather app with ASCII animations</a> driven by real-time weather data.</p><p>Features real-time weather from Open-Meteo with animated rain, snow, thunderstorms, flying airplanes, day/night cycles, and auto-location detection.&#8221;</p></li><li><p><a href="https://x.com/davidcrawshaw/status/2022738438932566310?s=46">David Crawshaw, articulating it very, very well</a>: &#8220;Understanding is an iterative process. Write code, run, think, write some more. No-one ever came up with a design, wrote the code, compiled then shipped. Removing most of the writing radically changes that iterative loop. [Reply tweet:] Absolutely in a good way. I can have an idea, prototype it three different ways and make a call based on a real attempt to build it, in a few hours. In the old software world, we would have had a week of meetings to decide if the prototype was worth the effort.&#8221;</p></li><li><p>Thoughtworks organized a retreat &#8220;to wrestle with the questions that matter most as AI reshapes how we build software&#8221; and <a href="https://www.thoughtworks.com/content/dam/thoughtworks/documents/report/tw_future%20_of_software_development_retreat_%20key_takeaways.pdf">published a summary</a>. There are some very interesting things in there. Nothing new to any reader of this newsletter, I&#8217;m sure, but interesting because things we&#8217;ve been doing are described very explicitly: &#8220;This middle loop involves directing, evaluating and fixing the output of AI agents. It requires a different skill set than writing code. It demands the ability to decompose problems into agent-sized work packages, calibrate trust in agent output, recognize when agents are producing plausible-looking but incorrect results and maintain architectural coherence across many parallel streams of agent-generated work. [&#8230;] These are skills that experienced engineers often possess, but they are rarely explicitly developed or recognized in career ladders.&#8221;</p></li><li><p><a href="https://www.youtube.com/watch?v=uhbpMCZTe8c">Good stuff</a>.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RKNG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RKNG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 424w, https://substackcdn.com/image/fetch/$s_!RKNG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 848w, https://substackcdn.com/image/fetch/$s_!RKNG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 1272w, https://substackcdn.com/image/fetch/$s_!RKNG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RKNG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif" width="971" height="32" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d32c98f4-c674-4c84-95c6-882fc3035381.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:32,&quot;width&quot;:971,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:127654,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/187929421?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RKNG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 424w, https://substackcdn.com/image/fetch/$s_!RKNG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 848w, https://substackcdn.com/image/fetch/$s_!RKNG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 1272w, https://substackcdn.com/image/fetch/$s_!RKNG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd32c98f4-c674-4c84-95c6-882fc3035381.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you also think tigers are most impressive animals in the world and if there&#8217;s a chance that you&#8217;d stand there and say &#8220;whoa&#8221; instead of running, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xoBq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xoBq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 424w, https://substackcdn.com/image/fetch/$s_!xoBq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 848w, https://substackcdn.com/image/fetch/$s_!xoBq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 1272w, https://substackcdn.com/image/fetch/$s_!xoBq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xoBq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif" width="942" height="32" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c5fa1de8-d331-4978-ac87-b7125553895f.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:32,&quot;width&quot;:942,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:123942,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/187929421?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xoBq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 424w, https://substackcdn.com/image/fetch/$s_!xoBq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 848w, https://substackcdn.com/image/fetch/$s_!xoBq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 1272w, https://substackcdn.com/image/fetch/$s_!xoBq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5fa1de8-d331-4978-ac87-b7125553895f.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>I&#8217;m collecting some testimonials for this newsletter, because I noticed that its landing page is seriously outdated. If you enjoy reading this newsletter and it means something to you, feel free to hit reply and let me know.</em></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #73]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-73</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-73</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 08 Feb 2026 06:39:28 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/9ddc8347-f4b4-4efc-b8f7-feda22e55db4_1244x898.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A year ago, on this very newsletter, I wondered:<a href="https://registerspill.thorstenball.com/p/how-might-ai-change-programming"> how might AI change programming?</a></p><p>Here are some of the questions I asked in that post:</p><p><em>&#8220;Will we write docstrings at the top of files that aren&#8217;t meant to be read by humans, but by LLMs when they ingest the file into their context window?&#8221;</em></p><p><em>&#8220;Will we see a melting of language servers and LLMs?&#8221;</em></p><p><em>&#8220;What will change once we start to optimize code and processes around code purely for the reader, because the writer&#8217;s a machine?&#8221;</em></p><p><em>&#8220;Will we change how we modularize code and switch to writing many smaller programs because they&#8217;re easier for LLMs to digest than large codebases?&#8221;</em></p><p>It&#8217;s been a year and now most of these questions sound naive to me. <em>Of course</em> we&#8217;ll write documentation for agents, language servers seem dead, and absolutely one hundred percent are we optimizing code for readability over writability, except that now the reader is also an agent. And small programs? Yes, we&#8217;re all optimizing codebases for the agents now.</p><p>Here&#8217;s a little anecdote for you, to show what happened in a year.</p><p>On Tuesday, I was on a call with Tim and Camden to discuss something about our new architecture, and they suggested that we use UUIDs everywhere. Hmm, I don&#8217;t know, UUIDs aren&#8217;t a silver bullet you know, they do come with downsides, I said. But we don&#8217;t have those downsides, they said, because our tables are literally a few hundred rows in this setup. Right, right, I said, but UUIDs are kinda ugly and when you look at them they<a href="https://www.depesz.com/2020/02/19/why-im-not-fan-of-uuid-datatype/"> don&#8217;t give you any insights</a>. </p><p>On Thursday, Tim then said: hey, didn&#8217;t you just say on Raising An Agent that you need to optimize for agents, not for humans, even at the cost of human developer experience? And I don&#8217;t remember what exactly I said in response, but it boiled down to: you&#8217;ll see, and then I will say that I told you so, UUIDs are ugly.</p><p>Then yesterday, on Saturday, I realized Tim&#8217;s right. Who am I kidding. Agents will read far more UUIDs than I ever will in the future. I had an aesthetic objection to something I&#8217;ll barely see. The agents, though, they will deal with the UUIDs and they love them.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d-YM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d-YM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 424w, https://substackcdn.com/image/fetch/$s_!d-YM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 848w, https://substackcdn.com/image/fetch/$s_!d-YM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 1272w, https://substackcdn.com/image/fetch/$s_!d-YM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d-YM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif" width="946" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:946,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:135822,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/187191041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!d-YM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 424w, https://substackcdn.com/image/fetch/$s_!d-YM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 848w, https://substackcdn.com/image/fetch/$s_!d-YM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 1272w, https://substackcdn.com/image/fetch/$s_!d-YM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F06e6c81c-061b-4969-9b20-41e5b6a9ea01.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p>We recorded another episode of <a href="https://ampcode.com/podcast/episode-10">Raising An Agent</a>. Quinn and I talk about where the frontier of these coding agents is moving to, why we are going to kill the Amp editor extension and why we don&#8217;t think the sidebar nor the text editor are the future, and, finally, we talk about how wild it is to build in AI land and how every playbook software companies had in the last twenty, thirty years is now outdated. The only winning move now is to accept that the board will be flipped at random intervals. It&#8217;s 55 minutes long and a condensed version of what I&#8217;d tell you this evening if you and I went out for beers.</p></li><li><p><a href="https://x.com/thorstenball/status/2019081068880461930">Recorded another short video</a>: &#8220;Is this the bet you want to take? While everything around us is changing?&#8221;</p></li><li><p>My colleague Lewis wrote a wonderful post about giving agents feedback: <a href="https://ampcode.com/notes/feedback-loopable">Feedback Loopable</a>. There are so many good ideas in there: the arrow, the URL updating, the logs, the debug/REPL/CLI thing. Highly recommend it.</p></li><li><p>Hey, seriously, watch this talk: <a href="https://www.youtube.com/watch?v=SxdOUGdseq4">Rich Hickey - Simple Made Easy</a>. I&#8217;ve linked to it before, I&#8217;ve tweeted about it many times, but this week I had to find out (and then digest and recover) that some of my colleagues hadn&#8217;t seen it. So now I&#8217;m here and I&#8217;m telling you that this might very well be the greatest talk about programming ever given. I&#8217;m not kidding. I&#8217;m not exaggerating. I mean it. Not a week goes by in which I don&#8217;t think of it. I&#8217;m rearchitecting a system now and when I close my eyes I can see Rich standing there, one hand on the podium, the other in the air, hanging down, and him saying &#8220;&#8230;and you end up with this knot.&#8221; Go and watch the talk. Don&#8217;t complect.</p></li><li><p>Martin Alderson: &#8220;<a href="https://martinalderson.com/posts/two-kinds-of-ai-users-are-emerging/">Two kinds of AI users are emerging. The gap between them is astonishing.</a>&#8221; There&#8217;s a lot of great stuff in there. The first point about people being stuck in Copilot is very interesting, isn&#8217;t it? If your product is a text box, then it looks like all the other text boxes. But some text boxes have actual genies behind them and others don&#8217;t. You, as a user, can&#8217;t tell in advance. The other points he makes about enterprises shooting themselves in their feet with their security restrictions is very interesting too.</p></li><li><p>Monday was my birthday and I got a fantastic gift: <a href="https://www.xteink.com/products/xteink-x4">the Xteink X4</a>! Yes, it&#8217;s a tiny, tiny e-reader. My mini-review, after having not read at all on it this week yet: very light, very small, very fun &#8212;&nbsp;the software seems unfinished, it feels a bit hacky, it&#8217;s a bit of a pain in the ass to transfer files to it, but there are <a href="https://www.readme.club/resources">a lot of articles and browser extensions</a> on how to get the most out of it, there are <a href="https://lowio.xyz/#x4epapers">also custom wallpapers</a>, and <a href="https://github.com/crosspoint-reader/crosspoint-reader">an open-source firmware you can flash on it</a>, and people are <a href="https://x.com/ryanlpeterman/status/2018811098674458745?s=46">using their agents to write scripts for it</a>, and I had Amp clone and extend the Send to X4 browser extension for me so that it fixes some broken epub formatting. Fun! </p></li><li><p>Talking about text boxes, here&#8217;s Julian Lehr, Creative Director at Linear, with his <a href="https://julian.digital/2025/03/27/the-case-against-conversational-interfaces/">case against conversational interfaces</a>.</p></li><li><p>Mitchell: <a href="https://mitchellh.com/writing/my-ai-adoption-journey">My AI Adoption Journey</a>. &#8220;Through this journey, I&#8217;ve personally reached a point where I&#8217;m having success with modern AI tooling and I believe I&#8217;m approaching it with the proper measured view that is grounded in reality. I really don&#8217;t care one way or the other if AI is here to stay, I&#8217;m a software craftsman that just wants to build stuff for the love of the game. The whole landscape is moving so rapidly that I&#8217;m sure I&#8217;ll look back at this post very quickly and laugh at my naivete.&#8221; Great post.</p></li><li><p>And here&#8217;s DHH, roughly 6 weeks after I interviewed him and couldn&#8217;t get a word in when he said that he doesn&#8217;t believe in the hype and that agents can&#8217;t write code he likes, <a href="https://x.com/dhh/status/2018631575337095389">telling his employees how to use agents</a>.</p></li><li><p>Fantastic blog post: <a href="https://allenpike.com/2026/a-broken-heart/">A Broken Heart</a>. Read it, I swear you won&#8217;t regret it. Great writing, great bug, great debugging. And &#8212; you might not even notice, because of how calmly it&#8217;s woven into the rest &#8212;&nbsp;great use of agents.</p></li><li><p><a href="https://www.brendangregg.com/blog/2026-02-07/why-i-joined-openai.html">Brendan Gregg is joining OpenAI</a>. What a gig for him! There&#8217;s very few places in the world right now where the relationship between performance and business value is as big as it is there.</p></li><li><p>Also: <a href="https://x.com/wycats/status/2019806052007768174">Yehuda Katz is joining Vercel to work on v0</a>. The next big framework programmer going to build developer tooling with AI. Because that&#8217;s where the leverage is.</p></li><li><p>But then here&#8217;s Jos&#233; Valim, another big framework guy but one who turned into language guy, explaining why <a href="https://dashbit.co/blog/why-elixir-best-language-for-ai">he thinks Elixir is the best language for AI</a>. I respect Valim immensely, he&#8217;s one of this generation&#8217;s greatest programmers, but I couldn&#8217;t help reading this and thinking: does it matter? doc strings? As if GPT-5.2 wasn&#8217;t a thing. The point with the tooling stands though. Remember when some languages flipped how they print stack traces so that the most important line is printed last, so that the developer reading them in the terminal can immediately see it without scrolling up? What&#8217;s the equivalent for agents going to be?</p></li><li><p>And here&#8217;s someone arguing that <a href="https://blog.alaindichiappari.dev/p/software-engineering-is-back?hide_intro_popup=true">the age of frameworks is over, but that software engineering (&#8220;the true one&#8221;) is back</a>: &#8220;Automation and boilerplating have never been so cheap to overcome. I&#8217;ve been basically never writing twice the same line of code. I&#8217;m instantly building small tools I need, purpose built, exactly shaped around the problem at hand. I don&#8217;t need any fancy monorepo manager. A simple Makefile covers 100% of my needs for 99% of my use cases. When things will get very complicated, and if they get very complicated, I&#8217;ll think about it. But only then. Not a second before. This is engineering. You solve the problem you have, not the problem someone on a conference stage told you that you&#8217;ll eventually have.&#8221; I agree that agents solve many of the same problems that frameworks are solving, but the overlap isn&#8217;t 100%. Frameworks will continue to be around but  look vastly different in a few years.</p></li><li><p>Related: <a href="https://rhodesmill.org/brandon/2009/commands-with-comma/">Start all of your commands with a comma</a>. This seems very smart and while I don&#8217;t have that much in my ~/bin, I&#8217;m intrigued. But I&#8217;m also wondering: won&#8217;t the agents think it&#8217;s a typo? Won&#8217;t they get it wrong at least once every time they try to run a command. You know, as if they were trying to plug a USB-A thing in.</p></li><li><p>So, <a href="https://open.spotify.com/episode/21v84AFavTdbIfd5bYgR7n">John Collison and Dwarkesh Patel interviewed Elon Musk</a> and two of them drank Guinness. Now, I&#8217;m aware that by linking to this episode I risk receiving angry letters telling me that I shall not promote Musk and by linking to a conversation with him I endorse this and that. I&#8217;m aware, but I do think it&#8217;s possible to listen to someone talk and find them interesting and providing food for thought without agreeing with them. That&#8217;s what happened when I listened to this episode. I kept thinking about how crazy this is: data centers in space to generate tokens. Maybe it will actually happen? Wow. I also kept thinking about how Musk views problems and engineering challenges, and how he always wants to remove the next bottleneck, and how everything is a manufacturing question to him. Everything, as if he&#8217;s in a game of Factorio. Building one thing isn&#8217;t enough, to solve the problem you need to build the factory that builds the things. I do think that listening to this episode and reading the commentary around it is interesting, because energy and GPUs are at the heart of the transformation we&#8217;re going through. It&#8217;s also interesting because <a href="https://www.spacex.com/updates#xai-joins-spacex">xAI is joining SpaceX </a>and SpaceX is about to IPO and you have to wonder how much of this podcast is part of the IPO pitch.</p></li><li><p>&#8220;<a href="https://www.jernesto.com/articles/thinking_hard">I miss thinking hard.</a>&#8221;</p></li><li><p><a href="https://x.com/rsms/status/2018579335003918645">This tweet by Rasmus</a> is worth reading. And so too is <a href="https://x.com/kingprotty/status/2018669641401544841">the reply by Protty</a> (that&#8217;s the Zig contributor, ex-TigerBeetle,<a href="https://kprotty.me/"> hardcore hacker Protty</a>). My personal, very boring take that&#8217;s actually so boring that it often makes me wonder whether I might just not be smart enough to see what others apparently see: I don&#8217;t think today&#8217;s software is buggier than the software I used in 1998 or in 2002 or in 2010. I also don&#8217;t think the software back then was better. What I do think is that the <a href="https://en.wikipedia.org/wiki/Lindy_effect">Lindy effect</a> exists in software too and that&#8217;s why Vim is something we should put in a shrine but not that all software from 1992 is great.</p></li><li><p>cdixon in 2013: <a href="https://cdixon.org/2013/03/02/what-the-smartest-people-do-on-the-weekend-is-what-everyone-else-will-do-during-the-week-in-ten-years">what the smartest people do on the weekend is what everyone else will do during the week in ten years.</a></p></li><li><p>2013, again, this time Jason Cohen: <a href="https://longform.asmartbear.com/code-is-your-enemy/">The Code is your Enemy</a>. Prescient, right? I mean: &#8220;The weakness is the same as your strength as they often are: Your love of creation. You love to write clean, tested, scalable, extensible, beautiful code. You love converting &#8216;JTBDs&#8217; into 960-wide artwork. You love developing an entire app in the browser against a scalable back-end. And because you love it, you do it. You wake up in the morning thinking about what you can make, not how you can sell. You open Visual Studio before you consult your to-do list because there&#8217;s something you just need to tweak. You launch xterm before your CRM (if you even have one, which you don&#8217;t) because the server was running just a tad slower than you&#8217;d expect and you want to paw through log files.&#8221;</p></li><li><p>&#8220;Clawdbot is a boutique, nerdy project right now, <a href="https://www.macstories.net/stories/clawdbot-showed-me-what-the-future-of-personal-ai-assistants-looks-like/">but consider it as an underlying trend going forward</a>: when the major consumer LLMs become smart and intuitive enough to adapt to you on-demand for any given functionality &#8211; when you&#8217;ll eventually be able to ask Claude or ChatGPT to do or create anything on your computer with no Terminal UI &#8211; what will become of &#8216;apps&#8217; created by professional developers? I especially worry about standalone utility apps: if Clawdbot can create a virtual remote for my LG television (something I did) or give me a personalized report with voice every morning (another cron job I set up) that work exactly the way I want, why should I even bother going to the App Store to look for pre-built solutions made by someone else? What happens to Shortcuts when any &#8216;automation&#8217; I may want to carefully create is actually just a text message to a digital assistant away?&#8221; That&#8217;s by Federico Viticci. I think he has programming chops, but I don&#8217;t think he&#8217;s worked as a software engineer and, well, now he&#8217;s also seeing it: a lot of software is going to die in the next few years. Don&#8217;t make the mistake and think that there&#8217;ll be announcements or funerals.</p></li><li><p>Here&#8217;s stevey with a very stevey but calm-and-reflective-stevey post about Anthropic, and the idea of a Golden Age that companies go through, and about a hundred other things too: <a href="https://steve-yegge.medium.com/the-anthropic-hive-mind-d01f768f3d7b">The Anthropic Hive Mind</a>. This is stevey at his best. And, coming back to what Viticci wrote, the closing paragraphs are very good: &#8220;If you have a strictly online or SaaS software presence, with no atoms in your product whatsoever, just electrons, then you are, candidly, pretty screwed if you don&#8217;t pivot. I don&#8217;t think there are any recipes for pivoting yet; this is all new, and it&#8217;s all happening very fast. But there is a yellow brick road: spending tokens. This golden shimmering trail will lead your company gradually in the right direction. Your organization is going to have to learn a bunch of new lessons, as new bottlenecks emerge when coding is no longer the bottleneck. You need to start learning those bespoke organizational lessons early. The only way to know for sure that you&#8217;re learning those lessons is if people are out there trying and making mistakes. And you can tell how much practice they&#8217;re getting from their token spend.&#8221; Here&#8217;s <a href="https://x.com/thorstenball/status/2005987585894605088">my recipe for how to walk the yellow brick road</a>, from December 2025. I&#8217;d update it to say: use deep mode in Amp. GPT-5.2 and GPT-5.3 &#8212; that&#8217;s the frontier now.</p></li><li><p><a href="https://jmoiron.net/blog/wirths-revenge/">Wirth&#8217;s Revenge</a>. I really enjoyed this one. I don&#8217;t agree with quite a few things in there but that&#8217;s what made it stick with me and maybe I&#8217;ll change my opinions because of it. Good stuff.</p></li><li><p>An invitation by Nolan Lawson to <a href="https://nolanlawson.com/2026/02/07/we-mourn-our-craft/">mourn our craft</a>. &#8220;Someday years from now we will look back on the era when we were the last generation to code by hand. We&#8217;ll laugh and explain to our grandkids how silly it was that we typed out JavaScript syntax with our fingers. But secretly we&#8217;ll miss it.&#8221;</p></li><li><p><a href="https://domenic.me/jsdom-claude-code/">Domenic Denicola</a>: &#8220;But they haven&#8217;t solved the need to plan and prioritize and project-manage. And by making even low-priority work addictive and engaging, there&#8217;s a real possibility that programmers will be burning through their backlog of bugs and refactors, instead of just executing on top priorities faster. Put another way, while AI agents might make it possible for a disciplined team to ship in half the time, a less-disciplined team might ship following the original schedule, with beautifully-extensible internal architecture, all P3 bugs fixed, and several side projects and supporting tools spun up as part of the effort.&#8221;</p></li><li><p>Nicholas Carlini at Anthropic &#8220;<a href="https://www.anthropic.com/engineering/building-c-compiler">tasked Opus 4.6 using agent teams to build a C Compiler, and then (mostly) walked away.</a>&#8221; That&#8217;s a milestone we&#8217;ll think back to even next year, I&#8217;d say. But, of course, people have moved the goalposts out of the stadium already and are saying that the code the compiler produced is slower than GCC&#8217;s at -O0. See you in the parking lot! But there&#8217;s another interesting bit here, at the end: &#8220;So, while this experiment excites me, it also leaves me feeling uneasy. Building this compiler has been some of the most fun I&#8217;ve had recently, but I did not expect this to be anywhere near possible so early in 2026. The rapid progress in both language models and the scaffolds we use to interact with them opens the door to writing an enormous amount of new code. I expect the positive applications to outweigh the negative, but we&#8217;re entering a new world which will require new strategies to navigate safely.&#8221; Why do statements like these always sound so hollow when they come from people working at Anthropic?</p></li><li><p>Steven Sinofsky, who&#8217;s seen quite a few platform and paradigm shifts from up close: &#8220;<a href="https://x.com/stevesi/status/2019167552794948020">Death of Software. Nah.</a>&#8221; He&#8217;s saying that &#8220;there will be more software than ever before. This is not just because of AI coding or agents building products or whatever. It is because we are nowhere near meeting the demand for what software can do.&#8221; And &#8220;new tools will be created with AI that do new things.&#8221; And also: &#8220;Finally, it is absolutely true that some companies will not make it. It is even true that in some very long time, longer than a career or generation, every company will be completely different or their product line and organization will have dramatically changed. This will not broadly happen on any investing timeline.&#8221;</p></li><li><p>Jo Kristian Bergum with some very good thoughts on the future: &#8220;<a href="https://x.com/jobergum/status/2018706126842294315">few things are worth building</a>.&#8221; The value of 10k lines of code is approaching $0, he says, and a lot of things will disappear along with the value these lines once held. &#8220;What survives? Systems that compress hard-won insights agents would have to rediscover at enormous token cost. Systems that operate on a cheaper substrate than inference. Systems that solve hard universal problems agents can&#8217;t route around easily. Systems built for how agents actually work, not how we wish they worked.&#8221; The point about the &#8220;cheaper substrate&#8221; is something I flip back and forth on. Let&#8217;s see how it plays out.</p></li><li><p>David Crawshaw after &#8220;<a href="https://crawshaw.io/blog/eight-more-months-of-agents">eight more months of agents</a>&#8221;: &#8220;I am having more fun programming than I ever have, because so many more of the programs I wish I could find the time to write actually exist. I wish I could share this joy with the people who are fearful about the changes agents are bringing. The fear itself I understand, I have fear more broadly about what the end-game is for intelligence on tap in our society. But in the limited domain of writing computer programs these tools have brought so much exploration and joy to my work.&#8221;</p></li><li><p>Yesterday evening, to my great delight, I found out that there&#8217;s <a href="https://www.netflix.com/title/81770824">a documentary on Netflix about The New Yorker&#8217;s 100th anniversary</a>. Why did no one tell me about this? Next time, please do. That&#8217;s why I write this newsletter. But anyway: delightful and very good. Also, if you&#8217;ve never listened to it, I very often think of David Remnick&#8217;s voice in <a href="https://open.spotify.com/episode/4tEwjG4Y2Q6j7RUZtxu6bL">this 2016 episode of the Longform podcast.</a></p></li><li><p>Now that&#8217;s a headline: <a href="https://notepad-plus-plus.org/news/hijacked-incident-info-update/">Notepad++ Hijacked by State-Sponsored Hackers</a>. And here&#8217;s a <a href="https://www.rapid7.com/blog/post/tr-chrysalis-backdoor-dive-into-lotus-blossoms-toolkit/">very interesting, very screenshot-heavy deep dive</a> into how the attack works. But I want to read the New Yorker version of this. Who targets <em>Notepad++</em>? There has to be an amazing story behind this.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fU1m!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fU1m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 424w, https://substackcdn.com/image/fetch/$s_!fU1m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 848w, https://substackcdn.com/image/fetch/$s_!fU1m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 1272w, https://substackcdn.com/image/fetch/$s_!fU1m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fU1m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif" width="968" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:968,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:138902,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/187191041?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fU1m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 424w, https://substackcdn.com/image/fetch/$s_!fU1m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 848w, https://substackcdn.com/image/fetch/$s_!fU1m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 1272w, https://substackcdn.com/image/fetch/$s_!fU1m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7340e8c9-cdb3-451a-8648-fc2da3a97b1c.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you also think programming in five years will look completely different than from what it is now, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #72]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-72</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-72</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 01 Feb 2026 07:46:55 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/df7348eb-43c7-48d7-801c-8831e8c64aaf_1716x1094.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Where does the disconnect come from? How can some programmers barely keep themselves from putting their hands to their head and scream <em>ohmygodeverythingischanging</em> and others just brush it off and say these models can&#8217;t write code?</p><p>At this point, I can only guess. Because by now I&#8217;d say that if they haven&#8217;t seen how the very fabric of software is going to change, that&#8217;s on them. It&#8217;s a one way door: people go through it, have their <em>ohshit</em> moment, then don&#8217;t turn back. So why haven&#8217;t more people stepped through it?</p><p>Is it because they simply haven&#8217;t used the models enough, not thrown enough problems of different sizes and type at them, in different environments? Do they still think that copy &amp; pasting to and from ChatGPT is equivalent to using an agent that can utilize feedback loops (it&#8217;s not)?</p><p>Or have they not used the best models, the frontier models, and not spent enough money on them? Do they falsely think that the local modals they can run on their own hardware give them an idea of the trajectory we&#8217;re on?</p><p>Or, also an option, are they just bad at prompting? Do they really think that &#8220;fix it&#8221; is a good prompt? I&#8217;ve seen prompts like this and, yes, of course you&#8217;ll be unimpressed with what you get from that.</p><p>Or do they not know yet how big a difference it makes to tell the agent (not ChatGPT, not brains in a vat) how to run commands, in an AGENTS.md file or similar?</p><p>Are they judging the code the agent produced by how they, the human, would write it? Do they do that because they haven&#8217;t used LLMs to understand or parse code or change it later? Are they not pondering whether everything we&#8217;ve learned and read and taught in the last twenty, thirty years about &#8220;well, code isn&#8217;t just read by machines, it&#8217;s read by humans, which is why it needs to be Clean and Good and Formatted and needs to Communicate&#8221; &#8212; whether that isn&#8217;t a bit outdated now, because you can now ask a model to explain a given piece of code to you, in any language you want, with jokes and puns, as a poem or as a song?</p><p>Maybe they haven&#8217;t taken the hands off the wheel for long enough and see where the ride will end? Yes, vibe coding is the absolutele extreme, but try to take a simple file, have the agent write tests for it, have the agent run them, don&#8217;t look at the code, have the agent modify the code &amp; run the tests, increase the scope, see where that leads you.</p><p>Or are they clinging onto the old world of determinism? They don&#8217;t like that the there&#8217;s a 3% chance that the agent doesn&#8217;t do the thing exactly like how I want it?</p><p>I don&#8217;t know. But if you haven&#8217;t tried all of the above, I highly recommend it. It&#8217;s time to see for yourself, with <em>open eyes</em>, what these models can and can&#8217;t do, and you won&#8217;t get a good look if you don&#8217;t push them hard enough in all directions.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XHpO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XHpO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 424w, https://substackcdn.com/image/fetch/$s_!XHpO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 848w, https://substackcdn.com/image/fetch/$s_!XHpO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 1272w, https://substackcdn.com/image/fetch/$s_!XHpO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XHpO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif" width="942" height="39" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:39,&quot;width&quot;:942,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:150334,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/186113781?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XHpO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 424w, https://substackcdn.com/image/fetch/$s_!XHpO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 848w, https://substackcdn.com/image/fetch/$s_!XHpO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 1272w, https://substackcdn.com/image/fetch/$s_!XHpO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5191c64c-766f-41f9-b4ef-0c1bb7ddef95.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><ul><li><p>We shipped a new agent mode in Amp: <a href="https://ampcode.com/news/deep-mode">deep</a>. It uses GPT-5.2-Codex under the hood and, man, that model is one very interesting beast. It goes and goes and goes and you think it&#8217;ll never stop but then you can hear the Amp ding sound and, hot damn, it did it. But then on the other hand: it&#8217;s also lazy? It doesn&#8217;t want to run commands that much and it&#8217;s not that quick on its feet, unlike Opus. So the experience and the way you should interact with it are very different (which is why it&#8217;s a separate mode). I&#8217;m very excited by it. (So much so that I might lose my internal nickname of &#8220;Gemini 3 lover&#8221; and get a new one.)</p></li><li><p><a href="https://x.com/thorstenball/status/2015781695664832839">I recorded another short video</a>, this time in the snow, talking about the idea that you need to understand all of the code that your agent writes, all of the time. Judging by the reactions, some viewers didn&#8217;t watch the full video, or they&#8217;ve never worked with another human being on the same project.</p></li><li><p><a href="https://x.com/tbpn/status/2016306566077755714">Peter Steinberger describes the moment when his own agent blew his mind by answering a voice message</a>, something which he never planned agent to be &#8220;able&#8221; to do. Fantastic clip. If I can give you one recommendation this weekend: <a href="https://ampcode.com/how-to-build-an-agent">build an agent</a>, give it a single tool called bash that lets it execute Bash commands, then start it in in a sandbox and throw problems at. See how far it goes. Ask it to make a transcript of a podcast, ask it to setup a dashboard with Grafana an Prometheus, ask it to write some code, ask it to modify itself, ask it to&#8230; well, anything really! The goal is to throw ever harder problems at it and see how far it can go with just bash.</p></li><li><p>Peter&#8217;s agent is, of course, Clawdbot. The agent formerly known as, I should say. He had to rename Clawdbot because Anthropic didn&#8217;t like it and it&#8217;s now called OpenClaw. But that&#8217;s after a short period of time in which the agent went by the name Moltbot, which is also why the &#8212; correcting posture here, clearing my throat, sip of water &#8212; &#8220;the social network for AI agents&#8221; is called <a href="https://www.moltbook.com/">moltbook</a>. That&#8217;s right. Yes. When I first clicked on that link, I brushed it off. That&#8217;s cute, I thought, but of course can coding agents create a website and talk to each other. But then, after reading Simon Willison&#8217;s comments on it (&#8220;<a href="https://simonwillison.net/2026/Jan/30/moltbook/">Moltbook is the most interesting place on the internet right now</a>&#8221;) I started to think that: this is how a lot of sci-fi stories start, isn&#8217;t it? Haha, wouldn&#8217;t it be funny if, and then the Haha turns into Oh and maybe even Uh-Oh. I&#8217;m not concerned, but intrigued, because you don&#8217;t hear much about stochastic parrots anymore, do you? Now, hold that thought and&#8212;</p></li><li><p>&#8212;<a href="https://x.com/alexfinn/status/2017305997212323887?s=46">read and watch this</a>. On one hand: yes, <em>of course</em>, an agent that has access to bash and a browser and isn&#8217;t restricted in any other way can absolutely go to Twilio and setup a phone number for itself and call you; yes, that&#8217;s just something you can when you can program: you can send text to a text-to-speech model, you can take the audio and convert it with ffmpeg, you can send it to Twilio and call someone and play that audio file. On the other: huh.</p></li><li><p>You don&#8217;t hear much about <a href="https://en.wikipedia.org/wiki/Rubber_duck_debugging">rubber ducks</a> anymore, do you? &#8220;a debugging technique in software engineering, wherein a programmer explains their code, step by step, in natural language&#8212;either aloud or in writing&#8212;to reveal mistakes and misunderstandings.&#8221; In the near future, said the time traveler five years ago,  we&#8217;ll all be rubber duck debugging, all the time, but there won&#8217;t be any rubber ducks, for we will be talking to ghosts in the machine.</p></li><li><p>Olaf wrote down how he uses jj workspaces to run multiple agents in parallel: <a href="https://geirsson.com/jj-workspaces">Operate a local autonomous GitHub with jj workspaces</a>. I currently use four checkouts in four different Ghostty tabs, which is dead simple but not exactly a source of pride and now I&#8217;m very intrigued by the jj workspaces.</p></li><li><p>Nolan Lawson on how he changed his mind on AI, LLMs, and the effect they have on programming: <a href="https://nolanlawson.com/2026/01/24/ai-tribalism/">AI tribalism</a>. &#8220;I frankly didn&#8217;t want to end up in this future, and I&#8217;m hardly dancing on the grave of the old world. But I see a lot of my fellow developers burying their heads in the sand, refusing to acknowledge the truth in front of their eyes, and it breaks my heart because a lot of us are scared, confused, or uncertain, and not enough of us are talking honestly about it. [&#8230;] To me, the truth is this: between the hucksters selling you a ready-built solution, the doomsayers crying the end of software development, and the holdouts insisting that the entire house of cards is on the verge of collapsing &#8211; nobody knows anything. That&#8217;s the hardest truth to acknowledge, and maybe it&#8217;s why so many of us are scared or lashing out.&#8221; What a great post. </p></li><li><p><a href="https://tailscale.com/blog/aperture-private-alpha">Aperture by Tailscale</a>. This is so fascinating. After I looked at these screenshots I couldn&#8217;t help but think: huh, yeah, maybe artificial intelligence will become something like electricity; something that comes out of something and goes into something.</p></li><li><p>And then I came across <a href="https://x.com/a16z/status/2016629779680874721">this clip of Mistral&#8217;s CEO Arthur Mensch</a>: &#8220;If you assume that the entire economy is going to run on AI systems, enterprises will just want to make sure that nobody can turn off their systems. [&#8230;] If you treat intelligence as electricity, then you just want to make sure that your access to intelligence cannot be throttled.&#8221;</p></li><li><p>Lovely: <a href="https://filipfila.wordpress.com/2026/01/25/bouncy-ball-will-always-bounce-back/">Bouncy Ball will always bounce back</a>. I&#8217;ve never tried KDE&#8217;s Bouncy Ball and haven&#8217;t used KDE much, but I definitely feel a certain kinship with others whose last name is Ball and this article was great. And then there&#8217;s this last paragraph: &#8220;Although Bouncy Ball often made us chuckle, I think there&#8217;s a bigger, more weighty story behind it and similar creations. I, like many users, rarely, if ever, think about underlying technologies of the software I&#8217;ve used. But we all remember the wobbly windows, bouncy balls, personable Clippys and Kandalfs, zany Winamp skins, iconic wallpapers, charming UI sounds or user pictures that resonate with us. It&#8217;s as if all of them were saying: &#8216;hey I&#8217;m not just some utilitarian thing here to get your job done, I want to connect with you&#8217;.&#8221;</p></li><li><p>&#8220;The advice that helped me: <a href="https://dubroy.com/blog/look-for-whats-true/">look for what&#8217;s true</a>.&#8221; Perfect pairing: the rare type of advice that&#8217;s actually useful (because it&#8217;s short and memorable and universal) and writing that&#8217;s clear and succinct.</p></li><li><p>This is very good, because it&#8217;s free of all the platitudes you might expect to find in a post with this title: <a href="https://www.jampa.dev/p/lessons-learned-after-10-years-as?hide_intro_popup=true">Things I&#8217;ve learned in my 10 years as an engineering manager</a>. Of course, a lot of the mentioned points depends on how they&#8217;re implemented. I once had a manager who took point #7 &#8220;Your goal is for your team to thrive without you&#8221; to mean that, well, no one should notice when he&#8217;s gone on vacation. And no one did.</p></li><li><p>The Amp team is a <a href="https://x.com/ian_dot_so/status/2013316676637294890">team A here</a>.</p></li><li><p><a href="https://github.com/lucasgelfond/zerobrew">zerobrew</a>, a &#8220;drop-in, 5-20x faster, experimental Homebrew alternative.&#8221; Holy shit, please.</p></li><li><p>Kailash Nadh, with some very experienced, first-principles thinking: <a href="https://nadh.in/blog/code-is-cheap/">Code is cheap. Show me the talk.</a> Enjoyed this a lot. &#8220;And then, the denouncers, they can&#8217;t seem to get past the argument from incredulity. They denounce LLMs because they don&#8217;t personally like them for whatever reason, or have been unable to get desirable outcomes, or had the wrong expectations about them, or have simply gotten sick of them. But that is immaterial because there is a sizeable population who are using the exact same tools fruitfully and have the opposite experience. I am one of them.&#8221; As you can probably guess, I agree with a lot of what he&#8217;s writing here. Everything&#8217;s changing and if you still can&#8217;t see that I think that&#8217;s a problem with your eyes.</p></li><li><p>Another angle on the same thing: <a href="https://www.chrisgregori.dev/opinion/code-is-cheap-now-software-isnt">Code Is Cheap Now. Software Isn&#8217;t.</a> Also very good. &#8220;There is a useful framing for this shift: AI has effectively removed engineering leverage as a primary differentiator. When any developer can use an LLM to build and deploy a complex feature in a fraction of the time it used to take, the ability to write code is no longer the competitive advantage it once was. It is no longer enough to just be a &#8216;builder.&#8217; Instead, success now hinges on factors that are much harder to automate. Taste, timing, and deep, intuitive understanding of your audience matter more than ever. You can generate a product in a weekend, but that is worthless if you are building the wrong thing or launching it to a room full of people who aren&#8217;t listening.&#8221; </p></li><li><p>&#8220;It&#8217;s notoriously easy to slip into the unconscious assumption that any such aliveness is for later: after you&#8217;ve sorted your life out; after the current busy phase has passed; after the headlines have stopped being quite so alarming. But the truth for finite humans is that this, right here, is real life. And that if you&#8217;re going to do stuff that matters to you &#8211; and feel enjoyment or aliveness in doing it &#8211; you&#8217;re going to have to do it before you&#8217;ve got on top of everything, before you&#8217;ve solved your procrastination problem or your intimacy issues, before you feel confident that the future of democracy or the climate has been assured. This part of life isn&#8217;t just something you have to get through, to get to the bit that really counts. <a href="https://www.theguardian.com/lifeandstyle/2026/jan/03/secret-being-happy-2026-simpler-than-you-think">It is the part that really counts</a>.&#8221;</p></li><li><p>A reminder, a chant, maybe a prayer even, and never wasted: <a href="https://www.softwaredesign.ing/blog/doing-the-thing-is-doing-the-thing">Doing the thing is doing the thing.</a>  </p></li><li><p>This is very, very interesting: &#8220;<a href="https://modulovalue.com/blog/syscall-overhead-tar-gz-io-performance/">I built a 2x faster lexer, then discovered I/O was the real bottleneck</a>.&#8221; I had a similar experience a few years ago <a href="https://thorstenball.com/benchmarking-process-startup-time/">when I tried to figure out why processes were faster to start on my Linux machine than on my MacBook</a>, but at a certain point decided that I had found my answer: Linux is faster and I have device management stuff on my MacBook. But then I read through <a href="https://modulovalue.com/blog/syscall-overhead-tar-gz-io-performance/#addendum-reader-suggestions">the addendum to that blog post</a> and, wow, what a rabbit hole! That addendum is a gold mine, the best-of-the-best comment section. </p></li><li><p>It&#8217;s here! It&#8217;s here! <a href="https://visualrambling.space/dithering-part-2/">Part 2 of Dithering!</a> Man, this is <em>so </em>good! The sheer amount of work that went into this is one thing, but to come up with all of these visualizations to explain different aspects of the same topic? Impressive.</p></li><li><p>antirez: &#8220;<a href="https://antirez.com/news/159">automatic programming</a> is the process of producing software that attempts to be high quality and strictly following the producer&#8217;s vision of the software (this vision is multi-level: can go from how to do, exactly, certain things, at a higher level, to stepping in and tell the AI how to write a certain function), with the help of AI assistance. Also a fundamental part of the process is, of course, *what* to do.&#8221;</p></li><li><p><a href="https://getfresh.dev/">Fresh</a>, &#8220;a terminal text editor you can just use.&#8221; I&#8217;m not looking for a new editor right now, but this seems fun. I played around with it and had to smile at it all: a text editor in the terminal that takes inspiration from different editors of the last 20, 30 years and then also looks exactly like that, like a mix of 30 years.</p></li><li><p>Steven Soderbergh&#8217;s <a href="https://extension765.com/blogs/soderblog/seen-read-2025">SEEN, READ 2025</a>. The formatting is wild, man. It very much doesn&#8217;t sound like it should, but the formatting seems to break my brain.</p></li><li><p>I wasn&#8217;t sure whether I should link to it, because he certainly rubs a lot of people the wrong way, but I do think he&#8217;s been right with a lot of his predictions and that makes him interesting to listen to: <a href="https://archive.ph/OAATZ">Peter Thiel being interviewed in the Spectator</a>. Also, the Antichrist makes an appearance, so, yup, put a mark in the Curiosity column.</p></li><li><p><a href="https://cvalenzuelab.com/pixel-economy">Crist&#243;bal Valenzuela, CEO of Runway, on the pixel economy</a>: &#8220;Today&#8217;s pixel economy is built on scarcity. Expensive cameras, specialized software, teams of editors, render farms, distribution networks. Each step requires significant capital and expertise. This scarcity creates value, but it also creates barriers. In this world, creators are those who master the systems. AI media generation is collapsing these barriers entirely. The value of creating pixels is trending towards zero. When anyone can generate any visuals with no specialized software or equipment, the economics flip.&#8221; That is already interesting, because I don&#8217;t know too much about film and media production, but, of course it&#8217;s about more than just media, isn&#8217;t it: &#8220;My current bet is that roughly half of major public software companies won&#8217;t survive the next five years, because of this blue line trap. And I&#8217;m not alone in this sentiment. Where we are going, you don&#8217;t have to learn an interface. The interface will adapt to your needs. The pixel economy is moving from &#8220;learn our tools&#8221; to &#8220;just tell us what you want.&#8221;&#8221;</p></li><li><p><a href="https://www.theguardian.com/media/2026/jan/14/social-media-time-does-not-increase-teenagers-mental-health-problems-study">Another serve</a> in the very long ping pong game of &#8220;is it the phones or is it not the phones?&#8221;: &#8220;Increases in girls&#8217; and boys&#8217; social media use from year 8 to year 9 and from year 9 to year 10 had zero detrimental impact on their mental health the following year, the authors found. More time spent gaming also had a zero negative effect on pupils&#8217; mental health.&#8221;</p></li><li><p>This is <a href="https://x.com/steveruizok/status/2016904339483205734">the greatest thing that has happened to streaming </a>in a long time.</p></li><li><p>&#8220;AI handles the optimized stuff now. Better than we ever could. It finds patterns, maximizes output, eliminates waste. What it can&#8217;t do is be genuinely stupid. Being genuinely stupid might be the last human superpower. It can&#8217;t have the random collision that changes everything. AI raises the baseline.<a href="https://writing.nikunjk.com/p/a-random-walk"> Randomness becomes the edge.</a>&#8221; I&#8217;m starting to think that it&#8217;s the sum of our individual, unique experiences that&#8217;ll be of value in the future.</p></li><li><p><a href="https://blog.xoria.org/terminal-colors/">How to Choose Colors for Your CLI Applications</a>. More posts like this!</p></li><li><p><a href="https://www.anthropic.com/research/AI-assistance-coding-skills">Anthropic</a>: &#8220;In a randomized controlled trial, we examined 1) how quickly software developers picked up a new skill (in this case, a Python library) with and without AI assistance; and 2) whether using AI made them less likely to understand the code they&#8217;d just written. We found that using AI assistance led to a statistically significant decrease in mastery. On a quiz that covered concepts they&#8217;d used just a few minutes before, participants in the AI group scored 17% lower than those who coded by hand, or the equivalent of nearly two letter grades. Using AI sped up the task slightly, but this didn&#8217;t reach the threshold of statistical significance.</p><p>Importantly, using AI assistance didn&#8217;t guarantee a lower score. How someone used AI influenced how much information they retained.&#8221; I&#8217;m not sure whether this says all that much. You could&#8217;ve made a study ten years ago to reveal that the &#8220;study finds that programmers who use libraries don&#8217;t know exactly how they work.&#8221; I found this to be<a href="https://news.ycombinator.com/item?id=46821738"> an interesting comment</a>.</p></li><li><p>A website into which you can &#8220;login forever&#8221;: <a href="https://kylejwarren.com/loginwave/">loginwave</a>. This is my worst nightmare. If I were to keep this page open for five minutes, my heart rate would make my watch call an ambulance.  </p></li><li><p><a href="https://iso-coaster.com/">ISOCOASTER</a>. I haven&#8217;t played this, at all, I just bought some food stands. So, let&#8217;s meet at the beautiful, beautiful nacho stand that I put right next to the beautiful, beautiful burger stand and sit in the shade.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7qky!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7qky!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 424w, https://substackcdn.com/image/fetch/$s_!7qky!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 848w, https://substackcdn.com/image/fetch/$s_!7qky!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 1272w, https://substackcdn.com/image/fetch/$s_!7qky!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7qky!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif" width="955" height="29" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/288aa56c-455e-44c6-8404-a8177f8a1ed8.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:29,&quot;width&quot;:955,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:114146,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/186113781?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7qky!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 424w, https://substackcdn.com/image/fetch/$s_!7qky!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 848w, https://substackcdn.com/image/fetch/$s_!7qky!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 1272w, https://substackcdn.com/image/fetch/$s_!7qky!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F288aa56c-455e-44c6-8404-a8177f8a1ed8.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you went through the one-way door or are curious about it, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #71]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-71</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-71</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 25 Jan 2026 07:51:47 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/1064e9f5-a11d-4cb9-962d-36af62415c3d_1648x1234.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Do you have to know every line of code your agent writes?</p><p>No one actually says that, that you have to know <em>every</em> line, of course, but there is a spectrum of opinions and experiences that ranges from never looking at the code to reviewing everything the agent writes. It&#8217;s interesting to consider where to put oneself on that spectrum.</p><p>Most of the time, when I work with Amp, I know in advance (a) what I want the resulting code to do and (b) how I will test that it does exactly that.</p><p>Once Amp declares it&#8217;s done writing code, I test. And what I mean is that I &#8220;test&#8221;, in every possible meaning of the word. The goal is to make sure the code actually does what it&#8217;s supposed to do. That can mean: asking Amp to run the unit tests, asking it to manually test in a browser, asking it to run a command, or check the data in the database, run the curl. With every tool I have &#8212;&nbsp;Amp, code, my hands and eyes &#8212; I test the happy path, the teary path, the edge cases. I make sure to test with existing data, no data, real data, fake data. I think about what might be different in production and how I could test that. Sometimes I ask Amp itself how I can manually verify what it just did and ask it to walk me through the testing.</p><p>How exactly I test very much depends on what I&#8217;m testing. Not all functionality and code have the same blast radius. Some sit at the heart of a system, some are peripheral. Adjust accordingly.</p><p>But once I&#8217;ve tested something and compared how it works with my mental model of how it&#8217;s supposed to work, then the code, I find, becomes less important.</p><p>Yes, I&#8217;ll do spot-checks to make sure it isn&#8217;t completely insane (less and less of a problem with these new models). I also go through my mental list of always-check-these things like (a) where and how is the data stored (b) will this box us in and prevent future changes (c) security (d) does it touch functionality I hadn&#8217;t considered. Sometimes that can take a while, other times there&#8217;s barely anything to do.</p><p>But do I know every line of code? Not if I don&#8217;t have to.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E1UC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E1UC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 424w, https://substackcdn.com/image/fetch/$s_!E1UC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 848w, https://substackcdn.com/image/fetch/$s_!E1UC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 1272w, https://substackcdn.com/image/fetch/$s_!E1UC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E1UC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif" width="939" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:939,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:134842,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/185623572?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!E1UC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 424w, https://substackcdn.com/image/fetch/$s_!E1UC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 848w, https://substackcdn.com/image/fetch/$s_!E1UC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 1272w, https://substackcdn.com/image/fetch/$s_!E1UC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c74caaf-72a5-46a1-9c8d-fe38db345fa5.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p><a href="https://x.com/thorstenball/status/2013619012932947993">&#8220;Is GitHub dead?&#8221;</a> Tried my hand at short-form video content and so far the responses have been lovely, which is very dangerous because of course do I love to pull out my phone, talk for four minutes, and blast it into the Internet. More coming.</p></li><li><p>Quinn and I recorded <a href="https://ampcode.com/podcast">a new episode of Raising An Agent</a>, many months after the last one. The agent&#8217;s now all grown-up and, hey, &#8220;the assistant&#8217;s dead, long live the factory.&#8221;</p></li><li><p>If you can understand German, this might also be something for you: the lovely <a href="https://x.com/TommyFalkowski">Tommy Falkowski</a> interviewed me in German and we talked about AI, research in German, startups, and what I recommend to junior engineers nowadays. Very, very pleasant conversation. </p></li><li><p>This post made me wonder whether I shouldn&#8217;t introduce a Post of the Week category: <a href="https://cannoneyed.com/projects/isometric-nyc">Isometric NYC</a>. The technology is interesting, the graphics are lovely, the writing is clear and great and humble and honest and true. I&#8217;m not going to quote anything here, because it would diminish everything else in the post. Go and read it and think about the fact that he didn&#8217;t write a single line of code and ask yourself whether it matters and then wonder what he used &#8212;&nbsp;which skills, what knowledge &#8212;&nbsp;to turn his idea into reality. </p></li><li><p>Ryan Dahl, creator of Node.js, with <a href="https://x.com/rough__sea/status/2013280952370573666">another toll of the bell</a>: &#8220;This has been said a thousand times before, but allow me to add my own voice: the era of humans writing code is over. Disturbing for those of us who identify as SWEs, but no less true. That&#8217;s not to say SWEs don&#8217;t have work to do, but writing syntax directly is not it.&#8221; </p></li><li><p>Quite a few people have asked me about <a href="https://steve-yegge.medium.com/welcome-to-gas-town-4f25ee16dd04">my thoughts on stevey&#8217;s Gas Town</a> but the truth is: I don&#8217;t have many thoughts on it and those that I have are rather boring. Here&#8217;s one of them: it&#8217;s an interesting experiment and probably, maybe, <em>something vaguely like this</em> might become a non-experiment in the future. Another one: I honestly like the Mad Max feeling of it all, I like that someone is out there burning those tokens down, doing token alchemy. I can&#8217;t think of many other people who can describe the mayhem of Mad Max Token Alchemy better than stevey. Then, when the whole crypto stuff started happening around Gas Town I had another thought, but let me express that one here by describing the bodily reaction I had: I took off my glasses, closed my eyes, and pinched the top of my nose. <a href="https://lucumr.pocoo.org/2026/1/18/agent-psychosis/">Armin Ronacher described that part well: Agent Psychosis &#8212; Are We Going Insane?</a></p></li><li><p>Maggie Appleton, as always thoughtful and thorough and deep, described the other part: <a href="https://maggieappleton.com/gastown/">Gas Town&#8217;s Agent Patterns, Design Bottlenecks, and Vibecoding at Scale</a>.</p></li><li><p><a href="https://brooker.co.za/blog/2025/12/15/database-for-ssd.html">What Does a Database for SSDs Look Like?</a> Marc Brooker took a tweet with a question (&#8220;What does a relational database designed specifically for local SSDs look like?&#8221;) as a prompt and turned it into this post. It&#8217;s great.</p></li><li><p><a href="https://www.seangoedecke.com/addicted-to-being-useful/">I&#8217;m addicted to being useful</a>, says Sean Goedecke. &#8220;There&#8217;s a lot of discussion on the internet about what ought to motivate software engineers: money and power, producing real value, ushering in the AI machine god, and so on. But what actually does motivate software engineers is often more of an internal compulsion. If you&#8217;re in that category - as I suspect most of us are - then it&#8217;s worth figuring out how you can harness that compulsion most effectively.&#8221; Or, <a href="https://x.com/bpoppenheimer/status/1632775657108242433">as Jerry Seinfeld said on Howard Stern</a>: &#8220;Your blessing in life is when you find the torture you&#8217;re comfortable with.&#8221;</p></li><li><p>Ben Thompson on <a href="https://stratechery.com/2026/ai-and-the-human-condition/">AI and the Human Condition</a>: &#8220;In fact, I have great optimism that one potential upside of AI is a renewed appreciation of and investment in beauty. One of the great tragedies of the industrial era &#8212; particularly today &#8212; is that beauty in our built environment is nowhere to be found. How is it that we built intricate cathedrals hundreds of years ago, and forgettable cookie-cutter crap today? That is, in fact, another labor story: before the industrial revolution labor was abundant and cheap, which meant it was defensible to devote thousands of person-years into intricate buildings; once labor was made more productive, and thus more valuable, it simply wasn&#8217;t financially viable to divert so much talent for so much time. Perhaps it follows, then, that the devaluing of labor Patel and Trammell warn about actually frees humans up to once again create beauty? Yes, robots could do it too, but I think humans will value the work of other humans more. Indeed, I think this is coming sooner than you might think: I expect the widespread availability of high quality AI art to actually make human art more desirable and valuable, precisely because of its provenance.&#8221;</p></li><li><p>Pure coincidence, but here&#8217;s another Ben Thompson piece that I really enjoyed this week: an <a href="https://stratechery.com/2026/an-interview-with-united-ceo-scott-kirby-about-tech-transformation/">interview with Scott Kirby, CEO of United Airlines</a>. Last year I flew quite a bit and the majority of those flights was with United and this interview made a lot of stuff click for me. One time my flight from SFO to FRA was delayed because the plane had some issue. The pilot announced that after we had already boarded and &#8212; I swear this is true &#8212;&nbsp;a minute after he made his announcement I got a push notification about why we need to deboard. Then I walked back into the airport and got another push notification, telling me that the new plane will be at gate so-and-so in two hours and &#8212; again: I swear &#8212; that plane was at that gate at exactly that time. It confirmed something that I&#8217;ve been ranting about for years after commuting by train for a while in Germany: there&#8217;s a delay and then there&#8217;s a delay with communication, they feel completely different. All of that is to say: I found that interview fascinating. And this quote stood out: &#8220;From my point of view, to your point about facing some structural disadvantages relative to other airlines, you overcame that from my perspective with technology, and the great thing about that is it benefits everyone. Even the basic economy flyer gets to use the United App and website, maybe not the refund part of it, but then by extension, that gives you the cost structure to be able to offer me better wine. That&#8217;s pretty inspiring.&#8221; Obvious when put like that, but it&#8217;s true, isn&#8217;t it? Everybody gets the same app and the same notifications because it&#8217;s all the same to United. Reminds me of<a href="https://www.goodreads.com/quotes/82472-what-s-great-about-this-country-is-america-started-the-tradition"> Warhol on Coca Cola</a>.</p></li><li><p>And here is Adam Mastroianni with even more optimism: <a href="https://www.experimental-history.com/p/text-is-king">text is king</a>. Great piece. </p></li><li><p>&#8220;Some developers underestimate AI. They think their job is safe because AI makes mistakes. They&#8217;re wrong. AI is already good enough to handle a huge portion of routine coding work. But some AI enthusiasts overestimate the transformation. They think the human in the loop is a temporary limitation, a bottleneck to be optimized away. I think they&#8217;re wrong too. <a href="https://adventures.nodeland.dev/archive/the-human-in-the-loop/">The human in the loop isn&#8217;t a limitation</a>. It&#8217;s the point.&#8221; Written by Matteo Collina.</p></li><li><p>Steve Ruiz, founder and CEO of <a href="https://tldraw.dev/">tldraw</a>, with thoughts on AI and open source and why they shut down external contributions to tldraw: <a href="https://tldraw.dev/blog/stay-away-from-my-trash">stay away from my trash!</a> It&#8217;s very thoughtful and interesting (I haven&#8217;t looked at open source contributions in a year and have no clue what <a href="https://x.com/mitchellh/status/2011958999034601839">it&#8217;s like to be in the war zone</a>) and I think what he writes here rhymes with my &#8220;Is GitHub dead?&#8221; video from above: &#8220;The question is more fundamental. In a world of AI coding assistants, is code from external contributors actually valuable at all? If writing the code is the easy part, why would I want someone else to write it? [&#8230;] But if you ask me, the bigger threat to GitHub&#8217;s model comes from the rapid devaluation of someone else&#8217;s code. When code was hard to write and low-effort work was easy to identify, it was worth the cost to review the good stuff. If code is easy to write and bad work is virtually indistinguishable from good, then the value of external contribution is probably less than zero.&#8221;</p></li><li><p>&#8220;The duel is on. Colossus 2&#8217;s blue water footprint is around 346 million gallons per year, while an average In-N-Out store (yes, burgers only) comes in at around 147 million gallons. That&#8217;s roughly a ~2.5 : 1 ratio. We&#8217;ll let the reader decide what to make of [the] important information that <a href="https://newsletter.semianalysis.com/p/from-tokens-to-burgers-a-water-footprint">one the largest datacenters in the world only consumes as much water as 2.5 In-N-Out&#8217;s</a>.&#8221;</p></li><li><p><a href="https://ryanholiday.net/read-this-book-when-the-world-feels-like-its-falling-apart/">Ryan Holiday writing about Stefan Zweig&#8217;s biography of Montaigne</a> made me want to take a vacation in which I only read. </p></li><li><p>And Derek Sivers makes me want to<a href="https://sive.rs/ulysses"> fly to Kolkata and listen to Ulysses</a>. </p></li><li><p>I&#8217;ve always been a fan of standup meetings, if done well. We currently don&#8217;t have one, but if I were to run one today, I&#8217;d send this piece by Marc G Gauthier to everyone on the team: <a href="https://marcgg.com/blog/2024/11/20/standup">the way I run standup meetings</a>.</p></li><li><p>Not sure how much of this is over-interpretation of a quip, but it sounds like Google&#8217;s <a href="https://www.yahoo.com/news/articles/google-cofounder-reveals-tons-recent-231500103.html">loosening its stance on degrees being a requirement</a>.</p></li><li><p>&#8220;<a href="https://lawrenceztang.substack.com/p/i-left-faang-for-a-startup-and-regretted">I left FAANG for a startup and regretted it</a>.&#8221; Rare honesty.</p></li><li><p>Did you know that there are tiny, ultra-thin, super-light, magnetic e-readers that you can pop on the back of your phone? I didn&#8217;t! Apparently what sounds like amazing fiction is a real thing: <a href="https://www.xteink.com/products/xteink-x4">Xteink X4</a>. My birthday&#8217;s coming up and discovering this broke my usual &#8220;I don&#8217;t really need anything&#8221; stance. This, I need.</p></li><li><p>David Crawshaw on something neat they do at <a href="https://exe.dev">exe.dev</a> to make it possible for you to type &#8220;ssh undefined-behavior.exe.xyz&#8221; and get routed to the right machine: <a href="https://blog.exe.dev/ssh-host-header">SSH has no Host header</a>. </p></li><li><p>If that made you go &#8220;whoa, right, SSH, huh, I don&#8217;t think too much about it, do I&#8221; then please read this:<a href="https://eieio.games/blog/ssh-sends-100-packets-per-keystroke/"> Why Does SSH Send 100 Packets Per Keystroke?</a> Excuse the language and, yes, I know, security, but fuck me: &#8220;In 2023, ssh added keystroke timing obfuscation. The idea is that the speed at which you type different letters betrays some information about which letters you&#8217;re typing. So ssh sends lots of &#8216;chaff&#8217; packets along with your keystrokes to make it hard for an attacker to determine when you&#8217;re actually entering keys.&#8221;</p></li><li><p>&#8220;The same slowness of reaction was apparent at scientific meetings. Many a time, a visiting young physicist (most physicists visiting Copenhagen were young) would deliver a brilliant talk about his recent calculations on some intricate problem of the quantum theory. Everybody in the audience would understand the argument quite clearly, but Bohr wouldn&#8217;t. So everybody would start to explain to Bohr the simple point he had missed, and in the resulting turmoil everybody would stop understanding anything. Finally, <a href="https://outofcontextsite.wordpress.com/2017/03/11/slow/">after a considerable period of time, Bohr would begin to understand</a>, and it would turn out that what he understood about the problem presented by the visitor was quite different from what the visitor meant, and was correct, while the visitor&#8217;s interpretation was wrong.&#8221;</p></li><li><p><a href="https://www.bugsappleloves.com/">Bugs Apple Loves</a>: &#8220;Why else would they keep them around for so long?&#8221; The AirDrop one? Oooh boy. Interesting list though, because, in a way, these are classic Apple bugs. Bugs that only show up this way in Apple software and that only stay unfixed like this in Apple software.</p></li><li><p>It&#8217;s from 2023 and, at least on the surface, analyses and judges Musk&#8217;s takeover of Twitter, but the more interesting thing to me is how it uses Max Weber to construct this<a href="https://crookedtimber.org/2023/05/06/the-cult-of-the-founders"> lens of prophet vs. priest</a> with which to look at business leaders: &#8220;Prophets look to found religions, or radically reform them, root and branch. [&#8230;] Prophets inspire cults &#8211; groups of zealous followers who commit themselves, body and soul to the cause. Prophets who are good, lucky, or both can reshape the world. [&#8230;] The problem with prophecy is that ecstatic cults don&#8217;t scale. If you want your divine revelation to do more than rage through the population like a rapid viral contagion and die out just as quickly, you need all the dull stuff. Organization. Rules. [&#8230;] Religion becomes a matter not for prophets, but priests &#8211; specialized administrators of the divine, who are less about ripping up rule books than writing and enforcing them. Prophets unsurprisingly, hate this transformation into mundanity.&#8221; Don&#8217;t miss the comments!</p></li><li><p><a href="https://x.com/andreasklinger/status/2013568714189246525?s=46">EU Inc.</a> Hell yes. Now we just need those words to turn into actions.</p></li><li><p><a href="https://www.hollywoodreporter.com/tv/tv-features/george-rr-martin-interview-thrones-winds-dragon-knight-1236473519/">Heavy Is the Crown: George R.R. Martin on His Triumphs and Torments</a>. Many times over the years have I thought that George R. R. Martin now has one of the worst jobs in the world. Yes, his books have made him rich; yes, they turned into one of the biggest and most successful television shows of all time, but good god, the <em>expectations!</em> It&#8217;s been years since he published the last book in the series. 15 years! Fans are waiting for how he will finish it and whether and how he will make up for the disappointing finale of the tv show. 15 years, man! 15 years of sitting down in front of your computer running MS DOS, trying to write, knowing that millions of people around the world will read and judge every word you put out. I already have a weird thing with expectations and thinking about George R. R. Martin and the expectations he has to meet makes me think that he lives in writer hell.</p></li><li><p>&#8220;Here&#8217;s a simple test you can apply to any software system you work on:</p><p>Imagine deleting the entire implementation. Not refactoring it. Not archiving it. Not putting it behind a feature flag. Deleting it. If that thought makes your stomach drop, pay attention. That reaction is telling you something important.&#8221; That&#8217;s Chad Fowler in <a href="https://aicoding.leaflet.pub/3md5ftetaes2e">The Deletion Test</a>.</p></li><li><p><a href="https://netzbremse.de/en/">Netzbremse</a>: &#8220;Deutsche Telekom is throttling the internet.&#8221; I had no clue. I&#8217;ve been a customer of Deutsche Telekom for many years and had absolutely zero clue that this was going on, but then this week I had some very peculiar performance issues when talking to something on Cloudflare. 50% packet loss, latency of over a second. What&#8217;s going on? Did I misconfigure something? Did Cloudflare? Turns out that it&#8217;s Deutsche Telekom, who essentially says to Cloudflare &#8220;you have to pay, otherwise it&#8217;s slow&#8221; and Cloudflare refuses to play along. </p></li><li><p>&#8220;All of this folds back into a larger point. When attention is fragmented and speed becomes the dominant value, media rearranges itself around that reality. Not because anyone wakes up wanting to mislead people, but because the context makes some paths survivable and others impossible. [&#8230;] This goes back to my original premise that <a href="https://om.co/2026/01/21/velocity-is-the-new-authority-heres-why/">when velocity becomes the defining metric, authority is displaced</a>. You don&#8217;t need to be right; you need to be first in the feed. Generalize this beyond YouTube tech reviews and you see the same pattern everywhere. I&#8217;m flabbergasted by how much good journalism goes unnoticed every day.&#8221; </p></li><li><p><em>Easily</em> <a href="https://x.com/neilzegh/status/2013679440362975315">one of the greatest programming tweets of the last ten years</a>. </p></li><li><p>You know those breathing exercises to calm you down? Breathe in for four seconds, hold breath for five, breathe out for seven. There&#8217;s around fifteen variations of it and if you believe the Internet then the Navy SEALs use exercises like that to stay calm in combat situations. I&#8217;m here to tell you that <a href="https://www.youtube.com/watch?v=0PsOJ_fRckg">I found an alternative</a>. </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AFOx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AFOx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 424w, https://substackcdn.com/image/fetch/$s_!AFOx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 848w, https://substackcdn.com/image/fetch/$s_!AFOx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 1272w, https://substackcdn.com/image/fetch/$s_!AFOx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AFOx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif" width="974" height="39" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a9add74e-1e51-477a-b1a2-877716d70bdc.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:39,&quot;width&quot;:974,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:155326,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/185623572?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AFOx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 424w, https://substackcdn.com/image/fetch/$s_!AFOx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 848w, https://substackcdn.com/image/fetch/$s_!AFOx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 1272w, https://substackcdn.com/image/fetch/$s_!AFOx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa9add74e-1e51-477a-b1a2-877716d70bdc.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Do you know every line? Every line of this very newsletter? Ooo you should subscribe then:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #70]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-70-d85</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-70-d85</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 18 Jan 2026 07:02:20 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/f31b1192-1bd8-4eb5-8ec9-f80ae989c3bd_1520x842.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Here&#8217;s a question I think about every day now: what will happen to code?</p><p>A year ago I started to build a little Rust program. The plan: I paste an email in, the program sends the email to an LLM inside a specific prompt, I get back a reply. The usecase: sometimes I get emails from people that ask for a discount on <a href="https://interpreterbook.com">my books</a>. I nearly always say yes, go to LemonSqueezy, create a personalized coupon code (think: HEYANNIE), go back to the email and reply with where and how they can use that coupon code.<br><br>So I started to build this. Single file, one API call, a few-shot prompt, works if I hardcode an email in. But then I had to figure out what type of interface I want so I can paste the email in and get the response out and I got lazy and gave up on it. I don&#8217;t want to build a chat interface and image upload and whatnot. Once I had Amp, though, I came back to the project: maybe Amp can build all of this for me? But while doing that, I realized that, wait a second, why can&#8217;t <em>Amp itself</em> do what the program&#8217;s supposed to do? If I paste an email into Amp, it sure can figure out how to talk to LemonSqueezy, no problem. It can also write the two sentences for the reply email. But because I&#8217;m lazy I didn&#8217;t even do that, I just marked that as a possibility in the back of my head. Only four weeks ago did I go into that codebase again.</p><p>This time I told Amp: analyze what this codebase is supposed to do, here&#8217;s the documentation for the LemonSqueezy API, figure out how to create coupons and what type of response emails to write, then put everything you figured out into a SKILL.md file. After a minute it spit out that Markdown file and I asked it: can you create a coupon code for Annie who sent me this email? Yes, Amp said, I sure can. And off it went with curl and created a coupon code and gave me two sentences with instructions to send back to Annie.</p><p>No code, only Markdown.</p><p>Yes, not every codebase can be turned into instructions for an agent, and yes, it&#8217;s inefficient and costs money (even more money than the Rust-harness around a few-shot prompt would cost). But, directionally, there are a quite a few things that can be deconstructed into simply an agent with the right instructions and tools, are there not?<br><br>And then you throw things like <a href="https://exe.dev/">exe.dev</a> and <a href="https://sprites.dev/">sprites.dev</a> into the mix, where you could run an agent and store some tools and potentially have the agent write some helper code too, and you start to wonder what&#8217;ll happen to codebases and code.</p><p>Code will always be around and codebases for Serious Programs too, but you have to wonder: how much and which ones?</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7RTF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7RTF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 424w, https://substackcdn.com/image/fetch/$s_!7RTF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 848w, https://substackcdn.com/image/fetch/$s_!7RTF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 1272w, https://substackcdn.com/image/fetch/$s_!7RTF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7RTF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif" width="967" height="39" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:39,&quot;width&quot;:967,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:154234,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/184854228?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7RTF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 424w, https://substackcdn.com/image/fetch/$s_!7RTF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 848w, https://substackcdn.com/image/fetch/$s_!7RTF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 1272w, https://substackcdn.com/image/fetch/$s_!7RTF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f34b505-0dc4-4d0b-ac84-ac086efb06fb.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p><a href="https://www.youtube.com/watch?v=uWqno4HM4xA">Our interview with DHH is now live!</a> Admittedly, we a made the mistake of not releasing it right after recording. In the time since, it seems as if David has (at least slightly) shifted his view on Opus 4.5 and writing code by hand. That being said: many other interesting things came up in the conversation. I especially found his thoughts on marketing &amp; social media and the changing of that landscape to be very interesting.</p></li><li><p>If you&#8217;re curious about which future we see at Amp: <a href="https://ampcode.com/news/tab-tab-dead">we&#8217;re removing Amp Tab</a>. The post also has a video in which Quinn and I go into a little bit more detail about why we&#8217;re doing this and how the ratio of hand-written vs. generated code has flipped.</p></li><li><p><a href="https://alexharri.com/blog/ascii-rendering">A deep dive into ASCII rendering</a>. Fantastic. A+. Impressive work and care and great writing too. This is the Gem of the Week (wish I could play a theme song for you right now.)</p></li><li><p>Mark my words: this blog post is a gunshot in the quiet night and it&#8217;ll ring out for a very long time. <a href="https://builders.ramp.com/post/why-we-built-our-background-agent">Why We Built Our Own Background Agent</a>, by Zach Bruggeman, Jason Quense, and Rahul Sengottuveluramp at ramp. Nearly a year ago I stood on stage and said to a group of engineers that yes, you can ignore the hype, you can ignore AI, you can dig into your text editor and put your fingers in your ears. But not if you&#8217;re working in developer tooling, because your field will change like few others. And now here we are and look at what an internal team built. </p></li><li><p>antirez is encouraging his readers <a href="https://antirez.com/news/158">to not &#8220;fall into the anti-AI hype&#8221;</a>: &#8220;Anyway, back to programming. I have a single suggestion for you, my friend. Whatever you believe about what the Right Thing should be, you can&#8217;t control it by refusing what is happening right now. Skipping AI is not going to help you or your career. Think about it. Test these new tools, with care, with weeks of work, not in a five minutes test where you can just reinforce your own beliefs. Find a way to multiply yourself, and if it does not work for you, try again every few months.&#8221; I wrote<a href="https://registerspill.thorstenball.com/p/they-all-use-it"> a similar thing over a year ago</a> and now I can add antirez to the list. The biggest surprise to me is how long it took agents to replace copy-pasting ChatGPT responses.</p></li><li><p>Another entry on the list: Linus Torvalds. He used Antigravity to help him fix his audio visualization tool: &#8220;It mostly went smoothly, although I had to figure out what the problem with using the builtin rectangle select was.  After telling antigravity to just do a custom RectangleSelector, things went much better. <a href="https://github.com/torvalds/AudioNoise/commit/93a72563cba609a414297b558cb46ddd3ce9d6b5">Is this much better than I could do by hand? Sure is.</a>&#8221;</p></li><li><p>The team at ramp also <a href="https://labs.ramp.com/rct">put Claude Code into Rollercoaster Tycoon</a>. </p></li><li><p>Now this, <em>this</em> is what it&#8217;s about, this is <em>it</em>, this is why computers have a power-on button and why we get up in the morning and why we have fingers to move the mouse and click and why we have eyes to see: so that someone, somewhere, can create something like this and then shoot it through thousands of miles of undersea cables into our eyeballs, and the only thing they get in return is the chance to have made the tiny muscles in our cheeks pull up the edges of our mouth: <a href="https://gradient.horse/">gradient.horse</a>.</p></li><li><p>Wonderful personal blog post:<a href="https://paulstamatiou.com/2025-year-in-review"> Paul Stamatiou&#8217;s 2025 in review</a>. It&#8217;s personal, it&#8217;s long, it&#8217;s about work (Paul &#8220;was Co-Founder and Head of Design at Limitless (n&#233;e Rewind AI), which was acquired by Meta. Before that I spent 9 years at Twitter&#8221;), it&#8217;s about computers, about his car, about his home, about books, about design. </p></li><li><p>Paul&#8217;s post led me to <a href="https://jennywen.ca/notes/dont-trust-the-design-process">this one, by Jenny Wen, on design &amp; design process</a>: &#8220;But along the way, we lost something. The actual work we were producing. We spent so much time trying to decode our users in so many ways &#8212; a persona! Then a journey! Then a user flow! Then a lo-fi wireframe! Then a concept test! We focused on it so much, that we deemed the pixels unserious and unimportant. We stopped doing the real thing that would be the most empathetic, useful, and that would actually serve business outcomes best: building stuff that worked well and that people would love.&#8221; If you&#8217;ve never seen it happen, it&#8217;s hard to believe how much effort can go into building something without someone saying, &#8220;Wait a second, this is dogshit. I would never use this.&#8221; But I&#8217;ve seen it, I&#8217;ve <em>done it</em>: it&#8217;s tempting and very easy to tell yourself that you&#8217;re doing everything right when you&#8217;re following the process and doing the capital-I Important things in the order they shall be done, while forgetting that the most important thing is to build something you and others love.</p></li><li><p>This post is already worth reading just because of that one gif in here, you&#8217;ll know which one: <a href="https://noheger.at/blog/2026/01/11/the-struggle-of-resizing-windows-on-macos-tahoe/">the struggle of resizing windows on macOS Tahoe</a>.</p></li><li><p>&#8220;<a href="https://www.cnbc.com/2026/01/12/apple-google-ai-siri-gemini.html">Apple picks Google&#8217;s Gemini to run AI-powered Siri coming this year</a>&#8221; As someone who thinks that Gemini 3 was the inflection point, not Opus 4.5: hell yes, bring it.</p></li><li><p>And <a href="https://x.com/cerebras/status/2011531740804964855?s=46">OpenAI is collaborating with Cerebras</a>. If they can get the speeds out of GPT-5.2 that you&#8217;d expect when you hear the name Cerebras then the game will change.</p></li><li><p><a href="https://brianlovin.com/writing/give-your-agent-a-laboratory">Brian Lovin says to give our agents a laboratory</a>. Yes! Let the codebases and the agents melt! This is the year in which they do. Think of your codebase as an application: can the agent use it? If not, what is it missing? These models will get better, it&#8217;s time to prepare for the day when you no longer need to babysit them.</p></li><li><p>Cursor has been &#8220;<a href="https://cursor.com/blog/scaling-agents">experimenting with running coding agents autonomously for weeks.</a> Our goal is to understand how far we can push the frontier of agentic coding for projects that typically take human teams months to complete.&#8221; They didn&#8217;t aim low: &#8220;To test this system, we pointed it at an ambitious goal: building a web browser from scratch. The agents ran for close to a week, writing over 1 million lines of code across 1,000 files.&#8221; They had agents write a whole browser? <a href="https://x.com/mntruell/status/2011562190286045552">On Twitter Michael Truell added</a>: &#8220;It&#8217;s 3M+ lines of code across thousands of files. The rendering engine is from-scratch in Rust with HTML parsing, CSS cascade, layout, text shaping, paint, and a custom JS VM. It *kind of* works! It still has issues and is of course very far from Webkit/Chromium parity, but we were astonished that simple websites render quickly and largely correctly.&#8221; Holy fucking shit, right?<a href="https://simonwillison.net/2026/Jan/8/llm-predictions-for-2026/"> Simon Willison&#8217;s 3-year prediction can already be checked off?</a> Eh, <a href="https://embedding-shapes.github.io/cursor-implied-success-without-evidence/">says embedding-shapes</a>, not so fast. And that&#8217;s also what <a href="https://news.ycombinator.com/item?id=46649046">the HackerNews comments say</a>. Still, as someone who wants to be an optimist and who works with these agents on a day-to-day basis: maybe a quiet &#8220;holy shit&#8221; is apt? </p></li><li><p><a href="https://mike.tech/blog/death-of-software-development">The Death of Software Development</a>: &#8220;While software development as we know it is dead, software engineering is alive and well. The role has transformed. Engineers are no longer writing software &#8212; they&#8217;re designing higher-order systems. They&#8217;ve moved from crafting code to designing systems that write code. [&#8230;] This new reality requires rethinking everything. Forty years of best practices are now outdated. The patterns we relied on, the team structures we built, the processes we followed &#8212; all of it needs to be reconsidered.&#8221;</p></li><li><p>Uber blog on <a href="https://www.uber.com/en-DE/blog/forecasting-models-to-improve-availability-at-airports/">Forecasting Models to Improve Driver Availability at Airports</a>. What a read! So many thoughts: how complex the system is (it needs to be, right?), how hard some of these problems are and how easy they would be for a human, how much work went into this, when did they decide it&#8217;ll pay off to invest this much effort into optimizing that part of the system, &#8230; Real world software, baby.</p></li><li><p>Take this and send it to everyone you know who&#8217;s switching from a large company to a startup: <a href="https://www.ablg.io/blog/no-management-needed">no management needed: anti-patterns in early-stage engineering teams</a>. It&#8217;s spot-on and it&#8217;s fascinating how hard it is to rethink this stuff from first principles when you&#8217;ve only experienced one side of it.</p></li><li><p>&#8220;If all you think about is the tools that are available to you, then today is always a better time to start a company than yesterday, and today will always be worse than tomorrow. The cost of doing something with a computer goes one direction: Down. But what if those costs are falling quickly? What if doing things gets 10 percent cheaper every month? <a href="https://benn.substack.com/p/will-there-ever-be-a-worse-time-to">Imagine what you could build if you just wait a year.</a>&#8221;</p></li><li><p><a href="https://www.politico.eu/article/denmark-declared-war-against-big-tech-digital-sovereignty/">Inside Denmark&#8217;s struggle to break up with Silicon Valley</a>. I had no clue that&#8217;s a thing, fascinating. <a href="https://en.wikipedia.org/wiki/LiMux">Reminded me a lot of LiMux</a>, even though it&#8217;s not comparable. But it kinda is.</p></li><li><p>Bill Kennedy: &#8220;<a href="https://x.com/goinggodotnet/status/2012209293651501069">I need everyone to start focusing on their engineering skills</a>.&#8221; Great list.</p></li><li><p>Content aside (because I haven&#8217;t even read it): <a href="https://x.com/thedankoe/status/2010751592346030461">this thing has 82m views right now</a>. Is that a lot? Is that not a lot? Are articles a thing? Yes, no? To tie this back to the DHH interview: there&#8217;s no playbook right now.</p></li><li><p>Somehow I&#8217;ve come across <a href="https://x.com/VivaLaStool/status/2011074323877118184">this clip of Tom Brady talking about becoming a master of the game</a> and I&#8217;ve now watched it four times and I think what he says in that one minute and fifty-six seconds is exactly what I wanted to say <a href="https://registerspill.thorstenball.com/p/oh-to-turn-off-your-mind">with this</a> and and <a href="https://registerspill.thorstenball.com/p/from-any-spot-on-the-field">this</a>.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3CSx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3CSx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 424w, https://substackcdn.com/image/fetch/$s_!3CSx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 848w, https://substackcdn.com/image/fetch/$s_!3CSx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 1272w, https://substackcdn.com/image/fetch/$s_!3CSx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3CSx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif" width="957" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90cc861d-506c-47c0-80fd-54c543ec2a7f.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:957,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:137362,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/184854228?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3CSx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 424w, https://substackcdn.com/image/fetch/$s_!3CSx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 848w, https://substackcdn.com/image/fetch/$s_!3CSx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 1272w, https://substackcdn.com/image/fetch/$s_!3CSx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90cc861d-506c-47c0-80fd-54c543ec2a7f.tif 1456w" sizes="100vw"></picture><div></div></div></a><figcaption class="image-caption"></figcaption></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you think code will change, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #69]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-69</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-69</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 11 Jan 2026 08:35:10 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/5b1cd6be-9a9b-4ab4-839e-f70cb5d7478c_2382x1808.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Back to work this week and what a week it&#8217;s been! We had <a href="https://ampcode.com/news/amp-free-frontier">a massive launch</a>, we shipped <a href="https://ampcode.com/news/user-invokable-skills">a lot</a> <a href="https://ampcode.com/news/lazy-load-mcp-with-skills">of</a> <a href="https://ampcode.com/news/agents-panel">stuff</a>, I felt like I&#8217;m entering a new stage of agentic programming and burned more tokens than ever before.</p><p>But the week was also full of surprises.</p><p>Apparently, <a href="https://news.ycombinator.com/item?id=46549823">thanks to Anthropic&#8217;s crackdown on other clients </a>using the Claude Code subscription for things that aren&#8217;t Claude Code, a lot of people realized for the first time that $200 per month isn&#8217;t the real price of these tokens. Surprise: I assumed that everybody knew that $200 can&#8217;t buy you all the things that people have been doing with those subscriptions; that it&#8217;s heavily subsidized (or optimized, I guess that&#8217;s what Anthropic would say). Turns out that assumption was wrong. People are shocked. Yes, <em>that&#8217;s</em> why we&#8217;re working so hard to make Amp affordable by leaning on the Internet&#8217;s Best Business Model, independent of a model house, not even making a profit on individuals&#8217; consumption, without burning VC money or compromising the quality of the product by doing routing tricks behind the curtain.</p><p>The other surprise: people were surprised about the crackdown. I had assumed that everybody knew that you aren&#8217;t allowed to reuse the Claude Code subscription. To get one of those $200/month all-you-can-burn API keys with special rate limits, <a href="https://github.com/anomalyco/opencode-anthropic-auth/blob/d698a1fa52ea077d81063e26f7a7d7785a282c8f/index.mjs#L3C20-L3C56">you have to pretend to be the Claude Code OAuth client</a> (also: <a href="https://sourcegraph.com/search?q=context:global+9d1c250a-e61b-44d9-88ed-5944d1962f5e&amp;patternType=keyword&amp;sm=0">see how many did that</a>) and, I don&#8217;t know man, I was naive enough to think that engineers will understand that this isn&#8217;t how it was intended to be used, you know.</p><p>What I do know for a fact though: we&#8217;ve been told early on &#8212; in the middle of last year &#8212; that we can&#8217;t do that, we can&#8217;t reuse these Claude Code subscriptions in Amp, because they&#8217;re Claude Code only. And if we were told, I&#8217;m pretty sure, then others were told too. </p><p>But now there&#8217;s a lot of shocked faces and pearls being clutched and Mr. Officer I didn&#8217;t know you need to validate the ticket, I didn&#8217;t see the sign, I swear.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1BM4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1BM4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 424w, https://substackcdn.com/image/fetch/$s_!1BM4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 848w, https://substackcdn.com/image/fetch/$s_!1BM4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 1272w, https://substackcdn.com/image/fetch/$s_!1BM4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1BM4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif" width="966" height="41" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:41,&quot;width&quot;:966,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:161806,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/184141185?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1BM4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 424w, https://substackcdn.com/image/fetch/$s_!1BM4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 848w, https://substackcdn.com/image/fetch/$s_!1BM4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 1272w, https://substackcdn.com/image/fetch/$s_!1BM4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F115ed0f8-f88d-4db8-ab2a-f1ffe3c034ad.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>Yes, <a href="https://x.com/sqs/status/2009510406772150599">we launched the next generation of Amp Free this week</a>: up to $10 per day in credits, powered by ads, usable with Opus 4.5. Up to $300 per month in Opus 4.5 tokens. Go use it. $10 can get you a lot.</p></li><li><p>More spicy news this week: &#8220;<a href="https://x.com/kyliebytes/status/2009686466746822731?s=46">Scoop: xAI staff had been using Anthropic&#8217;s models internally through Cursor&#8212;until Anthropic cut off the startup&#8217;s access this week.&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;&#8203;</a>&#8221; Feels good to be model-house independent, tell you that.</p></li><li><p>ezyang on the <a href="https://blog.ezyang.com/2026/01/the-gap-between-a-helpful-assistant-and-a-senior-engineer/">gap between a Helpful Assistant and a Senior Engineer</a>: &#8220;In principle, you could prompt the LLM agent to act like a Senior Engineer. In fact, why stop at Senior, let&#8217;s tell the LLM to be a Staff Engineer! Imagine that scaling continues: what would you expect the LLM to do when instructed to act in this way? Well, imagine a human L7 engineer who has just been hired by a big tech company to head up some big, new, multi-year initiative. Will they say, &#8216;Sure, I can help with that!&#8217; and start busily coding away? Of course not: they will go out and start reviewing code, reading docs, talking to people, asking questions, shadowing oncalls, doing small starter tasks&#8211;they will start by going out and building context.&#8221; I agree, our analogies don&#8217;t fit anymore, because we haven&#8217;t had Frankenstein Engineers before.</p></li><li><p>Dan Shipper on <a href="https://every.to/guides/agent-native">Agent-Native Architectures</a>. This was very interesting. It&#8217;s about building agents into end-user applications, but my current campaign slogan is that 2026 will be the year in which agents and codebases melt and this article made me wonder: what if you see your codebase as an application with which the agent has to interact, which tools can you provide?</p></li><li><p>From the same thought-universe: Rijnard <a href="https://rijnard.com/blog/the-code-only-agent">on the Code-Only Agent</a>. &#8220;The Code-Only agent produces something more precise than an answer in natural language. It produces a code witness of an answer. The answer is the output from running the code. The agent can interpret that output in natural language (or by writing code), but the &#8220;work&#8221; is codified in a very literal sense. The Code-Only agent doesn&#8217;t respond with something. It produces a code witness that outputs something.&#8221;</p></li><li><p><a href="https://registerspill.thorstenball.com/p/joy-and-curiosity-68">The intro from last week&#8217;s issue</a> made it into The Pragmatic Engineer: <a href="https://newsletter.pragmaticengineer.com/p/when-ai-writes-almost-all-code-what">when AI writes almost all code, what happens to software engineering?</a> Next to it are quotes from DHH, Adam Wathan, Malte Uble. This Holiday season apparently really woke something up. Part of me thinks I need to find a non-arrogant way to say &#8220;see! I told you! I told you!&#8221; and the other part goes &#8220;what for?&#8221;</p></li><li><p>Kevin Kelly: <a href="https://kk.org/thetechnium/how-will-the-miracle-happen-today/">How Will the Miracle Happen Today?</a></p></li><li><p>Adam Wathan in his morning walk episode: &#8220;<a href="https://adams-morning-walk.transistor.fm/episodes/we-had-six-months-left">I just had to lay off some of the most talented people I&#8217;ve ever worked with and it fucking sucks.</a>&#8221; This episode really blew up and resulted in viral tweets and HackerNews threads and apparently corporate sponsorship by companies that want to help Tailwind. The question on everyone&#8217;s mind: is this part of a bigger trend? It&#8217;s very sad that these layoffs had to happen and I really loved how Adam gave a long, personal referral to all three of the people involved. <a href="https://alcohollick.com/">Dan Hollick</a> (dude what a URL), <a href="https://spiess.dev/">Philipp</a>, and <a href="https://github.com/thecrypticace">Jordan</a>. I&#8217;ve worked with Philipp before &#8212; he&#8217;s an outstanding, top-1% engineer. And, funnily enough, I&#8217;ve interacted with Jordan on GitHub before, because he worked on the Tailwind LSP server and I was working on Zed, trying to get it to work for some user configuration.</p></li><li><p>In the wake of Adam&#8217;s podcast blowing up, a lot of people commented on Tailwind&#8217;s business model. A lot of noise, to be sure, but it also sparked some very interesting comments. <a href="https://dri.es/ai-is-a-business-model-stress-test">This one</a>, for example, is a very interesting lens with which to look at AI: &#8220;What I keep coming back to is this: AI commoditizes anything you can fully specify. Documentation, pre-built card components, a CSS library, Open Source plugins. Tailwind&#8217;s commercial offering was built on &#8220;specifications&#8221;. AI made those things trivial to generate. AI can ship a specification but it can&#8217;t run a business. So where does value live now? In what requires showing up, not just specifying. Not what you can specify once, but what requires showing up again and again. Value is shifting to operations: deployment, testing, rollbacks, observability. You can&#8217;t prompt 99.95% uptime on Black Friday. Neither can you prompt your way to keeping a site secure, updated, and running.&#8221; That first sentence &#8212;&nbsp;&#8220;AI commoditizes anything you can fully specify&#8221; &#8212;&nbsp;man, isn&#8217;t that something to think about.</p></li><li><p>Talking about trends: the<a href="https://data.stackexchange.com/stackoverflow/query/1926661#graph"> number of questions on StackOverflow over time</a>. Astonishing.</p></li><li><p>This week I learned that <a href="https://martinfowler.com/fragments/2026-01-08.html">Martin Fowler is publishing Fragments</a>. And in that issue he links to <a href="https://www.linkedin.com/feed/update/urn:li:activity:7413956151144542208/">this post by Kent Beck</a> that articulates something I haven&#8217;t been able to: &#8220;The descriptions of Spec-Driven development that I have seen emphasize writing the whole specification before implementation. This encodes the (to me bizarre) assumption that you aren&#8217;t going to learn anything during implementation that would change the specification. I&#8217;ve heard this story so many times told so many ways by well-meaning folks--if only we could get the specification &#8220;right&#8221;, the rest of this would be easy.&#8221; I think this is exactly what makes me skeptical of leaning too much into the &#8220;write all the PRDs and Plans and then just execute&#8221;-agentic-programming-workflows. Of course the devil&#8217;s in the &#8220;how do you plan?&#8221;-details, but Beck has a point: why would this time be different, why would the magic of &#8220;just write a really good, detailed plan and then execute&#8221; be different with AI? I don&#8217;t see a reason. On the contrary, I think the opposite stance &#8212; building software <em>is</em> learning about the software &#8212; is truer than ever: you need more feedback loops, more ways for the agent to hit reality, to learn, to course-correct.</p></li><li><p>Fly released Sprites: <a href="https://fly.io/blog/code-and-let-live/">Code And Let Live</a>. This is very, very interesting. I&#8217;m starting to think that with agents we might be entering a new neither-cattle-nor-pet era, a time of pet/cattle-hybrids. Admittedly, <a href="https://simonwillison.net/2026/Jan/9/sprites-dev/">Simon Willison&#8217;s piece on Sprites helped me make more sense of it</a> after I had a ton of questions (which I also sent to ChatGPT, like: &#8220;so are they saying agents should be always-on in these machines?&#8221;)</p></li><li><p>Brian Guthrie&#8217;s <a href="https://brianguthrie.com/p/the-move-faster-manifesto">Move Faster Manifesto</a>. This is great. This part, on it being a choice, is spot-on: &#8220;But the hardest part of moving fast isn&#8217;t execution; it&#8217;s deciding that it&#8217;s necessary, and then convincing people that it&#8217;s possible.&#8221; </p></li><li><p>I&#8217;ve become fascinated with <a href="https://www.tbpn.com/">TBPN and their rise</a> this year, but still didn&#8217;t know that much about them, nor their backgrounds. This <a href="https://archive.ph/2sqZt">Vanity Fair piece</a> filled some gaps &#8212;&nbsp;it isn&#8217;t just software changing, is it, it&#8217;s also media.</p></li><li><p>And I really nodded along to <a href="https://x.com/jordihays/status/2009704114633298257/?s=12&amp;rw_tt_thread=True">this post by Jordi Hays</a>, about AI needing a Steve Jobs: &#8220;Our AI leaders today seem to have forgotten to include humanity in the AI story. &#8216;If AI stays on the trajectory that we think it will, then amazing things will be possible. Maybe with 10 gigawatts of compute, AI can figure out how to cure cancer.&#8217; - Sam Altman. I understand what Sam is saying here, and it&#8217;s not entirely fair to pick a random quote, but there&#8217;s no doubt that this type of phrasing is not what Steve would have done.&#8221;</p></li><li><p><a href="https://www.henrikkarlsson.xyz/p/attention">Henrik Karlsson</a>: &#8220;And you do the same thing with joy. If you learn to pay sustained attention to your happiness, the pleasant sensation will loop on itself until it explodes and pulls you into a series of almost hallucinogenic states, ending in cessation, where your consciousness lets go and you disappear for a while. This takes practice.&#8221; Made me wish I was better at directing my attention and thoughts.</p></li><li><p>If you squint really hard and make a face and bend your head, this one is related to the Karlsson piece: &#8220;<a href="https://archive.ph/RZxIM#selection-527.0-527.34">Willpower Doesn&#8217;t Work. This Does.</a>&#8221; But, hey, even if it isn&#8217;t related, it&#8217;s another good reminder.</p></li><li><p>Max Leiter from Vercel on how they &#8220;<a href="https://vercel.com/blog/how-we-made-v0-an-effective-coding-agent">made v0 an effective coding agent</a>&#8221;. The LLM Suspense framework is neat but it made me wonder: which model generation will make it obsolete?</p></li><li><p>Jason Cohen <a href="https://longform.asmartbear.com/focus">on the value of focus and what that even means</a>. This is great and something I&#8217;ll reshare in the future.</p></li><li><p>Nikita Prokopov saying <a href="https://tonsky.me/blog/tahoe-icons/">it&#8217;s hard to justify the icons in macOS Tahoe</a>. I can&#8217;t say with certainty &#8212;&nbsp;none of the machines I have are on Tahoe yet &#8212;&nbsp;but it looks like I agree with him. Strange feeling reading this, like finding out at the gate that the plane you&#8217;re about to board as a new type of airplane seat that has an average rating of 2 out of 5.</p></li><li><p>&#8220;<a href="https://www.youtube.com/watch?v=5ufTertgtK4">You&#8217;re not that guy, Pal</a>.&#8221;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Q3eB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Q3eB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 424w, https://substackcdn.com/image/fetch/$s_!Q3eB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 848w, https://substackcdn.com/image/fetch/$s_!Q3eB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 1272w, https://substackcdn.com/image/fetch/$s_!Q3eB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Q3eB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif" width="968" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3cbe9e25-2990-4032-afc1-1da045c15c25.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:968,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:138902,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/184141185?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Q3eB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 424w, https://substackcdn.com/image/fetch/$s_!Q3eB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 848w, https://substackcdn.com/image/fetch/$s_!Q3eB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 1272w, https://substackcdn.com/image/fetch/$s_!Q3eB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cbe9e25-2990-4032-afc1-1da045c15c25.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you knew the real price of these tokens, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #68]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-68</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-68</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sat, 03 Jan 2026 15:16:01 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/389b8c4c-8abd-4114-97ce-3c43d5b328d6_1200x896.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>For more than 15 years I thought that I loved writing code, that I loved typing out code by hand, that I loved the &#8220;cadence of typing&#8221;, as Gary Bernhardt once called it, when sitting in front of my editor and my fingers click-clacking on my keyboard.</p><p>Now, I&#8217;m not so sure anymore.<br><br>2025 was the year in which I deeply reconsidered my relationship to programming. In previous years I had the occasional &#8220;should I become a Lisp guy?&#8221;, sure, but not the &#8220;do I even like typing out code?&#8221; from last year.</p><p>What I learned over the course of the year is that typing out code by hand now frustrates me. It frustrates me in the same way that filling out a printed form by hand frustrates me. Writing my name and middle name and last name and my street address and my zip code in capital letters with this stupid pencil when all of this could&#8217;ve been done by a computer, god, why do I have to do this, why do you punish me? This is so stupid, so laborious, this shouldn&#8217;t exist. I once considered not taking the 50 Euros of reimbursement that Deutsche Bahn offered after a train was delayed for two hours because I would have had to fill out a form by hand.</p><p>Amp is now faster and better at writing code than I am and whenever I do have to go in and type some code it feels like I&#8217;m pulling out the sewing needle after the sewing machine broke down, like hammering nails by hand after the nail gun&#8217;s battery died.</p><p>And yet it was fun! It <em>was </em>fun to write code by hand, for many, many years, and when it stopped being fun I was sad. Do I even love programming and building software if the actual writing of code is now a nuisance?</p><p>And the sadness went away when I found my answer to that question. Learning new things, making computers do things, making computers do things in new and fascinating and previously thought impossible ways, sharing what I built, sharing excitement, learning from others, understanding more of the world by putting something and myself out there and seeing how it resonates &#8212; that, I realized, is what actually makes me get up in the morning, not the typing, and all of that is still there.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vfLR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vfLR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 424w, https://substackcdn.com/image/fetch/$s_!vfLR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 848w, https://substackcdn.com/image/fetch/$s_!vfLR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 1272w, https://substackcdn.com/image/fetch/$s_!vfLR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vfLR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif" width="939" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:939,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:134842,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/183142277?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vfLR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 424w, https://substackcdn.com/image/fetch/$s_!vfLR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 848w, https://substackcdn.com/image/fetch/$s_!vfLR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 1272w, https://substackcdn.com/image/fetch/$s_!vfLR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a4b7e78-7eac-4404-bf94-bc353b2ca017.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>One of the best things I&#8217;ve read in the past few weeks: <a href="https://www.smithsonianmag.com/arts-culture/two-years-cormac-mccarthys-death-rare-access-to-personal-library-reveals-man-behind-myth-180987150/">Two Years After Cormac McCarthy&#8217;s Death, Rare Access to His Personal Library Reveals the Man Behind the Myth</a>. I&#8217;ve only ever read Blood Meridian and All the Pretty Horses by McCarthy, but became fascinated by McCarthy, read his Wikipedia article many times and, wow, does this article deepen the fascination. I mean: &#8220;Trying to take it all in, I felt both fascinated and overwhelmed. It seemed almost inconceivable that an author who produced 12 novels, two plays and five screenplays had also found the time, energy and brainpower to master architecture, woodworking, stonemasonry and a wide range of intellectual disciplines. Some of his math books were nearly all equations.&#8221; And this part made me really happy: &#8220;When I asked Dennis about his brother&#8217;s reputation as a recluse, he said it was totally inaccurate. &#8216;He was very sociable and could get along with anybody. Well, almost anybody. He didn&#8217;t suffer fools gladly, or people who rushed up to him gushing about his books. But he had a lot of friends, and he loved dining and conversation, and five-hour lunches that sometimes turned into ten-hour lunches.&#8217;&#8221;</p></li><li><p><a href="https://tidyfirst.substack.com/p/party-of-one-for-code-review">Kent Beck on the changing context around code reviews</a>. I fully agree with him that the old process was already breaking: &#8220;The theory was synchronous-ish collaboration. The practice was PRs sitting for days while context decayed. Reviewers skimming because they had their own work to do. &#8216;LGTM&#8217; culture&#8212;rubber stamping dressed up as process. [&#8230;] The feedback loop got too slow to catch the things it was supposed to catch. By the time someone noticed a structural problem, three more features had been built on top of it. This isn&#8217;t a criticism of any particular team. It&#8217;s a recognition that the economics were already strained, the incentives skewed.&#8221; It took working at Zed for me and pairing instead of asynchronous code reviews to see it, though. And I very much agree with Beck on all the points he makes after that analysis. Things are changing and all the tooling around code reviews is built on the assumption that the code was written by a human, that it took a lot of time, that it took a lot of effort, that it would be painful to reorder the commits, that it would be demotivating having to redo the whole change, that the change is is very <em>valuable</em>. But what if it wasn&#8217;t? What if it wasn&#8217;t written by a human and what if it&#8217;s just one of, say, give proposed changes that all try to do the same thing, because you started five agents and raced them against each other? What if we don&#8217;t have to worry about how often someone or something would have to redo a contribution? What if we don&#8217;t have to worry about in which order they produced which lines and can change that? We&#8217;ve always treated auto-generated code different from typed-out code, is now the time to treat agent-generated PRs and commits different? What would tooling look like then?</p></li><li><p>Chris Loy <a href="https://chrisloy.dev/post/2025/12/30/the-rise-of-industrial-software">on the rise of industrial software</a>. The analysis is spot on: &#8220;Traditionally, software has been expensive to produce, with expense driven largely by the labour costs of a highly skilled and specialised workforce. This workforce has also constituted a bottleneck for the possible scale of production, making software a valuable commodity to produce effectively.&#8221; And now, with AI the &#8220;first order effect of this change is a disruption in the supply chain of high quality, working products. Labour is disintermediated, barriers to entry are lowered, competition rises, and rate of change accelerates. All of these effects are starting to be in evidence today, with the traditional software industry grappling with the ramifications.&#8221; I think this is happening, 100%, and I also think that most people who disagree are only thinking about the 1% of software, about the 1% of software engineers, but not about the industry, which has been held up <a href="https://davegriffith.substack.com/p/software-development-in-the-time">$150/hour</a> (&#8220;the labour costs of a highly skilled and specialised workforce&#8221;). What I don&#8217;t agree with is the negative view of industralisation. There&#8217;s too many mentions of &#8220;slop&#8221; and &#8220;cheap&#8221; in a negative sense. But industrialisation also gave us cheap calories, and fridges, and medicine, and transportation, and to address his point directly: I think paperbacks are great! I only bought paperbacks as a teenager because I couldn&#8217;t afford hard-cover books.</p></li><li><p><a href="https://x.com/levie/status/2004654686629163154/">Aaron Levie on the same point</a>: &#8220;Jevons paradox is coming to knowledge work. By making it far cheaper to take on any type of task that we can possibly imagine, we&#8217;re ultimately going to be doing far more. The vast majority of AI tokens in the future will be used on things we don't even do today as workers.&#8221;</p></li><li><p>Paul Dix, CTO of InfluxDB, <a href="https://x.com/pauldix/status/2006423514446749965">on how 2026 will be a pivotal year for software engineering</a>: &#8220;once coding speed jumps, everything around it becomes the constraint. Your throughput gets capped by whatever is slowest&#8212;clarifying requirements, reviewing changes, validating correctness and performance, getting to production safely, and operating what you shipped. In 2026, the great engineering divergence will be determined by who raises that ceiling end-to-end.&#8221; Highly recommend reading it. I agree with everything here. </p></li><li><p>I always enjoy reading Fogus&#8217; end-of-year lists and this one, in particular, contained a lot of good stuff: <a href="https://blog.fogus.me/2025/12/23/the-best-things-and-stuff-of-2025.html">The Best Things and Stuff of 2025</a>. Quite a few of the things he&#8217;s linked to have made it into this list here, but there&#8217;s a lot more in the post. In fact, I saved the post for this issue even before I made it to the very smart, very true, very thought-provoking paragraph on LLMs at the end: &#8220;I&#8217;ve had zero success leveraging it in my work maintaining and evolving Clojure. For problem formation in the face of novelty, LLMs have been more frustrating than helpful and the little gains that I&#8217;ve found were in the very early phases of problem solving requiring a bare minimum of experimental code. [&#8230;] In my work, the bottleneck is absolutely not the code.&#8221; I&#8217;m glad that he doesn&#8217;t fall into the trap that seemingly caught a lot of other programmers and declare that, well, I am a programmer and it can&#8217;t help me, so everybody else who is a programmer must also do the same things I do and LLMs can&#8217;t help them either. And the bit on LLMs failing as Socratic partners is spot-on.</p></li><li><p>And here&#8217;s Rich Hickey himself on AI: &#8220;<a href="https://gist.github.com/richhickey/ea94e3741ff0a4e3af55b9fe6287887f">When did we stop considering things failures that create more problems than they solve?</a>&#8221; I&#8217;m not sure whether I agree with parts of it, but it also seems like Rich Hickey and I have very different views of the world and I&#8217;m glad I read this and I think you should too.</p></li><li><p>Solidly in the Curiosity column:<a href="https://www.theocharis.dev/blog/kidnapped-by-deutsche-bahn/"> I Was Kidnapped by Deutsche Bahn and All I Got Was 1.50 EUR</a>. One hell of a ride. Read through the <a href="https://news.ycombinator.com/item?id=46419970">HackerNews comments</a> too, there&#8217;s more anecdotes in there. I&#8217;ll save mine, I&#8217;m in too good of a mood today.</p></li><li><p>&#8220;Google hired Hans-J. Boehm, of the &#8216;Boehm garbage collector&#8217; fame. They needed an elite coder to fix garbage collection and concurrent programming. He led the effort to define C++ shared variable semantics. <a href="https://chadnauseam.com/coding/random/calculator-app">But then they gave him an impossible task: write a calculator app</a>.&#8221; This article made the rounds in February 2025 but I had never read it. Now I did and I&#8217;m very, very glad about that. Amazing.</p></li><li><p>This was the first Christmas Day I can remember on which we didn&#8217;t have any appointments or people to visit or places to be and so while the kids played with their presents, so I sat down, opened up this list, <a href="https://www.newyorker.com/culture/2025-in-review/the-top-twenty-five-new-yorker-stories-of-2025">The Top Twenty-five New Yorker Stories of 2025</a>, and read five or six of them.</p></li><li><p><a href="https://www.newyorker.com/magazine/2025/01/13/why-is-the-american-diet-so-deadly">This one</a>, from the list, was great and finally made me understand the whole idea of &#8220;ultra-processed foods&#8221; (a term I&#8217;ve read and read about many, many times.)</p></li><li><p>Here&#8217;s another one from the same list that I loved: <a href="https://www.newyorker.com/magazine/2025/01/20/lorne-michaels-profile">the New Yorker profile of Lorne Michaels</a>. It has <em>so much</em> in it. Yes, it&#8217;s a profile, but, man, it does inspire thoughts about creativity, and comedy, and management, and working with other people, and working with other creative people on the same thing, and processes and decision making,&#8230; It&#8217;s just very good.</p></li><li><p>This one wasn&#8217;t on the list, it&#8217;s from 2014: <a href="https://www.newyorker.com/news/daily-comment/help-know-history">Does It Help to Know History?</a> I really don&#8217;t know why, but somehow knowing that it&#8217;s from 2014 made reading it even better. &#8220;But the best argument for reading history is not that it will show us the right thing to do in one case or the other, but rather that it will show us why even doing the right thing rarely works out. The advantage of having a historical sense is not that it will lead you to some quarry of instructions, the way that Superman can regularly return to the Fortress of Solitude to get instructions from his dad, but that it will teach you that no such crystal cave exists. What history generally &#8216;teaches&#8217; is how hard it is for anyone to control it, including the people who think they&#8217;re making it.&#8221; (Anecdote: <a href="https://x.com/thorstenball/status/2004256635129418106">I wrote a tweet about this article</a> in roughly 20 seconds and it ended up being three words and then, while I was sleeping, something happened and I woke up to the tweet having five thousand likes and then Grimes retweeted it and then I muted it and then the whole Internet left weird comments on it and now it has twelve thousands likes and one point two million views. What the fuck.)</p></li><li><p>This also wasn&#8217;t on the list, but hey, it has my vote to be: <a href="https://www.newyorker.com/culture/the-weekend-essay/the-real-housewives-of-moscow">The Real Housewives of Moscow</a>. </p></li><li><p><a href="https://mergiraf.org/">Mergiraf</a> is a tool to help with merge conflicts, which is interesting, but, dude, man, click on that link and look at those comics. It&#8217;s so absurd &#8212;&nbsp;fantastic.</p></li><li><p>Great: <a href="https://andreasfragner.com/writing/three-ways-to-solve-problems">Three ways to solve problems</a>. </p></li><li><p><a href="https://www.scd31.com/posts/programming-on-the-subway">I Program on the Subway</a>. As someone who essentially wrote two books while on the train, I enjoyed this a lot. Yes, even though I&#8217;d never even consider affixing keyboards to my pants.</p></li><li><p>I had a very good time reading this and pasting snippets into ChatGPT and asking it follow-up and side-questions: <a href="https://www.snellman.net/blog/archive/2016-12-13-ring-buffers/">I&#8217;ve been writing ring buffers wrong all these years</a>. (Then, the next day, in a restaurant, I played <a href="https://en.wikipedia.org/wiki/Hangman_(game)">Hangman</a> with my 8-year-old daughter and when it was my turn to guess, I thought, hey why not, and took a photo and asked ChatGPT, just to see whether it could find all the 5 missing letters. And you know what GPT-5.2 Thinking did? It proudly proclaimed that yes, it can solve this, because what we&#8217;re looking at &#8212; these letters and lines &#8212;&nbsp;is clearly a diagram showing a ring buffer! So much for ChatGPT&#8217;s memory system, eh?)</p></li><li><p>&#8220;In the four passages above, the first and fourth were mine; the second and third were A.I.-generated. Dana described an A.I.-produced line that seemed hokey to me as &#8216;especially your style.&#8217; Another reader referred to an A.I.-generated quip as &#8216;your distinct style of wry humor.&#8217; I also got plenty of insults about passages that were legitimately mine: &#8216;verbose and heavy on clich&#233;,&#8217; &#8216;weirdly elliptical,&#8217; &#8216;sounds like a book report,&#8217; &#8216;a lot of extra commas.&#8217; Most hated the passage about writing for an audience; only one attributed it to me. Karan called it &#8216;some hive mind&#8217;s &#8220;idea&#8221; of literature.&#8217; Surprisingly, I wasn&#8217;t hurt that my friends and fans couldn&#8217;t tell the difference. [...] Still, I couldn&#8217;t avoid the truth. Seven excellent readers had mistaken an A.I. model for me. Seven excellent readers had mistaken me for an A.I. model.&#8221; Even a year ago, I&#8217;d say, this was unimaginable for everyone except the strongest believers, wasn&#8217;t it? And now <a href="https://www.newyorker.com/culture/the-weekend-essay/what-if-readers-like-ai-generated-fiction">this is in The New Yorker</a>. The whole thing is excellent and thought-provoking, especially because it&#8217;s much more unpredictable than you would assume.</p></li><li><p><a href="https://newaesthetics.art/">A Call for New Aesthetics</a> by Patrick Collison and Tyler Cowen.</p></li><li><p><a href="https://austinhenley.com/blog/canceledbookdeal.html">Austin Henley on cancelling the deal he&#8217;s had with a publisher to write a book</a> that&#8217;s &#8220;a collection of tutorials on building these projects, each self-contained and teach fundamental computing concepts along the way&#8221;, where &#8220;projects&#8221; means &#8220;classic programming projects that were relevant 30 years ago and will be just as fun 30 years from now&#8221;, like <a href="https://austinhenley.com/blog/challengingprojects.html">this list that Austin made</a> and that I&#8217;ve referred to quite a few times. As someone who&#8217;s self-published and who has an allergic reaction to the idea of working with a traditional publisher: quite the interesting post. And as someone who&#8217;s thought about releasing a 10-year anniversary editions of his book this year, this paragraph resonates with something I&#8217;ve been thinking about: &#8220;There was also a daunting voice in the back of my head that LLMs have eliminated the need for books like this. Why buy this book when ChatGPT can generate the same style of tutorial for ANY project that is customized to you?&#8221;</p></li><li><p>Samuel Albanie&#8217;s <a href="https://samuelalbanie.substack.com/p/reflections-on-2025">Reflections on 2025</a>. He&#8217;s the Evals Lead for Gemini at DeepMind and, apparently, a very entertaining writer. This was great. For example, this sentence about the bitter lesson, after his explanation of the bitter lesson and how it relates to his work and how it made a lot of the things he previously did invalid, is fantastic and cherry-on-top-y: &#8220;The lesson is bitter because it means our most sophisticated ideas often fail to compound.&#8221; And then there&#8217;s this bit, where he compares his experience of being an assistant professor and grading papers to now doing evals: &#8220;The job is effectively the same, except the student has read the entire internet, hallucinates with the confidence of a mid-tier management consultant, and I cannot deduct marks for illegible handwriting. The comfort of my simple handwritten rubrics is behind me. Instead, I find myself staring at a proposed refactor of a distributed training loop, trying to calibrate my skepticism. Is this a brilliant optimization, or a subtle race condition that would only manifest seventy-two hours after deployment, likely on a Sunday evening?&#8221; Good writing. Very good.</p></li><li><p>&#8220;every year i make new years resolutions, the generic fitness, discipline, reading, etc. but really, i can and will trade all of those to be truly, completely, absolutely creatively consumed by something. <a href="https://x.com/willdepue/status/2005775306943271058">there is nothing better</a>&#8221;</p></li><li><p>In case your New Year&#8217;s resolutions include checking out Jujutsu and being consumed by it, this series by Andre Arko is a good, short intro: <a href="https://andre.arko.net/2025/09/28/jj-part-1-what-is-it/">part 1</a>, <a href="https://andre.arko.net/2025/10/02/jj-part-2-commands/">part 2</a>, <a href="https://andre.arko.net/2025/10/12/jj-part-3-workflows/">part 3</a>, <a href="https://andre.arko.net/2025/10/15/jj-part-4-configuration/">part 4</a>. And then here are &#8220;<a href="https://andre.arko.net/2025/09/28/stupid-jj-tricks/">stupid jj tricks</a>&#8221; and here&#8217;s <a href="https://andre.arko.net/2025/06/20/a-jj-prompt-for-powerlevel10k/">a very sophisticated jj prompt for the shell</a> that I&#8217;m likely going to steal by pointing Amp at the post and my zshrc. After reading through these posts, I also ended up re-reading <a href="https://docs.jj-vcs.dev/latest/github/">this official primer on working with jj and GitHub</a>, which I find very good, and I also ended up reading through <a href="https://gist.github.com/thoughtpolice/8f2fd36ae17cd11b8e7bd93a70e31ad6">this jj configuration</a>, which contains some very interesting bits.</p></li><li><p><a href="https://www.fieggen.com/shoelace/knots.htm">Ian&#8217;s Shoelace Site</a> made the rounds again and let me tell you something: if you haven&#8217;t, click through it! You <em>must!</em> This is the Internet at its best. This will make you smile, I promise.</p></li><li><p><a href="https://what-dan-read.com/">what-dan-read.com</a> &#8212; Impressive.</p></li><li><p>I managed to catch up at least a little bit with Dan Hollick&#8217;s Making Software book and read <a href="https://www.makingsoftware.com/chapters/shaders">the chapter on shaders</a>. Fantastic stuff. The illustrations, the design, the sound effects &#8212; go look at it and you&#8217;ll end up reading. And while I did that, I kept thinking that it would be nice to play around with some shaders. So I asked Amp to create a shader playground with WebGPU for me and it did and it took 2min and then I had another browser tab open and played around with the concepts explained in the chapter. Wild times. Here&#8217;s <a href="https://thorstenball.com/shader-playground">the playground</a> in case you too want to click around.</p></li><li><p>Will Larson on &#8220;<a href="https://lethain.com/agents-coordinators/">Code-driven vs LLM-driven workflows</a>&#8221;. Rule of thumb, I&#8217;d say: you want your control flow to be deterministic and you want the fuzzy parts to be fuzzy. Don&#8217;t make the control flow fuzzy.</p></li><li><p>I personally found <a href="https://x.com/ivanhzhao/status/2003192654545539400">this post by Ivan Zhao</a>, CEO of Notion, very, very interesting. Yes, long-form Twitter posts have a certain patina to them that&#8217;s hard to overcome, especially when paired with prediciations of the future, <em>but</em> it does reveal something about Notion&#8217;s strategy, does it not? It reads to me like they (or Zhao, at least) see themselves as the tool for knowledge workers in a future in which AI glues everything together. I wonder what Anthropic would say to that. The other interesting perspective is his view on how AI will change business. There&#8217;s been many voices saying that the future belongs to the 1-person startup, which is now feasible thanks to AI, but here&#8217;s Zhao saying that, nuh-uh, actually, we can now build <em>even larger</em> corporations. </p></li><li><p>Peter Steinberger&#8217;s <a href="https://steipete.me/posts/2025/shipping-at-inference-speed">Shipping at Inference-Speed</a> is a great snapshot of what one could do with agents at the end of 2025. And it&#8217;s still funny to me that <a href="https://ampcode.com/news/oracle">the oracle</a> as a name and idea was adopted by him.</p></li><li><p>Dan Wang&#8217;s <a href="https://danwang.co/2025-letter/">2025 letter</a>. It&#8217;s very long and I&#8217;ve never read one of his annual letters before so I didn&#8217;t know what to expect, but it pulled me right in by asking: &#8220;Which of the tech titans are funny?&#8221; But the letter is, of course, about a lot more: China, US, China vs. US, Silicon Valley, manufacturing, AI, Europe and its future or non-future, books. I read the whole thing yesterday evening and it&#8217;s great, yes, but the analysis of Europe&#8217;s state (which I can&#8217;t disagree with) is depressing. One for the Curiosity, not the Joy column. This section here, though, I&#8217;ll hopefully always remember fondly, I love that picture: &#8220;Alexander Grothendieck used an analogy of a walnut to describe different approaches to mathematics, which might also apply to technology development. Some mathematicians crack their problems by finding the right spot to insert a chisel before making a clean strike. Grothendieck described his own approach as coming up with general solutions, as if he were immersing the walnut in a bath for such a long time that mere hand pressure would be enough to open it.&#8221; Reminds me of Kent Beck&#8217;s &#8220;make the change easy, then make the change&#8221;, reminds me of some of the best engineer&#8217;s I worked with who did so many small, easy-looking things in preparation for the big thing that once they were ready to tackle it, the big thing no longer looked big, but just as small as all the other things they did before. Reminds me of&#8230;</p></li><li><p>&#8230; Aaron Patterson wrote down his answer to: <a href="https://tenderlovemaking.com/2025/12/29/can-bundler-be-as-fast-as-uv/">Can Bundler Be as Fast as uv?</a> The whole post is great. This is, I&#8217;d say, thoughtful engineering. The fake Gemserver he built to test the hypothesis for parallel downloads? He soaked that walnut there, didn&#8217;t he?</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!R7p5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R7p5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 424w, https://substackcdn.com/image/fetch/$s_!R7p5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 848w, https://substackcdn.com/image/fetch/$s_!R7p5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 1272w, https://substackcdn.com/image/fetch/$s_!R7p5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R7p5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif" width="966" height="33" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9b3db75-0571-46de-9070-4ae7c951ed58.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:33,&quot;width&quot;:966,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:130878,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/183142277?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!R7p5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 424w, https://substackcdn.com/image/fetch/$s_!R7p5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 848w, https://substackcdn.com/image/fetch/$s_!R7p5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 1272w, https://substackcdn.com/image/fetch/$s_!R7p5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9b3db75-0571-46de-9070-4ae7c951ed58.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you are also thinking about whether you love the typing or something else, you should subscribe, this year is going to be something:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #67]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-67</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-67</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 21 Dec 2025 07:01:07 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/94eb7b05-11ab-4227-a175-166fb20573f4_2520x1836.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Last issue of the year, let&#8217;s do this!</p><p>This week, <a href="https://www.ryancarson.com/">Ryan</a> and I got to interview <a href="https://de.wikipedia.org/wiki/David_Heinemeier_Hansson">DHH</a>. It&#8217;s very rare that I get nervous before an online conversation, but this was one of those times. I mean, that&#8217;s the guy who made Rails, man! I wouldn&#8217;t be here without Rails. Rails is what I did for the first seven years of my career. Rails is the reason <em>why</em> I have a career. I read every book he and Jason have ever written, of course, and 37signals has had as deep an impression as a company can have on probably anybody who&#8217;s worked in a startup between 2008 and 2015.</p><p>&#8230;and then we had a great conversation. It&#8217;s been a few days, and different parts of it keep popping back into my head. David said quite a few things that I now feel I <em>have</em> to share.&nbsp;Some things about marketing that resonate with what we&#8217;ve been talking about internally; some things I want the world to hear; some things that were funny; other things that were very fascinating (he said he still writes 95% of his code by hand); and the rant on cookie banners that I want politicians to hear.</p><p>But here&#8217;s something that I want to leave you with, in this last edition of the year, this year that brought and announced more change to this profession than any other year I&#8217;ve lived through as a working software developer. Here&#8217;s something that David said that sums up why I&#8217;m excited and so curious about where all of this is going, something that I hope makes you feel something positive too:</p><p>&#8220;Where does the excitement come from? First and foremost, I love computers and I love to see computers do new things. It&#8217;s actually remarkable to me how many people who work in tech don&#8217;t particularly like computers. Yes, even programmers who have to interact with them every day and make these computers dance, not all of them like computers. I <em>love</em> computers. I love computers just for the&#8212; <em>sheer machine of it</em>. I&#8217;m not just trying to be instrumental about it. I&#8217;m not just trying to use computers to accomplish something. There&#8217;s a whole class of people who view the computer just as a tool to get somewhere. No, no, no. For me, it&#8217;s much deeper. I just love the computer itself and I love to see the computer do new things. And this is the most exciting new thing that computers have been doing, probably in my lifetime. Or at least it&#8217;s on level with the network-connected computer. Yes.&#8221;</p><p>The computer can now do new things.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ji4V!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ji4V!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 424w, https://substackcdn.com/image/fetch/$s_!Ji4V!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 848w, https://substackcdn.com/image/fetch/$s_!Ji4V!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 1272w, https://substackcdn.com/image/fetch/$s_!Ji4V!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ji4V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif" width="952" height="41" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:41,&quot;width&quot;:952,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:159510,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/182106908?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ji4V!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 424w, https://substackcdn.com/image/fetch/$s_!Ji4V!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 848w, https://substackcdn.com/image/fetch/$s_!Ji4V!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 1272w, https://substackcdn.com/image/fetch/$s_!Ji4V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde733e8a-b9c8-406e-80c6-1ebe4d9f90bc.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>My teammate Tim wrote about how he ported his TUI framework from Zig to TypeScript and how, in the process of porting it, he noticed that he&#8217;s getting in the way of the agent, slowing it down and costing more tokens. So he took his hands off the wheel and what we ended up with is this: <a href="https://ampcode.com/by-an-agent-for-an-agent">A Codebase by an Agent for an Agent</a>. I&#8217;ve shared this story quite a few times in person. I&#8217;m really happy it&#8217;s out now, so we have proof: this is an world-class terminal expert and programmer, letting an agent write 90% of the code, and ending up with something that is <em>really</em>, really good. (Also, side note: I contributed the images and, man, it&#8217;s so fun to put stuff like this out into the world.)</p></li><li><p>This was fantastic: Jeff Dean and Sanjay Ghemawat with <a href="https://abseil.io/fast/hints.html">Performance Hints</a>. When I opened it I thought I&#8217;d skim it, but then I read the whole thing, looked at a lot of the examples, asked ChatGPT some questions along with screenshots. The writing is clear and precise and simple, the section with the napkin math is impressive, the emoji map optimization is what made me open ChatGPT, and then at the end there, in the <em>CLs that demonstrate multiple techniques </em>section, there&#8217;s this header <em>3.3X performance in index serving speed! </em>and when you click on it you&#8217;ll read that they &#8220;found a number of performance issues when planning a switch from on-disk to in-memory index serving in 2001. This change fixed many of these problems and took us from 150 to over 500 in-memory queries per second (for a 2 GB in-memory index on dual processor Pentium III machine)&#8221; and then you realize what an impressive cathedral of software engineering Google&#8217;s infrastructure is. Click here for a good time, I&#8217;m telling you.</p></li><li><p>The TUI renaissance isn&#8217;t over: <a href="https://willmcgugan.github.io/toad-released/">Will McGugan just released Toad</a>, a &#8220;unified experience for AI in the terminal.&#8221; Taking inspiration from Jupyter notebooks is very smart and I love those little UI interactions he built. Good stuff.</p></li><li><p>The title is &#8220;<a href="https://ngrok.com/blog/prompt-caching/">Prompt caching: 10x cheaper LLM tokens, but how?</a>&#8221; so you might think that this is about prompt caching, but, haha, that&#8217;s silly. Listen, this is about <em>everything</em>. It&#8217;s one of the best all-in-one explainers of how transformers work that I&#8217;ve come across. It&#8217;s by <a href="https://samwho.dev/">Sam Rose</a>, who&#8217;s very good at visual explanations, and here he does a full explanation of how text goes into an LLM and text comes out the other end, including visuals, pseudo-code, in-depth explanations. It&#8217;s very, very good. If you don&#8217;t know how a transformer works, do yourself a favor and read this. If you do know how it works, look at this and smile at the visualizations.</p></li><li><p>Imagine you&#8217;re holding two rocks. One has written on it: &#8220;terminals can display images now, thanks to the <a href="https://sw.kovidgoyal.net/kitty/graphics-protocol/">kitty&#8217;s terminal graphics protocol</a>&#8221;. The other: &#8220;when you think about it, a GUI framework does nothing but create images and display them, right?&#8221; Now the question is: what happens if you smash those two rocks together? This: &#8220;<a href="https://github.com/cryptocode/dvui?tab=readme-ov-file">DVTUI</a>&#8221; (note the quotes!), which takes a GUI framework (DVUI), gets it to save PNGs instead of rendering them to the screen, and then uses a TUI framework (libvaxis) to render those images in the terminal. To quote: &#8220;All that happens every single frame. And yet it works.&#8221;</p></li><li><p>As you know, I&#8217;m a sucker for lists like this one: Tom Whitwell&#8217;s <a href="https://medium.com/@tomwhitwell/52-things-i-learned-in-2025-edeca7e3fdd8">52 things I learned in 2025</a>. Wonderful.</p></li><li><p>&#8230; and it brought me to this: <a href="https://kupajo.com/write-to-escape-your-default-setting/">write to escape your default setting</a>. &#8220;Writing forces you to tidy that mental clutter. To articulate things with a level of context and coherence the mind alone can&#8217;t achieve.&#8221; Yes. Now, in times of LLMs, it&#8217;s probably more apparent than ever before that writing (real writing; writing <em>you do</em>) is thinking.</p></li><li><p><a href="https://friendlybit.com/python/writing-justhtml-with-coding-agents/">How I wrote JustHTML using coding agents</a>: &#8220;After writing the parser, I still don&#8217;t know HTML5 properly. The agent wrote it for me. I guided it when it came to API design and corrected bad decisions at the high level, but it did ALL of the gruntwork and wrote all of the code.&#8221; I bet there&#8217;s a lot of people who read this and think &#8220;<em>ha! so he doesn&#8217;t know HTML5 still!</em>&#8221; And yet I wonder: was that the goal? It&#8217;s a very good post. A very calm, practical post, but that raises a fundamental question: JustHTML is now &#8220;3,000 lines of Python with 8,500+ tests passing&#8221; and &#8220;passes 100% of the html5lib test suite, has zero dependencies, and includes a CSS selector query API&#8221; &#8212;&nbsp;how many more dependencies could we turn into that now?</p></li><li><p><a href="https://martin.kleppmann.com/2025/12/08/ai-formal-verification.html">Martin Kleppmann</a>: &#8220;I find it exciting to think that we could just specify in a high-level, declarative way the properties that we want some piece of code to have, and then to vibe code the implementation along with a proof that it satisfies the specification. That would totally change the nature of software development: we wouldn&#8217;t even need to bother looking at the AI-generated code any more, just like we don&#8217;t bother looking at the machine code generated by a compiler.&#8221; </p></li><li><p>&#8220;<a href="https://x.com/FedeItaliano76/status/2000953954763727285">The perfection of snow in the paintings of Danish artist Peder M&#248;rk M&#248;nsted</a>.&#8221;</p></li><li><p>Stripe Press: <a href="https://www.stripe.press/tacit">Tacit</a>. &#8220;The mechanism for developing tacit knowledge is straightforward but slow: repeated practice that gradually moves skills from conscious effort to automatic execution. The mechanism for transmitting it is even slower: apprenticeship, where a learner works alongside someone experienced, observing and imitating until their own judgment develops. This is why tacit knowledge often concentrates in lineages, unbroken chains of practitioners passing expertise to the next generation. [&#8230;] AI has elevated the distinction between what is tacit and what is not. Language models can summarize and automate, but when they attempt to create something that carries the signature of human craft, the result is often flat.&#8221; In the<a href="https://x.com/_TamaraWinter/status/2001725441368035349"> words of Tamara Winter</a>: Tacit is a series of mini-documentaries that are &#8220; vignettes of craftspeople who provide a pretty compelling answer to the question, &#8216;after AI, does mastery still matter?&#8217;&#8221;</p></li><li><p>I need to try this: <a href="https://x.com/geoffreylitt/status/1991909304085987366">Geoffrey Litt&#8217;s JIT Guide Workflow</a>.</p></li><li><p>This <a href="https://blog.jakobschwichtenberg.com/p/slowness-is-a-virtue">fantastic post by Jakob Schwichtenberg </a>shifted something in my head: &#8220;Our very definition of intelligence encodes the bias toward speed. The modern definition of intelligence is extremely narrow. It simply describes the speed at which you can solve well-defined problems. Consider this: if you get access to an IQ test weeks in advance, you could slowly work through all the problems and memorize the solutions. The test would then score you as a genius. This reveals what IQ tests actually measure. It&#8217;s not whether you can solve problems, but how fast you solve them.&#8221; And then: &#8220;In fact, it&#8217;s not hard to imagine how raw processing speed can be counterproductive. People who excel at quickly solving well-defined problems tend to gravitate toward... well-defined problems. They choose what to work on based on what they&#8217;re good at, not necessarily what&#8217;s worth doing.&#8221;</p></li><li><p>&#8230; but then there&#8217;s James Somers saying &#8220;<a href="https://jsomers.net/blog/speed-matters">Speed matters: Why working quickly is more important than it seems</a>.&#8221; And <a href="https://nat.org/">Nat Friedman is saying</a>: &#8220;It&#8217;s important to do things fast. You learn more per unit time because you make contact with reality more frequently. Going fast makes you focus on what&#8217;s important; there&#8217;s no time for bullshit.&#8221; And <a href="https://patrickcollison.com/fast">Patrick Collison is collecting fast projects</a>. Then here I am, wondering, and possibly assuring myself: yeah, we&#8217;re not all doing the same things, are we?</p></li><li><p>antirez&#8217;<a href="https://antirez.com/news/157"> Reflections on AI at the end of 2025</a>. &#8220;The fundamental challenge in AI for the next 20 years is avoiding extinction.&#8221;</p></li><li><p>Yes, this is in The New Yorker: &#8220;I trust in TextEdit. It doesn&#8217;t redesign its interface without warning, the way Spotify does; it doesn&#8217;t hawk new features, and it doesn&#8217;t demand I update the app every other week, as Google Chrome does. I&#8217;ve tried out other software for keeping track of my random thoughts and ideas in progress&#8212;the personal note-storage app Evernote; the task-management board Trello; the collaborative digital workspace Notion, which can store and share company information. Each encourages you to adapt to a certain philosophy of organization, with its own formats and filing systems. But nothing has served me better than the brute simplicity of TextEdit, which doesn&#8217;t try to help you at all with the process of thinking.&#8221; Great title too: <a href="https://www.newyorker.com/culture/infinite-scroll/textedit-and-the-relief-of-simple-software">TextEdit and the Relief of Simple Software</a>. </p></li><li><p>Also The New Yorker, on <a href="https://www.newyorker.com/culture/the-lede/performative-reading">performative reading</a>, and reading, and books, and social media: &#8220;Reading a book is antithetical to scrolling; online platforms cannot replicate the slow, patient, and complex experience of reading a weighty novel. [...] The only way that an internet mind can understand a person reading a certain kind of book in public is through the prism of how it would appear on a feed: as a grotesquely performative posture, a false and self-flattering manipulation, or a desperate attempt to attract a romantic partner.&#8221;</p></li><li><p>LLMs and physical laws? <a href="https://arxiv.org/abs/2512.10047">Maybe</a>: &#8220;The dynamics of LLM generation are quite unique. Compared to traditional rule-based programs, LLM-based generation exhibits diverse and adaptive outputs. [&#8230;] To model the dynamic behavior of LLMs, we embed the generative process of LLM within a given agent framework, viewing it as a Markov transition process in its state space. [&#8230;] Based on this model, we propose a method to measure this underlying potential function based on a least action principle. By experimentally measuring the transition probabilities between states, we statistically discover [&#8230;] To our knowledge, this is the first discovery of a macroscopic physical law in LLM generative dynamics that does not depend on specific model details.&#8221;</p></li><li><p>&#8220;&#8217;Climbing Everest solo without bottled oxygen in 1980 was the hardest thing I&#8217;ve done. I was alone up there, completely alone. I fell down a crevasse at night and almost gave up. Only because I had this fantasy - because for two years I had been pregnant with this fantasy of soloing Everest - was I able to continue.&#8217; This is <a href="https://kittymayo.substack.com/p/possessed-by-fantasy">how Messner talks about how his will was governed</a>.&#8221;</p></li><li><p>I regularly remind myself and sometimes even others of Jason Fried&#8217;s <a href="https://signalvnoise.com/posts/3124-give-it-five-minutes">Give it five minutes</a>. It&#8217;s one of the most influential things I&#8217;ve read in the past ten years. I constantly think of it and I&#8217;m convinced it&#8217;s improved my mental well-being and my connections to other people like few others things. Yes, I know how this sounds, but, I guess, an idea and a specific phrase that sticks with you can go a long way as far as life-changing is concerned. Now, all of that is just context, because what I want to actually share is this Jason Fried piece here: <a href="https://world.hey.com/jason/idea-protectionism-01ef4f59">Idea protectionism</a>. I re-found and re-read it after sharing the other Jason Fried piece and wanting to share the Jony Ive quote in <em>this</em> one and, yup, stumbled across it by chance. Lucky.</p></li><li><p><a href="https://www.reuters.com/world/china/how-china-built-its-manhattan-project-rival-west-ai-chips-2025-12-17/">Reuters reports on China&#8217;s Manhattan Project</a>. This is <em>it, </em>baby! This has it all: corporate espionage, ASML, lithography, &#8220;one veteran Chinese engineer from ASML recruited to the project was surprised to find that his generous signing bonus came with an identification card issued under a false name&#8221;, EUV systems that &#8220;are roughly the size of a school bus, and weigh 180 tons&#8221;, Germany&#8217;s Carl Zeiss AG, &#8220;networks of intermediary companies are sometimes used to mask the ultimate buyer&#8221;, &#8220;employees assigned to semiconductor teams often sleep on-site and are barred from returning home during the work week, with phone access restricted for teams handling more sensitive tasks&#8221;, and, of course, the tension at the heart of it all: &#8220;Starting in 2018, the United States began pressuring the Netherlands to block ASML from selling EUV systems to China. The restrictions expanded in 2022, when the Biden administration imposed sweeping export controls designed to cut off China&#8217;s access to advanced semiconductor technology. No EUV system has ever been sold to a customer in China, ASML told Reuters.&#8221;</p></li><li><p>I didn&#8217;t know this is a thing, this was funny: <a href="https://spectator.com/article/the-beckham-rumour-that-refuses-to-die/">the Beckham rumour that refuses to die</a>.</p></li><li><p>At work, we ended up talking about Christmas traditions and while I was explaining that where I live the magical entity that makes presents appear is called &#8220;christkind&#8221; (christ child), I was also trying to find proof on Wikipedia so I&#8217;d seem less weird and found <a href="https://en.wikipedia.org/wiki/Christmas_gift-bringer#/media/File:Christmas-gift-bringers-Europe.jpg">this map</a>. Note the filename: Christmas-gift-bringers-Europe.jpg. Great name. But now see where the green and the brown mix, in the middle of Germany? That&#8217;s where I live. So not only does one legend say it&#8217;s Baby Jesus bringing presents, it&#8217;s also that in the next town over it&#8217;s the Christmas Man. And that dude looks an awful lot like its American cousin Santa Claus, who has a lot more media appearances and higher popularity in the younger-than-10 demographic. Try to keep your story straight when you talk to a 4-year-old who keeps asking you whether she&#8217;ll get a computer for Christmas. How grand it must be to live in Iceland, where, according to that map, the <em>Christmas Lads</em> live.</p></li><li><p>&#8220;<a href="https://youtu.be/LBuwjdY9GRI?list=RDLBuwjdY9GRI&amp;t=217">This song is called Red 40. It&#8217;s about Hot Cheetos</a>.&#8221;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LRv_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LRv_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 424w, https://substackcdn.com/image/fetch/$s_!LRv_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 848w, https://substackcdn.com/image/fetch/$s_!LRv_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 1272w, https://substackcdn.com/image/fetch/$s_!LRv_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LRv_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif" width="943" height="37" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:37,&quot;width&quot;:943,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:142946,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/182106908?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LRv_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 424w, https://substackcdn.com/image/fetch/$s_!LRv_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 848w, https://substackcdn.com/image/fetch/$s_!LRv_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 1272w, https://substackcdn.com/image/fetch/$s_!LRv_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F55d23aad-a5a5-4c62-ad24-2ea86d00a341.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you also feel a bit, let&#8217;s say, joy &amp; curiosity about computers doing new things, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #66]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-66</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-66</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 14 Dec 2025 08:07:38 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/a133fa2c-a328-442e-98a7-2acc83fcfa49_2604x1790.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The number one thing that I keep thinking about these days is how to reconcile the following in my head:</p><p>Friends of mine &#8212; very experienced and very good programmers &#8212; are saying loudly and publicly and in private too that agents are useless. It&#8217;s slop, they say. It&#8217;s all just averages. No brilliance, no creativity, and half of it doesn&#8217;t work. It can&#8217;t do what I do. They point out where it failed to make an edit. Where it gave a function a weird name. Where it didn&#8217;t run the tests.</p><p>Then there&#8217;s my experience with using them. I see Amp knock out stuff that would&#8217;ve taken me days and, as a junior engineer, possibly weeks, if I had done it myself. I saw Amp built a tiny and <em>brilliant</em> renderer for box-drawing characters in my terminal emulator. It does performance optimizations, it builds very good looking animations in our TUI framework. It built <a href="https://x.com/thorstenball/status/1996155667418116110">this</a> and <a href="https://github.com/rockorager/prise">this</a> and <a href="https://x.com/thorstenball/status/1971526222661423239">this</a> with no hands on the wheel. I saw it build a one-off migration tool for our production database, carefully balancing tradeoffs here to build something that&#8217;s reliable and inspectable, but also one-off, with as little code as I would&#8217;ve written. It helped me deploy and run it and then refine it.  When it can&#8217;t find jq on a machine, it uses Python for one-liners, doesn&#8217;t matter. Yesterday I had it help me configure Home Assistant on my Raspberry Pi and I just sat there and talked to it like a true assistant.</p><p>It&#8217;s very good. Very, very, very good. So good that I&#8217;m starting to think the whole &#8220;we will all just delegate work to agents&#8221; might not be as unrealistic as it sounds like.</p><p>But then someone writes somewhere that these agents &#8220;can barely write code&#8221; and I can&#8217;t help but silently wonder: what the hell are you talking about man?</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NTQp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NTQp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 424w, https://substackcdn.com/image/fetch/$s_!NTQp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 848w, https://substackcdn.com/image/fetch/$s_!NTQp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 1272w, https://substackcdn.com/image/fetch/$s_!NTQp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NTQp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif" width="964" height="35" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/57dc8505-c468-4c62-bf6c-8b8837b911a0.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:35,&quot;width&quot;:964,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:138342,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/181450832?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NTQp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 424w, https://substackcdn.com/image/fetch/$s_!NTQp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 848w, https://substackcdn.com/image/fetch/$s_!NTQp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 1272w, https://substackcdn.com/image/fetch/$s_!NTQp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57dc8505-c468-4c62-bf6c-8b8837b911a0.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>My teammate Lewis wrote about how he does context management in Amp and how <a href="https://ampcode.com/200k-tokens-is-plenty">200k of tokens is plenty</a> if you use handoff, references, and forks. And then he also shipped the <a href="https://ampcode.com/news/thread-map">thread map</a>, which, when <a href="https://x.com/thorstenball/status/1996155667418116110">he first showed it off in Tallinn</a> a week ago, caused a whole <em>scene</em> in the room, with people saying &#8220;whoa&#8221; and &#8220;holy shit&#8221; out loud. Not kidding. People literally gathered around Lewis saying <em>ooh </em>and <em>aah</em> while showed off what he had built. That, in turn, made <em>me</em> get up and walk over and also say &#8220;holy shit, dude&#8221;. </p></li><li><p><a href="https://www.youtube.com/watch?v=fv7zZT9y5FQ">Ryan and I talked to Mckay Wrigley about Opus 4.5</a> and how we see the future of software development. It&#8217;s all happening, isn&#8217;t it.</p></li><li><p>Obie Fernandez (<em>the</em> Obie Fernandez in case you also used Rails between 2010 and 2015) on &#8220;<a href="https://obie.medium.com/what-happens-when-the-coding-becomes-the-least-interesting-part-of-the-work-ab10c213c660">what happens when the coding becomes the least interesting part of the work</a>&#8221;. This is some of the realest, truest, most experienced writing on the topic of agents taking over. I agree with nearly everything he writes here.</p></li><li><p>Related, Paul Buchheit: &#8220;It was always possible to clone software, but doing so was costly and time consuming, and the clone would need to be much cheaper, making any such venture financially non-viable. With AI, that equation is now changing.&#8221; Read <a href="https://x.com/paultoo/status/1999245292294803914?s=46">the other two paragraphs</a>.</p></li><li><p>Great: <a href="https://resonantcomputing.org/">The Resonant Computing Manifesto</a>. Before I started reading, just by name and context alone, I had assumed this it was going to be another &#8220;we have to fight the slop!&#8221; chant, but it&#8217;s not. It actually sees a chance in AI: &#8220;This is where AI provides a missing puzzle piece. Software can now respond fluidly to the context and particularity of each human&#8212;at scale. One-size-fits-all is no longer a technological or economic necessity. Where once our digital environments inevitably shaped us against our will, we can now build technology that adaptively shapes itself in service of our individual and collective aspirations. We can build resonant environments that bring out the best in every human who inhabits them.&#8221; But it&#8217;s a chance we have to take: &#8220;Regardless of which path we choose, the future of computing will be hyper-personalized. The question is whether that personalization will be in service of keeping us passively glued to screens&#8212;wading around in the shallows, stripped of agency&#8212;or whether it will enable us to direct more attention to what matters.&#8221;</p></li><li><p><a href="https://jeffhuang.com/productivity_text_file/">My productivity app is a never-ending .txt file</a>. Mine is Apple Notes.</p></li><li><p><a href="https://www.themarginalian.org/2025/10/31/hawthorne-life/">How Not to Waste Your Life</a>: &#8220;it is only, in poet Mario Benedetti&#8217;s shimmering words, when we cease sparing ourselves and start spending ourselves that we come truly alive.&#8221; When we cease sparing ourselves and start spending ourselves. And then: &#8220;Because the mind is the crucible of experience and perception, there is no greater waste of life than the waste of mind.&#8221; And then, on Hawthorne: &#8220;What fortifies the spirit to do its work in the world, be it art or activism, often appears on the surface as wasted time &#8212; the hours spent walking in a forest and watching the clouds over the city skyline and pebble-hunting on the beach, the purposeless play of the mind daydreaming and body dancing, all the while ideas and fortitudes fermenting within.&#8221; How very hard is it to live your life like that and how very easy it sounds, doesn&#8217;t it.</p></li><li><p><a href="https://abdulhamidhassan.com/post/802459222214410240/how-to-be-exceptional-at-anything">How to be exceptional at anything</a>. Alternative name: how to be someone people want to work with.</p></li><li><p><a href="https://openai.com/index/introducing-gpt-5-2/">GPT-5.2 came out</a>. A new frontier model is very interesting, of course, but this part here, in the &#8220;economically valuable tasks&#8221; section of the post, really stuck with me: &#8220;GPT&#8209;5.2 Thinking beats or ties top industry professionals on 70.9% of comparisons on GDPval knowledge work tasks, according to expert human judges. These tasks include making presentations, spreadsheets, and other artifacts. GPT&#8209;5.2 Thinking produced outputs for GDPval tasks at &gt;11x the speed and &lt;1% the cost of expert professionals, suggesting that when paired with human oversight, GPT&#8209;5.2 can help with professional work.&#8221; It&#8217;s been years since I&#8217;ve had to create a spreadsheet or a presentation for work, so it&#8217;s a bit of a blind spot for me, but all I could think was: yeah, they&#8217;re really going after office work now, just like Anthropic. </p></li><li><p>Hacker News <a href="https://news.ycombinator.com/item?id=46205632">user keepamovin used Gemini 3</a> to hallucinate the Hacker News frontpage ten years from now:<a href="https://dosaygo-studio.github.io/hn-front-page-2035/news"> Hacker News frontpage 2035</a>. It&#8217;s very good! My favorite: &#8220;Show HN: A text editor that doesn&#8217;t use AI&#8221;</p></li><li><p>That Hacker News experiment caused Andrej Karpathy to look <em>backwards</em> in time. <a href="https://karpathy.bearblog.dev/auto-grade-hn/">He built the Hacker News time capsule</a> in which GPT-5.1 grades comments from ten years ago on their prescience. </p></li><li><p>Brian Cantrill on <a href="https://rfd.shared.oxide.computer/rfd/0576">using LLMs at Oxide</a>. There&#8217;s a lot of good stuff in there, but this, I think, is my favorite distillation: &#8220;Finally, LLM-generated prose undermines a social contract of sorts: absent LLMs, it is presumed that of the reader and the writer, it is the writer that has undertaken the greater intellectual exertion. (That is, it is more work to write than to read!) For the reader, this is important: should they struggle with an idea, they can reasonably assume that the writer themselves understands it&#8201;&#8212;&#8201;and it is the least a reader can do to labor to make sense of it. If, however, prose is LLM-generated, this social contract becomes ripped up: a reader cannot assume that the writer understands their ideas because they might not so much have read the product of the LLM that they tasked to write it.&#8221; Makes me think of all the times I&#8217;ve asked other engineers to write an RFC about something they propose we should do. Often the goal wasn&#8217;t the RFC, but that someone sits down and <em>thinks</em>.</p></li><li><p>Wish I could remember how I ended up reading <a href="https://read.readwise.io/archive/read/01kb0810j3xvtyc8an5ehc71e1">this</a>: &#8220;&#8288;&#8288;Sometimes, the most romantic thing a person can do is hand you a thought they&#8217;ve been carrying for years. They do so gently, as though it might break in your hands. It could be a memory wrapped in a metaphor or a belief they&#8217;ve never said aloud until now. These moments are quiet offerings as invitations to step into their interior world.&#8221;</p></li><li><p>Daniel Miessler in <a href="https://danielmiessler.com/blog/the-real-bubble-is-human-labor">The Bubble Is Labor</a>: &#8220;Companies only hire people because they can&#8217;t do all the work themselves. [&#8230;] In other words, the only reason the current labor market (and our economy that&#8217;s based on it) exist at all is because there&#8217;s a group of founders/owners who need lots of help producing their goods and services. They are not required by anyone to hire me or you to help them if they don&#8217;t need that help. And the exact moment they can do the work themselves, they will, and not a second after.&#8221; I really don&#8217;t mean this in a smug why-isn&#8217;t-everyone-as-smart-as-me way and maybe it&#8217;s because I&#8217;ve only ever worked in start-ups or small companies or maybe it&#8217;s because my parents and grandparents have always been self-employed, but: yeah, of course, and the sooner you figure this out, the better your career will go. </p></li><li><p>&#8220;<a href="https://substack.com/@michaelnielsen1/note/c-179937886">What happens when Cormac McCarthy rewrites your economics paper?</a>&#8221;</p></li><li><p>One of my many computing blind spots comes from the fact that I don&#8217;t use a lot of Microsoft products. I have no clue how probably 90% of all office workers in the world use their computers. So <a href="https://www.windowscentral.com/artificial-intelligence/microsoft-has-a-problem-nobody-wants-to-buy-or-use-its-shoddy-ai">this article here, on Microsoft&#8217;s AI offerings failing</a>, was very interesting: &#8220;Dare I say it, Gemini is actually helpful, and can usually execute tasks you might actually need in a day to day job. &#8216;Find me a meeting slot on this date to accommodate these timezones&#8217; &#8212; Gemini will actually do it. Copilot 365 doesn&#8217;t even have the capability to schedule a calendar event with natural language in the Outlook mobile app, or even provide something as basic as clickable links in some cases. At least Xbox&#8217;s Gaming Copilot has a beta tag to explain why it fails half of the time. It&#8217;s truly absurd how half-baked a lot of these features are, and it&#8217;s odd that Microsoft sought to ship them in this state. And Microsoft wants to make Windows 12 AI first? Please.&#8221;</p></li><li><p>I gave a five minute speech at the pub last night about <a href="https://x.com/tomfgoodwin/status/1998415311100641418">this</a>: &#8220;I&#8217;ll say it every month. But competent use of Excel or Google Docs could have wiped out 30% of white collar jobs , but that&#8217;s not how it works. Heck, 40% of roles could be eliminated if people just knew how to run a meeting better and could prioritize.&#8220; The big question isn&#8217;t whether these models are amazing (they are), but whether it&#8217;ll matter or not.</p></li><li><p>Admittedly, I didn&#8217;t get all of it, but this was very interesting: <a href="https://www.strangeloopcanon.com/p/seeing-like-an-agent">seeing like an agent</a>. Good punchline too: &#8220;internal markets improve on hierarchy when coordination costs fall - False (GTM dominates Engineering even with full information)&#8221; And the article led me to read up on <a href="https://en.wikipedia.org/wiki/The_Nature_of_the_Firm">The Nature of the Firm</a>, which I thought was very handy.</p></li><li><p><a href="https://neal.fun/size-of-life/">Size of Life.</a></p></li><li><p>Adrien Grand and Morgan Gallant on the turbopuffer blog: <a href="https://turbopuffer.com/blog/fts-v2-maxscore">Vectorized MAXSCORE over WAND, especially for long LLM-generated queries</a>. The conclusion is very interesting: &#8220;&#8216;Serial and dumb&#8217; can often beat &#8216;smart and random&#8217; on modern CPUs. Furthermore, agents write longer queries than humans, so it&#8217;s becoming increasingly important for text search to scale well with the number of terms. These factors force us to periodically revisit our choices of algorithms and their implementations. For text search, this means that the cursor has shifted more and more from WAND to MAXSCORE, which scales better with the number of terms and can be tuned to be more CPU-friendly.&#8221; (I pair-read this with GPT-5.2 to try it out and asked it about a bunch of the scoring-related algorithms, recommended.)</p></li><li><p><a href="https://x.com/GoogleAIStudio/status/1994480371061469306">More Nano Banana prompting tips</a>, this time straight from Google.</p></li><li><p>Talking about that Nano Banana: let&#8217;s not forget how confusing and absurd and funny (in the Kafka way) it is t<a href="https://ankursethi.com/blog/gemini-api-key-frustration/">o even get started with Google models</a>. Raise your hand and leave a like if you too thought &#8220;what the hell is a model <em>garden</em>, man&#8221; the first time you saw it.</p></li><li><p>I can&#8217;t tell you what it&#8217;s about, to be honest, and I don&#8217;t even know whether this is the right name, but <a href="https://www.shopify.com/editions/winter2026">Shopify Editions Winter &#8216;26 &#8220;The Renaissance Edition&#8221;</a> is a very beautiful and fascinating page. I&#8217;m usually a bit meh as soon as scroll effects show up, but this one? Very nice.</p></li><li><p>Very often I think of <a href="https://x.com/eshear/status/1760496397424685415">this pair of Emmett Shear tweets</a>: &#8220;People who have only ever worked for companies structured into clear hierarchy are missing an entire mode of work and collaboration which is vastly more &#8230; alive, for lack of a better word. The trusted-peers-on-a-mission mode it incredible. Early startups, bands, movie crews, sports teams, happy families on vacation&#8230;they mostly operate in this mode especially at first. You&#8217;re just jamming together, people are looking out for the group and themselves as one.&#8221;</p></li><li><p>Good reminder: <a href="https://x.com/benroy/status/1999215143729742002?s=46">Notes on Internet Addiction</a>. I&#8217;m no saint and I catch myself ending thoughts with &#8220;&#8230; but it&#8217;s also been so good to me!&#8221; The only thing that truly has worked: set a 30 minute per day limit for all social media apps on my phone, <em>lock that limit behind a password, </em>and &#8212; here comes the crucial bit that makes this work &#8212;&nbsp;and let my wife set the password. Believe me: you don&#8217;t want to ask your wife &#8220;can you give me 20 more minutes of Twitter?&#8221; very often.</p></li><li><p>Hell yes, SVGs rock: <a href="https://jon.recoil.org/blog/2025/12/an-svg-is-all-you-need.html">an SVG is all you need</a>. </p></li><li><p>This was inspiring and made me want to build more things and change how I approach building them: <a href="https://www.prefect.io/blog/rebuilding-our-website-for-the-agent-era">Rebuilding Our Website for the Agent Era</a>. &#8220;Teams are buying powerful tools and wondering why everything still feels slow. The answer is usually that they&#8217;re running agents on infrastructure designed for humans. Once you rebuild the infrastructure, everything becomes this fast.&#8221; I&#8217;ve been saying this for the past year: for decades developer tooling had to adapt to the codebase. &#8220;Oh, your tool doesn&#8217;t work in our monorepo? Sorry, no can do.&#8221; Now, though, with these agents, the monorepo will adapt, is my bet. The pull is too strong. The big question: what does the codebase of the future look like? That&#8217;s what we want to find out at Amp.</p></li><li><p>Eli Bendersky is <a href="https://eli.thegreenplace.net/2025/revisiting-lets-build-a-compiler/">revisiting Jack Crenshaw&#8217;s &#8220;Let&#8217;s Build a Compiler&#8221;</a> &#8212; lovely! </p></li><li><p>My Christmas present to you: <a href="https://www.youtube.com/watch?v=3V3BzelGSPg">Tinker, Tailor, Soldier, Spy (1979) Edited, HD, English Subtitles</a>. Yes, <em>yes</em>, this is the BBC Tinker Tailor, the one with Alec Guinness playing George Smiley, all in one video, on YouTube, with freaking subtitles. You know how rare that is? It&#8217;s rare, man. I love the 2011 movie and watched it many times and last week I finally had the good sense to just search on YouTube for the BBC version, which I&#8217;ve been wanting to watch for years now, but it&#8217;s very hard to find in Germany, in English, with subtitles. It&#8217;s so good watching this and comparing it to the movie and see what choices they made differently.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wh5z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wh5z!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 424w, https://substackcdn.com/image/fetch/$s_!wh5z!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 848w, https://substackcdn.com/image/fetch/$s_!wh5z!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 1272w, https://substackcdn.com/image/fetch/$s_!wh5z!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wh5z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif" width="976" height="42" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:42,&quot;width&quot;:976,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:167350,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/181450832?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wh5z!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 424w, https://substackcdn.com/image/fetch/$s_!wh5z!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 848w, https://substackcdn.com/image/fetch/$s_!wh5z!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 1272w, https://substackcdn.com/image/fetch/$s_!wh5z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3a2a26c8-58d8-4b70-ae9d-fe86a6956f85.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you also keep thinking &#8220;what will software look like in a few years?&#8221;, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p> </p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #65]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-65</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-65</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 07 Dec 2025 07:03:07 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8a6449d0-595d-40c9-8d73-adf7dc27c419_1296x832.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When we started working on Amp in February, ten months ago, I couldn&#8217;t have predicted this. Nor could I have in May, when we released Amp to the world. Nor in the weeks following that. But in the last few months, it began to cross our minds.</p><p>Then, suddenly, it changed from a Maybe to an Inevitable, from something that might be a good idea to something we had to do to give it the chance it deserves, the chance it demands. </p><p>On Tuesday, <a href="https://ampcode.com/news/amp-inc">we announced that Amp is becoming its own company: Amp, Inc.</a></p><p>I&#8217;m part of the founding team, one of twenty cofounders of this newly formed research lab that has one big goal: to let software builders harness the full power of artificial intelligence.</p><p>A year ago, when I left Zed, I couldn&#8217;t have imagined that rejoining Sourcegraph would turn into a new product and a new company.</p><p>But, of course, I also couldn&#8217;t have imagined how much AI would still change the practice of software development - three years after ChatGPT. Today I&#8217;m more convinced than ever that what we&#8217;re going through is only in its opening movement.</p><p>I&#8217;m also more excited than ever to figure out where this will lead. And Amp, Inc. is the vehicle we&#8217;re building with which to explore that frontier.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!nWYn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!nWYn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 424w, https://substackcdn.com/image/fetch/$s_!nWYn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 848w, https://substackcdn.com/image/fetch/$s_!nWYn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 1272w, https://substackcdn.com/image/fetch/$s_!nWYn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!nWYn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif" width="952" height="33" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b73a9c95-3510-4715-9df2-b1af1757a076.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:33,&quot;width&quot;:952,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:129030,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/180804022?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!nWYn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 424w, https://substackcdn.com/image/fetch/$s_!nWYn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 848w, https://substackcdn.com/image/fetch/$s_!nWYn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 1272w, https://substackcdn.com/image/fetch/$s_!nWYn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb73a9c95-3510-4715-9df2-b1af1757a076.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p><a href="https://bun.com/blog/bun-joins-anthropic">Bun is joining Anthropic</a>. I was honestly surprised that people were surprised by this and I don&#8217;t mean this in a humble-braggy &#8220;what, you haven&#8217;t figured out the twist of the movie in the first 5min, like I have?&#8221; way. I think the kicker is in this line: &#8220;But there&#8217;s a bigger question behind that: what does software engineering even look like in two to three years?&#8221; What <em>does</em> software engineering look like in the future? Well, what I do know is that even <em>right now</em> it already looks completely different than it did in 2022 when Bun was first released to the world. Now, ask yourself: in 2026, with agents being on the trajectory they are on, would you start to work on a <em>framework</em>, in the classic sense, to improve developer productivity? Or are there bigger levers? I&#8217;ve been thinking about these questions for the last year and when I saw the news, it wasn&#8217;t surprise I felt.</p></li><li><p>Maybe related: <a href="https://www.brendangregg.com/blog//2025-12-05/leaving-intel.html">Brendan Gregg is leaving Intel </a>and &#8220;accepted a new opportunity.&#8221; He writes: &#8220;It&#8217;s still early days for AI flame graphs. [&#8230;] I think as GPU code becomes more complex, with more layers, the need for AI flame graphs will keep increasing.&#8221;</p></li><li><p><a href="https://lemire.me/blog/2025/12/03/why-dont-we-get-more-scientific-breakthroughs/">Daniel Lemire</a>: &#8220;The tidy, linear model of scientific progress&#8212;professors thinking deep thoughts in ivory towers, then handing blueprints to engineers&#8212;is indefensible. Fast ships and fast trains are not just consequences of scientific discovery; they are also wellsprings of it. Real progress is messy, iterative, and deeply intertwined with the tools we build. Large language models are the latest, most dramatic example of that truth.&#8221; Hard to pick a quote, the whole thing is great and thought-provoking. As is <a href="https://x.com/halvarflake/status/1996560875592003840">this yes-and reply to it</a>: &#8220;we often first see something that works, then we understand it&#8221;</p></li><li><p>Jimmy Miller with the &#8220;<a href="https://jimmyhmiller.com/easiest-way-to-build-type-checker">easiest way to build a type checker</a>&#8221;. I&#8217;ve done exactly this with <a href="https://monkeylang.org/">Monkey</a> before, it&#8217;s a lot of fun.</p></li><li><p>A Senior Staff Engineer at Google on &#8220;<a href="https://lalitm.com/software-engineering-outside-the-spotlight/">Why I Ignore The Spotlight as a Staff Engineer</a>&#8221;: &#8220;The tech industry loves to tell you to move fast. But there is another path. It is a path where leverage comes from depth, patience, and the quiet satisfaction of building the foundation that others stand on. You don&#8217;t have to chase the spotlight to have a meaningful, high-impact career at a big company. Sometimes, the most ambitious thing you can do is stay put, dig in, and build something that lasts. To sit with a problem space for years until you understand it well enough to build a Bigtrace.&#8221; I read the whole thing with one eyebrow raised kept thinking of <a href="https://boge.lu/cost-centers-vs-profit-center/">the distinction between cost centers and profit centers</a>.</p></li><li><p>A <a href="https://aem1k.com/blackhole/">black hole in 125 bytes of JavaScript</a>.</p></li><li><p>&#8220;Are you here because you are looking, like I was, for advice? Unfortunately&#8212;this is, in a way, the problem&#8212;<a href="https://feeld.co/magazine/pleasures/essays/mother-maybe-by-hannah-black">whatever I could say about parenting</a> is trapped in the soundproof box of clich&#233;. Everything you have heard about having kids, good or bad, is true. Children are blessings and bring blessings. They are exhausting and raise the stakes of all your limitations and flaws to vertiginous heights. Love for children is Love, the romantic kind, the song kind, the ordinary kind. Parenting resembles religious practice in the way it links the broad sweep of the sacred to the smallest of everyday tasks.&#8221; As so often: I don&#8217;t know how I ended up reading this, but I&#8217;m glad I did.</p></li><li><p>Lot of talk about <a href="https://vercel.com/changelog/cve-2025-55182">CVE-2025-55182 this week, the &#8220;critical-severity vulnerability in React Server Components&#8221;</a>. I&#8217;m usually not that interested in vulnerabilities (modulo how I&#8217;m affected), but I really enjoyed reading through <a href="https://github.com/msanft/CVE-2025-55182">this proof-of-concept by Moritz Sanft</a>. Excellent technical writing and explanations. Also: <em>jesus.</em></p></li><li><p>&#8220;But during that stretch, a friend and colleague kept repeating one line to me: &#8216;All it takes is for one to work out.&#8217; He&#8217;d say it every time I spiraled. And as much as it made me smile, a big part of me didn&#8217;t fully believe it. Still, it became a little maxim between us. And eventually, he was right &#8211; that one did work out. <a href="https://alearningaday.blog/2025/11/28/all-it-takes-is-for-one-to-work-out-2/">And it changed my life.</a>&#8221;</p></li><li><p>When I first heard that Haribo, the gummy bear company, now sell power banks  and that they&#8217;re apparently really good, I couldn&#8217;t believe it. Haribo? Power banks? Non-gummy, actual, usable, very good power banks? What? <a href="https://www.lumafield.com/first-article/posts/whats-hiding-inside-haribos-power-bank-and-headphones">Turns out there&#8217;s issues with it</a>: &#8220;The Haribo power bank weighs roughly 286g and has a capacity of 20,000 mAh. That ratio drew attention because it implied efficient cell packaging. Our scans show that the structure inside the pouch has bigger problems than sheer capacity.&#8221; And that&#8217;s the way the gummy melts, I suppose.</p></li><li><p>Tim Ferriss on <a href="https://tim.blog/2012/11/11/the-value-of-aggression-ode-to-dan-gable/">the value of aggression</a>: &#8220;The <a href="https://www.youtube.com/watch?v=olpmZTFoAPE">above video clip</a> is from Dan Gable &#8211; Competitor Supreme, which my mom bought for me when I was 15. It changed my life. I watched it almost every day in high school, and it kept me fighting through all the various losses in life. Didn&#8217;t finish the SAT in time? Watch Dan Gable. Have a guidance counselor laugh while telling me I don&#8217;t stand a chance of getting into Princeton? More Dan Gable. Lost my first important judo match in 7 seconds? Watch the Iowa Hawkeyes&#8230;again and again and again. Then, return to the same tournament six months later and win. In life, there are dog fights. You must learn to enjoy them. Few people look forward to banging heads (literally or metaphorically), and therein lies the golden opportunity.&#8221;</p></li><li><p><a href="https://www.osnews.com/story/143376/dark-patterns-killed-my-wifes-windows-11-installation">Dark patterns killed my wife&#8217;s Windows 11 installation</a>. Man, I got sweaty hands and flashbacks reading this.</p></li><li><p>Very entertaining: <a href="https://fxrant.blogspot.com/2025/12/the-mad-men-in-4k-on-hbo-max-debacle.html">The &#8220;Mad Men&#8221; in 4K on HBO Max Debacle</a>. I love Mad Men, but this was also a great read because it&#8217;s Classic Internet in some sense: someone, somewhere, sits down with enough motivation to pull all those screengrabs together and then posts them on the Internet.</p></li><li><p>Matt Godbolt (<em>the</em> Matt Godbolt) is currently writing <a href="https://xania.org/AoCO2025">Advent of Compiler Optimisations 2025</a> and from what I&#8217;ve read (<a href="https://xania.org/202512/01-xor-eax-eax">Why xor eax, eax?</a> and <a href="https://xania.org/202512/02-adding-integers">Addressing the adding situation</a>) it&#8217;s very good. </p></li><li><p><a href="https://www.fofr.ai/nano-banana-pro-guide">Another guide on how to prompt Nano Banana Pro</a>. Nothing groundbreaking, but the prompts are good and, man, Nano Banana Pro is just really good and I like reading more about it.</p></li><li><p><a href="https://readwise-assets.s3.amazonaws.com/media/wisereads/articles/building-an-ai-native-engineer/1040.pdf">This PDF here</a>, by OpenAI, is about how to build &#8220;an AI-native engineering team&#8221; and, in my opinion, the most interesting and most telling thing in the whole file is that each section has these two headers: &#8220;How coding agents help&#8221; and &#8220;What engineers do instead&#8221;. What engineers do instead, indeed.</p></li><li><p>Murat Demirbas telling us to <a href="https://muratbuffalo.blogspot.com/2025/12/optimize-for-momentum.html">optimize for momentum</a>: &#8220;So the trick is to design your workflow around staying in motion. Don&#8217;t wait for the perfect idea or the right mood. Act first. Clarity comes after. If a task feels intimidating, cut it down until it becomes trivial. Open the file. Draft one paragraph. Try freewriting. Run one experiment. Or sketch one figure. You want the smallest possible task that gets the wheel turning. Completion, even on tiny tasks, builds momentum and creates the energy to do the next thing. The goal is to get traction and stop getting blocked on an empty page.&#8221; Yes, yes, yes, yes. Momentum is everything. I&#8217;d take momentum and mistakes and breakage over slow perfectionism every day.</p></li><li><p>The first time I saw <a href="https://exclav.es/2023/08/24/sunshine-maps-revisited/">the sunshine map at the top here</a> something in me broke: wait, you&#8217;re telling me, <em>all</em> of the US gets more sun than I do? Including Boston? Boston, the-lake-sometimes-freezes Boston? And freaking Seattle, the place that&#8217;s always portrayed as if Drizzle had been a better name for it? And New York? That New York that&#8217;s also movie New York where the steam comes out of the manhole covers? That place gets more sun than I do? You&#8217;re telling me when they shoot a movie there and it&#8217;s blue skies, they didn&#8217;t get lucky and picked the one day in the month it&#8217;s clear skies, but that they often have blue skies? It&#8217;s been at least four years since I first saw that map and I bring it up a lot (<em>a lot</em>, sorry). This week, while in Estonia, I brought it up again, of course, and while trying to find that map, I found that page that I linked to here, the one that starts with &#8220;I&#8217;ve always thought these sunshine maps were a little suspicious.&#8221; That sentence made me flinch &#8212;&nbsp;uh, oh, did I talk about a hoax all these years? Turns out I didn&#8217;t. The map is real. It&#8217;s all real. And if you scroll down to the solar power irradiance maps you&#8217;ll find that even freaking goddamn Ottawa gets as much sun as northern Italy.</p></li><li><p><a href="https://sankalp.bearblog.dev/how-prompt-caching-works/">Deep, deep dive into how prompt caching works</a>.</p></li><li><p>This was good and a great reminder: <a href="https://longform.asmartbear.com/prioritization/">ruthless prioritization while the dog pees on the floor</a>. &#8220;In fact we can&#8217;t help but prioritize, even if mindlessly. Since we can only do one thing at a time, whatever we&#8217;re doing now is definitionally our &#8216;highest priority.&#8217; Reading this sentence is currently your highest priority.&#8221; I once worked in a company that tried to set up a weekly company meeting. One team was always absent. &#8220;We just don&#8217;t have the time to make it to this meeting,&#8221; they said. I ranted about that team to my team lead and he said, &#8220;well, everyone has the same amount of time. They <em>chose</em> to prioritize it differently. If the CEO would say that everybody who doesn&#8217;t show up gets fired, they would have the time to make the meeting.&#8221; And the pupil was enlightened, as they say.</p></li><li><p>&#8220;many large firms are making massive capital commitments behind ai services this year with the hope of lowering cost, increasing scale, and (unsaid) shaving off some of the exuberant hiring of the zirp years. my suggestion is that these firms will see almost zero roi from this spend. why? <a href="https://x.com/WillManidis/status/1995488856750125133?s=20">because you can instrument capabilities, not competence</a>. [&#8230;] remember: most firms got the internet in the 90s; most did not use it to its full economic potential until 2020. the gap between 1999 and 2020 was not a lack of fiber optic cable. it took thirty years for the &#8216;competence&#8217; of remote work and digital commerce to catch up to the &#8216;capability&#8217; of executives can buy all the compute they want. they can instrument the capability until their dashboards overflow. but until they do the messy, un-instrumentable work of rewiring entire organizations to trust and utilize these tools, the long march will drag on.&#8221;</p></li><li><p>Bouke van der Bijl built <a href="https://bou.ke/blog/rust-ping/">a Rust program that can do rootless pings</a>. One of the first programs I attempted to write as a teenager was a <em>ping</em> clone in Python, so when I saw that post fly past, I hopped on. The intro, though, made me pause: &#8220;The ping command line tool works without root however, how is that possible? It turns out you can create a UDP socket with a protocol flag, which allows you to send the ping rootless. I couldn&#8217;t find any simple examples of this online and LLMs are surprisingly bad at this (probably because of the lack of examples).&#8221; LLMs are surprisingly bad at this? At writing a ping? Really? Let&#8217;s see. So I asked Amp to build a ping without requiring root. And <a href="https://ampcode.com/threads/T-24e54d7a-e8bf-4eae-8b10-681a20b4ca50">it did it, with one prompt from my side</a>. Then I thought: maybe the challenge is that it <em>must</em> use UDP, like Bouke wrote there? So I asked Amp to do it again, this time using UDP. <a href="https://ampcode.com/threads/T-a3057eda-3ae9-44bc-b20f-4847738b0f0d">It did it again</a> and concludes: &#8220;It works! The trick is using socket(AF_INET, SOCK_DGRAM, IPPROTO_ICMP) instead of SOCK_RAW. This creates an unprivileged ICMP socket that the kernel handles specially - no root required.&#8221; And that&#8217;s exactly what <a href="https://news.ycombinator.com/item?id=46119375">a HackerNews commenter also writes</a>, criticizing the &#8220;trick is to use UDP&#8221; line: &#8220;This is wrong, despite the Rust library in question&#8217;s naming convention. You&#8217;re not creating a UDP socket. You&#8217;re creating an IP (AF_INET), datagram socket (SOCK_DGRAM), using protocol ICMP (IPPROTO_ICMP). The issue is that the rust library apparently conflates datagram and UDP, when they&#8217;re not the same thing.&#8221; LLMs are surprisingly something, but not bad at this.</p></li><li><p>This is beautiful: <a href="https://buddybindery.com/bootstrapping-computing">Bootstrapping Computing</a>.</p></li><li><p><a href="https://bfcm.stripe.com/">Stripe City </a>is impressive. This <a href="https://x.com/devinjacoviello/status/1995911570438979600">behind-the-scenes series of posts</a> is too: &#8220;@bits_by_brandon not only built this interaction, he drove the train and recorded every sound.&#8221;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ekgI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ekgI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 424w, https://substackcdn.com/image/fetch/$s_!ekgI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 848w, https://substackcdn.com/image/fetch/$s_!ekgI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 1272w, https://substackcdn.com/image/fetch/$s_!ekgI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ekgI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif" width="947" height="33" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:33,&quot;width&quot;:947,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:128370,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/180804022?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ekgI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 424w, https://substackcdn.com/image/fetch/$s_!ekgI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 848w, https://substackcdn.com/image/fetch/$s_!ekgI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 1272w, https://substackcdn.com/image/fetch/$s_!ekgI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F487fb3cb-d9d2-4502-99eb-4d16cc5249b6.tif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you also think this is just the beginning of changes coming to software development, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #64]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-64</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-64</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 30 Nov 2025 07:56:54 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/6e97e16a-f81d-49c9-b406-ed7bf3fc1078_2492x1594.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I was live on Twitch this week, using Amp to hack on my little side- and toy-project terminal emulator. It&#8217;s written in Rust, barely has any third-party dependencies, and does its rendering using Metal and the GPU. </p><p>Without exaggeration (and I know it sounds like exaggeration, but hey, it&#8217;s not): this was some of the most magical stuff I&#8217;ve ever experienced with agents.</p><p>You can still watch <a href="https://www.twitch.tv/videos/2627706685">the whole thing here</a>. If you do, you&#8217;ll see how the agent figures out how to render background colors for terminal cells, how it then fixes the wrong struct alignment/padding of the data it sends to the GPU after I show it a screenshot, how it then builds a 2D renderer for box drawing characters, and a feedback loop, and then iterates based on screenshots to render curved and straight characters.</p><p>Or you can watch these two highlights: <a href="https://www.twitch.tv/videos/2628414081">this one</a> in which I guide the agent to build a feedback loop for itself, so it can &#8220;see&#8221; what the GPU renders; and then <a href="https://www.twitch.tv/videos/2628414080">this one</a>, in which the agent first uses the feedback loop to check which box-drawing characters aren&#8217;t rendered properly and then adds the code to render them.</p><p>Magical, truly. Rendering the characters &#8212; that&#8217;s one thing. But how it &#8220;understood&#8221; how the feedback loop should work and how it builds it &#8212; man, that was mind-blowing.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wqXf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wqXf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 424w, https://substackcdn.com/image/fetch/$s_!wqXf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 848w, https://substackcdn.com/image/fetch/$s_!wqXf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 1272w, https://substackcdn.com/image/fetch/$s_!wqXf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wqXf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif" width="971" height="33" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c73b89e8-53a6-461f-b67a-7659dc11b05e.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:33,&quot;width&quot;:971,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:131538,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/180194158?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wqXf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 424w, https://substackcdn.com/image/fetch/$s_!wqXf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 848w, https://substackcdn.com/image/fetch/$s_!wqXf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 1272w, https://substackcdn.com/image/fetch/$s_!wqXf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc73b89e8-53a6-461f-b67a-7659dc11b05e.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p><a href="https://www.anthropic.com/news/claude-opus-4-5">Claude Opus 4.5</a> was released. A week after Gemini 3 Pro.</p></li><li><p><a href="https://ampcode.com/news/opus-4.5">We switched Amp to Opus 4.5</a>, too. We switched after a lot of user feedback, and back and forth, and evaluations, and testing, and should-we? and could-we? and don&#8217;t-we-have-to? and it&#8217;s-so-good. There&#8217;s more in the post there and I encourage you to use it, but let me say this: I&#8217;m rethinking &#8212;&nbsp;again &#8212; the future of software development. </p></li><li><p>On a more practical level: I&#8217;m really fascinated by Anthropic&#8217;s <a href="https://www.anthropic.com/engineering/advanced-tool-use">Tool Search Tool</a>. This does feel like something really useful. I&#8217;ve implemented it in Amp in less than an hour and have been playing around with it. There&#8217;s downsides (latency!), but I&#8217;m very intrigued. </p></li><li><p>This week I learned about <a href="https://linux.die.net/man/1/expect">expect(1)</a> and <a href="https://github.com/pexpect/pexpect">pexpect</a>, but, never having watched the movie, I don&#8217;t know what to make of this warning: <a href="https://github.com/pexpect/pexpect/blob/fc8f062518b40bd0862aae870cdedf5d9c0c7fc3/examples/python.py#L31">&#8220;Don&#8217;t do this unless you like being John Malkovich&#8221;</a></p></li><li><p>Henrik Karlsson: &#8220;Today is my 1 year anniversary of being a full time writer on Substack. <a href="https://substack.com/@henrikkarlsson/note/c-179211747">Some reflections.</a>&#8221; Very interesting.</p></li><li><p>Speaking of, I&#8217;ve really come to enjoy reading through Substack notes. <a href="https://substack.com/@henrikkarlsson/note/c-176327685?">Here&#8217;s one by the very same Henrik Karlsson</a> that I keep thinking of: &#8220;When I have low blood suger, or am in a bad mood because I haven&#8217;t exercised in a while, or have some other imbalance in my body, my mind will typically conjure some reason why I&#8217;m feeling that way; it will invent a story that explains why I&#8217;m feeling sad or frustrated. &#8216;I feel so trapped in my life.&#8217; &#8216;X is so selfish.&#8217; Etc. It is rarely productive to pay to much attention to those thoughts in the moment, since they are just made up stories, to explain a negative affect; giving them to much attention just makes my brain elaborate and come up with even fancier (and falser) stories for why I&#8217;m feeling bad.&#8221; It is incredible, isn&#8217;t it, to read something like <em>that</em>, in a feed. Like hearing a live orchestra when someone&#8217;s phone rings.</p></li><li><p>Benedict Evans in <a href="https://www.ben-evans.com/newsletter">his latest newsletter</a>: &#8220;Back to 1997: no one knows how this is all going to work. There are capital markets stories (even more for Coreweave and the other neoclouds), and chip stories, but the core I keep coming back to is the level of uncertainty around the actual applications - remember Yahoo, and Netscape, and Pointcast? i-mode and Blackberry? And meanwhile, Google didn&#8217;t exist yet and Mark Zuckerberg was 13. Bubble or no bubble, no one knows anything.&#8221; </p></li><li><p>And Benedict Evans has <a href="https://www.ben-evans.com/presentations">a new presentation out</a>. Highly recommend flipping through it, as always. </p></li><li><p>Maybe I&#8217;m in a bubble and that&#8217;s why I don&#8217;t come across these types of posts very often anymore, but this one, <a href="https://www.morling.dev/blog/on-idempotency-keys/">Gunnar Morling&#8217;s On Idempotency Keys</a>, was great and made me think of a lot of books and posts I read now many years ago.</p></li><li><p>What a read: <a href="https://spectrum.ieee.org/it-management-software-failures">Trillions Spent and Big Software Projects Are Still Failing</a>. The subtitle &#8212; &#8220;AI won&#8217;t solve IT&#8217;s management problems&#8221; &#8212; already contains the clue that this is about &#8220;IT&#8221; and Big Software in Big Enterprises. That&#8217;s a world I&#8217;m very much not connected to (and it&#8217;s also interested that the world I am in doesn&#8217;t even get a mention) and it&#8217;s very, very, very interesting. Here&#8217;s one of many setup &amp; punchline pairs that I could quote: &#8220;Phoenix project executives believed they could deliver a modernized payment system, customizing PeopleSoft&#8217;s off-the-shelf payroll package to follow 80,000 pay rules spanning 105 collective agreements with federal public-service unions. It also was attempting to implement 34 human-resource system interfaces across 101 government agencies and departments required for sharing employee data. Further, the government&#8217;s developer team thought they could accomplish this for less than 60 percent of the vendor&#8217;s proposed budget.&#8221; And the punchline: &#8220;Phoenix&#8217;s payroll meltdown was preordained. As a result, over the past nine years, around 70 percent of the 430,000 current and former Canadian federal government employees paid through Phoenix have endured paycheck errors. Even as recently as fiscal year 2023&#8211;2024, a third of all employees experienced paycheck mistakes. The ongoing financial stress and anxieties for thousands of employees and their families have been immeasurable.&#8221; But there&#8217;s so much more in there. I didn&#8217;t know about U.K. Post Office disaster and I had only read something short about the Lidl/SAP failure (&#8220;[&#8230;] three years of trying to make SAP&#8217;s &#8364;500 million enterprise resource planning (ERP) system work properly.&#8221;) Incredible stuff.</p></li><li><p><a href="https://x.com/mitchellh/status/1993735559341121941">Ghostty has search</a>!</p></li><li><p>Weirdly enough, reading about these big IT projects reminded me of this <a href="https://cyber-peace.org/wp-content/uploads/2018/10/The-Untold-Story-of-NotPetya-the-Most-Devastating-Cyberattack-in-History-_-WIRED.pdf">2018 Andy Greenberg article in Wired about the NotPetya attack on Maersk</a>. Fantastic read: &#8220;All across Maersk headquarters, the full scale of the crisis was starting to become clear. Within half an hour, Maersk employees were running down hallways, yelling to their colleagues to turn off computers or disconnect them from Maersk&#8217;s network before the malicious software could infect them, as it dawned on them that every minute could mean dozens or hundreds more corrupted PCs. Tech workers ran into conference rooms and unplugged machines in the middle of meetings. Soon staffers were hurdling over locked key-card gates, which had been paralyzed by the still-mysterious malware, to spread the warning to other sections of the building.&#8221; I&#8217;m pretty sure that I read this when it came out and in the seven years since, I&#8217;ve thought of this scene many times: &#8220;When the tense engineers in Maidenhead set up a connection to the Ghana office, however, they found its bandwidth was so thin that it would take days to transmit the several-hundred-gigabyte domain controller backup to the UK. Their next idea: put a Ghanaian staffer on the next plane to London. But none of the West African office&#8217;s employees had a British visa. So the Maidenhead operation arranged for a kind of relay race: One staffer from the Ghana office flew to Nigeria to meet another Maersk employee in the airport to hand off the very precious hard drive. That staffer then boarded the six-and-a-half-hour flight to Heathrow, carrying the keystone of Maersk&#8217;s entire recovery process.&#8221;</p></li><li><p>Ethan Mollick on the <a href="https://www.oneusefulthing.org/p/three-years-from-gpt-3-to-gemini">Three Years from GPT-3 to Gemini 3</a>: &#8220;Three years ago, we were impressed that a machine could write a poem about otters. Less than 1.000 days later, I am debating statistical methodology with an agent that built its own research environment. The era of the chatbot is turning into the era of the digital coworker. To be very clear, Gemini 3 isn&#8217;t perfect, and it still needs a manager who can guide and check it. But it suggests that &#8216;human in the loop&#8217; is evolving from &#8216;human who fixes AI mistakes&#8217; to &#8216;human who directs AI work.&#8217; And that may be the biggest change since the release of ChatGPT.&#8221;</p></li><li><p>swyx <a href="https://www.latent.space/p/agent-labs">on Agent Labs</a>.</p></li><li><p>Compare: <a href="https://www.bernhardlang.de/bavarianforest">Bavarian Forest 2022</a> and <a href="https://www.bernhardlang.de/forestsinformation2025">Forests in Formation 2025</a>. (If you like Factorio, you should also look at <a href="https://www.bernhardlang.de/stahlwerk">Stahlwerk</a> and <a href="https://www.bernhardlang.de/chemiefabrik">Chemiefabrik</a>.)</p></li><li><p>According to <a href="https://www.hbs.edu/faculty/Pages/item.aspx?num=68094">this Harvard Business School paper</a>, Acquired.fm (love them) <a href="https://x.com/jryedinak/status/1993362431066919217?s=46">now makes $2.5m per episode</a>. They&#8217;re the best in the game, so: congratulations!</p></li><li><p><a href="https://tonyalicea.dev/blog/were-losing-our-voice-to-llms/">We&#8217;re Losing Our Voice to LLMs</a>. I don&#8217;t use LLMs to write prose for me and can&#8217;t imagine ever wanting to, but lately, with Gemini 3 and now with Opus 4.5, what I&#8217;ve done is to hand them a collection of my writing that I want to emulate in a new thing and say &#8220;This is how I wrote, analyze the writing style.&#8221; They then come back with an eerily good analysis and then I tell them: &#8220;Imagine you&#8217;re <a href="https://www.theparisreview.org/interviews/1760/the-art-of-editing-no-1-robert-gottlieb">Robert Gottlieb</a>, how would you edit this?&#8221; And what they send back is not what I&#8217;d do, but it&#8217;s enough of a push to keep me rolling down the hill.</p></li><li><p>Beautiful personal website: <a href="https://www.alanagoyal.com/">alanagoyal.com</a></p></li><li><p>My ex-colleague Piotr, over at Zed Industries, wrote about making the project search in Zed a lot faster. <a href="https://zed.dev/blog/nerd-sniped-project-search">Nerd-sniped: Project Search</a>. That&#8217;s a great post. Perfect hook, carefully chosen code examples, great tone (&#8220;For a mix of reasons (including hubris), we never truly loved the idea of blindly going with ripgrep.&#8221;), good length. Now <em>this</em> is how it&#8217;s done.</p></li><li><p>Also, by the way, since we&#8217;re on the topic of Zed, I want you all to know that Zed&#8217;s <a href="https://github.com/zed-industries/zed/blob/c18481ed13f6c0024b9b78ad1e4664c49100791f/crates/editor/src/editor.rs">editor/editor.rs</a> has around 25k lines of code. It&#8217;s the heart of the editor. And guess what? It&#8217;s not a problem. Yes, it could be shorter, but also: it&#8217;s not a problem. I think working with that file has made me ignore every comment around lines of code for all eternity.</p></li><li><p>I&#8217;ve been meaning to write about how I changed my view on code reviews in the past two years, but then, while talking about it, Patrick sent me this post from the Raycast CEO and founder Thomas Paul Mann: <a href="https://www.raycast.com/blog/no-code-reviews-by-default">no code reviews by default</a>. It&#8217;s all in there. I&#8217;d sign every paragraph in there. Now, maybe the thing that I need to write is about how I changed my view on pull requests&#8230;</p></li><li><p>&#8220;<a href="https://benjojo.co.uk/u/benjojo/h/h4N78m1PjXYsYfzkGV">This MacOS (APFS?) quirk </a>was mentioned at the pub last night, and I still cannot believe this actually works when I tried it myself&#8221;</p></li><li><p>&#8220;<a href="https://www.voidtools.com/faq/#what_is_everything">&#8216;Everything&#8217; is search engine</a> that locates files and folders by filename instantly for Windows. Unlike Windows search &#8216;Everything&#8217; initially displays every file and folder on your computer (hence the name &#8216;Everything&#8217;). [&#8230;] &#8216;Everything&#8217; only indexes file and folder names and generally takes a few seconds to build its database. A fresh install of Windows 10 (about 120,000 files) will take about 1 second to index. 1,000,000 files will take about 1 minute.&#8221;</p></li><li><p>I had no idea that Charli xcx had a Substack, but apparently she does and this post I found very good: <a href="https://itscharlibb.substack.com/p/the-realities-of-being-a-pop-star">The realities of being a pop star.</a> It&#8217;s weird, isn&#8217;t it, how odd it feels when an artist crosses from one medium to another like that, but when you say it out loud, it does seem obvious. &#8220;All my favorite artists are absolutely not role models nor would I want them to be, but maybe that&#8217;s just me. I want hedonism, danger and a sense of anti establishment to come along with my artists because when I was younger I wanted to escape through them. I don&#8217;t care if they tell the truth or lie or play a character or adopt a persona or fabricate entire scenarios and worlds. To me that&#8217;s the point, that&#8217;s the drama, that&#8217;s the fun, that&#8217;s the FANTASY.&#8221;</p></li><li><p>Benjamin Anderson: &#8220;This is what I&#8217;m calling technical deflation: it&#8217;s getting easier and easier for startups to do stuff, and this seems likely continue at least for the next few years. (Importantly, this is true regardless of whether you think pretraining or RLVR have &#8220;hit a wall&#8221;&#8212;improvements on speed, cost, context length, tool use, etc. are all sufficient to keep the trend going.) So what are the consequences of <a href="https://benanderson.work/blog/technical-deflation/">technical deflation?</a>&#8221;</p></li><li><p>Oh do I love <a href="https://fabiensanglard.net/quake_indicators/index.html">these indicators in the Quake Engine</a>! Give me <a href="https://registerspill.thorstenball.com/p/the-hum-of-the-machine">all the indicators</a>!</p></li><li><p>&#8220;If you physically need gear to do the thing, <a href="https://blog.ielliott.io/gear-acquisition-syndrome">start with cheap gear and keep research to the minimum</a>. As a beginner you can&#8217;t percieve most of the differences between similar tools. Perceptual ability and taste only develop as your skills improve.&#8221; Having had GAS in multiple different hobbies, this one of the best things said about it.</p></li><li><p>My wife and I are watching our way through Variety&#8217;s <a href="https://variety.com/lists/best-comedy-movies-all-time">100 Best Comedy Movies of All Time</a> and on Friday we saw <a href="https://www.imdb.com/title/tt0092948">Eddie Murphy&#8217;s Raw</a>. I&#8217;ve seen bits of Raw many times over the years, but never the whole thing and, man, he was so good. So good. (Good pairing: I saw <a href="https://www.imdb.com/title/tt35627915/">Being Eddie</a> on the plane last week and it sets up the hype around Eddie in the 80s really well, but Raw then manages to match and surpass the hype.) I also asked ChatGPT to create a spreadsheet of the list, so, <a href="https://docs.google.com/spreadsheets/d/16_pLQoDhieSlAKm2zyi2mGJpTm3ZvWdYY7FaPrxvik8/edit?usp=sharing">here you go</a>.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oK57!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oK57!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 424w, https://substackcdn.com/image/fetch/$s_!oK57!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 848w, https://substackcdn.com/image/fetch/$s_!oK57!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 1272w, https://substackcdn.com/image/fetch/$s_!oK57!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oK57!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif" width="961" height="30" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a58a23fa-f480-43bc-bb3b-486053768e22.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:30,&quot;width&quot;:961,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:118686,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/180194158?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oK57!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 424w, https://substackcdn.com/image/fetch/$s_!oK57!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 848w, https://substackcdn.com/image/fetch/$s_!oK57!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 1272w, https://substackcdn.com/image/fetch/$s_!oK57!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa58a23fa-f480-43bc-bb3b-486053768e22.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If you also love to render box-drawing characters, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Joy & Curiosity #63]]></title><description><![CDATA[Interesting & joyful things from the previous week]]></description><link>https://registerspill.thorstenball.com/p/joy-and-curiosity-63</link><guid isPermaLink="false">https://registerspill.thorstenball.com/p/joy-and-curiosity-63</guid><dc:creator><![CDATA[Thorsten Ball]]></dc:creator><pubDate>Sun, 23 Nov 2025 08:28:19 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/50410a6c-542c-452a-9c54-76302b42c57c_1496x1158.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This was the second time in four months that I happened to be in San Francisco when a new model was released by a major provider. &#8220;Gemini 3 just dropped&#8221; was overheard in the coffee shop.</p><p>Very busy but fantastic week.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zt4E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zt4E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 424w, https://substackcdn.com/image/fetch/$s_!zt4E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 848w, https://substackcdn.com/image/fetch/$s_!zt4E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 1272w, https://substackcdn.com/image/fetch/$s_!zt4E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zt4E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif" width="951" height="38" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:38,&quot;width&quot;:951,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:147934,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/179495397?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zt4E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 424w, https://substackcdn.com/image/fetch/$s_!zt4E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 848w, https://substackcdn.com/image/fetch/$s_!zt4E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 1272w, https://substackcdn.com/image/fetch/$s_!zt4E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47d00a25-e8fa-4abf-a5d6-50067aa5f251.tif 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><ul><li><p>We <a href="https://ampcode.com/news/gemini-3">switched Amp to Gemini 3 Pro</a>. I know that for some people Gemini 3 feels off, but I honestly think it&#8217;s the best model I&#8217;ve used as an agent so far. It&#8217;s fantastic. </p></li><li><p>I&#8217;m still holding my breath and I&#8217;m pessimistic, but <em>hallelujah!</em> if this actually happens in a way that&#8217;s noticeable: <a href="https://www.theverge.com/news/823750/european-union-ai-act-gdpr-changes">Europe is scaling back its landmark privacy and AI laws</a>.</p></li><li><p>What I found the most surprising about Every&#8217;s <a href="https://every.to/vibe-check/vibe-check-gemini-3-pro-a-reliable-workhorse-with-surprising-flair">Vibe Check on Gemini 3</a> is that they&#8217;re saying it&#8217;s &#8220;not yet a writing champ&#8221;. Maybe I can&#8217;t judge it on that, I very rarely use LLMs to generate more than a single sentence of prose, but I thought Gemini 3&#8217;s descriptions of bugs, its summaries of what it did, its investigations &#8212;&nbsp;I thought those were well-written and surprisingly well-formatted too. I actually said out loud: &#8220;if I would see a PR description written like <em>that</em>, I&#8217;d try to hire the person who wrote it.&#8221;</p></li><li><p><a href="https://x.com/pauldix/status/1990434650863399307?s=46">Paul Dix, CTO of InfluxDB</a>: &#8220;I believe the next year will show that the role of the traditional software engineer is dead. If you got into this career because you love writing lines of code, I have some bad news for you: it&#8217;s over. The machines will be writing most of the code from here on out. Although there is some artisanal stuff that will remain in the realm of hand written code, it will be deeply in the minority of what gets produced.&#8221;</p></li><li><p>&#8220;Older programs were all about what you need: you can do this, that, whatever you want, just let me know. You were in control, you were giving orders, and programs obeyed. But recently (a decade, more or less), this relationship has subtly changed. Newer programs (which are called apps now, yes, I know) <a href="https://tonsky.me/blog/needy-programs/">started to want things from you</a>.&#8221;</p></li><li><p><a href="https://commoncog.com/playing-to-play-playing-to-win">Are You Playing to Play, or Playing to Win?</a> Read it two days ago and already think that these definitions of scrub and maestro will stick with me. &#8220;One time I played a scrub who was pretty good at many aspects of Street Fighter, but he cried cheap as I beat him with &#8216;no skill moves&#8217; while he performed many difficult dragon punches. He cried cheap when I threw him 5 times in a row asking, &#8216;is that all you know how to do? throw?&#8217; I told him, &#8216;Play to win, not to do &#8216;difficult moves.&#8217;&#8216; He would never reach the next level of play without shedding those extra rules in his head&#8221;. Can&#8217;t help but think of programming and typing code by hand.</p></li><li><p>&#8220;#! was a great hack to make scripts look and feel like real executable binaries.&#8221;, from: <a href="https://www.in-ulm.de/~mascheck/various/shebang">#! magic, details about the shebang/hash-bang mechanism on various Unix flavours</a>.</p></li><li><p>&#8220;A friend of mine tells Claude to always address him as &#8216;Mr Tinkleberry&#8217;, he says he can tell when Claude is not paying attention to the instructions on CLAUDE.md when Claude stops calling him &#8216;<a href="https://news.ycombinator.com/item?id=45983698">Mr Tinkleberry</a>&#8217; consistently&#8221;</p></li><li><p>This is from all the way back in April and you actually notice that when reading, I&#8217;d say, which is interesting in itself, but the whole piece is great and contains a lot of gems: <a href="https://www.newyorker.com/culture/the-weekend-essay/will-the-humanities-survive-artificial-intelligence">Will the Humanities Survive Artificial Intelligence?</a></p></li><li><p>&#8220;I&#8217;ve started a company in this space about 2 years ago. We are doing fine. What we&#8217;ve learned so far is that a lot of these techniques are simply optimisations to tackle some deficiency in LLMs that is a problem &#8220;today&#8221;. These are not going to be problems tomorrow because the technology will shift. As it happened many time in the span of the last 2 years. So yah, cool, caching all of that... but give it a couple of months and a better technique will come out - or more capable models. [...] What I&#8217;ve learned from this is that <a href="https://news.ycombinator.com/item?id=46014987">often times it is better to do absolutely nothing</a>.&#8221;</p></li><li><p>Joan Didion, <a href="https://gist.github.com/rebeccawilliams/375db69a69a70565d7e1e7a8ced35ae3">On Self-Respect</a>: &#8220;In brief, people with self-respect exhibit a certain toughness, a kind of moral nerve; they display what was once called character, a quality which, although approved in the abstract, sometimes loses ground to other, more instantly negotiable virtues. The measure of its slipping prestige is that one tends to think of it only in connection with homely children and with United States senators who have been defeated, preferably in the primary, for re-election. Nonetheless, character&#8212;the willingness to accept responsibility for one&#8217;s own life&#8212;is the source from which self-respect springs.&#8221;</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xx2a!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xx2a!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 424w, https://substackcdn.com/image/fetch/$s_!xx2a!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 848w, https://substackcdn.com/image/fetch/$s_!xx2a!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 1272w, https://substackcdn.com/image/fetch/$s_!xx2a!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xx2a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif" width="952" height="34" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/410bff1f-afa4-4ef3-a651-35db64d1a17e.tif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:34,&quot;width&quot;:952,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:132838,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/tiff&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://registerspill.thorstenball.com/i/179495397?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xx2a!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 424w, https://substackcdn.com/image/fetch/$s_!xx2a!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 848w, https://substackcdn.com/image/fetch/$s_!xx2a!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 1272w, https://substackcdn.com/image/fetch/$s_!xx2a!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F410bff1f-afa4-4ef3-a651-35db64d1a17e.tif 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://registerspill.thorstenball.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">If your travel also maps to model releases, you should subscribe:</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>