<?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[Long Game / Pawel Dolega]]></title><description><![CDATA[Technology & Business]]></description><link>https://www.pdole.ga</link><image><url>https://substackcdn.com/image/fetch/$s_!Vkab!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff68dbdbc-5219-466d-a3e1-f6fff18c8c4b_1024x1024.png</url><title>Long Game / Pawel Dolega</title><link>https://www.pdole.ga</link></image><generator>Substack</generator><lastBuildDate>Sun, 20 Sep 2026 02:15:07 GMT</lastBuildDate><atom:link href="https://www.pdole.ga/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Pawel Dolega 👊🏾]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[pdolega@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[pdolega@substack.com]]></itunes:email><itunes:name><![CDATA[Pawel Dolega 👊🏾]]></itunes:name></itunes:owner><itunes:author><![CDATA[Pawel Dolega 👊🏾]]></itunes:author><googleplay:owner><![CDATA[pdolega@substack.com]]></googleplay:owner><googleplay:email><![CDATA[pdolega@substack.com]]></googleplay:email><googleplay:author><![CDATA[Pawel Dolega 👊🏾]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[The Night Shift]]></title><description><![CDATA[Draw the graph in the afternoon, read the shape in the morning]]></description><link>https://www.pdole.ga/p/the-night-shift</link><guid isPermaLink="false">https://www.pdole.ga/p/the-night-shift</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Fri, 18 Sep 2026 09:40:11 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!kNQG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kNQG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kNQG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 424w, https://substackcdn.com/image/fetch/$s_!kNQG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 848w, https://substackcdn.com/image/fetch/$s_!kNQG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!kNQG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kNQG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg" width="1280" height="1086" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1086,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:522429,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/216271456?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kNQG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 424w, https://substackcdn.com/image/fetch/$s_!kNQG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 848w, https://substackcdn.com/image/fetch/$s_!kNQG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!kNQG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffe3c97af-e1ab-4db0-995e-de588ac83a30_1280x1086.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><span>A II (Construction A II) by Moholy-Nagy. </span>Transparent layers, a few real dependencies, and fake edges.</figcaption></figure></div><p>A few weeks ago <a href="https://x.com/mitchellh/status/2087227139154448436">Mitchell Hashimoto posted his daily schedule</a>. </p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/mitchellh/status/2087227139154448436&quot;,&quot;full_text&quot;:&quot;I&#8217;ve been asked for an updated daily schedule given Superlogical, second kid, and AI usage. Here you go:\n\n- 530 awake, 20 minute interval cardio \n- 600 review nightly agents, start new\n- 700 wake and feed newborn\n- 730 wake, dress toddler\n- 745 breakfast with family\n- 800 off to&#8230;&quot;,&quot;username&quot;:&quot;mitchellh&quot;,&quot;name&quot;:&quot;Mitchell Hashimoto&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2082830624415698944/bRo7PB2S_normal.jpg&quot;,&quot;date&quot;:&quot;2026-08-11T17:18:23.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;Here's my general daily schedule, for people who asked:\n\n- 530 awake\n- 600 coffee outside w/ wife (or walk), talk \n- 630 laptop opening, emails\n- 645 OSS triage, try to get a merge in\n- 730 wake up daughter, eat breakfast\n- 800 work begins\n- 1330 break time (gym, games, resting,&quot;,&quot;username&quot;:&quot;mitchellh&quot;,&quot;name&quot;:&quot;Mitchell Hashimoto&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2082830624415698944/bRo7PB2S_normal.jpg&quot;},&quot;reply_count&quot;:95,&quot;retweet_count&quot;:29,&quot;like_count&quot;:2111,&quot;impression_count&quot;:193194,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:false}" data-component-name="Twitter2ToDOM"></div><p>I remember two lines:</p><blockquote><p><em>600 review nightly agents, start new</em></p></blockquote><p>and at the other end of the day,</p><blockquote><p><em>2000 hang with wife, start new nightly agents</em></p></blockquote><p>He&#8217;d set himself <em>&#8220;always have an agent running&#8221;</em> as a goal in early 2026 (and admitted he&#8217;d mostly failed at it initially). By August though &#8212; at least two agents running constantly, many of them through the night.</p><p>So I thought I&#8217;d like to test this <em>shape</em> of a workday. I felt intuitively that my loops were too short. And I am fortunate enough to spend some time with folks who keep agents working on their own for hours, on useful work.</p><p>For about fourteen days now I&#8217;ve been running my own version: sessions of eight to sixteen hours, agents working without a pause, one overnight run clearing thirty-something tasks by breakfast. What follows is a field note.</p><p>Four things I&#8217;m fairly sure of, and one I&#8217;m stuck on.</p><h2>The afternoon is the job</h2><p>Fourteen days went into drawing graphs: which tasks depend on which, what can run side by side, where the results have to meet. The models mostly wrote the code. I mostly wrote the graph (although it is really a conversation). If prompt engineering was ever a discipline, it&#8217;s dead; the craft moved up a level, from the words in one prompt to the edges between thirty of them.</p><p>People have started calling this <em>graph engineering</em>. You can watch Andrew Ng &#8212; a guy who likely trained half the world&#8217;s ML engineers before LLMs were even a thing &#8212; describe it in <a href="https://www.youtube.com/watch?v=58n-n-3oRic">his two-hour course</a>. In short: a node is one unit of work, an edge is a real dependency between them. Boris Cherny of Claude Code <a href="https://x.com/Mahaximus_/status/2097030175158575152">reportedly said</a>: <em>&#8220;You&#8217;re not supposed to write code anymore. You&#8217;re supposed to build a graph that writes itself.&#8221;</em> And I&#8217;m starting to think there is some substance to it.</p><p>So my day has a shape. Two to three hours of graph in the afternoon, which is really a conversation about trade-offs and scope. One to two hours of review in the morning. The machines in between. In three such days I get through what would have taken several weeks at the start of 2025, with the caveat that some of it I would never have done at all (thus it is an infinite ROI, or at least &#8220;hire someone else&#8221; territory).</p><p>Worth noting: nobody in this setup is really watching twenty terminals at once at this stage. The afternoon is one long conversation, with occasional forks, about one big chunk of work, the night runs it, the morning reads it. People who try agents and report exhaustion are usually describing something else: babysitting several of them live, switching context every few minutes. My intuition now is this: if many parallel flows leave you exhausted, <strong>you may still be doing prompt engineering</strong>. Planning the graph up front removes the switching, and the switching is most of what people mean by tired.</p><p>This is mostly design work now (and it is hard!).</p><h2>Multi-agent moat was wrong</h2><p>Three or four months ago I&#8217;d have bet against all of this, and for a specific reason. I assumed the frontier labs would each build a harness around their own agent, and that the hard gap, the one a product could live in, would be <em>between</em> agents: one lab&#8217;s model handing work to another&#8217;s, adversarial review across vendors, worktrees and changesets managed between them. In short, the classic multi-cloud play from the cloud-native era.</p><p>That gap closed without anyone announcing it (or I didn&#8217;t care to notice). Claude Code manages Codex: hands it a changeset, sets up a worktree for review, picks the model tier, exchanges messages, reads the verdict back. Codex will talk to Gemini. No framework sits in the middle, and it works surprisingly well. The models&#8217; raw coding ability, as far as I can tell, has barely moved in that time (irrespective of what AI pundits claim). What moved is their ability to coordinate, but oh boy &#8212; is it a hell of a difference!</p><h2>The harness moat is eroding too</h2><p>Once they coordinate, something odd happens to the harness: agents running without one start producing better work than agents running inside a custom one. Robert Martin &#8212; Uncle Bob &#8212; <a href="https://x.com/unclebobmartin/status/2098432570887217520">spent several weeks building a harness</a>: gates, tests, tools, protocols, all constraining the agents to work his way. When he came up for air the agents had improved enough that <em>&#8220;the need for my harness was obviated. Indeed, the need for any but the most liberal of harnesses may be obviated.&#8221;</em> </p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/unclebobmartin/status/2098744156709441896&quot;,&quot;full_text&quot;:&quot;Morning Bathrobe Rant: Rethinking Harnesses. &quot;,&quot;username&quot;:&quot;unclebobmartin&quot;,&quot;name&quot;:&quot;Uncle Bob Martin&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2037262183751704577/54AiU968_normal.jpg&quot;,&quot;date&quot;:&quot;2026-09-12T12:02:54.000Z&quot;,&quot;photos&quot;:[{&quot;img_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!5cse!,w_1028,c_limit,f_auto,q_auto:best,fl_progressive:steep/l_play_button_usfui2,w_88,e_colorize:0/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F__ss-rehost__tw-video-preview-13_2098743528981704704.jpg&quot;,&quot;link_url&quot;:&quot;https://t.co/e3Lbj777mw&quot;}],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:362,&quot;retweet_count&quot;:408,&quot;like_count&quot;:6498,&quot;impression_count&quot;:1890447,&quot;expanded_url&quot;:null,&quot;video_url&quot;:&quot;https://video.twimg.com/amplify_video/2098743528981704704/vid/avc1/720x1280/qkO_sHwnVYYBVpDl.mp4&quot;,&quot;video_preview_media_key&quot;:&quot;13_2098743528981704704&quot;,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>The next morning, in a <a href="https://x.com/unclebobmartin/status/2098744156709441896">bathrobe rant</a>, he went a step further: with the harness off, the work came out better than it had inside it. The unharnessed agent beat the harnessed one.</p><p>This is truly surprising.</p><p>But it matches my results closely. What I run instead now is really dull. A few skills tuned to how I actually work, a handful rather than a hundred. A few models, so one can review another (this is key). Cheap remote machines, because fourteen hours is a long time to keep a laptop lid open (and besides if you truly want to have at least some agents working at any given point in time &#8212; this is really a must).</p><p>But there is more. Take mutation testing. Three months ago I spent real time working out how to poke holes in agent-written tests with deterministic mutation testing: a harness step, wired by hand, because the agents would happily write tests that passed and proved nothing. Today they run mutation testing on their own work unprompted. For free (kind of).</p><p>Wow.</p><h2>Review becomes shape</h2><p>Adversarial review by a second frontier model catches real things. One round finds most of them, a second round a few more, and my ceiling of four exists for my own comfort; typically past two, the reviewers start inventing objections. That said, I have had runs where the worst defects surfaced in the third or fourth round, so the ceiling is still an experiment.</p><p>The morning has changed. Two machines have already argued over the lines, so I read the shape of what came back: which files were created and where; what each file is responsible for, so the division of labour is legible; which tests exist, at the level of &#8220;what does this protect&#8221;; which parts of the system were touched, and whether those are the parts that got tested.</p><p>Review always had a price, paid during authorship. Human authors used to arrive at review already understanding the code they&#8217;d written. With agents, that understanding no longer comes bundled with the implementation. Someone has to acquire it afterwards. What you can do is stop reviewing lines and start reviewing structure, which is where intent and taste still live and where the diff says nothing (or at least is too fine-grained, and it&#8217;s easy to miss the forest for the trees).</p><p>My bet: review gets reinvented within a year. It has to; the old ceremony is mostly inefficient and partly useless.</p><h2>The part I&#8217;m stuck on</h2><p>It&#8217;s slow. The coding is quick; adversarial review and mutation testing eat the hours, and a graph only lets you parallelise the edges that are genuinely independent. A lot of it still runs one after the other. At three or four parallel lanes on a subscription you sometimes hit the API throttle. And the industry numbers point the other way for now: Faros AI telemetry across ten thousand developers, reported in <a href="https://arxiv.org/abs/2605.01160">a May 2026 paper</a>, found pull requests up 98% and review time up 91% with delivery flat, which is what happens when the review moves nowhere. On metered pricing, working the way I work now, I&#8217;d burn eight to ten thousand dollars a month (in API-based pricing costs; realistically I use a bunch of subscriptions and rotate them so it is effectively way cheaper). Which still buys, overnight, what two or three weeks of developer time cost in 2024 money.</p><p>Tokens will get cheaper; they always have (at least for the last few years). And if capitalism is good at anything, it is driving the cost of technology down. The accounting problem is still here, though. Cost per unit of work has collapsed, visible spend per unit of time has spiked, and the visible number is the one that lands on a credit-card statement in real time.</p><p>I discussed this phenomenon with my friend recently. Either the return is real and hard to attribute, and the visible cost wins the meeting. Or maybe the development bottleneck was hiding a harder truth: some of the lower-priority work never had a convincing business case. We could leave it in the backlog without confronting that. Now each task comes with a visible token bill, and that makes it painfully obvious.</p><p>Either way, the work moved. From writing code to drawing the graph, and from reading code to reading its shape. A year from now, reading the diff line by line will feel like reading the assembly your compiler emitted: possible, occasionally necessary, and no longer where the judgment lives.</p><p>Want to make a bet?</p>]]></content:encoded></item><item><title><![CDATA[Where the Premium Goes]]></title><description><![CDATA[Sneakers, software, and the unpriced moat]]></description><link>https://www.pdole.ga/p/where-the-premium-goes</link><guid isPermaLink="false">https://www.pdole.ga/p/where-the-premium-goes</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 09 Sep 2026 06:03:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JNPI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JNPI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JNPI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 424w, https://substackcdn.com/image/fetch/$s_!JNPI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 848w, https://substackcdn.com/image/fetch/$s_!JNPI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!JNPI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JNPI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg" width="1456" height="1158" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1158,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2188170,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/214766065?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JNPI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 424w, https://substackcdn.com/image/fetch/$s_!JNPI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 848w, https://substackcdn.com/image/fetch/$s_!JNPI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!JNPI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fab0054b4-b927-4a0f-b40d-7eaa67d2f8dd_3000x2386.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><span>Recently I bought my son a pair of Nikes. They cost around three hundred z&#322;oty ($80 or so at today&#8217;s rate). I remember buying my first pair somewhere in the mid-nineties, in primary school, and it was a big deal &#8212; I had to travel to a different city and save money for months. The funny thing is the price was about the same &#8212; three hundred, give or take. One could say that the price tag for regular Nikes pretty much froze for 30 years.</span></p><p><span>Which is weird, when you think about it, because nothing else around it froze. </span><a href="https://stat.gov.pl/obszary-tematyczne/ceny-handel/wskazniki-cen/wskazniki-cen-towarow-i-uslug-konsumpcyjnych-pot-inflacja-/roczne-wskazniki-cen-towarow-i-uslug-konsumpcyjnych/"><span>Polish CPI rose about fourfold</span></a><span> between 1995 and 2025. </span><a href="https://stat.gov.pl/en/topics/labour-market/working-employed-wages-and-salaries-cost-of-labour/average-monthly-gross-wage-and-salary-in-national-economy-1950-2025,2,1.html"><span>Wages rose roughly tenfold</span></a><span>. </span><a href="https://fred.stlouisfed.org/data/CP0320PLM086NEST"><span>Polish footwear prices fell about thirty percent in nominal terms</span></a><span> over the same period. The regular price of Nikes in 1995 might have cost roughly the equivalent of &#8531; of an average Polish salary, while in 2026 it is more like 3% &#8212; a tenfold change.</span></p><p><span>Part of it is of course a remarkable growth of the Polish economy &#8212; from a country struggling after leaving the iron curtain to the 21st largest economy in the world (by GDP numbers). The other way of looking at it is less remarkable, but still interesting &#8212; Nike brand deflation. Nike stopped being a premium brand and became regular footwear.</span></p><h2><span>Shoe Dog</span></h2><p><span>One explanation is that manufactured goods deflated everywhere relative to services: containers, trade liberalisation, Chinese capacity. </span><a href="https://fred.stlouisfed.org/data/CUUR0000SEAE"><span>US footwear prices are up about 22% since January 1996</span></a><span> while the </span><a href="https://fred.stlouisfed.org/data/CPIAUCNS"><span>overall basket more than doubled</span></a><span>. Sneakers didn&#8217;t get cheap so much as everything else got expensive around them. You&#8217;ve probably already seen </span><a href="https://www.aei.org/carpe-diem/chart-of-the-day-or-century-8/"><span>Mark Perry&#8217;s much-circulated chart</span></a><span> elsewhere anyway, so you might know what I am talking about.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xG-V!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xG-V!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 424w, https://substackcdn.com/image/fetch/$s_!xG-V!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 848w, https://substackcdn.com/image/fetch/$s_!xG-V!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 1272w, https://substackcdn.com/image/fetch/$s_!xG-V!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xG-V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png" width="1320" height="1424" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1424,&quot;width&quot;:1320,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:116627,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/214766065?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xG-V!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 424w, https://substackcdn.com/image/fetch/$s_!xG-V!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 848w, https://substackcdn.com/image/fetch/$s_!xG-V!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 1272w, https://substackcdn.com/image/fetch/$s_!xG-V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F33c12b9e-c616-4576-ba81-1d53a2518f2a_1320x1424.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Exhibit A: Selected consumer goods and services</figcaption></figure></div><p><span>But there&#8217;s a second question underneath, and it isn&#8217;t that much about price. It&#8217;s about what a single pair still means, and who gets to keep that. Which is where Shoe Dog turns out to be useful.</span></p><p><span>Picture this: 1962, Kobe. Phil Knight walks into Onitsuka with no company at all, introduces himself as an American shoe distributor, </span><a href="https://japantoday.com/category/features/japan-yesterday/how-phil-knight-used-japan-to-launch-nike-1"><span>invents the name Blue Ribbon Sports on the spot</span></a><span>, and walks out with distribution rights for the western United States. First year: </span><a href="https://www.company-histories.com/NIKE-Inc-Company-History.html"><span>1,300 pairs, $8,000 gross</span></a><span>. About six dollars a pair &#8212; for a shoe someone else designed, someone else made, and someone else owned the name of.</span></p><p><span>Nike did eventually own factories briefly, in New Hampshire and Maine, and </span><a href="https://web.stanford.edu/class/e297c/trade_environment/wheeling/hnike.html"><span>closed them at a write-off of about $10m</span></a><span> &#8212; in a year when total profit was $15m. It hasn&#8217;t made a finished shoe </span><a href="https://www.nytimes.com/1985/11/07/business/nike-shutdowns.html"><span>since 1985</span></a><span>. </span><strong><span>The scarcity was never in the factory</span></strong><span> &#8212; Japan had good factories, which is precisely why he went there. It was getting the shoe onto the feet of American runners whose opinion travelled, with a track coach&#8217;s design and endorsement attached.</span></p><p><span>The memoir is charming, as founder memoirs typically are, but it also carries some interesting insights into Nike&#8217;s business model. Knight built a distribution and credibility company, and rented the shoe production.</span></p><p><span>All this brings me to software.</span></p><h2><span>App Store avalanche</span></h2><p><span>I stumbled upon a statistic recently. New app releases on the App Store grew about 30% in 2025, to roughly 600,000. Then </span><a href="https://9to5mac.com/2026/07/20/report-app-store-added-nearly-as-many-new-apps-in-h1-2026-as-in-all-of-2025/"><span>560,000 arrived in the first half of 2026 alone</span></a><span> &#8212; roughly double the prior-year half. Downloads over the same period grew 2%, to 17.6 billion. Downloads per new app roughly halved in twelve months.</span></p><p><span>The same shift shows up on the supply side. App Store publishers went from </span><a href="https://mac.eltima.com/app-store-stats/"><span>~780k in February 2025</span></a><span> to </span><a href="https://42matters.com/ios-apple-app-store-statistics-and-trends"><span>~1.1 million by August 2026</span></a><span>, while apps per publisher fell from 2.42 to 2.33. Interestingly, it isn&#8217;t incumbents shipping more (so where exactly is AI building software for them?). It&#8217;s a lot more people shipping their first thing.</span></p><p><span>Mobile games give the cleanest read on quality: </span><a href="https://naavik.co/digest/is-the-era-of-mobile-ai-slop-games-here/"><span>releases up 77%, games earning over $20,000 up 14%, and 96.7% of releases stuck under a thousand downloads</span></a><span>. It got to the point where Apple began </span><a href="https://www.forbes.com/sites/josipamajic/2026/03/24/the-apple-app-store-is-flooded-with-ai-slop-and-legitimate-developers-are-paying-for-it/"><span>blocking Replit and Vibecode updates under Guideline 2.5.2</span></a><span> in March.</span></p><h2><span>Marginal cost was never the point (so far&#8230;)</span></h2><p><span>The tempting read is that software is repeating the sneaker story. Sneakers got cheap because the marginal cost of production fell (offshoring, containers, scale).</span></p><p><span>But cheap to make was never Nike&#8217;s problem. Nike&#8217;s problem is that owning a pair stopped meaning anything &#8212; it flooded its own icons, drifted off performance, and the premium walked. What it cost to make the shoe had nothing to do with it.</span></p><p><span>Software&#8217;s marginal cost was already zero, and had been for decades. </span><a href="https://yunus.hacettepe.edu.tr/~tonta/yayinlar/hal-varian-information-rules-chapter-1.pdf"><span>Shapiro and Varian wrote it down in 1998</span></a><span>: information is costly to produce and cheap to reproduce, high fixed cost and negligible marginal cost, and therefore &#8220;</span><em><span>cost-based pricing just doesn&#8217;t work: a 10 or 20 percent markup on unit cost makes no sense when unit cost is zer</span></em><span>o&#8221;.</span></p><p><span>What AI collapsed is first-copy cost &#8212; the price of getting version one to exist at all. Building the first copy used to mean an agency and a five-figure invoice, $5,000 to $50,000 for something simple and six figures for anything real. It now means a $200 subscription and a few weekends. Two orders of magnitude off the price of existing at all.</span></p><p><em><span>(Side note: actually AI has an interesting effect on the marginal cost of software, as tokens spent by users are a very tangible cost; but that&#8217;s another story)</span></em></p><p><span>And the first-copy cost was doing two jobs. It filtered &#8212; shipping anything took enough effort that not everything got shipped. And it protected the margin, because catching up with whoever shipped first meant paying that effort all over again. Difficulty was the moat. Remove the moat, and we get 560,000 apps chasing 2% more attention.</span></p><h2><span>Where the scarcity goes</span></h2><p><span>It doesn&#8217;t disappear. That&#8217;s what </span><em><span>&#8220;software is dead&#8221;</span></em><span> gets wrong. Christensen wrote the correction two decades ago: commoditization at one layer sets off </span><a href="https://asymco.com/2014/06/23/clayton-christensen-on-capturing-the-upside/"><span>&#8220;a reciprocal process of decommoditization at the next level of value added&#8221;</span></a><span> (yeah, it&#8217;s a mouthful). Asked directly whether profits vanish or merely change hands, he was firmly on &#8220;change hands&#8221;.</span></p><p><em><a href="https://www.christenseninstitute.org/blog/abundance-scarcity-and-the-future-of-work-in-an-ai-world/"><span>Technology rarely eliminates scarcity; it moves it somewhere else in the system.</span></a></em></p><p><span>Generic software gets cheaper, more abundant, more competitive. </span><a href="https://www.pdole.ga/p/the-moat-you-sell-is-disappearing"><span>Producing it has stopped being a moat</span></a><span> &#8212; the barrier to building something functional has collapsed, and writing the code buys you less every quarter. What&#8217;s left is the relationship: owning the channel, or sitting close enough to the business to know what&#8217;s worth building. Knight had both, without needing the theory. He had the shelves and he had Bowerman&#8217;s runners, and he rented the shoe from a company that only had a factory.</span></p><p><span>Except Nike eventually lost that relationship. It </span><a href="https://www.latimes.com/business/story/2025-11-17/how-did-nike-lose-its-edge-in-running-shoe-market-it-once-dominated"><span>surrendered running to Hoka and On while sliding</span></a><span> from performance into lifestyle (Hill&#8217;s first act as CEO was to announce he was </span><a href="https://www.sportsbusinessjournal.com/Articles/2024/12/19/Unpacks/nike-earnings/"><span>&#8220;putting sport back at the center of everything that we&#8217;re doing&#8221;</span></a><span> &#8212; a sentence you only say once it has moved off the centre).</span></p><p><span>Which leaves one difference between the two halves of this story.</span></p><p><span>When Nike diluted its own icons it had a lever. It could make fewer </span><a href="https://www.nike.com/t/dunk-low-big-kids-shoes-C6spohtb/IQ0804-002"><span>Dunks</span></a><span> &#8212; painful, expensive, but available. Supply was something Nike controlled, so restraint was a strategy.</span></p><p><span>Nobody controls the supply of software. There is no franchise management for the App Store, no decision anyone can take to ship less (and thank God). Apple can reject slop at the gate, and does, but a gate is not a factory &#8212; and the App Store is about as tightly guarded as centralised marketplaces get. The abundance is the condition.</span></p><p><span>So the sneaker playbook &#8212; make less, charge more, restore the premium &#8212; isn&#8217;t available in software. Only the other half is: move to where the scarcity went, and get there before anyone else.</span></p><p><span>Three hundred z&#322;oty for a pair of Nikes is a bargain, and it took sixty years and a global supply chain to make it one. My guess is that generic software gets there way faster.</span></p>]]></content:encoded></item><item><title><![CDATA[Parallel Agentic Development, Mid-2026]]></title><description><![CDATA[The tab-renaming era is over]]></description><link>https://www.pdole.ga/p/parallel-agentic-development-mid</link><guid isPermaLink="false">https://www.pdole.ga/p/parallel-agentic-development-mid</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Tue, 04 Aug 2026 08:19:54 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!-8Ed!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-8Ed!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-8Ed!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-8Ed!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-8Ed!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-8Ed!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-8Ed!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg" width="1060" height="754" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:754,&quot;width&quot;:1060,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:223461,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/209661085?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-8Ed!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-8Ed!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-8Ed!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-8Ed!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8f14f28a-2e90-4773-b649-5887753d1ecc_1060x754.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Detroit Industry Murals, North Wall by Diego Rivera &#8212; placed in Detroit Institute of Arts, commissioned by Edsel Ford (Henry&#8217;s son). The original parallel agentic environment</figcaption></figure></div><p><span>Mid-2026, and we seem to be in an interesting situation. On one hand we have people claiming to run hundreds of agents single-handedly and produce millions of lines of code in a short span of time. On the other hand, we have people using their terminals with tabs named 1-2-3 to keep track of their AI agents, scratching their heads about how you would run 10+ agents in parallel and maintain your sanity at the same time. Naturally, most of the former claims come from LinkedIn influencers who haven&#8217;t built shit and are selling courses or paid services. It is important not to dismiss that side of the story entirely though &#8212; there are also genuine builders in that camp shipping production-grade stuff, and some of them have discovered genuinely useful tools and practices along the way.</span></p><p><span>Speaking about the tools and practices &#8212; there is a class of tools that has been popping up wherever you look since 2025. For the lack of a better term I&#8217;d call them a Parallel Agentic Environment (or Parallel Agentic Coding tool). They are not the remedy for all the pains of agentic development &#8212; but I do believe they could easily raise the limit from managing a handful of agents to tens of them, and still being in control.</span></p><h1><span>What&#8217;s a parallel agentic environment</span></h1><p><span>Before we start, let&#8217;s cover the definition. What is a Parallel Agentic Environment? This is a tricky question, because as is usually the case with emerging categories it depends who you ask &#8212; especially with a hefty dose of current AI hype and money flowing in, it is sometimes difficult to separate marketing from reality. Additionally, it is a moving target &#8212; it evolves as the market matures, and naturally the tools will likely capture a wider feature surface over time.</span></p><p><span>For the sake of this article I&#8217;ll define it as: a Parallel Agentic Environment is a tool that lets one developer run multiple AI coding agents at the same time, even on the same codebase, without them tripping over each other (or over you), usually through some sort of app / IDE run locally. This is necessarily a broad definition, but we&#8217;ll get into what it means on a more tangible level.</span></p><p><span>It is a surprisingly rich category. The most popular products and the most clear-cut for this category are:</span></p><ul><li><p><a href="http://superset.sh"><span>Superset</span></a></p></li><li><p><a href="https://onorca.dev"><span>Orca</span></a></p></li><li><p><a href="https://conductor.build"><span>Conductor</span></a></p></li><li><p><a href="http://devswarm.ai"><span>DevSwarm</span></a></p></li></ul><p><span>In fact there are many more that are somewhat similar but have a unique angle to it. Let&#8217;s just name a few that definitely feel different, and yet have some undeniable overlap:</span></p><ul><li><p><a href="https://nimbalyst.com/"><span>Nimbalyst</span></a><span> (previously Crystal) &#8212; an interesting take on the visual integration (charts and flows)</span></p></li><li><p><a href="https://cmux.com/"><span>cmux</span></a><span> &#8212; technically multiplexing terminal, but coincidentally could be used as a basic multi-coding agent tool. Side note: multiplexing terminals are an interesting beast on their own &#8212; recently </span><a href="https://mitchellh.com/writing/superlogical"><span>we&#8217;ve heard about Mitchel Hashimoto himself founding a new company in that space</span></a></p></li><li><p><a href="https://www.superconductor.com/"><span>Superconductor</span></a><span> &#8212; a step toward team development, and way closer to Software Factory category (which I&#8217;ll mention later)</span></p></li><li><p><a href="https://cursor.com/"><span>Cursor</span></a><span> &#8212; even Cursor over time started to adopt many of the features outlined in this group (not to mention, that you can use Cursor Agent within Parallel Agentic Environments).</span></p></li></ul><p><span>I&#8217;ve likely missed some &#8212; I focused predominantly on the ones I had some hands-on experience with. Tens of different tools in that space already exist, both open source and commercial (which, by the way, is a very clear signal of how crowded the category is).</span></p><p><span>Surprisingly the typical Parallel Agentic Environment all landed independently on the very similar set of primitives. In practice these are four broad groups of capabilities:</span></p><ul><li><p><strong><span>Parallelism</span></strong><span>: each agent works in its own isolated copy of the repo &#8212; a git worktree seems to be the standard &#8212; so their changes never collide on disk.</span></p></li><li><p><strong><span>Grouping</span></strong><span>: there&#8217;s a single surface where you can see what all of them are doing, review their diffs, and steer them with clearly segregated agents, terminal windows, logs and be notified with notifications when agents finish work or require user feedback.</span></p></li><li><p><strong><span>Integration</span></strong><span>: the environment handles the boring plumbing that makes parallelism work effectively and provides context for running agents: setup and teardown scripts which allow to run multiple workspaces in a conflict-free way, and the connection between an agent&#8217;s work and a ticket, a PR, or a CI run.</span></p></li><li><p><strong><span>Programmability</span></strong><span>: where the environment exposes some sort of programmatic surface (e.g. MCP) so you can drive the whole thing from code, as opposed to human UI interaction exclusively. In fact to be more precise: it is more about your agent to be able to drive the thing. I&#8217;ll come back to why that matters.</span></p></li></ul><p><span>Note I didn&#8217;t include here more complex combines that approach it from organization/team perspective and usually cover the entire SDLC process in a more orchestrated way. These kinds of tools feel like different beasts, an emerging category that I would colloquially call &#8220;</span><em><span>software factories</span></em><span>&#8221;. The typical examples in this category are: </span><a href="http://factory.ai"><span>Factory.ai</span></a><span> (the one that pretty much defined the term), </span><a href="http://8090.ai"><span>8090.ai</span></a><span>, </span><a href="http://overcut.ai"><span>overcut.ai</span></a><span> or </span><a href="https://visdom.virtuslab.com/"><span>visdom</span></a><span> (full disclosure: this one is being built by my colleagues at VirtusLab). This category in my mind is a distinct area &#8212; even though there is an overlap, which I expect will only grow as mentioned tools will try to capture a large portion of the market &#8212; and as such I won&#8217;t be describing them here (perhaps worth another write-up).</span></p><h2><span>What these environments actually do</span></h2><p><span>Strip away the marketing and every one of these tools does roughly the same eight things. Some do more of them, some do them better, but here they are:</span></p><p><strong><span>Worktree isolation</span></strong><span>. The market converged on worktrees as the means of work isolation. Each agent gets its own checkout, so their edits don&#8217;t collide. Every serious tool in this space uses it now &#8212; Superset, Conductor, Orca, DevSwarm all do it (and so does Cursor since 2.0+).</span></p><p><span>This capability allows you to almost instantaneously create a separate worktree (clone of your repo on a separate branch) so you can work on it without interrupting your other work on the same project.</span></p><p><span>Superset has </span><a href="https://docs.superset.sh/workspaces"><span>a neat 1:50 video</span></a><span> that describes this concept.</span></p><p><span>Side note: It is almost funny that the AI wave dug out an obscure and almost forgotten git feature from a decade ago &#8212; git worktrees were originally introduced around 2015. &#8220;Almost,&#8221; because if you think about it, this is a recurring pattern in technology: for instance cgroups and LXC existed for years with very limited usage and only became ultra-popular after Docker combined them into one convenient package.</span></p><p><strong><span>Agent grouping and console management</span></strong><span>. Since you&#8217;d be switching contexts you need to have some sort of segregation. Workspaces allow you to work on several aspects of a single project (or repo) at the same time. You can also have several projects/repos, each of them having multiple worktrees.</span></p><p><span>But it is not only that &#8212; you typically want to see some terminal, maybe have several agents (e.g. design with Fable, implement with Opus and review with Codex) on the same project. So you want to have all these grouped together, and neatly segregated across your projects and workspaces. Once you&#8217;re running five or ten workspaces, you need somewhere to see them all. A single pane of glass, or at minimum a shell multiplexer that is tmux with better fonts, and gives you reasonable grouping.</span></p><p><span>Here is a pretty good </span><a href="https://www.onorca.dev/docs/first-session"><span>5 min overview</span></a><span> with Orca from their docs.</span></p><p><span>And interestingly enough &#8212; continuing the re-discovery of old primitives &#8212; tmux itself was a pretty niche tool until the last few years, when we suddenly needed a way to multiplex parallel coding agents. Additionally, we typically get a visual distinction / sound notification when any of the agents finished its work or requires your interaction.</span></p><p><strong><span>Programmatic steering</span></strong><span>. CLI, MCP, whatever &#8212; in other words: means to drive the thing by the agent (or you via code &#8212; although that&#8217;s a secondary effect). Things like: spawn a worktree from a script. Send a prompt into a session. Read the diff back out. Once you have that, you can build things on top: hooks, scheduled automations, or your own mini-orchestrator that spawns ten worktrees with scoped agents. Some tools expose more of this than others.</span></p><p><strong><span>Setup / run / teardown hooks</span></strong><span>. If every worktree wants to run the app locally, you are likely to have some problems &#8212; the first one being: they all want port 3000 when you start up your app locally (or whatever your app framework uses). So the tool needs to give each worktree its own port range and handle the boring stuff: bring up the DB, run migrations, seed, start the app, kill it all when the agent finishes. Without this you&#8217;re not really running in parallel, you&#8217;re just running sequentially with extra tabs.<br><br>This is more powerful than it seems (even though it&#8217;s a trivial concept at its core). With a simple combo of setup.sh / run.sh / teardown.sh scripts and some predefined environment variables you can do a lot of useful stuff. Some are:</span></p><ul><li><p><span>Automatically copy your dotenv files from your main workspace</span></p></li><li><p><span>Tackle port collisions</span></p></li><li><p><span>Or even automatically reusing database across different workspaces of the same repo (or leveraging a single Postgres container; with on-the-fly creation of test databases with pre-seeded data on different workspaces)</span></p></li></ul><p><strong><span>Ticketing/PR integration</span></strong><span>. GitHub, Linear, Jira. An agent that opens PRs now could have a pretty good context of what it&#8217;s working on. An environment that reads a Linear ticket, assigns it to a worktree, spawns the agent with the right context, and closes the ticket on merge starts to be a neat productivity tool. For a certain class of tickets, you can pretty much have one click from a Linear ticket to your favorite agent solving it and opening a PR back to GitHub.</span></p><p><strong><span>Code review and diff experience</span></strong><span>. Parallel agents produce parallel diffs, and someone may still want to read them (e.g. me, even if sometimes cursorily). The tools differ meaningfully here: Conductor makes each workspace into a proto-PR you can review before it hits GitHub; Superset lets you scrub diffs inline in the terminal and stage hunks per-agent; Orca leans on GitHub&#8217;s native review UI plus its Chromium Design Mode for UI-level diffing.</span></p><p><strong><span>Remote environments</span></strong><span>. Run the fleet somewhere outside of your laptop &#8212; a beefy VPS, a shared dev cluster &#8212; and steer from a laptop, or a phone (e.g. Orca has this in preview as of mid 2026). Transparent server nodes seamlessly integrated into your local environment are quite useful &#8212; you can finally close your laptop, and the work still continues. These days, you can even easily open remote dev environments in your Cursor / VScode setup &#8212; so this is not limited to your Parallel Agentic Environment. (Side note: I think with the current trajectory, it is likely we are on the verge of rediscovering remote development environments on a larger scale).</span></p><p><strong><span>Automations. </span></strong><span>Hooks and scheduled workflows. In practice today, most &#8220;automations&#8221; in these tools mean scheduled work &#8212; flows you set on a cron-like schedule (&#8221;</span><em><span>every morning at 8am, spawn an agent that syncs the tracking issues and drafts the standup</span></em><span>&#8220;). Superset explicitly ships scheduled automations, and both Conductor and DevSwarm expose their equivalents. You can also build more interesting stuff &#8212; e.g scan GitHub issues on a regular basis, find issues with &#8220;low-hanging-fruit&#8221; label, create a workspace (perhaps on your remote machine), implement the changes and push them back to the repo as a PR for you to review when you wake up.</span></p><p><span>Event-driven hooks exist but are still shallow: mostly &#8220;agent finished, notify me,&#8221; occasionally &#8220;agent finished, run tests.&#8221; The richer reactive loops you&#8217;d want (&#8221;PR review comments received &#8594; hand them back to the agent with the diff&#8221;; &#8220;CI failed on main &#8594; spawn a debugging agent&#8221;) are more aspiration than shipped feature in mid-2026.</span></p><p><span>But this is where the environments stop being cockpits and start becoming workflow engines. It&#8217;s also where the flat, hierarchical, and software-factory bets visibly diverge: the flat cockpit tools give you scheduled hooks and let you wire your own reactions on top; DevSwarm bakes the wiring into HiveControl patterns; the software-factory tools treat the workflow itself as the product.</span></p><p><span>There are also features that exist in one or two tools but haven&#8217;t converged into a baseline yet. Orca has a mobile view &#8212; you can approve diffs and steer agents from a phone while walking somewhere (ties neatly with remote workspaces too). DevSwarm and Superset both expose enough hooks that you could build lightweight workflow triggers on top &#8212; things like &#8220;when this agent finishes, spawn a follow-up on the merged branch&#8221; &#8212; though almost nobody ships this as a first-class UI-level trigger yet. A handful of tools are experimenting with voice steering and push notifications on agent completion. None of these are yet at the point where a buyer would pick a tool on their strength, but they hint at what the next capability tier looks like.</span></p><h2><span>Divergence, up close</span></h2><p><span>Superset is the one I use the most. Desktop app, agent-agnostic (you can run whatever you want: Claude Code, Codex, Cursor Agent, OpenCode, Copilot, and so on). </span><a href="https://superset.sh/blog/roadmap-to-100-agents"><span>Their own honest admission tells you where they actually are</span></a><span>: Superset itself claims five to seven reliably today (well, the article is from February), with a roadmap to one hundred by the end of 2026. My own experience runs closer to low 10s.</span></p><p><span>Their roadmap post is refreshingly explicit about what breaks between here and there: &#8220;</span><em><span>Scale the agents all you want &#8212; it&#8217;s the humans that don&#8217;t scale.</span></em><span>&#8220; Even at low 10s we&#8217;re already well beyond the 2&#8211;3 you get by renaming tabs in the terminal. The gap between the marketing &#8220;100+&#8221; and the engineering &#8220;low tens&#8221; is the story worth watching, and I&#8217;m curious to see how they&#8217;ll attempt to pull it off. </span><a href="https://www.youtube.com/watch?v=BNVVD7e_hi4"><span>Their roadmap talk is worth watching for how they envision tackling this.</span></a></p><p><span>The mental model is flat. N agents, one human coordinator &#8212; you. Superset builds the cockpit and &#8212; at least for now &#8212; doesn&#8217;t pretend the agents can coordinate themselves.</span></p><p><span>Orca is the maximalist. Its makers refuse to call it an IDE at all; they&#8217;ve coined ADE &#8212; Agent Development Environment &#8212; on the theory that IDEs were built for you, and an ADE is built for you and your agents. It picked up somewhere north of 15,000 GitHub stars in months. It has an embedded Chromium browser with a &#8220;Design Mode&#8221; &#8212; click any UI element and it ships the HTML, CSS, and a screenshot straight into your agent&#8217;s prompt. It has remote worktrees over SSH, so you can run the fleet on your VPS box and steer from a laptop.</span></p><p><span>DevSwarm takes the bet the others don&#8217;t. It&#8217;s a full VS Code IDE. A little too heavy for me, but they have a genuinely different </span><a href="https://devswarm.ai/blog/hivecontrol-orchestrate-the-swarm/"><span>headline feature &#8212; HiveControl</span></a><span>: a lead agent in one workspace can plan a piece of work, spin up sub-workspaces, delegate scoped tasks to them, exchange messages, and stitch the results back together &#8212; all branch-isolated, all reviewable. Their own tagline is refreshingly on-point: &#8220;</span><em><span>Running parallel agents is solved. Coordinating them is the next challenge.</span></em><span>&#8220;</span></p><p><span>The unusual bit is that HiveControl is built around a handful of patterns that keep showing up in practice. Their team names some of them: the Plan-Do Pattern (one workspace understands the problem and creates an execution plan; others handle implementation) and the Review Stack Pattern (large changes get broken into smaller, focused PRs that stack into a review chain). (There is also a third one: Release Stack Pattern).</span></p><p><span>Instead of making you the coordinator, DevSwarm tries to make an agent the coordinator &#8212; with a shared orchestration tree, real GitHub and Jira integration, port networking per worktree, and now multi-repo workspaces for polyrepo shops. So we have: human-directed, agent-coordinated, and workspace-native. This is the hierarchical bet &#8212; a manager agent with reports.</span></p><p><span>The coordination bandwidth problem</span></p><p><span>The scarce resource in parallel agentic development is not agents, and is not compute. It&#8217;s coordination bandwidth &#8212; the ability of one human to keep N streams of machine-generated work coherent enough to merge, ship, and not regret it a week later. That&#8217;s a fixed, human quantity. It doesn&#8217;t scale with your GPU or token budget.</span></p><p><span>None of the tools from this category managed to effectively break that ceiling. They have a pretty similar approach to the problem (mostly flat structure with project/workspace layout, with human coordination). The notable exception is perhaps DevSwarm which is trying and says: raise the ceiling by promoting an agent to coordinator. The software-factory tools take a different route entirely &#8212; they template the common shapes at the org level, so most of the coordination happens without a human in the loop at all, with humans reserved for judgement calls at defined checkpoints.</span></p><p><span>If you build software for a living, and are not using any of these (or something similar, there are many others) &#8212; picking one is great bang for the buck (especially so, as some of them are free, within limits). The pricing model is a simple one anyway &#8212; which is reasonable, as you plug in your existing subscription-based (or API-based) AI models into it.</span></p><p><span>You are the coordinator now. I&#8217;m not yet convinced a lead agent can be trusted to merge its reports&#8217; work entirely without a human reading at least some pieces of the code, but that&#8217;s a bet worth watching. There are certainly people who have found some success in the opposite approach (i.e. skipping human review entirely), so I wouldn&#8217;t discard this approach.</span></p><p><span>Either way, the tab-renaming era is over. What comes next is not a single winner but a real market: plenty of rather serious tools, two coordination models on the laptop and a third at the org level, and &#8212; at least so far &#8212; one obvious bottleneck. Worth paying attention to which one bends first.</span></p>]]></content:encoded></item><item><title><![CDATA[The Road or the Hairball]]></title><description><![CDATA[The walls came down. Pave the road, or live in the sprawl]]></description><link>https://www.pdole.ga/p/the-road-or-the-hairball</link><guid isPermaLink="false">https://www.pdole.ga/p/the-road-or-the-hairball</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 22 Jul 2026 07:33:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!UFKf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UFKf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UFKf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 424w, https://substackcdn.com/image/fetch/$s_!UFKf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 848w, https://substackcdn.com/image/fetch/$s_!UFKf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!UFKf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UFKf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg" width="1240" height="824" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:824,&quot;width&quot;:1240,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:932836,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/207918877?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UFKf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 424w, https://substackcdn.com/image/fetch/$s_!UFKf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 848w, https://substackcdn.com/image/fetch/$s_!UFKf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!UFKf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F31a181dd-5112-4d99-87f9-40c08d05b13e_1240x824.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Highway and Byways by Paul Klee</figcaption></figure></div><p><span>I stumbled on </span><a href="https://www.mckinsey.com/capabilities/tech-and-ai/our-insights/tech-forward/low-code-no-code-a-way-to-transform-shadow-it-into-a-next-gen-technology-asset"><span>a McKinsey piece</span></a><span> from a few years ago the other day &#8212; a 2022 report on low-code and no-code, the last time we told non-technical people they could build software. Buried in it was this term: </span><strong><span>phantom couplings</span></strong><span>. A shadow app quietly consumes an IT system&#8217;s data, the IT team changes something reasonable, and the shadow app breaks in a way nobody traces back for weeks. Read it in 2026 and it doesn&#8217;t feel like history. If anything, it feels more relevant than ever.</span></p><p><span>Consider these two examples. One is about </span><a href="https://www.beri.net/article/jadepuffer-pocketos-ai-agent-production-rogue-enterprise-safety-crisis-2026"><span>the nine seconds it took an AI agent to delete a production database</span></a><span> this month. Operator-level access, one irreversible command, no human in the loop. Some called it a &#8220;backup verification gap.&#8221; That&#8217;s one way to put it. And it isn&#8217;t only startups. The </span><a href="https://www.theguardian.com/technology/2026/feb/20/amazon-cloud-outages-ai-tools-amazon-web-services-aws"><span>Financial Times reported</span></a><span> that AWS let its own coding agent, Kiro, fix a bug in production last December; the agent reportedly decided the cleanest fix was to delete and recreate the environment, taking AWS Cost Explorer down for thirteen hours. </span><a href="https://www.aboutamazon.com/news/aws/aws-service-outage-ai-bot-kiro"><span>Amazon disputes the framing</span></a><span> &#8212; it was, they said, &#8220;user error &#8212; specifically misconfigured access controls &#8212; not AI.&#8221; Hold onto that phrase. It turns out to be essential for what&#8217;s to come.</span></p><p><span>I wrote a piece a few weeks ago called </span><a href="https://www.pdole.ga/p/everyone-is-a-builder-now"><span>Everyone Is a Builder Now</span></a><span>. Non-technical people are shipping automations that hit Jira, post to Slack, write to prod APIs. That&#8217;s the fun and optimistic version. The other side of the same coin is: those automations are a live, messy dependency graph &#8212; and you can&#8217;t see it, let alone govern it. And it&#8217;s going to grow exponentially.</span></p><p><span>This is the part that&#8217;s genuinely new. For decades, software inside a company came from one place: engineering. That&#8217;s over. Increasingly the apps aren&#8217;t built by engineers at all &#8212; they&#8217;re spun up and adapted by finance, ops, marketing, the teams closest to the problem. Engineering is no longer the sole source of software, and the org has to cope with that whether it planned to or not.</span></p><h1>Two dangers, one cut leash</h1><p><span>Different dangers hide in here, and they&#8217;re worth pulling apart &#8212; because they&#8217;re related but not the same. One is </span><strong><span>invisibility</span></strong><span>: you don&#8217;t know the code exists, so you can&#8217;t trace it, can&#8217;t govern it, and it breaks something in a way nobody connects back for weeks. That&#8217;s the phantom-coupling problem. The other is </span><strong><span>blast radius</span></strong><span>: you may know exactly what the thing is, but it&#8217;s been handed the keys to do real, irreversible damage. It&#8217;s also where the security and compliance nightmares live. That&#8217;s the nine-seconds problem. One is that you can&#8217;t see it; the other is that what you can&#8217;t see can do anything.</span></p><p><span>The old world had both dangers too, but leashed. Low-code apps were active &#8212; a zap fired on a trigger, wrote to Salesforce, moved money without anyone opening a file. But they were bounded and deterministic: they ran only through the platform&#8217;s connectors, on surfaces the platform could see, and they did exactly what you wired, nothing more. Even the dumbest failures stayed inside their box &#8212; </span><a href="https://www.bbc.com/news/technology-54423988"><span>Public Health England quietly dropped sixteen thousand COVID cases</span></a><span> when an automated export hit an .xls row cap in 2020. Bad, but bounded: one broken step in one predictable pipeline, doing exactly the wrong thing it was wired to do. The AI version is unbounded and autonomous. It reaches any API, and it decides what to do on its own. Same two dangers &#8212; invisibility and blast radius &#8212; just with the leash cut.</span></p><h1>Pave it (or pretend)</h1><p><span>So what do we do about it?</span></p><p><span>The reflex is to lock it down. Approval workflow, security review, mandatory catalog. Every place I&#8217;ve watched try this has produced some version of the same result &#8212; the vibe collapses. And the vibe is the whole point. Non-technical teams build their own tools to scratch an itch that central IT would take weeks or months to reach, because in the grand scheme of priorities it never rises to the top. But let&#8217;s be honest &#8212; part of it is also just fun. The fun of building something shaped exactly for you and the handful of people you work with. Tell those people to route around a security screening, file a verification request, and wait for approval, and you don&#8217;t get safer software. You get no software.</span></p><p><span>And that would be a real loss. Modern organizations run on software, so people building the tools they need isn&#8217;t a hobby &#8212; it&#8217;s a spark worth protecting, not a thousand small liabilities to stamp out. The tension between untamed creativity and ungoverned mess is real. I feel it too.</span></p><p><span>Back to McKinsey. Their prescription back then was sensible &#8212; don&#8217;t ban the citizen builders, give them a path with guardrails. Give them a platform, a catalog, and &#8212; above all &#8212; a promotion path. Here&#8217;s what&#8217;s changed, and it&#8217;s the point of the story. Low-code had a platform. It was a walled garden &#8212; a bounded surface where every app was at least visible to the people who ran it. Vibe coding tore the walls down. The automations now run anywhere, call any API, touch live systems, and appear in no catalog at all. AI didn&#8217;t kill low-code. It killed the one thing that made low-code governable. The phantom couplings McKinsey worried about were manageable when you could at least see the apps. Multiply them by a thousand invisible ones and you have what most large organizations are struggling with right now.</span></p><p><span>So the right frame is the one platform engineering figured out a decade ago. A paved road. You publish the opinionated, supported path, you make it fast, and you accept that people can go off-road when they need to &#8212; off-road just means they carry the full weight themselves. And above all: not everything should be promoted. A private filter someone built for their own dashboard should stay a private filter forever. A workflow three teams now depend on has to graduate &#8212; get reviewed, get an owner, get real error handling &#8212; before the whole company is quietly standing on it. And the thing that decides which tier you&#8217;re in was never how the app was built. It&#8217;s blast radius: what it can touch, and who bleeds when it breaks.</span></p><p><span>So the old question &#8220;who&#8217;s allowed to build?&#8221; is no longer relevant. In 2026 the answer has to be everyone, whether you allow it or not. The question that matters now is: who&#8217;s on the hook when it breaks?</span></p><p><span>The sales rep&#8217;s Zapier can lie to them. Fine. The billing automation your finance team vibe-coded can lie to a customer. Not fine. The agent your engineering team gave production credentials to can delete a database in nine seconds. Definitely not fine. Same tools, three different tiers &#8212; and the thing that sorted them was blast radius. Which, you&#8217;ll remember, is what Amazon called &#8220;</span><em><span>misconfigured access controls.</span></em><span>&#8221;</span></p><p>We already built the hairball. That&#8217;s not the problem. The problem is telling ourselves we can put off paving the road &#8212; right up until something deletes the database in nine seconds.</p>]]></content:encoded></item><item><title><![CDATA[Good Riddance to the Grind]]></title><description><![CDATA[We're mourning the wrong part of the job]]></description><link>https://www.pdole.ga/p/good-riddance-to-the-grind</link><guid isPermaLink="false">https://www.pdole.ga/p/good-riddance-to-the-grind</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Thu, 09 Jul 2026 10:35:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!NRbG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NRbG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NRbG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NRbG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NRbG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NRbG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NRbG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg" width="1280" height="899" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:899,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:284651,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/206211819?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NRbG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NRbG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NRbG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NRbG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F155b2197-4ca4-4b71-bad8-1c06a3e34a03_1280x899.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Floor Scrapers by Gustave Caillebotte. Skilled, honest, back-breaking, and mostly gone.</figcaption></figure></div><p><span>Once upon a time, in a remote kingdom &#8212; you remember it, or you&#8217;ve heard the stories &#8212; a developer could show up at three consecutive daily standups and say, with a straight face, </span><em><span>&#8220;still moving the button.&#8221;</span></em><span> Or </span><em><span>&#8220;still debuggin&#8217;.&#8221;</span></em><span> Or </span><em><span>&#8220;still setting up the environment.&#8221;</span></em></p><p><span>Not designing anything. Not deciding anything. Moving the button. Or figuring out why the library that worked yesterday now throws on line 40. Reading a Stack Overflow thread from 2014 where the accepted answer is wrong and the third comment is right. Fighting the build. Guessing at an undocumented flag. Three days of this, and nobody blinked, because that was just&#8230; the job.</span></p><p><span>We&#8217;ve decided to be sad about losing that.</span></p><p><span>My take is &#8212; fuck that shit.</span></p><p><span>Sure, part of it was that the industry had normalized it. Around 2021, some software engineers lived a little like nobility &#8212; two or three hours of actual work wedged between table-football matches, Xbox sessions, and fruit Thursdays. </span></p><p><span>But that was only part of it.</span></p><p><span>So today, one camp is convinced AI is coming for software engineering &#8212; the jobs, the salaries, the whole profession. Gone. The other camp is busy insisting AI can&#8217;t actually code: </span><em><span>Look at this hallucinated function! Look at this security hole! It&#8217;ll never really do the work!</span></em><span> Well &#8212; AI does generate a lot of code. It also generates a lot of garbage in some cases. Both are true. But it&#8217;s the wrong argument.</span></p><p><span>We&#8217;ve quietly convinced ourselves that the interesting part of software engineering was typing. That the craft lived in the keystrokes. This prolonged grind of </span><em><span>vertically centering the div</span></em><span> or figuring out why the library misbehaves this time.</span></p><p><span>The interesting part was never writing the code.</span></p><p><span>It was deciding what to build and why.</span></p><p><span>It was the whiteboard sessions where the team fought two irreconcilable requirements into a truce.</span></p><p><span>It was the architecture &#8212; where the seams go, what talks to what, which decision you&#8217;ll regret in eighteen months.</span></p><p><span>It was pinning down requirements from a stakeholder who doesn&#8217;t know what they want until they see what they don&#8217;t want.</span></p><p><span>It was tying it all together: this system, that constraint, this team, that deadline, the thing that has to still be true when traffic is 10x.</span></p><p><span>That&#8217;s the work. That was always the work.</span></p><p><span>The three days lost to a misbehaving dependency? That was never the work. That was friction &#8212; an artifact of a tooling ecosystem we tolerated because we had no choice, dressed up over time as craftsmanship. We got so good at surviving the friction that we started mistaking the friction for the profession. For some, debugging the button became a personality.</span></p><p><span>Good times make for strange romances. When headcount is cheap and deadlines are soft, </span><em><span>&#8220;I spent three days on a library quirk&#8221;</span></em><span> is a perfectly acceptable sentence. Then the money got expensive, and it stopped being acceptable. And that&#8217;s roughly where we are.</span></p><p><span>So let the typing go. Genuinely &#8212; good riddance! If a machine can grind through the boilerplate, wire up the CRUD, chase the dependency hell, and hand me something that compiles, that is not the death of my job. That is the removal of the part of my job I never should have been romanticizing in the first place. Because everything that made software actually hard is still hard. Harder, if anything. When generating code is nearly free, the scarce skill isn&#8217;t producing it &#8212; it&#8217;s knowing what&#8217;s worth producing, how it should fit together, and whether it&#8217;ll survive contact with reality. The volume goes up; the need for judgment goes up faster. Someone still has to hold the whole system in their head and decide. That someone is an engineer. That was always what an engineer was &#8212; we just let the tooling convince us otherwise.</span></p><p><span>The doomers are mourning a profession that isn&#8217;t dying. The deniers are defending a task that deserves to. But software engineering isn&#8217;t going anywhere. At least, not for this reason, and not for now. What&#8217;s going away is the pretending &#8212; the three-day button-push, the friction-as-identity, the quiet fiction that typing was ever the point.</span></p><p><span>I&#8217;ll miss it about as much as I miss dialing a modem. The craft is still here. It just finally has to be about the craft.</span></p>]]></content:encoded></item><item><title><![CDATA[The AI hype is only part of the EU energy story]]></title><description><![CDATA[AI is the accelerant, but the fire was already burning]]></description><link>https://www.pdole.ga/p/the-ai-hype-is-only-part-of-the-eu</link><guid isPermaLink="false">https://www.pdole.ga/p/the-ai-hype-is-only-part-of-the-eu</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 01 Jul 2026 07:40:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_O1l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_O1l!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_O1l!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 424w, https://substackcdn.com/image/fetch/$s_!_O1l!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 848w, https://substackcdn.com/image/fetch/$s_!_O1l!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!_O1l!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_O1l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg" width="1024" height="851" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:851,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:340873,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/204259395?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_O1l!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 424w, https://substackcdn.com/image/fetch/$s_!_O1l!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 848w, https://substackcdn.com/image/fetch/$s_!_O1l!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!_O1l!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6231b5cb-5b8b-46da-857d-6e6a836a43fc_1024x851.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Boulevard Montmartre, Twilight by Camille Pissarro; another one of fourteen views of the Boulevard, all painted from a single hotel room</figcaption></figure></div><p><span>Last week </span><a href="https://www.pdole.ga/p/sovereignty-has-a-power-bill"><span>I wrote about</span></a><span> the enormous bill &#8212; the European Commission puts grid investment alone at </span><a href="https://energy.ec.europa.eu/topics/infrastructure/european-grids_en"><span>around &#8364;584 billion this decade</span></a><span> &#8212; that EU energy supply and the grid in general has to bear if we are to dream of long-term AI sovereignty.</span></p><p><span>On the one hand the investments needed are mind-blowing, on the other there is a whole industry already rubbing its hands at the business this inevitably brings. Yin-yang.</span></p><p><span>Naturally, there are sceptical voices, and they typically take one of two forms. The first says AI &#8212; in its current incarnation i.e. LLMs &#8212; is a bubble, and a bubble sooner or later pops; when it does, all these investments come to naught, and the problem pops along with it. The second says efficiency will outrun demand: the current architecture &#8212; transformers and the hardware under them &#8212; will be optimized so aggressively that the mountain of surplus compute we&#8217;re racing to build simply won&#8217;t be needed.</span></p><p><span>Personally, I have issues with both lines of argument. On the first: the fact that a bubble pops doesn&#8217;t mean the demand shrinks &#8212; the dot-com crash bankrupted companies, but demand for the internet grew many times over in the years that followed. On the second: </span><a href="https://www.pdole.ga/i/195257431/the-curve-ahead"><span>Jevons</span></a><span>. We have seen it recently with token costs &#8212; they have fallen at least fourfold over the last two years (you could easily make an argument they fell between 10-100x if you take into account fixed capability), and yet we typically pay more than we used to, not less. </span><a href="https://www.pdole.ga/p/ai-subscriptions-are-on-borrowed"><span>I wrote about that here</span></a><span>. </span></p><p><span>But let&#8217;s put this aside. I am willing to admit that I can&#8217;t predict the future with high precision. Time will tell.</span></p><p><span>And yet, there is another factor that makes both of these lines of thinking likely inaccurate. And the reason has almost nothing to do with AI. More than that &#8212; AI is only part of the reason demand is growing at all. Electrifying transport, swapping gas boilers for heat pumps, and reindustrializing the continent each add new load on a scale comparable to data centers. AI just happens to be the fastest-climbing line on the chart.</span></p><p><span>Let&#8217;s get to a different angle. The current explosion in energy demand is just an overcurrent - and the European grid infrastructure, as it is, requires a decade-long investment either way. Even if AI demand gets slashed by half tomorrow.</span></p><p><span>Let&#8217;s walk through five forces reshaping the European grid right now. Only one of them is about AI. The other four would be tearing at the system even if every frontier lab folded tomorrow.</span></p><p><span>But first, let&#8217;s look at the frame that makes the whole thing click.</span></p><p><span>In general there are two different things we sloppily lump together as &#8220;</span><em><span>the grid problem</span></em><span>.&#8221; One is </span><strong><span>rebuilding</span></strong><span> &#8212; changing what kind of power spins, when energy arrives, and how we store it.</span></p><p><span>The other is </span><strong><span>growing</span></strong><span> &#8212; adding raw load. These are not the same engineering project, they don&#8217;t run on the same timeline, and crucially, they don&#8217;t have the same cause.</span></p><p><span>The rebuild is forced by the energy transition itself. The growth is forced by electrification &#8212; electric cars, heat pumps, reindustrialization, and yes, data centers. AI lives almost entirely in that second bucket. It is a volume driver, and it barely touches the first.</span></p><p><span>Which is the whole point. If you pop the AI bubble, you remove a chunk of the </span><em><span>growth</span></em><span>. You don't remove a single gram of the </span><em><span>rebuild</span></em><span>. And the rebuild is hard, slow, and expensive. Hold that distinction &#8212; we'll come back to it.</span></p><p><span>OK, let&#8217;s now get into the five forces I&#8217;ve mentioned earlier.</span></p><h2><span>1. The grid forgot how to stay up</span></h2><p><span>Start with the most uncomfortable fact, the one we tend to avoid because it lives in a part of engineering we could have conveniently ignored for years.</span></p><p><span>On April 28, 2025, at 12:33 in the afternoon, the Iberian grid lost roughly 15 GW of generation in about five seconds &#8212; close to 60% of everything that was online at that moment. Voltage surged out of control, and within seconds Spain and Portugal separated from the rest of continental Europe and the lights went out for tens of millions of people. The bill was real: roughly 500 flights cancelled, factories like </span><a href="https://www.reuters.com/world/europe/spains-power-generation-nearly-back-normal-after-monday-blackout-says-grid-2025-04-29/"><span>Volkswagen&#8217;s Navarra plant idled</span></a><span>, and economic-loss estimates </span><a href="https://eprinc.org/wp-content/uploads/2025/06/EPRINC-Chart2025-22-IberianPowerFailure.pdf"><span>as high as &#8364;4.5 billion</span></a><span> (more likely though between &#8364;1-2 billion).</span></p><p><span>Here&#8217;s the key part. At the moment it failed, the Iberian system was running on </span><a href="https://www.agora-energiewende.org/fileadmin/Projekte/2023/2023-32_EU_System_stability/A-EW_The_Iberian_Blackout_recommendations_Annex_1.pdf"><span>over 70% solar and wind</span></a><span> through inverters. Even though the eventual root cause was voltage control, not the renewables share, the inverter question still matters &#8212; and here is why: inverters don't spin.</span></p><p><span>A gas, coal, nuclear, or hydro plant runs on an enormous lump of metal rotating at grid frequency &#8212; spinning in lockstep at the grid&#8217;s 50 hertz, synchronized across the whole European network. That spinning mass is not only a side effect &#8212; it&#8217;s also a shock absorber. When supply suddenly drops, all that rotational inertia keeps turning and buys the operators a few seconds of physics before frequency collapses. Those seconds are the safety margin: they are the window for fast frequency response from batteries (which can react in well under two seconds) and for governors on the remaining spinning plants to ramp up. Run out of that window and the grid&#8217;s last-ditch defense kicks in &#8212; automatic under-frequency load shedding, which simply disconnects whole blocks of customers to save the rest of the system. </span></p><p><span>Solar panels and wind turbines give you none of that for free. (And yes, a wind turbine does have a spinning rotor &#8212; but it is connected through power electronics that electrically decouple it from grid frequency, so the system can&#8217;t lean on that mass the way it leans on a directly-coupled generator.) </span><a href="https://docs.nlr.gov/docs/fy24osti/90256.pdf"><span>Grid-forming inverters</span></a><span> &#8212; the newer kind, programmed to actively imitate a spinning machine and inject power the instant frequency dips &#8212; can synthesize a version of it, but they are a rounding error in today&#8217;s deployment.</span></p><p><span>So you end up with a grid that is cleaner, cheaper to run on a sunny afternoon &#8212; and structurally twitchier than the one it replaced. Lower inertia means less margin for error. That fragility is not the whole story of the April blackout &#8212; </span><a href="https://eepublicdownloads.blob.core.windows.net/public-cdn-container/clean-documents/Publications/2025/iberian-blackout/Final%20Report%20on%20the%20Grid%20Incident%20in%20Spain%20and%20Portugal%20on%2028%20April%202025.pdf"><span>the official inquiries trace the collapse to a cascade of overvoltage and failed voltage control</span></a><span>, with low inertia and weak interconnection as aggravating conditions rather than the single trigger. But it is the structural backdrop against which any such cascade now plays out. (Side note: the report quoted here is a genuinely fascinating read &#8212; worth at least a cursory look.)</span></p><p><span>This has nothing to do with AI. It is a property of the energy transition itself. We are swapping spinning mass for silicon faster than we are building the things that compensate for it.</span></p><h2><span>2. We are paying people to take the electricity away</span></h2><p><span>The second force shows up in the price.</span></p><p><span>In 2025, Poland recorded over 300 hours of negative day-ahead electricity prices &#8212; more than double Great Britain&#8217;s 149, and on a clear upward march year over year. And remember: Poland is a renewables laggard by EU standards &#8212; about </span><a href="https://notesfrompoland.com/2025/01/02/poland-produced-record-29-of-power-from-renewables-in-2024/"><span>29% of its power came from renewables in 2024</span></a><span>, against </span><a href="https://ec.europa.eu/eurostat/web/products-eurostat-news/w/ddn-20250319-1"><span>an EU average near 47%</span></a><span>. If a country this far behind the curve is already paying people to take its midday solar, that tells you the imbalance is structural. April alone saw a record run, with roughly 27% of the country&#8217;s solar output exposed to prices at or below zero &#8212; </span><a href="https://pexapark.com/blog/prmc-polish-solar-capture-factors-hit-new-low-as-negative-prices-and-curtailment-surge/"><span>up from 5% a year earlier</span></a><span>.</span></p><p><span>A negative price means exactly what it sounds like. There is so much power on the grid at midday that producers pay buyers to absorb it. In Poland the tax authorities have actually had to rule on </span><a href="https://managementpapers.polsl.pl/wp-content/uploads/2025/11/232-Naru%C4%87.pdf"><span>how to charge VAT on the transaction</span></a><span> &#8212; because someone is rendering a service by taking your electricity off your hands.</span></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cExy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cExy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 424w, https://substackcdn.com/image/fetch/$s_!cExy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 848w, https://substackcdn.com/image/fetch/$s_!cExy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 1272w, https://substackcdn.com/image/fetch/$s_!cExy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cExy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png" width="586" height="502" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:502,&quot;width&quot;:586,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:50978,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/204259395?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cExy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 424w, https://substackcdn.com/image/fetch/$s_!cExy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 848w, https://substackcdn.com/image/fetch/$s_!cExy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 1272w, https://substackcdn.com/image/fetch/$s_!cExy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F074e43fe-1f35-4466-935c-5b55871c99e0_586x502.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Duck Curve &#8212; a plot of total load minus solar/wind; from Wikipedia</figcaption></figure></div><p><span>This is the duck curve &#8212; plot net demand (total load minus solar and wind) across a sunny day and the line sags into a deep belly at midday, when solar floods in, then rears up into a steep neck in the early evening as the sun drops and everyone gets home. And it is not a victory lap for solar, mind you. We have built enormous quantities of generation that all arrives at the same hour, in a system that still can&#8217;t move energy across time. So the Polish operator curtails &#8212; in one week before Easter 2025, PSE is reported to have cut around 77.5 GWh of wind and solar &#8212; on the order of what the country curtailed in all of 2023. The April picture is starker still: </span><a href="https://pexapark.com/blog/prmc-polish-solar-capture-factors-hit-new-low-as-negative-prices-and-curtailment-surge/"><span>Pexapark puts non-market curtailment at roughly 400 GWh</span></a><span> in the first four months of 2025.</span></p><p><span>Negative prices and curtailment are the grid telling you, in the bluntest language it has, that the system is unbalanced. No AI required so far.</span></p><h2><span>3. Europe is spending billions on batteries</span></h2><p><span>Which is why the third force is the most telling &#8212; just follow the money.</span></p><p><span>In 2025 the EU deployed a record </span><a href="https://reglobal.org/eu-deployed-27-1-gwh-of-battery-storage-capacity-in-2025/"><span>27.1 GWh of battery storage, up 45% on the year,</span></a><span> taking the installed fleet to nearly 80 GWh. Developers are bolting BESS onto existing solar portfolios as fast as they can finance it. And the queue behind that is staggering: by mid-2026, roughly 455 GW of battery projects and 375 GW of generation were stuck in distribution-grid connection queues across eight European markets &#8212; around </span><a href="https://beyondfossilfuels.org/2026/06/02/e100-billion-distribution-grid-backlog-weakens-europes-clean-economic-competitiveness/"><span>&#8364;100 billion of clean assets sitting in a line</span></a><span>.</span></p><p><span>Nobody is putting up tens of billions of euros in storage to power a chatbot. They are doing it because the problem in forces one and two is structural &#8212; too much variable generation, not enough inertia, not enough ways to shift energy from the sunny hour to the dark one. Storage is the market&#8217;s answer to a physics problem, and the size of the bet tells you how real the operators think that problem is.</span></p><h2><span>4. The geopolitics were here before the GPUs</span></h2><p><span>The fourth force is the one Europe has spent the decade learning the hard way.</span></p><p><span>Gas dependency. Uranium and fuel sourcing. The critical minerals inside every battery and every transformer. </span><a href="https://www.entsoe.eu/news/2025/02/09/entso-e-confirms-successful-synchronization-of-the-continental-european-electricity-system-with-the-systems-of-the-baltic-countries/"><span>The Baltic states only finished cutting themselves off from the Russian-controlled BRELL</span></a><span> network in February 2025, and that single act reshaped storage economics across the region overnight.</span></p><p><span>So energy security is not a 2026 invention. It is the thing that has been driving European policy since at least February 2022, through a winter of Liquefied Natural Gas (LNG) terminals and price caps and uncomfortable conversations about who controls the molecules. And AI didn&#8217;t create that exposure &#8211; it just gave us a fashionable new reason to talk about it.</span></p><p><span>And yet, the dependency didn&#8217;t disappear so much as move: the US supplied about 58% of the EU&#8217;s LNG imports in 2025 and is on track toward two-thirds in 2026, and Europe has its AI chips, its cloud, and increasingly its molecules sourced from the same single ally &#8212; which is its own kind of exposure. Especially in the shifting geopolitical climate.</span></p><h2><span>5. AI is the accelerant, not the fire</span></h2><p><span>So where does AI actually fit?</span></p><p><span>On top. It lands on a system that was already strained by the first four forces and presses on the timeline. The honest framing is that AI is one input among several, and not even the largest. In other words &#8212; it&#8217;s the accelerant, not the cause.</span></p><p><span>Look at the actual numbers and the panic deflates a little (well, AI-induced panic; as some sense of urgency is still truly warranted). Data centers are about 3% of EU electricity today, </span><a href="https://ember-energy.org/app/uploads/2025/06/Report-Grids-for-data-centres-in-Europe-PDF.pdf"><span>heading for roughly 4.5% by 2030</span></a><span>. AI is only a slice of that &#8212; </span><a href="https://www.europarl.europa.eu/RegData/etudes/BRIE/2025/775859/EPRS_BRI(2025)775859_EN.pdf"><span>the IEA put AI at around 15% of data-center demand in 2024</span></a><span>. So in absolute terms, AI is a low-single-digit percentage of total European load.</span></p><p><span>The dynamics are more interesting, though. Estimates of how much of the EU&#8217;s new electricity demand to 2030 belongs to data centers vary enormously &#8212; </span><a href="https://www.iea.org/commentaries/overcoming-energy-constraints-is-key-to-delivering-on-europe-s-data-centre-goals"><span>from around 10% in the IEA&#8217;s</span></a><span> stated-policy scenario to </span><a href="https://www.eurelectric.org/publications/ai-the-era-of-electric-intelligence/"><span>20&#8211;28% in industry projections</span></a><span>. That&#8217;s a big share of the growth &#8212; but it isn&#8217;t even alone there. The electrified industry adds about 80 TWh of demand growth by 2030, electric vehicles around 67 TWh, and data centers around 72 TWh. AI is the fastest-climbing slice of the growth, not the entirety of it.</span></p><p><span>And for anyone who still thinks EVs are a fad worth discounting: in 2024 pure battery-electric cars alone outsold diesel in the EU &#8212; </span><a href="https://www.acea.auto/files/Press_release_car_registrations_December_2024.pdf"><span>13.6% of new registrations against diesel&#8217;s 11.9%</span></a><span> &#8212; and in December 2025 they outsold petrol cars in a single month for the first time ever. The fleet is electrifying, whether one likes it or not.</span></p><p></p><p><span>Let&#8217;s now bring back the rebuild-versus-grow frame. AI is a growth force. It is responsible for </span><em><span>expanding</span></em><span> the grid &#8212; and it shares even that job with cars, heat pumps, and factories. It is responsible for almost none of the </span><em><span>rebuilding</span></em><span> &#8212; the inertia, the duck curve, the storage scramble. Those came from the energy transition, and they are the slow, expensive, decade-long part.</span></p><p><span>That distinction is exactly what survives the bubble. If AI demand evaporates, you remove a chunk of the growth pressure &#8212; and you don&#8217;t get your stable, boring 2019 grid back, because the entire rebuild is untouched. You&#8217;d still be low on inertia, still drowning in midday solar, still short of storage, still geopolitically exposed. Same structural crisis, minus one accelerant, with the deadlines nudged out by a few years.</span></p><h2><span>So what does this all mean?</span></h2><p><span>Back to software. None of this is AI&#8217;s fault &#8212; but all of it is AI&#8217;s problem.</span></p><p><span>Software people carry an instinct that compute scales like software. Need more capacity, spin up more instances, raise another round. But sovereign AI in Europe is no longer gated only by how many GPUs you can buy. It is gated by interconnection queues, inertia limits, and curtailment &#8212; a decade-long physical rebuild you cannot accelerate with a term sheet or </span><em><span>VC your way through</span></em><span>.</span></p><p><span>That reframes where the hard problems live. If midday solar is free-to-negative and energy storage is scarce, then when and where you run a workload stops being an infrastructure footnote and becomes an optimization problem. Training and inference want to chase the curtailed megawatt-hour &#8212; the energy nobody else can absorb &#8212; and that is a scheduling problem, a siting problem. In short &#8212; a software problem.</span></p><p><span>OK. So compute doesn&#8217;t get to escape the grid. It has to become grid-aware. My take is that we&#8217;ll also see some companies specializing in carbon- and price-aware scheduling &#8212; deciding which data center wakes up when the wind blows in the right country. By the way this isn&#8217;t hypothetical: </span><a href="https://blog.google/innovation-and-ai/infrastructure-and-cloud/global-network/data-centers-work-harder-sun-shines-wind-blows/"><span>Google has been running exactly this kind of carbon-intelligent scheduler since 2020</span></a><span>.</span></p><p><span>Full circle, then &#8212; to the real connection to sovereignty. The power bill itself was part of the problem. The grid that issues the bill is being rebuilt for reasons that predate the first transformer block &#8212; and anyone who wants to build sovereign AI on top of it inherits that rebuild whether they like it or not.</span></p><p><span>Last but not least &#8212; even if every AI lab folded tomorrow, Europe&#8217;s energy story would still be the dominant infrastructure story of the decade. Sovereignty isn&#8217;t optional.</span></p><p><span>It just gets a hell of a lot more headlines when we frame it as an AI problem.</span></p>]]></content:encoded></item><item><title><![CDATA[Sovereignty Has a Power Bill]]></title><description><![CDATA[The part where Europe gets the invoice]]></description><link>https://www.pdole.ga/p/sovereignty-has-a-power-bill</link><guid isPermaLink="false">https://www.pdole.ga/p/sovereignty-has-a-power-bill</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Thu, 25 Jun 2026 10:32:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Clnz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Clnz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Clnz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 424w, https://substackcdn.com/image/fetch/$s_!Clnz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 848w, https://substackcdn.com/image/fetch/$s_!Clnz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 1272w, https://substackcdn.com/image/fetch/$s_!Clnz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Clnz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp" width="1140" height="944" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:944,&quot;width&quot;:1140,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:262548,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/203323223?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Clnz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 424w, https://substackcdn.com/image/fetch/$s_!Clnz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 848w, https://substackcdn.com/image/fetch/$s_!Clnz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 1272w, https://substackcdn.com/image/fetch/$s_!Clnz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cece684-10e5-4001-a0de-084ccf4ed081_1140x944.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The Boulevard Montmartre at Night by Camille Pissarro &#8212; the painter's fascination with the new artificial light of the age</figcaption></figure></div><p><span>In April 2025, the European Commission </span><a href="https://commission.europa.eu/topics/competitiveness/ai-continent_en"><span>announced it would mobilise &#8364;200 billion</span></a><span> to make Europe an &#8220;AI continent&#8221; &#8212; &#8364;20 billion of it earmarked for up to five AI gigafactories, each a cathedral of a hundred thousand processors.</span></p><p><span>The phrase &#8220;AI continent&#8221; might make our American friends smile &#8212; the indulgent smile you give your grandpa when he announces he&#8217;s finally getting on Facebook. It&#8217;s a big aspiration from a place that doesn&#8217;t yet own a single layer of the stack. But the money is real, the ambition is serious, and you wouldn&#8217;t be wrong to read it as Europe finally getting its shit together. Or at least trying to.</span></p><p><span>As always, there&#8217;s another angle to it.</span></p><p><span>That same Europe needs </span><a href="https://energy.ec.europa.eu/topics/infrastructure/european-grids_en"><span>&#8364;584 billion of grid investment by 2030</span></a><span> just to keep the lights on as electricity demand climbs &#8212; a bill it has not figured out how to pay. We are writing cheques in Brussels for the compute, and quietly hoping the wires magically show up on their own.</span></p><p><span>They will not. Well, not magically at least.</span></p><h3><span>The queue outlasts the model</span></h3><p><a href="https://www.pdole.ga/p/the-kill-switch"><span>In the last article</span></a><span> I argued that sovereignty isn&#8217;t blocked by software, or even by chips. It&#8217;s blocked by electrons. Let me show you exactly where the block lives.</span></p><p><span>As I&#8217;ve mentioned &#8212; a single modern AI cluster draws as much electricity as a quarter-million homes. Anthropic expects that developing a single frontier model will need a 5-gigawatt data center by 2028 (equivalent to the output of roughly five nuclear reactors). In 2026, that&#8217;s roughly 6% of Poland&#8217;s entire installed generating capacity (75 gigawatts), ~4% of the UK&#8217;s (about 115), and ~3% of France&#8217;s (roughly 156).</span></p><p><span>A hyperscale data center can be built in eighteen to twenty-four months. Getting it connected to the grid in one of Europe&#8217;s five big data-center hubs &#8212; Frankfurt, London, Amsterdam, Paris, Dublin &#8212; </span><a href="https://ember-energy.org/app/uploads/2025/06/Grids-for-data-centres-in-Europe.pdf"><span>takes seven to ten years. In some cases thirteen.</span></a><span> At the same time a frontier model is superseded in twelve to eighteen months (Opus 3.x released in Mar 4, 2024, and Opus 4.x first released in May 22, 2025).</span></p><p><span>As of January 2025, </span><a href="https://ppc.land/dutch-grid-crisis-exposes-europes-ai-energy-infrastructure-gap/"><span>more than 11,900 businesses were queued for a grid connection in the Netherlands</span></a><span> alone, and operators have started openly rationing power. West London has connection quotes stretching into the 2030s, with </span><a href="https://www.london.gov.uk/sites/default/files/2025-12/Planning%20Regeneration%20Committee%20-%20Energy%20Infrastructure%20Report%20FINAL.pdf"><span>the transmission upgrades that would relieve it not due until 2037</span></a><span>.</span></p><p><span>And this isn&#8217;t for lack of a plan. The &#8364;584 billion figure comes from the EU&#8217;s 2023 Action Plan for Grids &#8212; a document that correctly diagnosed every problem above. Two and a half years on, the verdict is in: the ambition went up, but the wires didn&#8217;t. Roughly </span><a href="https://www.e3g.org/news/outdated-grid-planning-and-weak-governance-stalling-europe-s-transition-away-from-fossil-fuels/"><span>1,700 gigawatts of renewable and hybrid projects now sit in connection queues</span></a><span> across 16 countries &#8212; more than triple what&#8217;s needed for 2030, and about double the EU&#8217;s entire installed renewable fleet. In 2024 alone, </span><a href="https://beyondfossilfuels.org/wp-content/uploads/2025/05/REPORT_FINAL.pdf"><span>&#8364;7.2 billion of clean power was thrown away</span></a><span> across just seven countries because the grid couldn&#8217;t carry it. The plan&#8217;s voluntary tools were so clearly not enough that in December 2025 Brussels had to come back with </span><a href="https://www.catf.us/2025/12/europes-grids-package-marks-positive-shift-coordinated-eu-wide-infrastructure-planning-permitting/"><span>a binding Grids Package</span></a><span> &#8212; and a price tag that had ballooned to &#8364;1.2 trillion by 2040.</span></p><p><span>The chip was a chokepoint US controlled. The wire is a chokepoint Europe built for itself.</span></p><h3><span>Ireland&#8217;s example</span></h3><p><span>If you want to see where this ends, look at Ireland. Ireland did everything right by the old playbook. It courted every hyperscaler on Earth, built the Silicon Docks, became the data-center capital of Europe.</span></p><p><span>It had consequences, though.</span></p><p><span>In 2024, </span><a href="https://www.irishtimes.com/environment/2025/06/10/data-centres-accounted-for-more-than-fifth-of-irelands-electricity-usage-last-year/"><span>Irish data centers consumed 22% of the country&#8217;s entire electricity</span></a><span> &#8212; up from 5% a decade earlier, and more than every urban home in the country combined. The IEA says no other country carries a heavier load, and </span><a href="https://www.iiea.com/blog/data-centres-in-ireland-the-state-of-play"><span>forecasts put it near a third within a few years</span></a><span>.</span></p><p><span>So Ireland froze new connections. And when it finally lifted the freeze at the end of 2025, it replaced it with a sharp solution: </span><a href="https://avanzaenergy.substack.com/p/the-176-billion-detour-how-europes"><span>large new data centers now have to bring their own dispatchable power</span></a><span> &#8212; onsite generation or storage matching what they draw. In short &#8212; build your own electrons, or don&#8217;t build at all.</span></p><p><span>I don&#8217;t think that&#8217;s an Irish quirk. It&#8217;s more of a preview.</span></p><h3><span>But renewables!</span></h3><p><span>Yeah, yeah, yeah. Europe is crushing it on clean power. I know. And it&#8217;s true &#8212; in 2024, </span><a href="https://ec.europa.eu/eurostat/web/products-eurostat-news/w/ddn-20260114-1"><span>renewables hit 47.5% of EU gross electricity consumption</span></a><span>, up from 15.9% in 2004. By 2025, </span><a href="https://ember-energy.org/latest-insights/european-electricity-review-2026/"><span>solar and wind were outgenerating fossil fuels altogether</span></a><span>, with over 70% of EU electricity coming from low-carbon sources. Genuinely a triumph.</span></p><p><span>Hold the applause for one paragraph.</span></p><p><span>The headline hides the gap. Take my own country. Poland crossed 50% renewables by </span><em><span>installed capacity</span></em><span> in 2025 &#8212; a great press release. By </span><em><span>electricity actually generated</span></em><span> in 2024, </span><a href="https://notesfrompoland.com/2025/01/02/poland-produced-record-29-of-power-from-renewables-in-2024/"><span>renewables were about 29%, and coal still supplied 57%</span></a><span>, the highest share in the EU (which won&#8217;t surprise anyone who knows the country&#8217;s history, where coal was less a fuel than a national institution, the same industrial heartlands that, alongside the Gda&#324;sk shipyards, gave us Solidarno&#347;&#263;). The distance between what you&#8217;ve installed and what you can dispatch at 3 a.m. is the whole problem in one statistic.</span></p><p><span>A renewable grid is optimised for the </span><em><span>average</span></em><span> megawatt. An AI cluster needs the </span><em><span>instantaneous</span></em><span> gigawatt &#8212; at three in the morning, in February, with the wind down and the panels dark. And the two failure modes are different. A long training run that loses power doesn&#8217;t dim the lights; it loses everything since the last checkpoint. Serving the model to users is the opposite problem: it has to be on essentially always &#8212; what data centers are built around. Alas, this is neither how the wind nor the sun works.</span></p><p><span>Which is why the most striking line in European energy policy last year came not from a utility but from Ursula von der Leyen, who told the </span><a href="https://enlargement.ec.europa.eu/news/2025-state-union-address-president-von-der-leyen-2025-09-10_en"><span>2025 State of the Union</span></a><span> that Europe needs &#8220;more homegrown renewables &#8212; </span><strong><span>with nuclear as a baseload</span></strong><span>.&#8220;</span></p><p><span>And batteries don&#8217;t close the gap. Europe&#8217;s fleet is growing fast &#8212; </span><a href="https://www.businesswire.com/news/home/20260603383934/en/Stabilizing-Grids-and-Cutting-Costs-in-Half-Europe-Is-Banking-on-Grid-Relevant-Storage-Systems"><span>40 GW by the end of 2025</span></a><span> &#8212; but </span><a href="https://ember-energy.org/latest-insights/eu-battery-storage-is-ready-for-its-moment-in-the-sun/"><span>today&#8217;s batteries average just 1.5 to 2 hours of duration</span></a><span>. They&#8217;re brilliant at shifting cheap midday solar into the evening peak, and no help on the third still, grey day of a February high-pressure system. Storage makes a renewable grid smarter; it doesn&#8217;t make it always-on. For that you still need firm capacity underneath &#8212; long-duration storage, and the dreaded N-word, nuclear.</span></p><p><span>Read von der Leyen&#8217;s line, then, as the Commission quietly conceding that &#8220;just build more wind&#8221; is not, on its own, an AI energy strategy. You also need the boring, dispatchable, always-on megawatts &#8212; and that&#8217;s exactly where Europe&#8217;s clock runs slowest.</span></p><p><span>France&#8217;s first new </span><a href="https://www.neimagazine.com/news/france-delays-epr2-reactors-to-2038/"><span>EPR2 reactor won&#8217;t switch on until 2038</span></a><span>. Britain&#8217;s </span><a href="https://www.gov.uk/government/collections/sizewell-c"><span>Sizewell C took its final investment decision in 2025</span></a><span> and faces nine-to-twelve years of construction. </span><a href="https://world-nuclear.org/information-library/country-profiles/countries-o-s/poland"><span>Poland&#8217;s first reactor</span></a><span>: somewhere between 2036 and 2040.</span></p><p><span>For comparison, the United States is </span><a href="https://www.reuters.com/sustainability/climate-energy/shut-three-mile-island-nuclear-plant-may-restart-2027-owner-says-2025-06-25/"><span>bringing the mothballed Three Mile Island reactor back online by 2028 under a Microsoft power deal</span></a><span> &#8212; about four years from announcement to switch-on. America is restarting old reactors faster than Europe can build new ones.</span></p><h3><span>The race</span></h3><p><span>Let&#8217;s get a little uncomfortable by seeing where we are in comparison.</span></p><p><span>In 2024, </span><a href="https://climateenergyfinance.org/wp-content/uploads/2025/02/MONTHLY-CHINA-ENERGY-UPDATE-Feb-2025.pdf"><span>China added 429 gigawatts of new generating capacity in a single year</span></a><span> &#8212; a 21% jump, the most any country has ever added. Of that, 356 GW was wind and solar: roughly four and a half times the EU&#8217;s additions, and close to the entire installed wind-and-solar base of the United States. It also waved through 54 GW of new fossil capacity, because when you&#8217;re building baseload you take it where you can get it.</span></p><p><span>On the other side of the race, the American private sector. OpenAI&#8217;s </span><a href="https://openai.com/index/five-new-stargate-sites/"><span>Stargate project planned nearly 7 GW of AI capacity across new sites in nine months</span></a><span>, more than $400 billion committed, ahead of schedule. To put that 7 GW in European terms: it&#8217;s larger than the entire peak electricity demand of Ireland, which </span><a href="https://www.eirgrid.ie/news/ireland-records-new-record-peaks-electricity-demand-due-cold-weather"><span>peaks at roughly 5&#8211;6 GW</span></a><span>. One company, one project, secured more power for AI than a mid-sized European country uses for everything.</span></p><p><span>Europe&#8217;s answer, the </span><a href="https://commission.europa.eu/topics/competitiveness/competitiveness-coordination-tool-projects/ai-gigafactories_en"><span>gigafactory programme, won&#8217;t break ground until 2027</span></a><span>.</span></p><p><span>The &#8364;200 billion compute cheque and the &#8364;584 billion grid gap aren&#8217;t two separate stories. They&#8217;re the same story. The first is what Europe wants. The second is what Europe is standing on. If you ask me, right now the foot is going through the floor.</span></p><h3><span>The bypass?</span></h3><p><span>Now, the industry is not waiting around for the wire. It never does. The good thing about capitalism is that wherever there&#8217;s money to be made, someone will find a way.</span></p><p><span>If the public grid quotes you a decade, you build your own. Across Europe, data-center operators are putting up gas turbines, co-locating with dedicated wind and solar, turning their backup batteries into grid assets &#8212; anything to skip the queue. One estimate puts the </span><a href="https://avanzaenergy.substack.com/p/the-176-billion-detour-how-europes"><span>AI-dedicated data-center buildout in Europe at around &#8364;176 billion</span></a><span> through 2031, much of it now routed around the public grid. In the US, a single </span><a href="https://www.utilitydive.com/news/ge-vernova-bullish-on-electrical-infrastructure-as-turbine-backlog-grows/803631/"><span>turbine-maker&#8217;s order book has hit 100 GW</span></a><span>, sold out past 2028.</span></p><p><span>Clever. And for any individual operator, completely rational.</span></p><p><span>But notice what just happened. We started </span><a href="https://www.pdole.ga/p/the-kill-switch"><span>the last article</span></a><span> worried that a foreign government could flip a switch on our models. The escape route depends entirely on who owns the turbine. A European operator powering a European data center with European gas? That&#8217;s real sovereignty &#8212; exactly the point. But increasingly the builder and the owner are the </span><a href="https://www.itpro.com/cloud/cloud-computing/us-companies-dominate-the-european-cloud-market-regional-players-are-left-fighting-for-scraps"><span>same American hyperscaler</span></a><span>. In that case the private plant doesn&#8217;t shorten anyone else&#8217;s queue, doesn&#8217;t relieve the national grid, and answers to no European energy plan. It&#8217;s dimensioned for one data center and switchable by one owner &#8212; and that owner isn&#8217;t European. You haven&#8217;t escaped the foreign switch. You&#8217;ve poured concrete around it.</span></p><h3><span>The one chokepoint you can actually build</span></h3><p><span>So here&#8217;s where I land, and it&#8217;s less bleak than it may sound.</span></p><p><span>Of all the layers in the AI stack, the grid is the </span><em><span>only one Europe can fully own.</span></em><span> The lithography machines are Dutch but singular (and US controlled). The best open weights are American. The chips are American and Taiwanese. But a transmission line through Lower Silesia, a battery park in Iberia, a reactor on the Baltic coast &#8212; those can be ours, end to end, no foreign letter required to keep them running.</span></p><p><em>Can be</em> &#8212; with one asterisk. A grid wired with Chinese transformers and battery cells just swaps dependence on Nvidia for dependence on someone else. The rule is the same one we keep relearning: own the layer and its supply chain. The difference is that here, unusually, Europe isn&#8217;t starting from behind &#8212; in transformers, HVDC links and cabling it has real champions (Siemens Energy, Nexans, Prysmian). It has no such thing for frontier chips or models.</p><p><span>That&#8217;s the inversion worth sitting with. The thing everyone treats as the boring, capital-intensive afterthought &#8212; the wires, the firm megawatts, the storage &#8212; is the one rung of the ladder no one can switch off from abroad. Europe spent a decade chasing model sovereignty and chip sovereignty, the two things it can least control. The sovereignty it </span><em><span>can</span></em><span> build was sitting in the substation the whole time.</span></p><p><span>It is unglamorous. It is a permitting fight, a financing fight, a fight with everyone who&#8217;d rather not have a pylon in their sightline. &#8364;584 billion of fight. But it&#8217;s a fight with a known answer &#8212; pour the concrete, string the wire, sign the nuclear offtake, stop treating the grid as plumbing and start treating it as the strategic asset it has quietly become.</span></p><p><span>So it&#8217;s not so much that sovereignty is blocked by electrons. It&#8217;s not blocked. It&#8217;s just unbuilt.</span></p><p><span>And unbuilt is the one problem on this list that money and a decade of nerve can actually solve. The question isn&#8217;t whether Europe </span><em><span>can</span></em><span> build the grid. It&#8217;s whether it starts pouring concrete now &#8212; or finishes paying the power bill in someone else&#8217;s currency.</span></p>]]></content:encoded></item><item><title><![CDATA[The Kill Switch]]></title><description><![CDATA[What a letter to Anthropic taught Europe about its own AI]]></description><link>https://www.pdole.ga/p/the-kill-switch</link><guid isPermaLink="false">https://www.pdole.ga/p/the-kill-switch</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 17 Jun 2026 08:49:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!2ld5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2ld5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2ld5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2ld5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2ld5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2ld5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2ld5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg" width="1456" height="1162" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1162,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:469819,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/202195060?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2ld5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2ld5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2ld5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2ld5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4f4b00d8-544d-4feb-ab3a-a5955009d091_1600x1277.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Mahoning by Franz Kline, from the Whitney collection in NY (worth visiting while walking on the High Line)</figcaption></figure></div><p>As you&#8217;ve probably heard already, last week on Friday evening, June 12th, at 5:21 PM Eastern,<a href="https://www.anthropic.com/news/fable-mythos-access"> a letter</a> arrived at Anthropic from the US Commerce Department. By the early hours, two of the most capable (allegedly!) models on the planet &#8212; Claude Fable 5 and Mythos 5, released barely days earlier &#8212; were dark. Neither throttled nor rate-limited &#8212; just cleanly disabled. For everyone, everywhere.</p><p>The reason, on paper, was national security. The actual mechanism is worth sitting with for a second, because it&#8217;s the kind of detail that sounds made up. We&#8217;ll get into that later &#8212; though it&#8217;s not the part of the story that matters most to me.</p><p>Here is the thing: the order didn&#8217;t ban the models in a country. It banned them for <em>foreign nationals</em> &#8212; a nationality test, not a geography test. The geography test as it is, is already a difficult thing to enforce (VPNs and all). A nationality test is roughly impossible to enforce with a scalpel. You can&#8217;t reliably serve one model to an American in Seattle and withhold it from a French engineer sitting at the next desk, or from Anthropic&#8217;s own foreign-born staff.</p><p>And so Anthropic did the only thing the order left it room to do. It pulled the plug globally. I guess you wouldn&#8217;t be wrong to read this as a story about Anthropic getting unlucky. I mean one could argue they&#8217;ve <a href="https://techcrunch.com/2026/06/12/anthropics-safety-warnings-may-have-just-backfired-the-government-has-pulled-the-plug-on-its-most-powerful-ai/">brought it upon themselves</a> &#8212; for months Anthropic talked up Mythos as so dangerous it couldn&#8217;t be released publicly, and that drumbeat is precisely what drew the government&#8217;s eye.</p><p>That&#8217;s the obvious frame, and it&#8217;s not entirely false. There&#8217;s another angle to it, though.</p><h2><strong>The jailbreak or a regular feature</strong></h2><p>Here is what the government was apparently worried about, in Anthropic&#8217;s own telling. The dangerous &#8220;<em>jailbreak</em>&#8221; at the heart of the order &#8220;<em>essentially consists of asking the model to read a specific codebase and fix any software flaws.</em>&#8221;</p><p>Read that again. The catastrophic national-security capability is: <em>the model finds bugs in code.</em></p><p><em>&#8230;</em></p><p>Well, one cannot help but think there is something else to that story (a quid pro quo, maybe?). The <a href="https://www.latimes.com/business/story/2026-06-16/trumps-feud-with-ai-company-anthropic-keeps-heating-up">feud between Dario Amodei and the administration</a> has been simmering for months &#8212; the Pentagon even branded Anthropic a supply-chain risk. Anthropic, understandably, pushed back hard. They noted the same capability is <em>&#8220;widely available from other models (including OpenAI&#8217;s GPT-5.5), and is used every day by the defenders who keep systems safe&#8221;</em>. They noted the government acted on &#8220;<em>only verbal evidence of a potential narrow, non-universal jailbreak</em>.&#8221; And they pointed out &#8212; this is the part that should make any frontier lab&#8217;s blood run cold &#8212; that if this standard were applied consistently, &#8220;<em>it would essentially halt all new model deployments for all frontier model providers.</em>&#8221;</p><p>A government reached in and switched off two commercial frontier models &#8212; globally, for everyone &#8212; on the strength of a verbal claim about a capability that amounts to reading source code. These two happened to be days old. The next one it reaches for might be the model your bank, your hospital, or your government already runs on.</p><p>The point isn&#8217;t whether this particular order was wise or even survivable &#8212; Anthropic is challenging it, dozens of cybersecurity veterans have signed an <a href="https://techcrunch.com/2026/06/15/cybersecurity-vets-protest-dangerous-us-government-ban-on-anthropics-most-powerful-models/">open letter against it</a>, and these two models will likely be back. The point is that we just watched the switch get flipped. We now know it exists, where it sits, and whose hand is on it.</p><h2><strong>We&#8217;ve run this experiment before</strong></h2><p>Here&#8217;s the part where the tech industry&#8217;s famously short memory kicks in, so let me get ahead of it.</p><p>For years, the way a government controlled access to advanced computing was through <em>chips</em>. We built an extraordinarily long, extraordinarily fragile chokepoint stack and then acted surprised that someone might use it.</p><p>Start at the bottom: the machines that make the chips. Extreme ultraviolet lithography is a global monopoly held by a single Dutch company, ASML &#8212; effectively one building in Veldhoven, with no alternative supplier on Earth. One rung up: the chips themselves. Since 2022, successive US export controls &#8212; <a href="https://www.bis.gov/press-release/department-commerce-announces-rescission-biden-era-artificial-intelligence-diffusion-rule-strengthens">the BIS rules, then the &#8220;AI Diffusion&#8221; framework</a> that sorted the entire world into tiers of chip access &#8212; turned Nvidia silicon into an instrument of foreign policy. The H20 saga, the country tiers, and the whole apparatus. (The Diffusion Rule itself was later rescinded before it ever took effect &#8212; a reminder that these levers get pulled and reversed at will).</p><p>Fabs, then chips. And now, with Anthropic, the third rung: the trained model itself.</p><p>So, it is not a novelty. It&#8217;s more of a pattern reaching its logical conclusion. Political scientists Henry Farrell and Abraham Newman gave it a name &#8212;<a href="https://direct.mit.edu/isec/article/44/1/42/12237/Weaponized-Interdependence-How-Global-Economic"> </a><em><a href="https://direct.mit.edu/isec/article/44/1/42/12237/Weaponized-Interdependence-How-Global-Economic">weaponized interdependence</a></em> &#8212; the idea that whoever sits on a chokepoint in a shared network can quietly switch the rest of us off. The US already controlled who gets the machines and who gets the chips &#8212; and the way it does that is itself a small lesson in how this game is played. ASML is Dutch, not American, yet Washington still dictates who it can sell to. The lever is the Foreign Direct Product Rule: because roughly a tenth of an EUV machine&#8217;s value is US-origin technology (down to the laser unit, made by Cymer, a US subsidiary ASML bought in 2013), the US claims jurisdiction over the entire machine &#8212; wherever it is built and whoever buys it. A ten percent stake, a hundred percent veto. The Dutch have spent years quietly trying to claw that control back.</p><p>Controlling who gets the model was always the next move. We just hadn&#8217;t seen it happen to a <em>live</em> one before.</p><h2><strong>&#8220;It&#8217;s just 1999 again&#8221;</strong></h2><p>Now, the steel-man, because we deserve one.</p><p>The contrarian case is that none of this is new and everyone needs to calm down &#8212; this is overreaction, export bans happen, the models will be cleared faster than most, the tech industry just has short memories.</p><p>And the history is real. In the summer of 1999, the United States classified the PowerMac G4 as a munition &#8212; a weapon &#8212; for crossing the one-gigaflop threshold, and banned its export to some fifty countries. Apple turned the absurdity into an ad: &#8220;<em>For the first time in history a personal computer has been classified as a weapon by the US government.</em>&#8221;</p><div id="youtube2-lb7EhYy-2RE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;lb7EhYy-2RE&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/lb7EhYy-2RE?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Go back a little further and<a href="https://www.vice.com/en/article/encryption-debate-the-end-of-end-to-end/"> strong crypto was literally classed as a weapon under US export law too</a> &#8212; Netscape&#8217;s &#8220;International&#8221; build shipped a deliberately crippled 40-bit cipher that researchers cracked in days. Export controls on computing power are not new. They land, they make headlines, and they usually pass.</p><p>And on the narrow question &#8212; will these two models come back? &#8212; the contrarians are probably right. They likely will.</p><p>But the analogy quietly smuggles in an assumption. In 1999, a US export control landed on a continent that trusted the United States. It was an ally&#8217;s bureaucratic hiccup &#8212; annoying, temporary, fodder for a clever ad. The <em>context</em> made it small.</p><p>Sadly &#8212; and I am saying this as a European &#8212; that context is gone.</p><h2><strong>The number that matters more than the ban</strong></h2><p>Two days before the Anthropic block, the European Council on Foreign Relations<a href="https://www.cbsnews.com/news/europe-us-ally-european-council-on-foreign-relations-poll/"> published a poll</a> across fifteen countries. Only 11% of Europeans now describe the United States as an &#8220;ally&#8221; &#8212; down from 22% in late 2024. In every country surveyed, majorities doubt the US would actually defend them if attacked.</p><p>If you have to ask why, you&#8217;ve spent the last year or so under a rock. It&#8217;s the backdrop of an 18-month rupture.<a href="https://www.pwc.ie/services/tax/insights/us-tariffs-02042025.html"> &#8220;Liberation Day&#8221; tariffs</a> that pushed the headline US rate on European goods to 20% &#8212;<a href="https://www.allianz.com/content/dam/onemarketing/azcom/Allianz_com/economic-research/publications/specials/en/2025/april/2025_04_04_what_to_watch.pdf"> part of a salvo</a> that lifted America&#8217;s average tariff to its highest level in over a century. A fragile 15% truce the European Parliament could only ratify by bolting on a sunset clause &#8212; because it didn&#8217;t trust Washington to honor the deal. Over $7 billion in EU fines on US Big Tech, answered by US visa bans on the European officials who wrote the digital rules. An $800 billion European rearmament plan. US troops coming home from Germany. Ursula von der Leyen, a year ago, calling it &#8220;a very strong wake-up call&#8221;; by Davos, <a href="https://www.euronews.com/my-europe/2026/01/20/in-davos-von-der-leyen-pitches-european-independence-versus-trumps-worldview">calling for &#8220;a new form of European independence.&#8221;</a></p><p>A perfect storm.</p><p>So no, this is not 1999. In 1999 the switch belonged to a friend. The mechanism is identical; the meaning is quite different. <strong>The novelty was not the ban.</strong> It&#8217;s that the hand on the switch is no longer one Europe is sure it can trust.</p><p>The contrarians are right that export bans aren&#8217;t new. They&#8217;re wrong that this one is just another. The context has changed &#8212; the US is no longer an ally Europe can count on.</p><h2><strong>The sovereignty hair-trigger reflex</strong></h2><p>Europe&#8217;s response was immediate and predictable: build our own. The day the switch flipped, the Polish open-weight model Bielik &#8212; an Apache-licensed project built by volunteers at the SpeakLeash foundation and the Cyfronet supercomputing center in Krak&#243;w &#8212; <a href="https://x.com/bielikllm/status/2065737626313740462">quote-tweeted</a> Anthropic&#8217;s own shutdown announcement with a single line: &#8220;Do you need a clearer argument for developing sovereign AI models?&#8221;</p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/bielikllm/status/2065737626313740462&quot;,&quot;full_text&quot;:&quot;https://t.co/oDc3DNWdBa\nCzy trzeba czytelniejszego argumentu za rozwijaniem suwerennych modeli AI?&quot;,&quot;username&quot;:&quot;bielikllm&quot;,&quot;name&quot;:&quot;Bielik AI&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1975341859116351488/ueFmPvT0_normal.jpg&quot;,&quot;date&quot;:&quot;2026-06-13T10:06:44.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{&quot;full_text&quot;:&quot;The US government, citing national security authorities, has issued an export control directive to suspend all access to Fable 5 and Mythos 5 by any foreign national, whether inside or outside the United States, including foreign national Anthropic employees.\n\nThe net effect of&quot;,&quot;username&quot;:&quot;AnthropicAI&quot;,&quot;name&quot;:&quot;Anthropic&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1798110641414443008/XP8gyBaY_normal.jpg&quot;},&quot;reply_count&quot;:11,&quot;retweet_count&quot;:9,&quot;like_count&quot;:68,&quot;impression_count&quot;:2566,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>It is a good line.</p><p>And I believe the sovereignty reflex is the right instinct. But here&#8217;s where I want to slow down, because the reflex hides a trap that the cloud era didn&#8217;t have.</p><p>Think back to ten years ago, when the worry was cloud lock-in. If you got nervous about AWS or Azure owning your destiny, you had a real escape hatch: on-premise. Bring it back in-house. Buy your own servers, run your own racks. The migration was miserable, expensive, slow &#8212; but it was <em>possible</em>, and at the end of it you genuinely owned the alternative. Sovereignty was a purchase order away.</p><p>What&#8217;s the equivalent for a frontier model today?</p><p>The good news is better than you&#8217;d expect. Open-weight models &#8212; Llama, Mistral, DeepSeek, Qwen (and Bielik) &#8212; are now genuinely competitive: Qwen-family systems post <a href="https://leaderboard.steel.dev/leaderboards/swe-bench-verified/">SWE-bench Verified scores</a> in the high seventies on real GitHub issue resolution. Closed Anthropic systems still top many public trackers &#8212; so the case for open models isn&#8217;t that they clearly lead, but that they&#8217;re becoming good enough for a growing share of enterprise work.</p><p>And increasingly, the thing that matters isn&#8217;t the raw weights at all &#8212; it&#8217;s the harness wrapped around them: the agent loop, the tool calls, the scaffolding that turns a model into something that actually does work. Claude Code is the obvious commercial example of the pattern; open-source harnesses are increasingly replicating it &#8212; replicable, and improving fast, which quietly tilts the math even further toward the open alternative. You can rent European GPUs, deploy the weights, and run the whole thing yourself. Open-source agent harnesses increasingly speak the same APIs as the commercial tools, so in principle you can run the entire loop locally &#8212; your code never leaving the building.</p><p>So we&#8217;re fine, right? We just self-host.</p><p>Not quite. Look at what you&#8217;re actually standing on. The open weights you&#8217;d fall back to are American (Llama) or Chinese (DeepSeek, Qwen). And whichever you pick, it runs on Nvidia GPUs &#8212; the very silicon that sits behind the chip export controls we just walked through. The fallback to escape US AI dependence is built on US AI hardware. No European AI accelerator exists on any credible timeline before 2030; the one new advanced fab on the continent, TSMC in Dresden, makes chips for cars, not for training runs.</p><p>With cloud, you could buy your way to <em>sovereignty</em>. With AI, you can only buy your way to <em>less dependence</em>.</p><h2><strong>The wall</strong></h2><p>Fine, says the optimist. Less dependent is still better. Build the European stack anyway &#8212; the models, the data centers, the whole sovereign rig. Throw money at it.</p><p>And this is where the story stops being about software, or even about chips, and becomes about something far more stubborn.</p><p>Because a sovereign AI is not only about software. It&#8217;s a physical thing that has to sit somewhere &#8212; in a building, drawing power, on a grid. The weights are portable. The machine that runs them is emphatically not. And the moment Europe tries to actually own that machine at scale, it runs headfirst into a constraint that no amount of capital or political will can conjure away on the relevant timeline.</p><p>Sovereignty, it turns out, isn&#8217;t blocked by software. It isn&#8217;t even, ultimately, blocked by chips.</p><p>It&#8217;s blocked by electrons.</p><p>Here&#8217;s what that means in practice. A data center can be built in twelve to eighteen months. Getting it connected to the electrical grid &#8212; the cables, substations, and permits that actually deliver the power &#8212; now takes seven to ten years across Europe&#8217;s major hubs. That gap is the real wall. You can pour concrete and rack GPUs at the speed of capital; you cannot conjure a high-voltage connection on the same timeline, no matter how much money or political will you throw at it.</p><p>And the load is not small. A single modern AI cluster draws as much electricity as a quarter-million homes. Anthropic expects one frontier training run to need five gigawatts by 2028 &#8212; the output of roughly five nuclear reactors, for a single model. To put that in perspective: <a href="https://notesfrompoland.com/2026/02/19/renewables-pass-50-of-polands-installed-power-capacity-for-first-time/">Poland&#8217;s entire installed generating capacity</a> is around 75 gigawatts, <a href="https://www.enerdata.net/publications/daily-energy-news/uk-reached-525-share-renewables-its-power-mix-2025.html">the UK&#8217;s</a> about 115, <a href="https://analysesetdonnees.rte-france.com/en/annual-review-2024/keyfindings">France&#8217;s</a> roughly 156. One training run is already a few percent of a mid-sized European country&#8217;s entire power system &#8212; and a serious sovereign-AI buildout means many of them running at once. In Ireland, data centers already eat <a href="https://www.irishtimes.com/environment/2025/06/10/data-centres-accounted-for-more-than-fifth-of-irelands-electricity-usage-last-year/">more than a fifth</a> of the entire country&#8217;s electricity, heading for nearly a third; official plans put <a href="https://www.irishtimes.com/politics/2026/06/09/data-centre-electricity-demand-could-exceed-power-usage-of-entire-country/">future data-center demand at roughly the nation&#8217;s all-time peak</a>. In the Netherlands, the grid is so congested that some new connections are being quoted waits into the mid-2030s. The grid is full, and the line is years long.</p><p>So the real race for AI independence in Europe is, underneath everything, a fight over power. The electrical kind.</p><p>And that&#8217;s a whole different story. A story that deserves another write up.</p>]]></content:encoded></item><item><title><![CDATA[Everyone Is a Builder Now]]></title><description><![CDATA[The shadow IT deluge]]></description><link>https://www.pdole.ga/p/everyone-is-a-builder-now</link><guid isPermaLink="false">https://www.pdole.ga/p/everyone-is-a-builder-now</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Thu, 11 Jun 2026 07:46:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!SH61!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SH61!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SH61!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 424w, https://substackcdn.com/image/fetch/$s_!SH61!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 848w, https://substackcdn.com/image/fetch/$s_!SH61!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!SH61!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SH61!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg" width="1027" height="689" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:689,&quot;width&quot;:1027,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!SH61!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 424w, https://substackcdn.com/image/fetch/$s_!SH61!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 848w, https://substackcdn.com/image/fetch/$s_!SH61!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!SH61!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74dfd899-baa6-4b46-8d32-cb5eca89cfdc_1027x689.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Improvisation Deluge by Wassily Kandinsky</figcaption></figure></div><p>Last year (!) Brian Armstrong told the world that <a href="https://x.com/brian_armstrong/status/1963315806248604035">~40% of daily code at Coinbase is AI-generated</a> &#8212; and that he wanted it past 50%. I bet many people read it as a layoff memo with a future tense. Truth be told, the story seemed to write itself: AI gets good at code, engineers get cheap, then optional, then gone.</p><p>And <a href="https://www.reddit.com/r/jobs/comments/1t7bk2j/coinbase_layoffs_ceo_sacks_700_employees_in_7am/">you wouldn&#8217;t be wrong &#8212; the layoffs happened</a>, just a few months later.</p><p>There&#8217;s another angle to it. Look at what Armstrong actually does on weekends. He builds little web apps. <a href="https://finance.yahoo.com/news/brian-armstrong-wants-half-coinbase-105348015.html">By his own account</a>, &#8220;it&#8217;s not really coding &#8212; I just observe, communicate, execute, and copy-paste, and it usually works.&#8221;</p><p>It&#8217;s interesting because he is by no means alone. <a href="https://www.reddit.com/r/ClaudeAI/comments/1s7jdof/garry_tan_opensourced_gstack_his_personal_skill/">Garry Tan runs Y Combinator and still ships ten to twenty thousand lines of code a day on the side</a> &#8212; cheered by some as proof of what&#8217;s possible, dismissed by others as throwaway slop. At least it&#8217;s entertaining.</p><p>I have personally had many conversations mirroring this sentiment.</p><p>The point is &#8212; people further from the codebase keep climbing back into it. Not to replace the engineers, but rather because &#8212; among other things &#8212; it turned out to be fun. Hell, it is!</p><p>That&#8217;s the part where I start to question the ongoing replace-or-augment debate.</p><p>Essentially, we were sold two futures. In one, AI makes engineers faster (which it does), and demand for them explodes. In the other, it makes them unnecessary. In other words, one assumes that the demand will expand (due to cost going down) and the other assumes that it is fixed (or at least growing way slower than supply).</p><p>What if the pile was bottomless, though? Or what if it&#8217;s at least way deeper than we think? So deep in fact, that due to the entry barrier falling through the floor, the cohort of engineers, even if it grows, will be dwarfed by an even larger cohort of non-engineers building software?</p><p>Brian Armstrong even said as much in <a href="https://x.com/brian_armstrong/status/2051616759145185723">his layoff Twitter/X post</a>:</p><blockquote><p><em>&#8220;Second, AI is changing how we work. Over the past year, I&#8217;ve watched engineers use AI to ship in days what used to take a team weeks. Non-technical teams are now shipping production code and many of our workflows are being automated. The pace of what&#8217;s possible with a small, focused team has changed dramatically, and it&#8217;s accelerating every day.&#8221;</em></p></blockquote><p>I just happen to work with an institutional investment office &#8212; analysts and portfolio people. Most not being software engineers by training. In the old days they were supposed to be the consumers of software the tech team builds for them.</p><p>Instead they became the catalyst. They build their own workbenches now. They manipulate data, stand up small applications that crunch a dataset and render a dashboard, ship things that are genuinely useful. People who hadn&#8217;t written a line in fifteen years, or ever, are suddenly in the code. And you can see it on their faces &#8212; they are enjoying it!</p><p>If you think about that, we&#8217;ve run this experiment before, every time the entry barriers to programming dropped. Assembly to Fortran and C let scientists write their own simulations instead of begging the systems team (not mentioning what the introduction of Python did!).</p><p>The spreadsheet turned millions of accountants and analysts into programmers who would never accept the title.</p><p>No-code/low-code did it again (albeit never at the scale we were promised).</p><p>Each wave, the prediction was the same &#8212; this abstraction will reduce the need for programmers &#8212; and each time the population of people who build software went up, not down, because the barrier to entry fell and a new cohort walked in.</p><p>LLMs are just the steepest drop yet. The barrier used to be syntax, setup, and the years it takes to stop being dangerous. The barrier is now a clearly stated intent. So of course the CEO is back. So is the analyst, the PM, the designer, the ops lead who spent a decade routing around IT with increasingly cursed spreadsheets.</p><p>Yeah, yeah, yeah. Jevons Paradox. We heard it before.</p><p>But hear me out: the cheaper code gets, the more of it the organization wants, and the more of your non-engineers quietly become part-time builders.</p><p>That&#8217;s not a threat to your engineering function! It&#8217;s a vastly larger surface area of software, created by people who don&#8217;t report to it, don&#8217;t follow its conventions, and don&#8217;t know what they don&#8217;t know. Give it a second thought, because this has significant implications for tech organizations (or rather &#8212; any kind of organization).</p><p>Which is exactly what happened the last time. The spreadsheet didn&#8217;t just make accountants into programmers &#8212; it made them into programmers nobody supervised, and the unsupervised work turned out to run real things. A <a href="https://elischolar.library.yale.edu/cgi/viewcontent.cgi?article=1502&amp;context=ypfs-documents">copy-paste slip in a risk spreadsheet</a> helped JPMorgan misjudge the exposure behind a multi-billion-dollar loss. An <a href="https://en.wikipedia.org/wiki/Growth_in_a_Time_of_Debt">Excel error in a single Reinhart-Rogoff paper</a> propped up austerity policy across actual governments. Audits have long found that <a href="https://www.i-nth.com/guidelines/why-good-practice-matters/95-of-spreadsheets-have-errors">the overwhelming majority of consequential spreadsheets contain errors</a>. So within a decade an entire industry existed to govern the result: version it, audit it, lock down what data it could touch, and stop a fat-fingered cell from quietly restating earnings.</p><p>And a vibe-coded app is the spreadsheet&#8217;s far more dangerous descendant. A spreadsheet sits in a file; an app reaches into the production database, calls live APIs, moves money, holds the PII. And yes, I have seen the blasphemous contraptions people already build in Excel. Still, a spreadsheet error pretty much stays in its cells; an app error is a breach, a leak, or a 3 a.m. page.</p><p>In essence though &#8212; the builders came first. The rails came after &#8212; retroactively &#8212; because the rails turned out to be where the real problem, and the real market, lived.</p><p>So here&#8217;s the thought.</p><p>Everyone is busy building the tools that help amateurs produce the first working version. Others are building AI SDLC pipelines for engineers.</p><p>Almost no one is building the part that makes the thousandth version last &#8212; the pipelines, the guardrails, the paved road that lets a portfolio analyst&#8217;s Saturday app run on Monday without an engineer babysitting it.</p><p>And any technology leader with visibility into budgeting knows &#8212; <a href="https://dev.to/oneentry/80-of-the-it-budget-goes-to-maintenance-not-growth-how-to-break-out-of-this-trap-46a2">the majority of costs of software development are spent on maintenance</a>.</p><p>The market for helping non-engineers build things (not prototypes!) that last is under-explored. The on-ramp is crowded (prototype). The highway is crowded (SDLC pipelines). Nobody is paving the regular road.</p><p>If the prototype is now free, the durable thing around it is the scarce one. That&#8217;s not the small market. It might even be the bigger one, as more and more people become builders.</p><p>We&#8217;ll see what happens. One thing is certain &#8212; the bugs caused by incorrectly filled Excel spreadsheets will be overshadowed by the problems that will come from the new wave of apps being built. </p><p>Fasten your seatbelts, because it&#8217;s going to be a hell of a ride.</p>]]></content:encoded></item><item><title><![CDATA[On the Inversion of Practices]]></title><description><![CDATA[How Software Industry Inverts Every Good Idea]]></description><link>https://www.pdole.ga/p/on-the-inversion-of-practices</link><guid isPermaLink="false">https://www.pdole.ga/p/on-the-inversion-of-practices</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 27 May 2026 08:55:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!HDC3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HDC3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HDC3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 424w, https://substackcdn.com/image/fetch/$s_!HDC3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 848w, https://substackcdn.com/image/fetch/$s_!HDC3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 1272w, https://substackcdn.com/image/fetch/$s_!HDC3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HDC3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2502977,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/199052301?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HDC3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 424w, https://substackcdn.com/image/fetch/$s_!HDC3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 848w, https://substackcdn.com/image/fetch/$s_!HDC3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 1272w, https://substackcdn.com/image/fetch/$s_!HDC3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b157a03-36d3-4af3-89c9-307b7844eff4_2496x1664.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Matisse&#8217;s Le Bateau</figcaption></figure></div><p>Next week I&#8217;m heading to New York for <a href="https://www.tech-week.com/">Tech Week</a>. I always look forward to the trip &#8212; partly for the events, partly because New York is just a great city to land in. If you&#8217;ve never been, MoMA is one of those places worth carving out half a day for. Starry Night, the Rothkos, the Picassos, and so on.</p><p>MoMA is also home to a funny story.</p><p>In October 1961, the museum opened a new exhibition: <em>The Last Works of Matisse: Large Cut Gouaches</em>. Among the pieces was Matisse&#8217;s <a href="https://en.wikipedia.org/wiki/The_Boat_(Matisse)">Le Bateau</a> &#8212; a sailboat and its reflection. It hung in the gallery for 47 days before a visitor, <a href="https://news.artnet.com/art-world/moma-hangs-matisse-upside-down-683900">a stockbroker named Genevieve Habert, pointed out that it was upside down</a>. The reflection was on top. The boat was on the bottom. Tens of thousands of people had walked past it, and no one else noticed. </p><p>The software industry runs on a similar trick. </p><p>There&#8217;s a pattern in tech that&#8217;s so reliable you could almost set a watch by it. Someone has a good idea. The idea spreads and turns into practice. Within one cycle, the industry has implemented something that is, on close inspection, pretty much the opposite of what the practice was supposed to be. And yet, we keep the original name.</p><p>Agile is the obvious one. <a href="https://agilemanifesto.org/">The original manifesto</a> is 25 years old. It&#8217;s eight bullet points long, and almost militantly anti-process. &#8220;<em>Individuals and interactions over processes and tools.</em>&#8221; &#8220;<em>Responding to change over following a plan.</em>&#8221; What we built on top of it is two-week deadline cycles dressed up as sprints, and Jira workflows with more states than the periodic table. The retrospective &#8212; the one ritual whose entire job was to <em>change something</em> &#8212; became the meeting everyone skips (or has lost hope that it can meaningfully improve anything). We took a document arguing against process and turned it into a process-heavy way to ship software. Hell, we've even built <a href="https://scaledagile.com/certification/">an entire certification industry</a> on top of it &#8212; over a million SAFe-certified professionals, another 1.5 million through Scrum Alliance!</p><p>DevOps had a simpler fate. The whole point was to <em>tear down the wall</em> between development and operations. Shared ownership. No handoffs. Engineering teams responsible for what they shipped. So we built a new wall, painted &#8220;DevOps&#8221; on it, and hired a team to stand behind it. The job posting reads: &#8220;<em>DevOps Engineer &#8212; own the CI pipeline so the developers don&#8217;t have to.</em>&#8221; The wall is taller now, and it has a Jira queue.</p><p>Microservices were supposed to give teams independent deployability. Small services, clear contracts, deploy on your own schedule. What most companies actually built is a distributed monolith &#8212; every service depending on every other service, except now the dependencies travel over a network with retries and timeouts and a 40-page runbook. We didn&#8217;t decouple the system. We decoupled the <em>deployments</em> and coupled everything else harder. The reward for splitting your monolith is that now your monolith has latency.</p><p>And &#8212; the part that got me thinking about all this from my <a href="https://www.pdole.ga/p/the-triad-coordination-tax">previous article</a> &#8212; the Product Trio. Cagan&#8217;s point was that PM, design, and engineering should sit so close together that the seams disappear. One team, three skills, one outcome. What we built instead is three sub-organizations with separate VPs, separate roadmaps, and a shared Confluence space. The trio became a triad became a tax.</p><p></p><p>So why does this keep happening? My working theory is dull.</p><p>Good ideas in our industry arrive as <em>practices</em>, and orgs metabolize practices the only way they know how &#8212; by assigning them a manager, a budget line, and a team name. The practice dies on contact with the org chart. The main aspect that survives is the name. </p><p>With the AI revolution, we are about to have new ideas. Ideas that will improve how we build software at scale. The next big idea may be about how product disciplines collapse into each other, with AI as the connective tissue. </p><p>And yet &#8212; give it a cycle. I suspect it will have a separate vertical in the org chart and a VP before the cycle ends.</p>]]></content:encoded></item><item><title><![CDATA[The Triad Coordination Tax]]></title><description><![CDATA[Engineering is collapsing into product. So is design, so is middle management. The coordination tax between them is shrinking.]]></description><link>https://www.pdole.ga/p/the-triad-coordination-tax</link><guid isPermaLink="false">https://www.pdole.ga/p/the-triad-coordination-tax</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Fri, 22 May 2026 09:28:07 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!dCfR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dCfR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dCfR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 424w, https://substackcdn.com/image/fetch/$s_!dCfR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 848w, https://substackcdn.com/image/fetch/$s_!dCfR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 1272w, https://substackcdn.com/image/fetch/$s_!dCfR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dCfR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png" width="1248" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1248,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1194780,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/198629578?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dCfR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 424w, https://substackcdn.com/image/fetch/$s_!dCfR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 848w, https://substackcdn.com/image/fetch/$s_!dCfR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 1272w, https://substackcdn.com/image/fetch/$s_!dCfR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7d17ebdd-ee35-4998-8266-6597b7f40c39_1248x832.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In a recent client engagement, I&#8217;ve been working with investment analysts. A small tech team works alongside the business. The analysts themselves are building their own POCs &#8212; not through a PM, not through a backlog, not through a request-for-proposal that turns into a Jira epic six weeks later. They prototype directly. And they do it with Claude Code. The small tech team (us) picks up where the business&#8217;s prototype runs out of road, expands it, and productizes what survives.</p><p>Five years ago, this engagement would have been a delivery team of six+ on the vendor side &#8212; PM, designer, frontend, backend, devops, you name it &#8212; handing off to a passive business sponsor on the client side. </p><p>So, what happened?</p><p>The seats that have disappeared are the seats that existed to translate between the business and the engineering.</p><p>That is the article in one anecdote. What used to flow through a chain of specialists &#8212; each translating the work for the next &#8212; now flows directly. The seats that survive on both sides are smaller, more senior, and more shaped.</p><p>In <a href="https://www.pdole.ga/p/play-it-again-sam">the previous essay</a>, I described what I think is happening to the composition of the software engineering workforce. This is the companion question:</p><p>What shape does the surviving organization actually take?</p><p>I believe there are three threads to this.</p><h2>The Triad was a coordination structure</h2><p>For about fifteen years, the canonical tech org had three sub-organizations. Engineering. Product. Design. The &#8220;EPD triad&#8221; &#8212; popularised by Marty Cagan / SVPG (<a href="https://www.goodreads.com/book/show/35249663-inspired?ref=nav_sb_ss_2_8">Inspired, 2008</a>):</p><blockquote><p><em>In modern teams, we tackle these risks prior to deciding to build anything. These risks include value risk (whether customers will buy it) [Product], usability risk (whether users can figure out how to use it) [Design], feasibility risk (whether our engineers can build what we need with the time, skills, and technology we have) [Engineering], and business viability risk (whether this solution also works for the various aspects of our business&#8212;sales, marketing, finance, legal, etc.) [Product].</em></p><p></p><p>Inspired: How to Create Tech Products Customers Love (Chapter 7)<br>by Marty Cagan / SVPG (annotations mine)</p></blockquote><p>It roughly maps to a &#8220;three risks&#8221; frame:</p><ul><li><p>Product = value/viability</p></li><li><p>Design = usability</p></li><li><p>Engineering = feasibility</p></li></ul><p>The triad existed because specialists couldn&#8217;t easily understand each other&#8217;s work. PMs translated business intent into requirements engineers could execute. Designers translated user needs into visuals PMs could approve. Engineers translated requirements into a working system, and then translated the system&#8217;s constraints back into something PMs could communicate to the business.</p><p>Cagan&#8217;s work became part of the intellectual foundation for product people. By the mid-2010s, it was an industry-wide convention, and organizational structures grew to mimic the frame.</p><p>Instead of tight collaboration, we drew organizational boundaries along these dividing lines. (This might have been a distortion of Cagan&#8217;s thinking, by the way.)</p><p>Every translation now carried a tax &#8212; a meeting, a Jira ticket, a Figma handoff, a spec doc, a Slack thread, a manager whose entire job was to enforce the protocol. The tax was the price of having specialists who couldn&#8217;t do each other&#8217;s jobs.</p><p>The cracks start to appear in the facade of this tax, though.</p><p>Sahil Lavingia, Gumroad&#8217;s CEO, predicted it in <a href="https://www.youtube.com/watch?v=OFkVBi_9FPI">a walkthrough of his own workflow</a> back in January 2025. I highly recommend watching it &#8212; it has aged remarkably well, in times when material from last month is often already outdated. His estimate of the speed gain, in certain cases, is around 40x &#8212; a number that sounds absurd until you notice <strong>it is mostly the </strong><em><strong>translation</strong></em><strong> time between specialist teams that has been removed</strong>, not the time spent doing the underlying work.</p><p>A PM who prototypes in Cursor no longer needs an entire engineering team to validate feasibility &#8212; the prototype itself is the validation. Sure, it might need proper guardrails and scaffolds, and maybe someone to productionize the output. But that is very different from throwing a ticket over the wall.</p><p>Likewise, a designer who can ship their own React doesn&#8217;t wait in a queue for engineers (though they might need a code review).</p><p>Shopify now includes <a href="https://www.linkedin.com/posts/sarahhum_shopify-raised-the-bar-for-pm-interviews-share-7364026820310007810-aGR3/">vibe coding in PM interviews</a>. Think about that. Oh, and Shopify <a href="https://www.news.aakashg.com/p/vibe-coding-interview?hide_intro_popup=true">is not the only one</a>. Google, Netflix, and Stripe followed. There is an expectation that a PM can ship a working prototype in 2026.</p><p>Maryam Ashoori, leading WatsonX product at IBM, mentions that the traditional 1 PM to 8 engineers ratio is being replaced by <a href="https://www.produxlabs.com/product-thinking-blog/episode-241-ai-strategy">1 PM to 0.5 engineers</a>.</p><p>Heck, <a href="https://www.svpg.com/a-vision-for-product-teams/">Marty Cagan himself predicted</a> last year that within 3&#8211;10 years we should expect product teams to compress to 3 people.</p><p>Joel Lewenstein, the Chief Design Officer at Anthropic, calls it <a href="https://www.fastcompany.com/91519219/why-are-designers-engineers-and-product-managers-in-a-three-way-stand-off">a Venn diagram coming closer together</a> &#8212; heavy role collapse upstream in ideation and prototyping, with clearer swim lanes still re-emerging downstream at scale (this is productionization).</p><p>The triad is shrinking because the protocol between the three organizations was the expensive part. And a large chunk of that protocol got eaten by AI.</p><h2>Layers go with it</h2><p>Some management layers existed to manage the translation. When the translation goes away, these layers have nothing left to manage.</p><p>GitLab announced <a href="https://about.gitlab.com/blog/gitlab-act-2/">Act 2</a> on May 11. &#8220;<em>Eight layers is too deep for a company our size, and management layers are slowing us down.</em>&#8221; They are removing up to three layers in some functions and reorganizing R&amp;D into ~60 smaller teams with end-to-end ownership &#8212; nearly doubling the count of independent units. CEO Bill Staples explicitly framed it as &#8220;<em>rewiring internal processes with AI agents, automating reviews, approvals and handoffs.</em>&#8221;</p><p>Meta&#8217;s Applied AI engineering team is now running at a <a href="https://fortune.com/2026/03/14/metas-ai-team-50-flat-management-structure/">50:1 employee-to-manager ratio</a>. The industry &#8220;outer limit&#8221; for span of control is 25:1. The research-determined optimum, depending on whose textbook you use, sits around 7. Jensen Huang is notorious for running Nvidia with <a href="https://www.businessinsider.com/why-nvidia-ceo-jensen-huang-prefers-group-problem-solving-2026-3">60 direct reports</a> and no one-on-ones. But this sentiment is spreading across the industry. Andy Jassy mandated a 15% increase in the IC-to-manager ratio at Amazon at the end of 2024 and doubled down on it in his 2026 shareholder letter. Microsoft cut 7,000 middle managers in May 2025 &#8212; without even using the word &#8220;AI&#8221; in the announcement.</p><p>There is a fresh <a href="https://fortune.com/2026/05/07/airbnb-ceo-brian-chesky-two-people-wont-survive-ai-era-pure-people-managers-workers-resist-change/">quote from Brian Chesky</a> noticing the same thing: &#8220;<em>I don&#8217;t think people managers will have any value in the future. When I mean people managers, I mean people that only manage people. (&#8230;) You can&#8217;t just be these managers where you&#8217;re people&#8217;s therapists, doing meetings, doing one-on-ones.&#8221; The direction is the &#8220;manager IC</em>&#8221; &#8212; every manager has to manage through the work, not around it.</p><p>The pure-coordination role &#8212; the manager whose job was to be a load-balancer or translator between specialists &#8212; is being deleted at the same time the specialists themselves are being merged.</p><h2>The shaped generalist comes back</h2><p>If specialist teams merge and translator managers go, what shape is left? There&#8217;s a third thread. The people who survive look different from the people who got the company here.</p><p>The 2010&#8211;2022 era of hyper-specialisation &#8212; backend engineer, frontend engineer, infra engineer, ML engineer, data engineer, mobile engineer, QA engineer, SRE, DevEx, four flavours of designer, three flavours of PM &#8212; was a function of two things. Cheap capital, which let companies hire one of everything. And the limits of any one human&#8217;s ability to hold the whole stack in their head.</p><p>Both of those constraints have softened. Capital is no longer free. And the assistant you sit next to can hold whatever part of the stack you forgot.</p><p>What comes back is the T-shaped generalist. An engineer who can write the spec, ship the prototype, validate with users, instrument the metric, and own the operational tail. A product person who can prototype the thing they used to brief. A designer who ships their own UI to production. The early-stage founder profile, basically &#8212; but as the default shape of a senior contributor at scale, not just at seed.</p><p>YC&#8217;s <a href="https://www.ycombinator.com/rfs">Requests for Startups</a> for 2026 names this explicitly: &#8220;<em>For the first time a 2&#8211;3 person team can ship something a Fortune 10 can find useful before the ink is dry on their incorporation docs.</em>&#8221; Tobi L&#252;tke&#8217;s <a href="https://www.cnbc.com/2025/04/07/shopify-ceo-prove-ai-cant-do-jobs-before-asking-for-more-headcount.html">Shopify memo</a> made AI usage a basic expectation, and made managers prove AI couldn&#8217;t do the job before approving headcount.</p><p>Small teams of shaped generalists, with no coordination tax between them, can now do work that used to require the organizational triad plus three layers of management above it.</p><h2>Where this breaks</h2><p>It&#8217;s worth being honest about where the collapse stops.</p><p>Late-stage product work still has swim lanes. Lewenstein&#8217;s nuance is the right one &#8212; collapse upstream, clearer specialisation downstream as you scale and harden. So it works up to a point. Still, the feasible range is increasing.</p><p>Regulated and safety-critical domains &#8212; financial services, healthcare, defence, anything with an audit perimeter &#8212; still reward people who own a narrow column deeply.</p><p>And the span-of-control numbers at the extreme end are going to break some managers. <a href="https://www.linkedin.com/pulse/price-flat-what-leaders-miss-rush-eliminate-middle-krishnamoorthy-wsice">One Wall Street Journal-quoted manager</a> with 36 direct reports described a &#8220;<em>constant state of inadequacy</em>&#8221;. I can tell you I&#8217;ve already had multiple conversations like that. No one said the transition was going to be easy.</p><p>And yet, my take is that removing the layers without redefining how the role gets spread out will produce false efficiency. We&#8217;re going to find out soon enough.</p><p>The optimistic version of this article is that coordination between the organizational triad was a tax, and the tax is being repealed. The honest version adds: that doesn&#8217;t mean the underlying functions disappear. It means they get redistributed across fewer, more capable people &#8212; and the people who used to do them as full-time specialist roles need to become something else.</p><h2>What now?</h2><p><a href="https://www.pdole.ga/p/play-it-again-sam">Play It Again, Sam</a> described the substitution happening at the engineering level &#8212; routine work absorbed into a tooled layer, strategic work concentrated and repriced upward.</p><p>This is the same mechanism viewed from inside the org chart.</p><p>The Triad coordination was a tax.<br>The layer of managers above the triad was a tax.<br>The translation between roles was a tax.</p><p>What survives is smaller, flatter, and more shaped.</p><p><em>The function persists. The tools change. The people who change with the tools keep their seat.</em></p>]]></content:encoded></item><item><title><![CDATA[Play it again, Sam]]></title><description><![CDATA[Cloud didn&#8217;t kill the database administrator function. AI isn&#8217;t killing software engineering.]]></description><link>https://www.pdole.ga/p/play-it-again-sam</link><guid isPermaLink="false">https://www.pdole.ga/p/play-it-again-sam</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Thu, 14 May 2026 09:41:51 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!B2v0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!B2v0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!B2v0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 424w, https://substackcdn.com/image/fetch/$s_!B2v0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 848w, https://substackcdn.com/image/fetch/$s_!B2v0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 1272w, https://substackcdn.com/image/fetch/$s_!B2v0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!B2v0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png" width="1248" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1248,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1674994,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/197417598?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!B2v0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 424w, https://substackcdn.com/image/fetch/$s_!B2v0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 848w, https://substackcdn.com/image/fetch/$s_!B2v0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 1272w, https://substackcdn.com/image/fetch/$s_!B2v0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d66ac5b-7765-44dd-a732-91c8eca5ca86_1248x832.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I keep hearing two competing narratives &#8212; in real life, and in their extreme forms on social media.</p><p>One is: AI will eliminate software engineering (mostly hands-off CEOs, VCs, social media influencers). The other is: AI is a passing fad, and we are at the peak of the inflated expectations cycle (mostly skeptical hands-on engineers). </p><p>My bet: neither is right, and both miss the point of a technology transformation we have seen many times before.</p><h1>Backdrop: Economic climate</h1><p>Let&#8217;s zoom out a little. </p><p>It is sad to notice, but the 2026 tech layoff count is climbing, and we are dangerously close to being one of &#8212; if not the &#8212; worst years since the pandemic. Take that in for a moment.  </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d9io!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d9io!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 424w, https://substackcdn.com/image/fetch/$s_!d9io!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 848w, https://substackcdn.com/image/fetch/$s_!d9io!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 1272w, https://substackcdn.com/image/fetch/$s_!d9io!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d9io!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png" width="1456" height="1323" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1323,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:192992,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/197417598?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!d9io!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 424w, https://substackcdn.com/image/fetch/$s_!d9io!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 848w, https://substackcdn.com/image/fetch/$s_!d9io!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 1272w, https://substackcdn.com/image/fetch/$s_!d9io!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe80f0307-df9d-420a-994d-14e2ec6a53c8_2104x1912.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">State for mid May 2026 (source: trueup.io)</figcaption></figure></div><p>By the first week of May, the TrueUp full-year projection sits near a staggering 361,000. Trackers disagree on the exact tally (<a href="https://layoffs.fyi/">Layoffs.fyi: ~103,000</a>; <a href="https://www.trueup.io/layoffs">Trueup: ~132,000</a>) because they count differently, but they agree on the shape: 2026 will pass 2025&#8217;s ~246,000 US tech layoffs, with months to spare. <a href="https://octagonai.co/markets/economics/layoffs/more-tech-layoffs-in-20-26-than-in-2025/">Kalshi and Polymarket prediction markets have it at 91&#8211;93% odds</a>. </p><p>(Disclaimer: if you look those numbers up, they are unlikely to be exactly the same &#8212; the data flows in continuously, and even while I was writing this essay they were, sadly, increasing) </p><p>The Q1 names are unambiguous. </p><ul><li><p>Oracle: <a href="https://www.cnbc.com/2026/03/31/oracle-layoffs-ai-spending.html">~20,000&#8211;30,000 cuts in March</a>, tied to a $2.1B restructuring charge, explicitly funding AI data centers.</p></li><li><p>Intel: <a href="https://www.kore1.com/intel-layoffs-2026/">25,000+ between 2025 and 2026</a>, headcount now under 100,000. </p></li><li><p>Amazon: <a href="https://www.businessinsider.com/amazon-continues-job-cuts-retail-ai-2026-5?IR=T">~30,000 (and counting)</a>. </p></li><li><p>Meta: 8,000 in Q1 (<a href="https://finance.yahoo.com/sectors/technology/articles/mark-zuckerberg-says-meta-cutting-110538755.html">Zuckerberg said the cuts were</a> structured as headcount reduction in service of AI infrastructure) on top of a quarter where revenue grew 33% and net income grew 61%. </p></li><li><p>Cloudflare <a href="https://www.bankinfosecurity.com/cloudflare-cuts-1100-arctic-wolf-axes-250-amid-ai-surge-a-31657">cut 20%</a> of its workforce while <a href="https://www.cnbc.com/quotes/NET">growing revenue 34%</a>.</p></li><li><p>Coinbase <a href="https://www.reuters.com/business/world-at-work/coinbase-cut-about-14-workforce-2026-05-05/">cut 14%</a> in a quarter where revenue fell 31%. </p></li><li><p>PayPal: <a href="https://finance.yahoo.com/markets/stocks/articles/paypal-layoffs-ceo-cuts-20-154944985.html">up to 20% of headcount</a> over two to three years under a new CEO.</p></li></ul><p>And yet, the coin has another side.</p><p><a href="https://fred.stlouisfed.org/series/IHLIDXUSTPSOFTDEVE">FRED&#8217;s Indeed Hiring Lab index for US software development job postings</a> &#8212; IHLIDXUSTPSOFTDEVE for the curious &#8212; sits at 72.15 as of May 14, 2026. Pre-pandemic baseline is 100. So postings are still well below their 2022 peak. But they have been climbing since early 2025, and as of February <a href="https://www.reddit.com/r/cscareers/comments/1rcnena/us_software_job_postings_are_up_10_yoy_despite/">US software-development postings were up 10% year-over-year while total US job postings declined 5.8%</a>. The pattern I noted <a href="https://www.pdole.ga/p/dario-was-mostly-right">in March</a> &#8212; that openings had been growing since the bottom of the dip in early 2025 &#8212; has continued and accelerated.</p><p>This is the article in two numbers: layoffs accelerating to a record; openings climbing back at a 10% YoY pace. Both are true at the same time. </p><p>How can that be?</p><p>The same six companies cutting headcount in Q1 had thousands of open engineering positions on their own careers pages on the same days the layoffs were announced &#8212; and a few of them are revealing. Meta: heavy on AI Research Scientists and ML Engineers. PayPal: <em>Lead Product Manager, Agentic Commerce</em>. Coinbase: <em>Principal Machine Learning Engineer</em>. Same for Cloudflare and GitLab.</p><h2>Two CEOs</h2><p>Two CEO statements from the last sixty days frame the whole story.</p><p>GitLab&#8217;s <a href="https://timesofindia.indiatimes.com/technology/tech-news/gitlab-announces-layoffs-ceo-bill-staples-says-software-will-be-built-by-machines-directed-by-people/articleshow/131027186.cms">Bill Staples described his restructuring</a> &#8212; three management layers removed, R&amp;D reorganized into ~60 smaller teams &#8212; as <em>&#8220;not an AI optimization or cost cutting exercise.&#8221;</em> He said it in the same statement in which he also said <em>&#8220;software will be built by machines, directed by people&#8221;</em> and that agents will <em>&#8220;plan, code, review, deploy and repair software.&#8221;</em> </p><p>Wipro &#8212; yes, the Indian 200k+-employee behemoth &#8212; said the <a href="https://www.outlookbusiness.com/corporate/wipro-layoff-hundreds-mid-level-roles-terminated-amid-margin-focus">interesting bit out loud as early as 2024</a>! When the company began cutting hundreds of mid-level onsite roles, an internal source described the doctrine as <em>&#8220;Left-Shift&#8221;</em>: <em>&#8220;The work of a level 3 employee is shifted to a level 2 employee, who is given appropriate tools. A level 1 employee does the level 2 work, and the idea is that the work of a level 1 employee is automated.&#8221;</em> That is the substitution mechanism stated cleanly. Wipro has continued &#8212; recruiters describe TCS, Infosys, and Wipro as having quietly cut around 50,000 jobs across 2025 under the label &#8220;performance management&#8221; or &#8220;skill mismatch,&#8221; while Wipro itself simultaneously hired 7,500 freshers in FY26 and now lists no fewer than 10,000 open positions (which you can check <a href="https://careers.wipro.com/search?searchResultView=LIST">here</a>).</p><p>The Wipro doctrine is the article. <em>Push the work down the seniority ladder, give it tools, automate what is left at the bottom.</em> Every other company is doing some version of it. Not everyone will say so on the record. Wipro said so two years ago.</p><p>The market is now discounting the AI-restructuring story even when CEOs deliver it cleanly. Cloudflare fell 24% on its AI announcement. PayPal fell 8%. Marc Andreessen &#8212; who has every incentive to talk AI up &#8212; <a href="https://fortune.com/2026/03/31/marc-andreessen-ai-layoffs-silver-bullet-excuse-overhiring/">called it a &#8220;silver bullet excuse.&#8221;</a> </p><p>So what is happening?</p><h2>We&#8217;ve seen this movie before</h2><p>In 2008, every company of meaningful size had a Database Administrator. They patched, backed up, tuned, provisioned. By 2018, the title was rare. The popular reading: <em>cloud killed DBAs.</em></p><p>The Bureau of Labor Statistics tells a different story. <em><a href="https://www.bls.gov/ooh/computer-and-information-technology/database-administrators.htm">Database Administrators and Architects</a></em><a href="https://www.bls.gov/ooh/computer-and-information-technology/database-administrators.htm"> is projected to grow 4% from 2024 to 2034</a> (worth noting &#8212; the average growth rate across all professions is 3%), ~7,800 openings a year, median wage $104,620. Yet it would be dishonest to pretend nothing changed. You don&#8217;t meet DBAs at conferences anymore. </p><p>But that&#8217;s not even the whole story! True, AWS RDS and its peers absorbed the routine 70% of what a DBA used to do. The remaining 30% &#8212; schema design, query optimization, security posture, capacity, reliability &#8212; got more valuable, got renamed, and got absorbed into other roles. The vanilla Software Engineer got some of it on their plate, but new roles also emerged &#8212; <em>Database Reliability Engineer, Data Platform Engineer, Data Engineer.</em> New titles. Often paid better, by the way.</p><p>The function evolved and expanded. The vocabulary changed. But the people who refused to evolve got sorted out.</p><p>But let&#8217;s push the lens back. </p><p>The typical argument I keep hearing is: &#8220;But Pawel, cars really did kill horse-drawn carriages.&#8221;</p><p>But did they? </p><p>Yeah, it turns out they did. Between 1870 and 1900, in ten major US cities, <a href="https://thebreakthrough.org/articles/revolutionary-engines">the number of teamsters &#8212; carriage and wagon drivers &#8212; grew 328%, while the population grew only 105%</a>. The horse-drawn era was expanding employment in the transport function right up to the moment cars arrived. Motor cabs reached London in 1897, outnumbered horse cabs by 1910, and the last horse-drawn hackney license was <a href="https://en.wikipedia.org/wiki/Hackney_carriage#Motorisation">relinquished in 1947</a> &#8212; half a century of overlap. So yes &#8212; cars killed the carriages.</p><p>But&#8230;</p><p>The drivers didn&#8217;t disappear. The function &#8212; moving people and goods for a fare &#8212; exploded! Today&#8217;s combined population of taxi, rideshare, and delivery drivers dwarfs the teamster cohort of 1900. </p><p>The tool changed completely. The function persisted, and grew.</p><p>The narrative we remember is <em>cars replaced carriages.</em> The data says <em>the function survived a tool transition and got much bigger.</em> </p><p>If you ask me, those are two completely different stories.</p><h2>From inside the seat</h2><p>My personal experience is this. 60&#8211;70% of what an engineer used to spend their day on &#8212; boilerplate, scaffolding, glue code, test setup, first-pass documentation, routine refactors, the long tail of <em>&#8220;Stack Overflow for an hour&#8221;</em> tasks &#8212; is being absorbed by tooling. </p><p>Not eliminated. Absorbed. </p><p>It still gets done, in a tenth of the time, by a person plus a model. The remaining 30&#8211;40% &#8212; system design, ambiguous problem framing, integration across messy boundaries, judgment about what <em>not</em> to build &#8212; has become more valuable.</p><p>This is the Wipro Left-Shift in microcosm. Routine work absorbed into a managed layer. Strategic work concentrated and repriced upward. The engineers who lean into the new tooling are roughly two to three times more productive than they were in 2023. The engineers who don&#8217;t are visible from across the room. They are the people the layoff lists are quietly built around &#8212; at the same time the company is opening req after req for AI engineers, platform engineers, and AI product managers.</p><p>This is not replacement. This is sorting. The headcount may not change much. Which people fill those seats will.</p><h2>Act accordingly</h2><p>A workforce restructuring is in progress with multiple drivers &#8212; 2020&#8211;22 overhiring, the long-postponed cleanup of teams built in an era of free capital, the higher interest rate environment, and a genuine productivity shift from AI tooling. AI is the one clean future-facing word that wraps all of them into a single acceptable public sentence. But it is not the whole story.</p><p>The composition is what is actually shifting. Roles that were a large share of headcount in 2020 &#8212; high-volume support, low-leverage operations, manual QA, boilerplate-heavy backend, parts of middle management whose job was coordination overhead &#8212; are getting compressed. Roles that barely existed in 2020 &#8212; AI product managers, ML platform engineers, AI compliance, agent integration, AI-augmented sales engineering, prompt-driven analysts &#8212; are being hired at higher salary bands than what was cut. PayPal&#8217;s Agentic Commerce PM is not an anomaly. It is just the data point of the substitution.</p><p>So what does this all mean to you?</p><p><strong>If you build software:</strong> the people who will not learn the new tooling will be sorted out. Not because AI replaced their job &#8212; because the job changed underneath them and they did not move with it. The DBAs who learned cloud became platform engineers and got paid more. The DBAs who did not, you stopped meeting at conferences. There is a version of this article being written in 2034 about software engineers. You can choose which side you want to be quoted on.</p><p><strong>If you run a company:</strong> the <em>&#8220;AI made me do it&#8221;</em> framing has lost its credibility with the market, your employees, and increasingly the press. The honest framing &#8212; <em>we overhired, we are right-sizing, and we are shifting the composition of the workforce toward roles that work with AI</em> &#8212; is harder to deliver but holds up. Wipro stated the doctrine clearly in 2024 and is hiring 10,000 people while doing it. </p><p>The carriages went away. The drivers stayed, learned a new machine, and grew 10x over a century. The DBAs got renamed. The work got more valuable. The function persists. The tools change. </p><p>The people who change with the tools keep their seat.</p>]]></content:encoded></item><item><title><![CDATA[The Floor Is Falling]]></title><description><![CDATA[When the software industry enters Extremistan]]></description><link>https://www.pdole.ga/p/the-floor-is-falling</link><guid isPermaLink="false">https://www.pdole.ga/p/the-floor-is-falling</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 06 May 2026 11:28:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!tp8Y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tp8Y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tp8Y!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 424w, https://substackcdn.com/image/fetch/$s_!tp8Y!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 848w, https://substackcdn.com/image/fetch/$s_!tp8Y!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 1272w, https://substackcdn.com/image/fetch/$s_!tp8Y!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tp8Y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png" width="1456" height="615" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:615,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4518125,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/196480831?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!tp8Y!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 424w, https://substackcdn.com/image/fetch/$s_!tp8Y!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 848w, https://substackcdn.com/image/fetch/$s_!tp8Y!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 1272w, https://substackcdn.com/image/fetch/$s_!tp8Y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc55f15e-8b50-4ded-949a-0fedd0716f8e_3104x1312.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p style="text-align: justify;">AI coding tools make developers faster. Agents can take on chunks of implementation, testing, refactoring, and migration. Cloud platforms and APIs make infrastructure easier to assemble. Heck, every other software services company is trying to turn its SDLC into an AI-powered delivery platform.</p><p style="text-align: justify;">On the one hand, we are entering the age of personal software: small tools, workflows, and systems built for one person, one team, one company, or one weird local problem. </p><p style="text-align: justify;"><a href="https://x.com/tomik99/status/2051599522741076410">Tomasz Karwatka described reviving his contact database</a> by extracting context from notes, PDFs, Obsidian, LinkedIn exports, phonebook data, and Gmail, then building a simple local app around it. Tyler Jewell, CEO of Akka, <a href="https://www.linkedin.com/posts/tylerjewell_claude-activity-7448498470463643648-cC8P?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAABuX7MBKLpQ23-DqMsbfjqGk3H0a1MzMY4">spent a week mostly inside Claude</a> while rethinking how his company should operate in an AI-human workflow. </p><p style="text-align: justify;">CEOs are literally building. This is not just good ol&#8217; &#8220;everyone becomes a programmer&#8221;. It is something more interesting: more thinkers, tinkerers, and operators can turn their mental models into working tools. </p><p style="text-align: justify;">And it is truly amazing. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.pdole.ga/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">I write occasional essays on software, AI, and industry. Subscribe to get them in your inbox.</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 style="text-align: justify;">There is another side to this story, though. On the surface, this sounds like it should make software success easier. More people can try. More startups can launch. More teams can digitize workflows previously trapped in spreadsheets and meetings.</p><p style="text-align: justify;">But a lower entry barrier does not reduce competition. It increases it.</p><p style="text-align: justify;">The market gets flooded with more products, more demos, more internal tools, more AI wrappers, more vertical apps, more weekend prototypes, more software houses claiming proprietary delivery platforms, and more SaaS companies repositioning themselves as agentic workflow platforms.</p><p style="text-align: justify;">Alas, not everyone becomes a successful software company.</p><p style="text-align: justify;">We&#8217;ve seen it before.</p><p style="text-align: justify;">Social media made everyone a creator. Well, not literally everyone, but close enough to change the market. You no longer needed a studio, a publisher, a TV network, or a record label to reach people. </p><p style="text-align: justify;">We called it democratization.</p><p style="text-align: justify;">And it was. More people could publish. More people could be seen. More people could build an audience without asking permission.</p><p style="text-align: justify;">But it did not make everyone influential.</p><p style="text-align: justify;"><a href="https://www.mosaicventures.com/blog/the-creator-economy-a-power-law">The creator economy became a power-law market</a>, with a high concentration of engagement among the top roughly 0.5% of creators. Millions created. A few earned. A tiny fraction dominated. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9d5e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9d5e!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 424w, https://substackcdn.com/image/fetch/$s_!9d5e!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 848w, https://substackcdn.com/image/fetch/$s_!9d5e!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 1272w, https://substackcdn.com/image/fetch/$s_!9d5e!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9d5e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png" width="805" height="740" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:740,&quot;width&quot;:805,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9d5e!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 424w, https://substackcdn.com/image/fetch/$s_!9d5e!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 848w, https://substackcdn.com/image/fetch/$s_!9d5e!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 1272w, https://substackcdn.com/image/fetch/$s_!9d5e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9fbdcfc-54aa-48e4-9c51-24c5b331df55_805x740.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Creator economy power law (Socialblade)</figcaption></figure></div><p>That is the lesson worth remembering.</p><p>When the barrier to entry falls, markets usually become more competitive. More participants enter. More substitutes appear. The market does not usually hand everyone higher profits. It attracts competitors until excess returns are competed away.</p><p>The gains move to whatever remains scarce.</p><p><a href="https://www.goodreads.com/book/show/242472.The_Black_Swan">In Taleb&#8217;s language</a>, this is a move toward Extremistan: the domain where one observation can dominate the aggregate, and where scalable work creates extreme outcomes. A creator does not need to be 1,000 times better to get 1,000 times the attention. Distribution, compounding, and visibility do the work.</p><p>Software is not suddenly easy. That would be the wrong claim.</p><p>Production systems, security, integrations, reliability, maintenance, design, and customer understanding still matter. Good software is still hard.</p><p>But the relative cost of getting <em>some</em> working software is falling.</p><p>The customer is no longer comparing you only to another vendor with a large engineering team. They are comparing you to an internal tool. To a software house with an AI platform. To a feature from an incumbent. To a generated prototype. To doing nothing. To a good-enough workflow assembled by someone inside the company.</p><p>For a long time, &#8220;we can build it&#8221; was a meaningful claim. It implied access to scarce talent, process, and execution capacity.</p><p>Outside of extreme or niche cases, my bet is that &#8220;we can build it&#8221; becomes table stakes.</p><p>The harder question is: <strong>Why would the customer choose you?</strong></p><p>I wrote before that <a href="https://www.pdole.ga/p/the-moat-you-sell-is-disappearing">the moat many software service companies sell is disappearing</a>. General technical execution is becoming less scarce. The old pitch, &#8220;we can build this for you,&#8221; is losing power as AI makes building more accessible.</p><p>Obviously, that does not mean all moats disappear. It means the moat moves.</p><p>If software is cheaper to produce, customers will not pay a premium because you can produce it. They will pay because you can operate in an environment others cannot. Because you understand a niche better than generic competitors. Because you are close enough to the business to know what should be built in the first place.</p><p>They choose you because you understand the workflow. The edge cases. The politics. The handoffs. The exceptions. The stupid details that never fit into the product requirements document.</p><p>They choose you because they trust you. Because if the system breaks, someone is accountable. Because security, compliance, uptime, and support are not afterthoughts.</p><p>That is the part cheap software does not solve.</p><p>AI lowers the cost of software creation. It does not lower the cost of being chosen. <strong>In fact, if the social media parallel is any good, it elevates the cost of being chosen!</strong></p><p>This is where many companies will get confused. They will ship more, demo more, prototype more, and generate more. They will mistake activity for advantage.</p><p>But the market does not reward software for existing. It rewards software for mattering.</p><p>The creator economy already ran this experiment. Making creation easier made attention, trust, taste, and distribution more valuable.</p><p>Software is next.</p><p>AI may make software cheaper to create. But software success was never just about creation. And it&#8217;s going to be even less so. </p>]]></content:encoded></item><item><title><![CDATA[AI subscriptions are on borrowed time]]></title><description><![CDATA[Token prices are falling but your AI bill won't]]></description><link>https://www.pdole.ga/p/ai-subscriptions-are-on-borrowed</link><guid isPermaLink="false">https://www.pdole.ga/p/ai-subscriptions-are-on-borrowed</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Sun, 26 Apr 2026 15:31:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!UcjD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UcjD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UcjD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!UcjD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!UcjD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!UcjD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UcjD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg" width="1456" height="1107" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1107,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1610229,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/195257431?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UcjD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!UcjD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!UcjD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!UcjD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4539be89-f77e-4cf4-9226-d278e63b2415_2105x1600.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>On April 21, Anthropic quietly pulled Claude Code from its $20 Pro plan. No prior announcement. They&#8217;ve just placed a red X on the pricing page and a rewritten support document &#8212; long story short, Claude Code temporarily ceased to be available on the Pro plan and became only available on the Max subscription. </p><p>When people noticed, <a href="https://x.com/TheAmolAvasare/status/2046724659039932830">Anthropic&#8217;s head of growth said it was a small test affecting about 2% of new signups</a>. Maybe. I&#8217;m not interested in conspiracy theories. Whether it stays or is reverted is irrelevant. This still looks to me like them testing the waters for a policy change already underway.</p><p>And it&#8217;s not just Anthropic. One day earlier, on April 20, <a href="https://github.blog/news-insights/company-news/changes-to-github-copilot-individual-plans/">GitHub announced</a> it was pausing new signups for Copilot Pro, Pro+, and Student plans, tightening usage limits, and removing Opus models from the Pro tier. Their stated rationale: &#8220;agentic workflows have fundamentally changed Copilot&#8217;s compute demands... it&#8217;s now common for a handful of requests to incur costs that exceed the plan price.&#8221; </p><p>The fact is, your $20 a month was never really $20. Ditto for the <a href="https://www.ksred.com/i-built-a-cost-tracker-for-claude-code-to-see-if-my-subscription-was-worth-it/#:~:text=What%20the%20numbers%20actually%20showed,per%20month%20at%20API%20rates.">$200 Max version</a>. For two years, AI labs have been selling flat-rate subscriptions at prices far below the actual compute they consume. As <a href="https://www.wheresyoured.at/news-anthropic-removes-pro-cc/">Ed Zitron</a> wrote: &#8220;<em>Anthropic&#8217;s subscription plans charge far less than the book value of tokens consumed, sometimes by a factor of ten or more.</em>&#8221; </p><p>That means: you paid $20, but you really burned through compute that cost them $50, $100, sometimes more. The difference was financed by venture capital. The bet is: grab the market now, figure out margins later.</p><p>You could argue it&#8217;s a typical Silicon Valley playbook. We&#8217;ve seen it before with Amazon, we&#8217;ve seen it with Uber, and plenty of other companies. All with Peter Thiel's acolytes chanting in the background: <em>Competition is for losers, monopoly is the goal.</em></p><p>And we have historical proof that it works.</p><p>Or does it?</p><h2>The curve ahead</h2><p>Even as labs subsidize subscriptions, the underlying cost of generating a token has been falling at an impressive rate.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mfaU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mfaU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 424w, https://substackcdn.com/image/fetch/$s_!mfaU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 848w, https://substackcdn.com/image/fetch/$s_!mfaU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 1272w, https://substackcdn.com/image/fetch/$s_!mfaU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mfaU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png" width="1456" height="1022" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/da1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1022,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:356405,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/195257431?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mfaU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 424w, https://substackcdn.com/image/fetch/$s_!mfaU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 848w, https://substackcdn.com/image/fetch/$s_!mfaU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 1272w, https://substackcdn.com/image/fetch/$s_!mfaU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda1f6008-19c4-4e27-939f-c277dec3e77f_2400x1685.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">LLM inference prices (<a href="https://epoch.ai/data-insights/llm-inference-price-trends#:~:text=We%20set%20a%20threshold%20of,across%20performance%20levels%20and%20benchmarks.">Epoch AI</a>)</figcaption></figure></div><p>GPT-4 launched in March 2023 at $30 per million input tokens and $60 per million output tokens. Today, GPT-5.4 delivers vastly better performance at $2.50 and $15, respectively. That's roughly a 12x reduction in input costs and 4x in output costs in three years at the flagship tier &#8212; and far more if you compare on fixed capability. </p><p>Claude Opus 4.6, priced at $5/$25, costs a third of what Claude 3 Opus did two years ago ($15/$75).</p><p>Gemini 2.0 Flash hit $0.10/$0.40 in late 2024 &#8212; prices that would have sounded absurd even eighteen months earlier. The curve bends everywhere you look (for comparison: GPT 3.5 &#8212; $0.50/$1.50 &#8212; being inferior to Gemini 2 Flash overall, even in pure text use cases). </p><p>The reductions aren&#8217;t just coming from better hardware, though. Andrej Karpathy recently <a href="https://github.com/karpathy/nanochat">retrained a GPT-2 grade model for $73</a> &#8212; the same model that cost OpenAI around $43,000 to train in 2019. That&#8217;s a 600x reduction in seven years, <a href="https://x.com/karpathy/status/2017703360393318587">falling roughly 2.5x every single year</a>. Part of it is hardware (H100s beat TPU v3s). Part of it is software (FlashAttention, fp8 training, better optimizers). But a huge part is just algorithmic progress &#8212; we&#8217;ve figured out how to do the same thing with far less compute.</p><p>&#8220;<em>Past performance does not guarantee future results.&#8221; </em>Got it. </p><p>This is nonetheless reminiscent of other historical price curves. Take the lithium-ion battery cost chart. The inflation-adjusted drop in the costs of lithium-ion batteries over the last 3 decades is mindblowing &#8212; ~99% over that period of time. A drop - mind you! - that enabled reinvention and mass production of electric vehicles and the growth of what is <a href="https://www.grandviewresearch.com/industry-analysis/electric-vehicles-ev-market">estimated to be a $1.6 trillion industry</a>. (And I&#8217;ll completely ignore the far bigger impact it had on the consumer electronics industry at large.)</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wclQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wclQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 424w, https://substackcdn.com/image/fetch/$s_!wclQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 848w, https://substackcdn.com/image/fetch/$s_!wclQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 1272w, https://substackcdn.com/image/fetch/$s_!wclQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wclQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png" width="1456" height="1441" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1441,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:866259,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/195257431?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wclQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 424w, https://substackcdn.com/image/fetch/$s_!wclQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 848w, https://substackcdn.com/image/fetch/$s_!wclQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 1272w, https://substackcdn.com/image/fetch/$s_!wclQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08d269d2-6677-422c-a7c3-5b991fe22b53_3400x3364.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Price of Lithium-Ion batteries (<a href="https://ourworldindata.org/grapher/price-of-lithium-ion-battery-cells">Our World in Data</a>)</figcaption></figure></div><p>If this is not a textbook example of <a href="https://en.wikipedia.org/wiki/Jevons_paradox">Jevons Paradox</a>, I don&#8217;t know what is. </p><h2>The unit economics</h2><p>The Silicon Valley playbook mentioned earlier is not a clean parallel, though. Amazon was unprofitable for nine years and didn&#8217;t generate meaningful profits for closer to twenty. But Amazon sold books at roughly cost plus margin. Its losses came from warehouses, logistics, infrastructure &#8212; fixed costs that paid off once they were built. When Amazon got more popular, its unit economics improved.</p><p>What are the unit economics here?</p><p>Every token you generate costs the lab money, today, in electricity and GPU time. When more people use Claude, Anthropic bleeds faster. The subsidy isn&#8217;t a one-time investment that pays dividends later. It&#8217;s a tap. Actually, more of a firehose. Turning it off is the only way to stop the bleeding.</p><p>And the labs are starting to turn it off. Here are some examples:</p><ul><li><p>In February, Anthropic introduced <a href="https://kingy.ai/ai/usage-based-billing-no-flat-rate-why-anthropics-2026-pricing-shift-changes-everything-for-claude-users/">Fast Mode</a> &#8212; 2.5x faster inference at 6x the standard rate. Same model, same capabilities, you&#8217;re paying a premium to skip the queue. </p></li><li><p>In March, they started <a href="https://gizmodo.com/anthropic-and-openai-just-gave-us-a-glimpse-into-the-future-of-model-pricing-2000739173">throttling peak-hour usage</a> across subscription tiers. </p></li><li><p>OpenAI runs its own version with &#8220;<a href="https://developers.openai.com/api/docs/guides/flex-processing">flex processing</a>&#8221; &#8212; cheaper if you&#8217;re willing to wait. </p><p></p></li></ul><p>These are pricing tweaks, not new features. Compute is scarce, and subsidies end. The price you pay will depend on when you use it, how fast you need it, and how much leverage the lab still has.</p><p>Here&#8217;s the twist. Even as the price of a token keeps collapsing, the bill is going up. How so? Well, ask yourself - with all these token prices falling so rapidly &#8212; are you paying less for AI subscriptions today than 2 years ago?</p><p><a href="https://a16z.com/leaders-gainers-and-unexpected-winners-in-the-enterprise-ai-arms-race/">Enterprise LLM spend doubled in six months</a> last year while per-token costs plummeted (did I mention Jevons Paradox already?). Agentic workflows burn 5 to 30 times more tokens per task than a simple chatbot (tool calls, multi-step reasoning, orchestrations, and so on). That&#8217;s why unit cost falls while at the same time the total cost explodes.</p><h2>What comes next</h2><p>Eventually, the underlying cost of a token will drop to a level where no subsidy is necessary. Depending on the source, the token costs fall at a rate between 2.5x (Karpathy example) and 10x (Epoch AI) per year. </p><p>Nvidia&#8217;s near-monopoly will also erode as AMD, Google&#8217;s TPUs, and Amazon&#8217;s Trainium chips take share at the infrastructure layer. The margins that Nvidia has today are just too outrageous to ignore. Competition at every layer will push prices toward the real cost of electricity and silicon, not the VC-subsidized numbers we&#8217;re seeing today.</p><p>This is, not coincidentally, <a href="https://x.com/vitrupo/status/1920883714927558872">what Sam Altman told the US Senate</a> in May 2025:<br><em>&#8221;Eventually the cost of intelligence, the cost of AI will converge to the cost of energy and it&#8217;ll be how much you can have. The abundance of it will be limited by the abundance of energy.&#8221;</em></p><p>But between now and then, there&#8217;s a bill to be paid. The labs spent hundreds of billions acquiring users at a loss. They have to make that back. And the people paying it &#8212; whether through removed features, peak surcharges, or tiered pricing &#8212; are you.</p><p>So what does this mean if you&#8217;re building on any of this?</p><p>The price you see today is not the real economic price. It is whatever the lab currently wants you to believe the product costs. It will change, probably not in your favor, probably sooner than you think. Per-token pricing, peak surcharges, and tiered inference are the future. Anyone betting on labs absorbing the difference between subscription prices and real compute costs might be heading toward a nasty wake-up call in the short-term future.</p><p>I am ultimately an optimist. And few things show such predictable and consistent price drops as technology entering the mass market. But first, it&#8217;s going to get worse before it gets better. </p><p>Brace yourself. </p>]]></content:encoded></item><item><title><![CDATA[It’s Just Semantics]]></title><description><![CDATA[Agreement on things nobody defined]]></description><link>https://www.pdole.ga/p/its-just-semantics</link><guid isPermaLink="false">https://www.pdole.ga/p/its-just-semantics</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 15 Apr 2026 11:02:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!L9Se!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>(This one comes with audio &#8212; hit play if you&#8217;d rather listen)</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!L9Se!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!L9Se!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 424w, https://substackcdn.com/image/fetch/$s_!L9Se!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 848w, https://substackcdn.com/image/fetch/$s_!L9Se!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 1272w, https://substackcdn.com/image/fetch/$s_!L9Se!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!L9Se!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp" width="1188" height="714" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:714,&quot;width&quot;:1188,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:36668,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/194019600?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!L9Se!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 424w, https://substackcdn.com/image/fetch/$s_!L9Se!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 848w, https://substackcdn.com/image/fetch/$s_!L9Se!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 1272w, https://substackcdn.com/image/fetch/$s_!L9Se!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0a6f0b-7215-4bb6-aa91-ac24cf339945_1188x714.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I&#8217;ve overheard it in a meeting. Two people disagreed on a strategic direction, you could feel the temperature creeping up, and one of them eventually responded to the disagreement with: <em>&#8220;It&#8217;s just semantics.&#8221; </em>As in &#8212; <em>&#8220;this is not worth arguing about, let&#8217;s move on.&#8221;</em></p><p>I&#8217;ve been thinking about that phrase ever since. Not the first time, though. I&#8217;ve realized I&#8217;ve heard it repeatedly over the years. &#8220;<em>It&#8217;s just semantics.</em>&#8221; </p><p>I cannot help but think: what is there in a conversation besides semantics? </p><p>A lot, actually &#8212; tone, body language, emotion, context. But in organizations, especially when we discuss strategic matters, it is critical that we are all on the same page &#8212; everyone involved understands <strong>exactly and in the same way</strong> what we are discussing and what we are about to do. </p><p>Locally &#8212; in any given room &#8212; there are a lot of factors that matter. Outside of the room, as the mission and vision spread through the organization, the thing that survives the journey is the words. The meaning they carry. Semantics is the part that scales.</p><p>In that sense, semantics isn&#8217;t a distraction from strategy, nor a tangent to it. It IS the strategy. Every strategic decision is ultimately a question of &#8220;what do we mean when we say X?&#8221; What does &#8220;<em>customer-first</em>&#8221; mean when you have to choose between two customers? What does &#8220;<em>quality</em>&#8221; mean when the deadline is tomorrow? What does &#8220;<em>aggressive</em>&#8221; mean when half the room thinks it means pricing and the other half thinks it means litigation?</p><p>When someone says &#8220;<em>we need to move fast,</em>&#8221; what do they mean? Ship in two weeks? Hire three people by Friday? Skip the compliance review? Everyone in the room nods. Nobody is agreeing on the same thing. <em>&#8220;Move fast.&#8221; &#8220;Be aggressive.&#8221; &#8220;Think long-term.&#8221; &#8220;Stay lean.</em>&#8221; These are words that feel like decisions or directions but aren&#8217;t &#8212; because nobody defined them. The meeting ends with alignment that doesn&#8217;t exist.</p><p>So here&#8217;s how I think about this today. When we wave away the definitional question with &#8220;<em>it&#8217;s just semantics,</em>&#8221; it&#8217;s not really avoiding a pointless argument. Two people walk out of the room thinking they agreed. They didn&#8217;t. They agreed on a word. They never agreed on what it means.</p><p>We&#8217;re locking in a misunderstanding and voluntarily giving it time to compound. And compound it will.</p><p>Some understood this. Jeff Bezos banned PowerPoint at Amazon and required six-page narrative memos instead. Slides let people hide behind vague language. A bullet point like &#8220;improve customer experience&#8221; survives a meeting unchallenged. You can hide a lot behind hand gestures and a confident delivery while giving a presentation, too.  </p><p>Try writing that as a full paragraph, and you're immediately forced to explain what you actually mean. And if you don't, whoever reads it will force you to. Bezos insisted on plain English because he understood how critical semantics is.</p><p>We can disagree on the meaning of the message. It&#8217;s OK to disagree. It&#8217;s OK to be confused. Nobody knows. But we can figure it out. As long, that is, as we all recognize we haven&#8217;t reached agreement &#8212; or at least understanding &#8212; yet. </p><p>Semantics is literally the study of meaning. Dismissing it is dismissing whether you mean what you say. And the meaning of what you say sounds like a damn important thing to me. </p>]]></content:encoded></item><item><title><![CDATA[The Moat You Sell Is Disappearing]]></title><description><![CDATA[Software services after software price collapse]]></description><link>https://www.pdole.ga/p/the-moat-you-sell-is-disappearing</link><guid isPermaLink="false">https://www.pdole.ga/p/the-moat-you-sell-is-disappearing</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Tue, 07 Apr 2026 08:47:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!luYc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!luYc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!luYc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 424w, https://substackcdn.com/image/fetch/$s_!luYc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 848w, https://substackcdn.com/image/fetch/$s_!luYc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 1272w, https://substackcdn.com/image/fetch/$s_!luYc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!luYc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png" width="1360" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1360,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1835546,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/192999643?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!luYc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 424w, https://substackcdn.com/image/fetch/$s_!luYc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 848w, https://substackcdn.com/image/fetch/$s_!luYc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 1272w, https://substackcdn.com/image/fetch/$s_!luYc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F620a26a0-2b03-41e6-9e4b-7c475ee22241_1360x768.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p style="text-align: justify;">The best engineers might be today 40% more productive with AI coding tools. At least that&#8217;s what <a href="https://www.index.dev/blog/ai-coding-assistants-roi-productivity">this study says</a>. Given it was published in October 2025 &#8212; in today&#8217;s timeline, roughly a decade ago &#8212; it is already outdated. My assessment would be that it is more than that, at least for the best performers and a certain range of software products. (Now, how much of an individual productivity gain translates to the organization is an entirely different story!)</p><p style="text-align: justify;">This creates an interesting dynamic for software service companies &#8212; companies that build custom software for their clients. </p><p style="text-align: justify;">Right now, companies that adopt AI aggressively feel like they have an edge. And they do &#8212; today. But this is a transitory advantage. Whether it takes one, two, or five years, the market will eventually catch up. AI proficiency will become the new baseline, not a differentiator.</p><h2>An opportunity and a threat</h2><p>Software service companies are living through this transition in two very different ways.</p><p>Some see it as an existential threat &#8212; and not without reason. Customers can now create way more software themselves &#8212; software that they used to subcontract to vendors. The barrier to entry for building a functional application has collapsed. If your client&#8217;s PM with one engineering colleague can spin up a working prototype over a few days, they are starting to question whether they need an external partner at all. </p><p>Sure, doing a limited POC and a real, production project, with real load, security constraints, and ongoing maintenance, are two very, very different things. Many of these ad-hoc in-house products will eventually fail to deliver the promised value. </p><p>And yet, it would be dishonest not to notice that building relatively typical software has become way more accessible. And let&#8217;s be straight &#8212; not every custom-built product was a complex, multi-year endeavor. You can check it out, for instance, on <a href="https://clutch.co/developers">Clutch</a> by browsing the typical price ranges for past projects. There are plenty of companies living off $10-100k contracts.</p><p>Others see it as a tremendous opportunity. With outstanding productivity gains, they can harvest disproportionate margins &#8212; doing more with less, delivering faster, and capturing the spread between the old cost structure and the new one.</p><p>Here is the problem, though. <strong>Your client knows this.</strong> They don&#8217;t need to master AI or even use it effectively themselves. The mere existence of AI-augmented development gives them leverage to push for lower prices. A <a href="https://www.cio.com/article/4151988/ai-is-altering-the-economics-of-software-development-but-who-gets-a-cut.html">recent CIO analysis</a> found that enterprise customers are already demanding their share of AI productivity gains. The logic is straightforward: if developers complete tasks 40% faster, someone is capturing that surplus. The client wants to know why it isn&#8217;t them. And the traditional saying goes: the <em>customer is always right&#8230;</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.pdole.ga/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">I write one of these every now and then. Subscribe if you want the next in your inbox.</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><h2>A question of price</h2><p>Where does this put software service companies that typically operated in a time-and-materials manner? On the one hand, customers expect faster delivery (fewer man-days). On the other hand, the agency that truly masters AI-augmented software delivery cannot reap the efficiency benefits (as they charge per day).</p><p>The first instinct is to move to fixed pricing. You capture the efficiency, the client gets a predictable cost, everybody wins. Except the prices will fall down too - in the same way that expected man-days for a project would fall down (though arguably the price arbitrage will be there for a limited time, and companies that are ahead-of-the-curve should be able to capture part of it while it lasts). </p><p>The forward-looking companies are moving further along the spectrum &#8212; from time-and-materials through fixed price to value-based pricing. </p><p>What is value-based pricing? At its essence, you charge for what it&#8217;s worth to the buyer, not what it costs you to produce. It might be capturing a fraction of the savings that delivering specific software produces for the customer. Or it might be a price set based on new opportunities uncovered for the customer. There is also a closely related term of <em>outcome-based pricing</em>. Technically, outcome-based &#8800; value-based &#8212; an outcome doesn&#8217;t have to translate to value. In practice, the two are close enough to treat as the same thing.</p><p><a href="https://www.businessinsider.com/consulting-industry-outlook-management-consultants-ai-hiring-job-cuts-2026-3?IR=T&amp;IR=C">McKinsey already generates 25% of its global fees from outcomes-based arrangements</a>. You may be skeptical about McKinsey. I am not surprised. One thing is certain, though - they know how to make money, whether we like it or not. And when they overhaul how they charge, it is at least prudent to pay attention. </p><p>To quote Business Insider: &#8220;<em>The result is a renewed industry focus on implementation and value over mere activity.</em>&#8221; Part of me shouts: At long fucking last!</p><p>Unfortunately, value-based pricing is an entirely different and complicated game. And on top of that, moving to value-based pricing for a general software vendor is going to be even harder. Except for very specific, narrow technical cases (e.g., cloud cost optimization), a lot of value is entangled in the customer&#8217;s business. It is going to be very difficult to move towards that pricing for software service companies that operate exclusively at the technology layer. </p><p>Whichever way you go, the same pressure applies &#8212; building general-purpose software has become more accessible, and software service companies will face pressure. </p><h2>Where does the moat go?</h2><p><a href="https://www.forbes.com/sites/peterbendorsamuel/2026/01/14/the-coming-compression-tech-services-must-endure-short-term-pain-to-reach-ais-long-term-opportunity/">Forbes predicts</a> that within three to five years, a software development productivity boost will exceed 80%, meaning half the labor currently needed will suffice. Now, I am very much on the side of <a href="https://en.wikipedia.org/wiki/Jevons_paradox">Jevons Paradox</a>: a software Cambrian explosion will drive the cost down, which will in turn drive the demand up. </p><p>However, there is an intermediate problem. Most enterprise customers won&#8217;t be ready to absorb a radically higher volume of delivered software. They grew their processes in a reality where building software was the bottleneck. Now, the bottleneck has shifted, and many enterprises are just not ready for consuming software at a faster pace.</p><p>Whether the demand explodes or not (and when!), the immediate reality is the same. An industry built on billing for labor will feel every point of upcoming compression. The agencies that thrive won&#8217;t be the ones that just write the most code. </p><p>The work won&#8217;t disappear &#8212; but the margins for general software-service companies will. And who wants to end up on a commodity-price treadmill? </p><p>So what&#8217;s defensible? Three things, as far as I can tell.</p><p>First, go where the barriers are structural. Regulated industries &#8212; finance, healthcare, defence. Hardware integration. Environments where certification, compliance, and safety aren&#8217;t nice-to-haves but legal requirements. AI can write the code, but it can&#8217;t navigate a regulatory audit, own a liability, or sign off on a medical device. At least &#8212; not yet.  </p><p>Second, go deep into a niche. Not necessarily a regulated one &#8212; but one where accumulated expertise takes years to build. Narrow but deep technology expertise. Real-time trading systems. Logistics optimization. Developer&#8217;s efficiency. The agency that has spent a decade understanding how a specific domain actually works will beat the one with better engineers every time. This was always a good bet. AI makes it even more relevant because when the code price tag collapses, the only thing left to charge for is knowing what the code should do better than your customer.</p><p>Third &#8212; and this is where I think the real shift happens &#8212; close the gap between software and business. The &#8220;code monkey&#8221; role &#8212; take a spec, produce code &#8212; is the one most directly displaced by AI. Outside of highly specialized areas like critical infrastructure or security, the direction is convergence. Software engineering stops being a separate discipline and becomes part of how business operates. The agency of the future doesn&#8217;t just build what you spec. It helps you figure out what to build. At an extreme, that&#8217;s not a software agency anymore. It&#8217;s a industry specific consulting firm that happens to ship code. Coincidentally, value-based pricing is way more achievable for vendors being closer to the business (or even better &#8212; closer to an actual P&amp;L). </p><p>Tectonic industry shifts are uncomfortable by definition. But they also reshuffle the deck. The reshuffling threatens some, but it also creates disproportionate openings for others. One thing seems to be certain though - the days of straightforward selling of pure, general technical experience are gone.</p>]]></content:encoded></item><item><title><![CDATA[Dario was (mostly) right]]></title><description><![CDATA[...and wrong at the same time]]></description><link>https://www.pdole.ga/p/dario-was-mostly-right</link><guid isPermaLink="false">https://www.pdole.ga/p/dario-was-mostly-right</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Tue, 31 Mar 2026 07:19:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!vwK0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A colleague came back from <a href="https://www.rustikon.dev/">Rustikon</a> &#8212; a Rust developer conference &#8212; and shared a photo of a whiteboard exercise. There was a line drawn. On the left: &#8220;Fully Manual / By Hand.&#8221; On the right: &#8220;Everything Is Generated.&#8221; </p><p>The room was asked to place a dot where they actually are in their day-to-day coding. The dots clustered around the 25% mark from the left. Actually, the 25% might be a charitable interpretation. Take a look at it yourself.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vwK0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vwK0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vwK0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vwK0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vwK0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vwK0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg" width="405" height="539.9072802197802" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1941,&quot;width&quot;:1456,&quot;resizeWidth&quot;:405,&quot;bytes&quot;:927403,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/192403619?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vwK0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 424w, https://substackcdn.com/image/fetch/$s_!vwK0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 848w, https://substackcdn.com/image/fetch/$s_!vwK0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!vwK0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffd296bd4-dc2d-436a-91ba-6fe129fc928f_4284x5712.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">AI Continuum</figcaption></figure></div><p>This is a room full of software engineers. People who write code for a living. And when asked honestly where they stand on the AI continuum, the majority of answers were: still mostly doing it by hand. Truth be told, my suspicion is that the Rust community might be a little more biased toward <em>organic coding &#8212; </em>I&#8217;ll give you that.</p><p>Even so, that photo has been stuck in my head for days now, because it captures something the industry conversation keeps getting wrong.</p><p>In March 2025, <a href="https://www.businessinsider.com/anthropic-ceo-ai-90-percent-code-3-to-6-months-2025-3?IR=T">Dario Amodei told the Council on Foreign Relations</a> that AI would be writing 90% of code within three-to-six months. Essentially all of it within a year. Obviously, the internet did what the internet does &#8212; half the people called him delusional, the other half declared software engineering dead. And naturally, the further detached they are from software engineering, the louder they get. </p><p>So here we are, a year later. And the conclusion is&#8230; mixed.</p><p>On one hand, <a href="https://www.linkedin.com/feed/update/urn:li:activity:7438577180550443009">John Crickett ran his own informal survey</a> and found that maybe 5% of developers are heavy AI users. Around 20% use agents, mostly for tests. Many are still on autocomplete or nothing at all. That maps almost perfectly onto the Rustikon whiteboard.</p><p>On the other hand, Linear reports that <a href="https://linear.app/next">coding agents now operate in 75% of enterprise workspaces</a>, with 25% of issues handled by agents. Not a rounding error anymore &#8212; more of a structural adoption.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.pdole.ga/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">Thanks for reading! Subscribe to receive new weekly posts.</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>Here is a funny thing, though &#8212; both of these are true at the same time, and that&#8217;s the part most commentary misses.</p><p>I can clearly see this firsthand. At <a href="https://virtuslab.com/">VirtusLab</a>, I work with some great, capable engineers who essentially don&#8217;t write any code by hand at all anymore. They direct AI, review its output, and focus on architecture and coordination. The same is true across many companies I talk with. At <a href="https://the5.live/">The-5</a> &#8212; a community of entrepreneurs founded by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Tomasz Karwatka&quot;,&quot;id&quot;:14870772,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/117dacc9-2d82-4c94-92e3-4be452c66a02_1168x1166.png&quot;,&quot;uuid&quot;:&quot;2ef1073e-e040-4456-a43c-88362e950e97&quot;}" data-component-name="MentionToDOM"></span> &#8212; we have a group exchanging AI practices. For many, the vibe is close to 100% automation. Move anywhere near Silicon Valley startups, and it's even more so.</p><p>And yet. None of these people has stopped doing software engineering. (Though it&#8217;s worth pointing out &#8212; some of the people making the boldest claims about its death never actually started in the first place.)</p><p>That&#8217;s the distinction most people miss when they quote Dario. <em>&#8220;AI will write all the code&#8221;</em> is not the same as <em>&#8220;AI will do all the software-engineering.&#8221;</em> These are completely different claims. The gap between them is enormous.</p><p>AI today is genuinely capable of typing the code. Give it a well-scoped task &#8212; a function, a test, a migration, or even a relatively well-defined feature &#8212; and it will produce working output faster than any human. That part of the prediction is largely correct, even if adoption is uneven.</p><p>However, leave it unsupervised, without any guardrails and engineering discipline, and over time, the castle in the sand starts to crumble. </p><p>This is already visible. The code that is being generated is already straining the system, and the quality is going down. Rob Zuber at CircleCI <a href="https://www.linkedin.com/posts/robzuber_the-review-queue-isnt-the-problem-its-share-7439857577393344512-iK8C">published data showing</a> that PR sizes increase by more than 150% when teams adopt AI coding tools. Across 28 million workflows, main branch success rates fell to 70.8% this year &#8212; <strong>the lowest in five years</strong>. The industry has become very good at producing change and strikingly bad at absorbing it.</p><p>The bottom line is: <strong>software engineering isn&#8217;t about code generation.</strong> It&#8217;s figuring out what to build. It&#8217;s understanding constraints that live in people&#8217;s heads, not in the codebase. It&#8217;s navigating organizational politics, legacy systems, and tradeoffs that don&#8217;t show up in any spec. It&#8217;s directing the architecture. This might be many years away. Or it might be tomorrow. No one knows. It is clearly not here today.</p><p>The best evidence that writing code and engineering software are different things is the current tech job market. <a href="https://fred.stlouisfed.org/graph/?g=1Uh1V">The number of software engineering openings in the US</a> has been growing since the bottom of the dip in early 2025. </p><p>And last but not least: Anthropic &#8212; the company behind arguably the most capable AI coding tool available &#8212; <a href="https://www.businessinsider.com/anthropic-hiring-jobs-ai-supposedly-destroying-2026-2">is hiring over 100 software engineers</a>. Boris Cherny, the creator of Claude Code, was asked why and that was his answer: </p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/bcherny/status/2022762422302576970&quot;,&quot;full_text&quot;:&quot;<span class=\&quot;tweet-fake-link\&quot;>@big_duca</span> Someone has to prompt the Claudes, talk to customers, coordinate with other teams, decide what to build next. Engineering is changing and great engineers are more important than ever.&quot;,&quot;username&quot;:&quot;bcherny&quot;,&quot;name&quot;:&quot;Boris Cherny&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/1902044548936953856/J2jeik0t_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-14T19:58:37.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:248,&quot;retweet_count&quot;:661,&quot;like_count&quot;:8775,&quot;impression_count&quot;:1161613,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;video_preview_media_key&quot;:null,&quot;belowTheFold&quot;:true}" data-component-name="Twitter2ToDOM"></div><p>The company closest to making software engineers obsolete is hiring them as fast as it can. <strong>Because even when AI writes every line, someone still has to engineer the software.</strong></p><p>Say what you want. Dario might have been wrong about AI writing all the code by now. But he was pretty much spot on about AI <strong>being able</strong> to write all the code. This does not change the fact that engineering is still needed. And it&#8217;s not going anywhere.</p><p>A friend recently recommended I re-read Neuromancer. I guess it&#8217;s fair then to close this with: </p><p><em>&#8220;The future is already here &#8211; it's just not evenly distributed.&#8221;</em></p><p></p>]]></content:encoded></item><item><title><![CDATA[AI Slop Is Eating Your Organization From the Inside]]></title><description><![CDATA[Three bullet points would have been fine]]></description><link>https://www.pdole.ga/p/ai-slop-is-eating-your-organization</link><guid isPermaLink="false">https://www.pdole.ga/p/ai-slop-is-eating-your-organization</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Tue, 24 Mar 2026 08:14:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!O0Vv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!O0Vv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!O0Vv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 424w, https://substackcdn.com/image/fetch/$s_!O0Vv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 848w, https://substackcdn.com/image/fetch/$s_!O0Vv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!O0Vv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!O0Vv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg" width="1920" height="1305" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1305,&quot;width&quot;:1920,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:716378,&quot;alt&quot;:&quot;Blaise Pascal&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Blaise Pascal" title="Blaise Pascal" srcset="https://substackcdn.com/image/fetch/$s_!O0Vv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 424w, https://substackcdn.com/image/fetch/$s_!O0Vv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 848w, https://substackcdn.com/image/fetch/$s_!O0Vv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!O0Vv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7a9f050a-84b4-4d07-903a-1c2e8fd80706_1920x1305.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In 2024, Google ran an Olympics ad called &#8220;<a href="https://www.youtube.com/watch?v=NgtHJKn0Mck">Dear Sydney</a>&#8221;. A father uses Gemini to help his daughter write a fan letter to her favorite athlete.  </p><p>The internet was&#8230; <a href="https://www.reddit.com/r/popculturechat/comments/1eijlpb/google_pulls_controversial_dear_sydney_tv_spot_in/">not exactly impressed</a>.</p><p>Google pulled the ad. The backlash wasn&#8217;t about the quality of the letter &#8212; it was that a child&#8217;s genuine effort to express admiration had been outsourced to a machine. </p><p>The content might have been fine. The act was hollow.</p><p>Walk into any organization today, and you&#8217;ll find the same dynamic playing out on a smaller, quieter scale. Emails that are clearly AI-generated, sent to people who will clearly barely skim them. The lucky ones, that is. Most will have the title read and be instantly archived (and the rest will just die in the inbox).</p><p>And then we have Slack messages with that unmistakable ChatGPT cadence &#8212; slightly too polished, slightly too structured, slightly too long (and with way too many emojis). </p><p>Performance reviews that read like they were written by a thoughtful manager but feel like they were assembled by a machine. <em>Which they were.</em></p><p>AI-polished documents that &#8212; and here is the thing - no one asked to be polished. </p><p>There&#8217;s an asymmetry here that bothers me. AI has made it trivially cheap to produce content &#8212; 30 seconds, and you have a polished update. But it hasn&#8217;t made it any cheaper to consume content. Reading a two-page document still takes the reader 15 minutes. Before AI, the effort of writing acted as a natural filter. If something was hard to write, you thought twice about whether it was worth the effort (first <em>your</em> effort, and second recipient&#8217;s effort). That filter is gone.</p><p>Unless your recipient also uses AI to summarise your messages! In which case, you&#8217;d have to be insane not to wonder what&#8217;s the point of this whole ceremony.</p><p>Who is all of this for?</p><p>This is all truly bizarre. Person A spends 30 seconds generating a polished two-page update. Person B spends 30 seconds asking an AI to extract the key points. The actual human-to-human information transfer? Three bullet points. But instead of just sending these three fucking bullet points, we&#8217;ve routed the conversation through two AI passes and wasted everyone&#8217;s attention in between (not mentioning the tokens, which are the cheapest in all of this grotesque performance).</p><p><a href="https://x.com/jbernoff">Josh Bernoff</a> wrote his seminal book &#8220;<a href="https://www.goodreads.com/book/show/28448362-writing-without-bullshit">Writing Without Bullshit</a>&#8221; before Gen AI was all the rage. His main point was that most business writing wastes the reader&#8217;s time &#8212; that every sentence should be useful or deleted. AI hasn&#8217;t fixed this. It&#8217;s made it dramatically worse by reducing the cost of producing bullshit to zero.</p><p>Going full circle to where we started, there&#8217;s a deeper issue here. <a href="https://www.linkedin.com/in/hywelc/">Hywel Carver</a> put it well at CTO Craft London this year. Here is the thing: some communication isn&#8217;t just about transferring information.</p><p>When your manager writes your annual feedback, part of the value is that they sat down and thought about your growth. </p><p>When a colleague sends a thank-you note, the effort is the message. If I told you &#8220;I generated your performance review with AI&#8221; or &#8220;I generated my thank-you message with ChatGPT&#8221; &#8212; would you feel recognised? </p><p>There are moments in organizational life where the effort is the point &#8212; where the act of sitting down to think about someone is what carries the meaning, not the words that come out.</p><p>The irony is that inside an organization, we don&#8217;t need polish. Externally, sure &#8212; clients, investors, and candidates expect a certain standard. With external audiences, we don't have shared context, so polish fills the gap. I can even understand - though I wish it wasn&#8217;t the case - that we generate a certain amount of marketing slop to pump up the volume. </p><p>But internally? An organization should value raw clarity over manufactured professionalism. Three bullet points in a Slack message beat a four-paragraph AI-crafted email every time. A rough sketch of an idea beats a polished deck no one reads.</p><p> <em>&#8220;The present letter is a very long one, simply because I had no leisure to make it shorter</em>.&#8221; Blaise Pascal&#8217;s famous quote is today, after 400 years, more relevant than ever.</p><p>We&#8217;ve confused the appearance of thoughtfulness with actual thought. </p><p>And AI has made that confusion penny cheap.</p><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.pdole.ga/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">Thanks for reading! If you&#8217;d like to read my weekly thoughts, subscribe below</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><p></p>]]></content:encoded></item><item><title><![CDATA[The joy of reading the code]]></title><description><![CDATA[On simplicity, AI-generated code, and why the aesthetics of a language still matter]]></description><link>https://www.pdole.ga/p/the-joy-of-reading-the-code</link><guid isPermaLink="false">https://www.pdole.ga/p/the-joy-of-reading-the-code</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Tue, 17 Mar 2026 08:22:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!G9T-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!G9T-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!G9T-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 424w, https://substackcdn.com/image/fetch/$s_!G9T-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 848w, https://substackcdn.com/image/fetch/$s_!G9T-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!G9T-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!G9T-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg" width="1456" height="704" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:704,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:351998,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/190669545?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!G9T-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 424w, https://substackcdn.com/image/fetch/$s_!G9T-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 848w, https://substackcdn.com/image/fetch/$s_!G9T-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!G9T-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb392465b-1767-42c9-b04b-6ef2a9c8f6b6_1488x719.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Recently, I sat down to record a <a href="https://beyondthecommitpodcast.com/">Beyond the Commit</a> episode with <a href="https://x.com/josevalim">Jos&#233; Valim</a> - creator of the Elixir programming language. We ended up talking for over 2 hours &#8212; about types, about AI, about where programming languages are headed. </p><p>It got me thinking. I've been picking up Elixir on and off for years &#8212; for personal projects, for POCs &#8212; then drifting back to whatever <em>serious, enterprise</em> language the day job demands. But I kept returning. And the reason is simpler than I expected.</p><p>I realized I genuinely enjoy reading Elixir code.</p><p>I've spent years reading code in various languages, and for most of them, <em>"reading"</em> is something I endure, not something I look forward to. It&#8217;s a means to an end. </p><p>What makes Elixir different is its simplicity. Pipe operators, pattern matching, protocols &#8212; each construct is just powerful enough to be flexible and useful, yet simple enough that the code stays readable. </p><p>Now, many other languages have achieved simplicity (Golang). But none that I know of has achieved this level of balance of simplicity and harmonious aesthetics (at least for me). </p><p>There's a narrow design corridor that Elixir walks remarkably well.</p><p>Contrast this with Scala, which I used to know well. Well-written Scala code is a joy to read. Poorly written Scala code is the ninth circle of hell.  </p><p>Elixir gently constrains you toward clarity, and the result is that most Elixir code reads roughly the same way. Which is exactly what you want when your job is reviewing it.</p><p>This philosophy transcends the language itself and extends to its ecosystem. For my personal projects, I've been using Django for a few years now. I typically had to wire up hot reload, Stimulus, Tailwind, recurring jobs, and whatnot myself. It all ended up in a custom-made <a href="https://www.cookiecutter.io/">cookiecutter</a> template eventually. In Phoenix, all of that comes built in as a single coherent package &#8212; powerful enough to be flexible, simple enough to pick up and start building immediately. Neat, elegant package.</p><p>Here&#8217;s the part I find counterintuitive. We&#8217;re living through a moment where people are debating whether hand-writing code even matters anymore. AI writes the code, you review and guide it. I think that actually makes the aesthetics of a language matter more, not less. If your main interaction with code is reading it, then how pleasant that experience is becomes a first-class concern. At least while we're still expected to understand the code we ship&#8230;</p><p>The conventional wisdom right now is that statically typed languages are better suited for AI-assisted development. Types give the model more context, catch errors earlier, and constrain the solution space. It makes intuitive sense, and maybe it is so. It certainly is a convincing argument for enterprise-grade software.</p><p>Meanwhile, we also have some interesting experiments like this <a href="https://github.com/mame/ai-coding-lang-bench">one</a>, testing the cost of generating (correct) pet projects. <a href="https://x.com/mametter">Yusuke Endoh</a> tested Claude Code across 13 languages &#8212; Ruby came out on top. Fastest, cheapest, most reliable. Adding a type checker to Ruby made it 2-3x slower. Concise, expressive languages &#8212; the ones pleasant for humans to read &#8212; are also the ones where AI wastes the least tokens.</p><p>(There is also this <a href="https://dashbit.co/blog/type-systems-are-leaky-abstractions-map-take">interesting piece</a> from Jos&#233; himself about the tension related to the impossibility of typing some trivial expressions correctly without type unsoundness, but that&#8217;s a completely different story)</p><p>In the meantime, OpenAI just built <a href="https://www.reddit.com/r/machinelearningnews/comments/1rlo5ss/openai_releases_symphony_an_open_source_agentic/">Symphony</a> &#8212; their agent orchestration framework &#8212; in Elixir. A frontier AI lab reached for a language built on a 40-year-old virtual machine designed for telephone switches to orchestrate its agents.</p><p>There&#8217;s something poetic about that. In a world where AI handles more of the writing, what remains - at least for the time being - is taste, clarity, and the pleasure of working with something well-designed.</p><p>And Elixir has that in spades.</p>]]></content:encoded></item><item><title><![CDATA[GenAI in Development: Boardroom vs Trenches]]></title><description><![CDATA[On the great divide between internet hype and messy reality]]></description><link>https://www.pdole.ga/p/genai-in-development-boardroom-trenches</link><guid isPermaLink="false">https://www.pdole.ga/p/genai-in-development-boardroom-trenches</guid><dc:creator><![CDATA[Pawel Dolega 👊🏾]]></dc:creator><pubDate>Wed, 30 Jul 2025 07:02:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Hjgy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Hjgy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Hjgy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Hjgy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Hjgy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Hjgy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Hjgy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png" width="728" height="485.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:2363221,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/169304266?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Hjgy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Hjgy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Hjgy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Hjgy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e72d3b-fc5d-4b62-903f-dbc0e2de3a50_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Anyone even casually following tech news (or ANY news, really) has heard how AI is making software development more efficient. Claims about 10x or 100x efficiency gains are not unheard of. </p><p>In fact, if you listen to AI Lab CEOs, they&#8217;re not just preaching improved developer efficiency - they&#8217;re talking about making software developers entirely obsolete, imminently. In short: AI will write all the software. <a href="https://www.businessinsider.com/anthropic-ceo-ai-90-percent-code-3-to-6-months-2025-3?IR=T">According to Dario Amodei</a>, AI might be able to write 90% of the software as soon as 3-6 months from now - which, given the prediction was made in March, puts it somewhere by the end of 2025. Sounds like your stereotypical Silicon Valley CEO&#8217;s or investor's wet dream - the former can&#8217;t wait to eliminate unreliable <em>wetware</em> from the equation; the latter realized that fortune to be made in selling shovels. So much so, in fact, that when I speak with senior engineering leaders, the challenge of dealing with CEO expecting 2x, 5x or 10x efficiency increase <strong>TODAY</strong>, becomes a recurring theme.</p><p>I remain sceptical about that. <a href="https://www.businessinsider.com/tesla-robo-taxis-elon-musk-pt-barnum-circus-2019-4">It&#8217;s one of those situations</a> where everybody agrees on the direction; we only argue about the timing. The timing, though, is important. Go all-in too early, and you may drown in a <a href="https://x.com/svpino/status/1949430065441427907">deluge of AI-generated detritus</a>. Do it too late, and you risk losing your competitive edge. And the truth is - no one really knows. </p><p>The realities of a typical software business are quite different from what internet influencers try to paint. Many leaders experience <a href="https://x.com/amasad/status/1950260314823397767">moderate efficiency gains</a> from AI usage in software development. Now, assessing efficiency gains in software development is a tall order already. Various approaches have been tested over decades - starting from <a href="https://link.springer.com/chapter/10.1007/978-1-4842-4221-6_2#Par37">counting LOCs</a> to <a href="https://dora.dev/guides/dora-metrics-four-keys/">DORA</a> / <a href="https://queue.acm.org/detail.cfm?id=3454124">SPACE</a> metrics today. I am confident that <a href="https://www.mckinsey.com/industries/technology-media-and-telecommunications/our-insights/yes-you-can-measure-software-developer-productivity">a lot of consulting money</a> was made on measuring development productivity along the way, too. The everyday practicalities of most software teams are that they just don&#8217;t measure productivity at all. If anything, they rely on loose, gut feeling as an indicator (&#8220;<em>we seem to work on these longer than usual</em>&#8220; or &#8220;<em>oh, we seem to introduce more bugs recently</em>&#8221;). </p><p>Even with the gut-feeling approach, though, it seems that for most organizations, the typical AI-efficiency gains are in single-digit percentage numbers. This is slowly being backed by more and more <a href="https://leaddev.com/velocity/ai-coding-assistants-arent-really-making-devs-feel-more-productive">research</a>. In fact - and this is quite astounding as for the CEO of the company selling AI tooling - Sundar Pichai even cited &#8220;<a href="https://www.businessinsider.com/ai-google-engineers-coding-productive-sundar-pichai-alphabet-2025-6?IR=T">AI making Google engineers 10% more productive</a>&#8221;. But it goes even further, recently the <a href="https://arxiv.org/abs/2507.09089">METR study</a> made headlines online, with results showing an actual <strong>decrease</strong> in productivity with AI tooling. </p><p>Now, I find it very hard to believe that AI tools actually decrease productivity <em>systematically</em>. I do believe it can be the case in some specific, narrow cases, though. It might also be a case of a transition period - using a new tool and/or approach often leads to a temporary efficiency drop before people become fluent with the new ways of working. And besides, even a single-digit (or low two-digit) efficiency increase is worth billions of dollars in the industry. And that&#8217;s a conservative estimate!</p><p>However, the order-of-magnitude rift between online claims and the realities of software teams is stark.  </p><p>Here are my thoughts on why I think that&#8217;s the case. </p><p>First of all, as with any gold rush, you can make shitloads of money by selling shovels. Most companies do that with exorbitant claims about the benefits they will bring. These claims, most of the time, either lack empirical substantiation or hold true only in narrowly defined contexts (e.g. synthetic benchmarks). We&#8217;ve seen this story before with public cloud, and especially with the alleged savings it was supposed to bring. </p><p>Second, at least as it is in mid-2025, most of these claims focus on the code-writing phase of the SDLC cycle. Typically, these are activities like code generation, debugging, code explanation, or brainstorming. The reality, however, is that for many organizations, writing code (or working with code in general) is only a part of the software engineering work. Depending on the source, it may be between <a href="https://www.sonarsource.com/blog/how-much-time-do-developers-spend-actually-writing-code/">33%</a> and <a href="https://blog.a.team/mission/meetings-are-killing-software-engineers-productivity">50%</a> of the entire engineering time. And perhaps naturally, as the organization and/or <a href="https://www.pdole.ga/p/the-software-engineers-career-beyond">seniority of the engineer grows</a>, the pure code-writing phase shrinks. So even if the code writing phase has been improved by 2x, the end result might be that overall net productivity growth might be much less impressive 1.2x. </p><p>Third, many online claims come from small companies and startups - unsurprisingly, as they are typically the first ones to venture into uncharted territories. After all, agility is their key strategic advantage over larger incumbents. And at least partially because these companies are more relaxed about security or legal risks (in some cases, more relaxed is a euphemism for not giving a single fuck about these matters). Meanwhile, some of their larger competitors haven&#8217;t even managed to get Copilot approved by their legal or security teams (the opposite side of the spectrum). </p><p>Finally, and building on the previous point, startup codebases are typically neither large nor burdened by years of obscure changes driven by a tangled web of evolving requirements. Perhaps even more importantly, they are not being used by long-standing customers who depend on layers of osbscure logic up over years (often tailored to specific, idiosyncratic use cases). Customers, mind you, who will be very unpleased when the vibe-coded app starts to break. </p><p>Garry Tan said some time ago that for their recent batch <a href="https://news.ycombinator.com/item?id=43423543">AI is writing 95% of the code</a>. It is quite jarring, but I tend to believe Garry. </p><p>Which leads us to the key difference I am seeing. Namely, AI tools are borderline absolutely fantastic for some specific cases. Some of these cases are:</p><ul><li><p>working on the greenfield projects, which are completely or nearly completely separated from the rest of the organization's codebase (at least up to a point when these projects become too complex) </p></li><li><p>building throwaway POCs (even if they are not thrown away afterwards, which is the case more often than not)</p></li><li><p>using technology (e.g. programming language, libraries, or services) that you are not intimately familiar with.</p></li></ul><p>They are good at other cases, too (e.g. brainstorming or being faster <em>Google</em>), but they excel at the above in the context of software engineering.</p><p>Guess what - most of the Y-Combinator batch are pre-product-market-fit companies - all they do from software engineering is write POC / MVP, and the last thing they (should) care about at that stage is long-lasting code quality/readability.</p><p>But here&#8217;s the thing &#8212; most tech leaders don&#8217;t work in greenfield settings or build throwaway POCs. As surprising as it may be, a lot of devs don&#8217;t work at a hot SV startup or big tech - but rather in some utility provider, midwestern logistics company, or maybe some financial institution. More often than not, they&#8217;re knee-deep in brownfield legacy systems.</p><p>As it is in mid-2025, AI tools are not overly good with such codebases. One thing is that these codebases often have aged code, with many custom abstraction layers (in other words, <em>out-of-distribution</em> data), separating it from any open source libraries they might use (codebase that is likely <em>in-distribution</em> for the given LLM model). The other thing is that these codebases tend to be sizable. It is not uncommon for these projects to be in the range of hundreds of thousands to millions of LOCs. And while <a href="https://towardsdatascience.com/towards-infinite-llm-context-windows-e099225abaaf/">context windows are steadily growing</a> &#8212; with models like <a href="https://deepmind.google/models/gemini/pro/">Gemini 2.5 Pro hitting 1M tokens</a> &#8212; that alone doesn&#8217;t solve the large codebase problem.</p><p>The unfortunate reality is that extending the context window (like in the case of analysing a big codebase) often leads to problems like reduced attention focus or even accidental context-poisoning. You may experience this while working in agentic-mode in Cursor, while trying to provide an increasing amount of information to LLM while debugging a nasty bug, and at some point, realizing that the model suggestions degrade over time. </p><p>If GenAI development follows S-curve - which is typical for many new inventions that become widespread - we may expect interesting things.</p><p>The classic example is smartphones, which experienced massive advancement and innovation in technology between 2010 and 2020. However, it is, hard to deny that the technology has stagnated recently, <a href="https://www.disconnect.blog/p/smartphone-innovation-is-dead-and-thats-fine">barely anyone is excited about new iPhone launches</a> these days, and the technological improvements have become mostly incremental. </p><p>It is not outside the realm of possibility that it will take way longer for AI to work effectively with brownfield codebase than most people anticipate. <a href="https://youtu.be/vagyIcmIGOQ?t=6369">@dhh had a great anecdote on his recent Lex podcast about that</a>. (The presentation he mentions is &#8220;<a href="https://youtu.be/nwhZ3KEqUlw?t=492">Web Design: The First Hundred Years with Maciej Ceglowski</a>&#8221; from 2014; great presentation by the way).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Vvi5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Vvi5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 424w, https://substackcdn.com/image/fetch/$s_!Vvi5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 848w, https://substackcdn.com/image/fetch/$s_!Vvi5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!Vvi5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Vvi5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png" width="1456" height="868" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:868,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:46501,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.pdole.ga/i/169304266?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Vvi5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 424w, https://substackcdn.com/image/fetch/$s_!Vvi5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 848w, https://substackcdn.com/image/fetch/$s_!Vvi5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 1272w, https://substackcdn.com/image/fetch/$s_!Vvi5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99e347a0-6313-4d18-aa53-e7b5698d6aa6_1979x1180.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Exhibit A: S-curve of innovation over time</figcaption></figure></div><p>In other words, it is difficult to say at which point of the S-curve we are currently at (A or B, above). </p><p>When it comes to software engineering specifically, I&#8217;d say we are starting to see incremental improvements already. Recent releases are definitely less exciting than the ones from 2023-2024. Some feel like <a href="https://x.com/pdolega/status/1945767164922708457">almost backward steps</a> &#129335;. But it is worth being open-minded - for instance, <a href="https://www.axios.com/2025/07/24/openai-gpt-5-august-2025">GPT-5 is allegedly just around the corner</a>. </p><p>So, where does it put us?</p><p>Real-world productivity gains are, as it is now, overhyped in real production code bases. If you are struggling with marrying LLMs with your messy legacy system, you are not behind. The whole industry is struggling with it. </p><p>It is not too late to experiment - and experiment you should because even if the gains present a sobering contrast to the prevailing hype narrative, they remain very much real!</p><p>And there are definitely levels to this game - the ability to work effectively with LLMs, even (or especially) with legacy codebases, is a skill that can be levelled up to unlock additional gains. For example, proper code compartmentalization seems to help (alas, it often is an elusive goal in legacy codebases). Heavier investment in company-wide <a href="https://docs.cursor.com/en/context/rules">cursor rules</a> has also shown promising results, etc.</p><p>And as crazy predictions go: Who knows - maybe LLMs will suck with large legacy codebases for some more time, which will lead us to a situation where it is more practical to rebuild a system (with AI!), instead of refactoring/extending an existing codebase. In that case, everything will be greenfield until it isn&#8217;t, in which case it will cease to exist. </p><p>Until then, keep your shovel sharp.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.pdole.ga/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">Last but not least, hit subscribe if you liked my take on the topic.</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>