<?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[Rough Magic | Podcast & Newsletter]]></title><description><![CDATA[🎙️ ~20 min demo-first takes on LLMs reshaping tech work. 📝 How to guides, reviews and hot takes. ]]></description><link>https://www.roughmagic.me</link><image><url>https://substackcdn.com/image/fetch/$s_!O_Mb!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc00002cb-255a-4e2f-913a-1a04558e3fff_1280x1280.png</url><title>Rough Magic | Podcast &amp; Newsletter</title><link>https://www.roughmagic.me</link></image><generator>Substack</generator><lastBuildDate>Sat, 11 Apr 2026 10:15:03 GMT</lastBuildDate><atom:link href="https://www.roughmagic.me/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Marc Hatton]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[theroughmagic@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[theroughmagic@substack.com]]></itunes:email><itunes:name><![CDATA[Marc Hatton]]></itunes:name></itunes:owner><itunes:author><![CDATA[Marc Hatton]]></itunes:author><googleplay:owner><![CDATA[theroughmagic@substack.com]]></googleplay:owner><googleplay:email><![CDATA[theroughmagic@substack.com]]></googleplay:email><googleplay:author><![CDATA[Marc Hatton]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[The canvas: Where humans and AI agents do high bandwidth collaboration]]></title><description><![CDATA[Steve Ruiz, founder TL Draw]]></description><link>https://www.roughmagic.me/p/the-canvas-where-humans-and-ai-agents</link><guid isPermaLink="false">https://www.roughmagic.me/p/the-canvas-where-humans-and-ai-agents</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Sun, 22 Mar 2026 14:36:21 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/191764938/3c5a2a8adbfae3d87fdc13bb9fa794fb.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<p>Steve Ruiz built TLDraw as an infinite canvas SDK and discovered that the spatial nature of a 2D surface solves coordination problems that human and LLMs struggle with elsewhere: orchestrating multiple agents, grounding abstract concepts visually and giving users a way to annotate and iterate on AI output. Engineering work is shifting from writing code to system architecture, and the canvas is where high bandwidth work happens magically.<br><br>In this episode Steve demos Make Real (&#8221;the world&#8217;s first vibe coding tool&#8221;), the Agent Starter Kit, and Fairies -- a new experiment that puts multiple agents directly on the canvas. He also previews future directions: foveation, zones and annotation for images and video.<br><br>TLDraw is hiring: <a href="https://www.youtube.com/redirect?event=video_description&amp;redir_token=QUFFLUhqbE5SU0N2QU5Wa2FScFJ5ZEFZay1vdnFVREFpQXxBQ3Jtc0tuYzNKd05iTkdXQ1A5a0JvMUpnbXQ3ZzI2MVItdWYtaEN4cjZ2Q0JqbVJrUVAxajluZGpRV3l1d2czRG5jck5jOG1iblF6Yjc5MnhZbElTQW4zZmNnTE1qckczeU1MTE5ybDZYcnBRRE04Q0h4TmVKaw&amp;q=https%3A%2F%2Ftldraw.dev%2Fcareers&amp;v=lCFgpeLNHjQ">https://tldraw.dev/careers</a><br><br><strong>Timestamps</strong><br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ">00:00</a> Teaser: Multi-agent canvas (Fairies)<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=51s">00:51</a> Intro: Steve Ruiz<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=217s">03:37</a> Intro: TLDraw<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=393s">06:33</a> The canvas as a high-bandwidth collaboration surface<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=714s">11:54</a> Demo: A history of TLDraw<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=964s">16:04</a> Demo: Make Real (the world&#8217;s first vibe coding tool, Nov 2023)<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=1410s">23:30</a> Demo: The Agent Starter Kit<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=1563s">26:03</a> Demo: Fairies &#8212; multi-agent canvas orchestration<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=2003s">33:23</a> The dark code factory and human intervention<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=2175s">36:15</a> Future: Annotation as a primitive (images, video)<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=2237s">37:17</a> Future: Spatial harness for agents<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=2364s">39:24</a> Future: Responsive zones (&#8221;haunted places&#8221;)<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=2601s">43:21</a> Q&amp;A: Building philosophy<br><a href="https://www.youtube.com/watch?v=lCFgpeLNHjQ&amp;t=2749s">45:49</a> Wrap: TLDraw is hiring<br><br><strong>Follow / Get In Touch</strong></p><ul><li><p>Steve Ruiz: https://x.com/steveruizok | https://www.linkedin.com/in/steve-ruiz-61a150239/</p></li><li><p>Marc (host): https://x.com/marchattonhere | https://www.linkedin.com/in/marchatton/</p></li></ul><p><strong>Links</strong></p><ul><li><p>TLDraw: https://tldraw.com</p></li><li><p>TLDraw SDK: https://tldraw.dev</p></li><li><p>Make Real: https://makereal.tldraw.com</p></li><li><p>TLDraw Computer: https://computer.tldraw.com</p></li><li><p>TLDraw on GitHub: https://github.com/tldraw/tldraw</p></li></ul><p></p>]]></content:encoded></item><item><title><![CDATA[Why your AI needs a home: The personal cloud revolution with Ben Guo (Zo Computer)]]></title><description><![CDATA[AWS for your mom]]></description><link>https://www.roughmagic.me/p/why-your-ai-needs-a-home-the-personal</link><guid isPermaLink="false">https://www.roughmagic.me/p/why-your-ai-needs-a-home-the-personal</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Sat, 14 Mar 2026 01:26:39 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/190900165/dbef1549409ab0c5b403efc9e5ed3640.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<h4>Overview</h4><p>Ben Guo explains the next computer is a personal cloud: software-company-grade infrastructure for personal computing, not just for businesses.</p><p>In this episode he demos Zo live and shows what that looks like when files, automations, memory, hosting and model access live in one persistent system you own. Personal computing is starting to feel like the early PC movement again, and the early days of the internet and P2P file sharing/hosting. </p><h4>Watch on YouTube</h4><div id="youtube2-Fp97gT8hDyk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Fp97gT8hDyk&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/Fp97gT8hDyk?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><ul><li><p>00:00 Ben Guo, Zo and why personal computing is back</p></li><li><p>04:03 The personal cloud thesis</p></li><li><p>06:27 Zo demo starts: files, automations and hosting</p></li><li><p>09:19 Data imports as memory</p></li><li><p>12:31 Persistent, elastic compute</p></li><li><p>14:24 AI provider API keys and integrations</p></li><li><p>16:11 Q&amp;A: privacy and ownership</p></li><li><p>17:47 Q&amp;A: product taste and velocity coding</p></li></ul><p></p><h4>Zo is hiring cracked engineers</h4><p>https://www.zo.computer/careers</p><p></p><h4>Follow / get in touch</h4><ul><li><p>Ben Guo (co-founder): https://x.com/0thernet or https://www.linkedin.com/in/0thernet/</p></li><li><p>Rob Cheung (co-founder): https://x.com/perceptnet</p></li><li><p>Marc (host): https://x.com/marchattonhere or https://www.linkedin.com/in/marchatton/</p><p></p></li></ul><h4>Products/tools mentioned</h4><ul><li><p>Zo Computer: https://www.zo.computer/</p></li><li><p>Claude Code</p></li><li><p>OpenClaw: https://github.com/openclaw/openclaw</p></li><li><p>23andMe: https://www.23andme.com/</p></li><li><p>ClinVar: https://www.ncbi.nlm.nih.gov/clinvar/</p><p></p></li></ul><h4>Companies mentioned</h4><ul><li><p>Venmo: https://venmo.com/</p></li><li><p>Substack: https://substack.com/</p></li><li><p>AWS: https://aws.amazon.com/</p></li><li><p>Vercel: https://vercel.com/</p></li><li><p>Cloudflare: https://www.cloudflare.com/</p></li><li><p>Hetzner: https://www.hetzner.com/</p></li></ul>]]></content:encoded></item><item><title><![CDATA[How to process the tech world changing so fast]]></title><description><![CDATA[A mental model for 'surviving']]></description><link>https://www.roughmagic.me/p/how-to-process-the-tech-world-changing</link><guid isPermaLink="false">https://www.roughmagic.me/p/how-to-process-the-tech-world-changing</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Tue, 03 Mar 2026 07:11:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bNWt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Today&#8217;s post is a short note</em></p><p>I feel equally terrified and equally excited about the rise of LLMs. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/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 Rough Magic | Podcast &amp; Newsletter! Subscribe for free to receive new posts and support my work.</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>After hitting the weekly limits for codex 5.3 on the $200, I was <em>shitting my pants</em> whilst being hooked as <em>13 year old me playing Age of Empires</em>. It is hands down the most powerful coding model. It unlocks long running agents and the concept of <a href="https://www.roughmagic.me/p/code-factory-how-agents-write-and">Code Factories</a>.</p><p>What seems unthinkable is suddenly acceptable the next week!!!</p><p>A few weeks ago, I read this article by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Geoffrey Huntley&quot;,&quot;id&quot;:4411805,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b49c4e87-8d2d-46c1-853e-7a41023203a1_400x400.png&quot;,&quot;uuid&quot;:&quot;5bdb4c7e-65e5-4e52-ae08-0670bf64179d&quot;}" data-component-name="MentionToDOM"></span> about the Overton window https://ghuntley.com/overton/ </p><p>Think right wing vs left wing politics. Why do you think something is acceptable whilst another person not? </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bNWt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bNWt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp 424w, https://substackcdn.com/image/fetch/$s_!bNWt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp 848w, https://substackcdn.com/image/fetch/$s_!bNWt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp 1272w, https://substackcdn.com/image/fetch/$s_!bNWt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bNWt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp" width="300" height="400" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:400,&quot;width&quot;:300,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:12862,&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.roughmagic.me/i/189738838?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.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_!bNWt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp 424w, https://substackcdn.com/image/fetch/$s_!bNWt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp 848w, https://substackcdn.com/image/fetch/$s_!bNWt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.webp 1272w, https://substackcdn.com/image/fetch/$s_!bNWt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed00ec22-9801-4045-8568-a9af931ef8e4_300x400.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"><svg role="img" 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"><g><title></title><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"><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"><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>Human psychology extends to new technological shifts. NEVER BEFORE has the rate of change and disruption to tech work been this fast. </p><p>This is a great mental model and learning. In this world your goal should be to move new ideas through your own mental model from:<br>unthinkable &#8594; radical &#8594; acceptable</p><p>That&#8217;s it for today. </p><p>Cheers friends :)</p><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/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 Rough Magic | Podcast &amp; Newsletter! Subscribe for free to receive new posts and support my work.</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><item><title><![CDATA[Code Factory: How agents write & review 100% of your code]]></title><description><![CDATA[~20 min demo with Ryan Carson as our first ever guest]]></description><link>https://www.roughmagic.me/p/code-factory-how-agents-write-and</link><guid isPermaLink="false">https://www.roughmagic.me/p/code-factory-how-agents-write-and</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Thu, 26 Feb 2026 01:45:39 GMT</pubDate><enclosure url="https://api.substack.com/feed/podcast/189196706/9b5b7ee3fc37fb7230aad8afa7eccf7f.mp3" length="0" type="audio/mpeg"/><content:encoded><![CDATA[<p>This builds on the viral article by <a href="https://x.com/ryancarson">@ryancarson</a>. </p><div class="twitter-embed" data-attrs="{&quot;url&quot;:&quot;https://x.com/ryancarson/status/2023452909883609111?s=20&quot;,&quot;full_text&quot;:&quot;https://t.co/c0jGiIrUke&quot;,&quot;username&quot;:&quot;ryancarson&quot;,&quot;name&quot;:&quot;Ryan Carson&quot;,&quot;profile_image_url&quot;:&quot;https://pbs.substack.com/profile_images/2016785876261679104/LJFhaQ17_normal.jpg&quot;,&quot;date&quot;:&quot;2026-02-16T17:42:22.000Z&quot;,&quot;photos&quot;:[],&quot;quoted_tweet&quot;:{},&quot;reply_count&quot;:68,&quot;retweet_count&quot;:389,&quot;like_count&quot;:3960,&quot;impression_count&quot;:1893358,&quot;expanded_url&quot;:null,&quot;video_url&quot;:null,&quot;belowTheFold&quot;:false}" data-component-name="Twitter2ToDOM"></div><p></p><p>Here&#8217;s a snippet of Ryan providing an overview of his Code Factory setup:</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;b6a44de4-20b4-4284-b655-ba6536d4c779&quot;,&quot;duration&quot;:null}"></div><p></p><p>You'll find this more fun watching episode (instead of listening), here it is on YouTube:</p><div id="youtube2-yW3WRdwv5U4" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;yW3WRdwv5U4&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/yW3WRdwv5U4?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></p><p>Bye for now.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/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 Rough Magic | Podcast &amp; Newsletter! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[In the news: The sands are shifting]]></title><description><![CDATA[Knowledge workers feeling deeply anxious about the future]]></description><link>https://www.roughmagic.me/p/in-the-news-the-sands-are-shifting</link><guid isPermaLink="false">https://www.roughmagic.me/p/in-the-news-the-sands-are-shifting</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Fri, 09 Jan 2026 18:06:30 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!BG6s!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>For those who are new, I share what I&#8217;ve found interesting. Not I am not covering all the AI news. I am the guy who stores links to links in Obsidian note taker, that no one ever sees. </p><p>Maybe you find this useful :)</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/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 Rough Magic! Subscribe for free to receive new posts and support my work.</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><h3>A) Weird shit is happening, and its going to get weirder</h3><ul><li><p><strong>Steam, steel and infinite minds: </strong>Every era is shaped by its miracle material. Steel forged the Gilded Age. Semiconductors switched on the Digital Age. Now AI has arrived as infinite minds. <a href="https://x.com/ivanhzhao/status/2003192654545539400">Ivan Zhou (Notion CEO)</a></p></li><li><p><strong>Karpathy feeling behind, plus the ripple.</strong> The sands are shifting, Karpathy feels like he&#8217; fallen behind <a href="https://x.com/karpathy/status/2004607146781278521">(link)</a></p></li><li><p><strong>&#8220;AI will kill all the lawyers&#8221; (<a href="https://spectator.com/article/ai-will-kill-all-the-lawyers/">Spectator</a>).</strong> A sobering read. &#8220;Last week we did an experiment, a kind of simulation. We took a real, recent and important case &#8211; a complex civil court appeal which I wrote, and it took me a day and a half. We redacted all identifying details, for anonymity and confidentiality, and we fed the same case to Grok Heavy AI. And then we asked it to do what I did. After some prompting, the end result was&#8230;&#8217; He shakes his head. &#8216;Spectacular. Actually staggering. It did it in 30 seconds, and it was much better than mine. And remember, I am very good at this.&#8221;  </p></li></ul><h3>B) Building with core AI</h3><ul><li><p><strong>LLMs under the hood:</strong> A BEAUTIFUL video showing how conceptually work. OMG it&#8217;s stunning. <a href="https://www.youtube.com/watch?v=D8GOeCFFby4">Welch Labs YouTube</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.youtube.com/watch?v=D8GOeCFFby4" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BG6s!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png 424w, https://substackcdn.com/image/fetch/$s_!BG6s!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png 848w, https://substackcdn.com/image/fetch/$s_!BG6s!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png 1272w, https://substackcdn.com/image/fetch/$s_!BG6s!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BG6s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png" width="1133" height="535" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:535,&quot;width&quot;:1133,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:970307,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://www.youtube.com/watch?v=D8GOeCFFby4&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://theroughmagic.substack.com/i/183898581?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.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_!BG6s!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png 424w, https://substackcdn.com/image/fetch/$s_!BG6s!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png 848w, https://substackcdn.com/image/fetch/$s_!BG6s!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.png 1272w, https://substackcdn.com/image/fetch/$s_!BG6s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ec1a2fc-559e-48d0-aa67-9768dc2c4693_1133x535.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"><svg role="img" 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"><g><title></title><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"><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"><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></li><li><p><strong>&#8220;You&#8217;re suddenly knee deep in chunking&#8230;&#8221;</strong> A pragmatic &#8220;ship something real fast&#8221; thread, aimed at avoiding infrastructure rabbit holes. <a href="https://x.com/ashpreetbedi/status/1999253345362702527?utm_source=chatgpt.com">X (formerly Twitter)</a></p></li><li><p><strong>State of agentic iOS engineering in 2026.</strong> A snapshot of how mobile dev workflows are mutating. And dev workflows in general. <a href="https://x.com/Dimillian/status/2006773415181693125?utm_source=chatgpt.com">Dimillian</a></p></li><li><p><strong>Cl&#233;mentine Fourrier: LLM Evaluation Guidebook v2.</strong> Good reminder that evals are the steering wheel, not an afterthought <a href="https://ngntipkolamrenang.twstalker.com/clefourrier/status/1996250279033839918?utm_source=chatgpt.com">ngntipkolamrenang.twstalker.com</a></p></li><li><p><strong>Continual system prompt learning for code agents.</strong> People are starting to treat prompts like evolving infrastructure. <a href="https://x.com/aiDotEngineer/status/2003591949115375832?utm_source=chatgpt.com">X (formerly Twitter)</a></p></li><li><p><strong>tldraw: the fairies (agents) are amazing. </strong>Multi-agent coordination is a &#8216;fun&#8217; puzzle to solve. <a href="https://x.com/tldraw/status/2002113715043467509?utm_source=chatgpt.com">X (formerly Twitter)</a></p></li></ul><h3>C) Greater productivity with AI</h3><ul><li><p>How to prompt your Claude Code to keep it going from your phone (with VPN etc) <a href="https://granda.org/en/2026/01/02/claude-code-on-the-go/?utm_source=chatgpt.com">granda.org+1</a></p></li><li><p><strong>React Grab CLI: </strong>Click in the UI, comment and automatically changes will be implemented agentically. <a href="https://x.com/aidenybai/status/1998062487082840487?utm_source=chatgpt.com">Aiden Bai</a></p></li><li><p><strong>Prototyping isn&#8217;t thinking.</strong> <a href="https://debbiewidjaja.com/p/prototyping-isnt-thinking?utm_source=chatgpt.com">debbiewidjaja.com</a></p></li><li><p><strong>Amp: thread maps.</strong> Clever feature to navigate your AI coding chats (in Amp). <a href="https://x.com/thorstenball/status/1999155279905402955?utm_source=chatgpt.com">X (formerly Twitter)</a></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2SoH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2SoH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png 424w, https://substackcdn.com/image/fetch/$s_!2SoH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png 848w, https://substackcdn.com/image/fetch/$s_!2SoH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png 1272w, https://substackcdn.com/image/fetch/$s_!2SoH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2SoH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png" width="1456" height="1114" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1114,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1149867,&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://theroughmagic.substack.com/i/183898581?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.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_!2SoH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png 424w, https://substackcdn.com/image/fetch/$s_!2SoH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png 848w, https://substackcdn.com/image/fetch/$s_!2SoH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.png 1272w, https://substackcdn.com/image/fetch/$s_!2SoH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1cbff20-d6a7-4737-9c42-e65b04e95c73_2460x1882.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"><svg role="img" 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"><g><title></title><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"><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"><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>&lt;the end. enjoy your coffee, or matcha, or organic freeze thingy whatever&gt;</p><p>p.s. Soz for being a couple weeks late. Holidays + sick children + sick wife + sick me.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/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 Rough Magic! Subscribe for free to receive new posts and support my work.</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><item><title><![CDATA[News: Compound engineering workflows]]></title><description><![CDATA[And Anthropic trialing audits as a service for smart contract vulnerabilities]]></description><link>https://www.roughmagic.me/p/news-compound-engineering-workflows</link><guid isPermaLink="false">https://www.roughmagic.me/p/news-compound-engineering-workflows</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Mon, 08 Dec 2025 17:07:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!O_Mb!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc00002cb-255a-4e2f-913a-1a04558e3fff_1280x1280.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><h2>Opinion</h2><ul><li><p>Essay: The <a href="https://www.sh-reya.com/blog/consumption-ai-scale/">2 problems of online consumption of AI generated content at scale</a>: Signal erosion and verification difficulty. AND what you can do to counter them.</p></li><li><p><a href="https://x.com/bcsmithx/status/1996042921116934369?utm_source=chatgpt.com">Vertical AI is where it&#8217;s at</a>: The next big wins are in narrow domains where data, workflows and evals are all specific and painful.</p></li><li><p>Intro to LLMs: Karpathy&#8217;s talk still the best starting point. <a href="https://x.com/businessbarista/status/1995641978004922829?utm_source=chatgpt.com">Here is a useful summary.</a></p></li><li><p>&#8220;Thought does not require language. Language is an expression of thought. Intelligence requires thought more than language&#8221; - <a href="https://lnkd.in/eBv5EpXh?utm_source=chatgpt.com">Yann Le Cunn</a></p><p></p></li></ul><h2>Productivity</h2><ul><li><p><a href="https://github.com/EveryInc/compound-engineering-plugin">Compound engineering plug-in</a> by Kieran Klaasen. With each feature you build, the plug-in: #Engineering</p></li></ul><blockquote><ol><li><p>Documents patterns for the next feature</p></li><li><p>Creates reusable components that accelerate future work</p></li><li><p>Establishes conventions that reduce decision fatigue</p></li><li><p>Codifies knowledge that compounds across the team </p></li></ol></blockquote><ul><li><p>try out Claude Code&#8217;s <a href="https://x.com/trq212/status/1993786550656897491?s=20">frontend-design-skill</a> to build UI without the purple gradients :D #FrontEnd</p></li><li><p>n8n&#8217;s team built a <a href="https://www.linkedin.com/posts/giulioandreini_how-do-you-keep-your-code-and-figma-variables-share-7398628417686011904-nzY8?utm_source=chatgpt.com">Figma plugin</a> that reads CSS tokens from Git and updates Figma variables in one click. No third party token tool, just their own automation #Design</p></li><li><p>BugBot from Cursor is a low effort way to auto review PRs. Similar to Charlie and Codex review automations.</p></li></ul><h2>Novel use cases</h2><ul><li><p><a href="https://x.com/clawdbot">Clawdbot</a> on X: Personal productivity bot by steipete. Powered by his duct-taped build of Warelay -- a CLI for sending/receiving WhatsApp via Twilio or WhatsApp Web. </p></li><li><p>LLM audits as a service: Anthropic testing <a href="https://x.com/AnthropicAI/status/1995631802032287779?s=20">smart contract vulnerabilities</a> - preliminary showing $4.6M in funds at risk with a PoC. </p><p></p></li></ul><h2>Evals</h2><ul><li><p>Deep dive on LLM evals in <a href="https://newsletter.pragmaticengineer.com/p/evals?utm_source=chatgpt.com">The Pragmatic Engineer</a>. <code>Stop what you&#8217;re doing right now and read this!</code></p><ul><li><p>p.s. I took the Maven course by Hamel and Shreya and cant recommend it highly enough!</p></li></ul></li></ul>]]></content:encoded></item><item><title><![CDATA[The abundance premium]]></title><description><![CDATA[What happens when the cost of code falls to zero]]></description><link>https://www.roughmagic.me/p/the-abundance-premium</link><guid isPermaLink="false">https://www.roughmagic.me/p/the-abundance-premium</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Tue, 02 Dec 2025 12:55:58 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/e9148f11-b0e9-4ec8-860d-b6d9ef8bf02f_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><p>Dan Shipper dropped a thought provoking yet seemingly obvious post. </p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://x.com/danshipper/status/1995196054535639470?s=20" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ss1f!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 424w, https://substackcdn.com/image/fetch/$s_!Ss1f!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 848w, https://substackcdn.com/image/fetch/$s_!Ss1f!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 1272w, https://substackcdn.com/image/fetch/$s_!Ss1f!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ss1f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png" width="599" height="155" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:155,&quot;width&quot;:599,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27458,&quot;alt&quot;:&quot;Code is now cheap and easy to produce&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:&quot;https://x.com/danshipper/status/1995196054535639470?s=20&quot;,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://theroughmagic.substack.com/i/180489357?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Code is now cheap and easy to produce" title="Code is now cheap and easy to produce" srcset="https://substackcdn.com/image/fetch/$s_!Ss1f!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 424w, https://substackcdn.com/image/fetch/$s_!Ss1f!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 848w, https://substackcdn.com/image/fetch/$s_!Ss1f!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 1272w, https://substackcdn.com/image/fetch/$s_!Ss1f!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F70612b2e-b314-4472-bdf2-58a9b7e5f768_599x155.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><p>My first reaction: yes.</p><p>Second: If cost of code will trend towards zero, what actually changes based on where the value sits.</p><p>Third: what can we learn from the past?</p><p>Caveat. This might age as well as fresh bread from the lovely local bakery, not a Meerlust Rubicon (top tier red wine). Genuinely curious to re-visit this post in 10 years time (reminder set!). </p><p>Here goes&#8230;</p><h2>Abundance</h2><p>LLMs will make code creation cheap, trending towards zero. But it will not make software worthless. </p><p>When code get cheap, the act of keyboard punching is no longer the bottleneck. I hear you, software engineering is more than that (I know!)</p><p>The way we <strong>design, integrate and earn trust </strong>with that code changes.</p><p>Most importantly scarcity moves upstream: attention and trust.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.roughmagic.me/subscribe?"><span>Subscribe now</span></a></p><h2>History tells a story</h2><h3>Printing press</h3><p>Suddenly pamphlets, religious texts, you name it, were in abundance.</p><p>Books with beautiful bindings and signed copies. These became more premium.</p><h3>Clothing</h3><p>Fast fashion makes it trivial to own clothing. But top quality suits, your Gucci&#8217;s of the world etc still demand a hefty premium.</p><p>Side note: my wife hates fast fashion and is a pure cotton maximalist. </p><h3>Entertainment</h3><p>Music and video streaming drove the marginal price of music to zero. But live shows and concerts still demand a premium. Immersive experiences you could say.</p><h2>Ok, so what is this abundance premium for software? </h2><p>Dan is right: LLMs change <strong>how software is built</strong>. LLMs make it easy to spit out simple CRUD, auth, pricing integrations, all of that jazz. One person with an AI copilot can ship what used to take a team.</p><p>But the hard parts are harder than ever:</p><ul><li><p>Building a <strong>trusted brand</strong> people will bet their reputation on (buyers)</p></li><li><p>Getting the <strong>mind share</strong> of human beings (this is going to get 10X worse in the future)</p></li><li><p><strong>Workflows, not apps</strong>: Deeply integrating into the direct context of the users.</p></li><li><p><strong>Solving compliance</strong> problems. This is why companies like Wise and Deel have such a huge moat.</p></li></ul><p>Only a handful of companies can achieve all those things meaningfully.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mcfo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mcfo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!mcfo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!mcfo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!mcfo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mcfo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png" width="454" height="302.7706043956044" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.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;:454,&quot;bytes&quot;:2811590,&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://theroughmagic.substack.com/i/180489357?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.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_!mcfo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!mcfo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!mcfo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!mcfo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb9ecd533-c0a1-47a4-8450-6bda67849539_1536x1024.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"><svg role="img" 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"><g><title></title><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"><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"><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><h2>Humans are still humans: Enter the abundance premium</h2><p>Code creation is in abundance. So the average product is better AND cheaper. And creativity soars as software is democratised.</p><p>But the really hard parts about creating a business/product that wins are going to get even harder. To stand out, you have to solve:</p><ul><li><p><strong>Brand</strong>: Narrative, trust and distribution</p></li><li><p><strong>Workflows</strong>: Meet users at their context and solve compliance</p></li><li><p><strong>Taste</strong>: Delight by default not exception</p></li></ul><p>So that humans still want to hear from <em><strong>you</strong>.</em></p><p>The <strong>best people</strong> to solve those problems are going to be even more in demand and <strong>demand more of a premium</strong>. </p><p>And products built by those people will still demand a premium, cause they got the hard parts right.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/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 Rough Magic! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[News: LLMs coming to Google Sheets and MS Excel]]></title><description><![CDATA[And fast (sync) vs background (async) models]]></description><link>https://www.roughmagic.me/p/news-llms-coming-to-google-sheets</link><guid isPermaLink="false">https://www.roughmagic.me/p/news-llms-coming-to-google-sheets</guid><dc:creator><![CDATA[Marc Hatton]]></dc:creator><pubDate>Tue, 25 Nov 2025 17:21:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!VVqo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hi hi</p><p>Here&#8217;s the first weekly wrap of news. Happy bookmarking for later (that you won&#8217;t ever end up reading).</p><h2>Opinion pieces</h2><ul><li><p>Shipping is marketing, prioritising, building, testing and more. Practice shipping</p></li><li><p><a href="https://www.producttalk.org/ai-changes-everything-and-nothing-at-all">ProductTalk</a> &#8211; &#8220;<strong>AI Changes Everything (And Nothing At All)</strong>&#8221;. The real AI skill for PMs is not prompting, it is resisting the urge to skip discovery just because shipping is cheap.</p></li></ul><h2>Novel designs</h2><ul><li><p><strong><a href="https://x.com/swyx/status/1983737160923804095">Fast (sync) vs background (async) agents</a>.</strong> Cursor&#8217;s Composer model is perfect for in the flow AI pair programming. GPT 5.1 Codex is perfect for delegated work </p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VVqo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VVqo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VVqo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VVqo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VVqo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VVqo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg" width="374" height="272.25" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:495,&quot;width&quot;:680,&quot;resizeWidth&quot;:374,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Image&quot;,&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="Image" title="Image" srcset="https://substackcdn.com/image/fetch/$s_!VVqo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg 424w, https://substackcdn.com/image/fetch/$s_!VVqo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg 848w, https://substackcdn.com/image/fetch/$s_!VVqo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!VVqo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62cc2c25-74dd-4f20-be36-6a16a0925ed5_680x495.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"><svg role="img" 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"><g><title></title><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"><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"><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><ul><li><p><a href="https://x.com/cognition/status/1985755284527010167">Code heatmaps</a>: Giving devs a bird&#8217;s eye map before they touch a file is quietly a 10x experience for onboarding and refactors.</p></li><li><p>AI coming home to Sheets/Excel: <a href="https://review.firstround.com/figma-ai-eval-process/](https://review.firstround.com/figma-ai-eval-process/">Ramp</a> Labs (yes the neobank) and <a href="https://www.claude.com/claude-for-excel">Claude</a> making moving into the tools finance and ops people already live in.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UrQw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UrQw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 424w, https://substackcdn.com/image/fetch/$s_!UrQw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 848w, https://substackcdn.com/image/fetch/$s_!UrQw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!UrQw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UrQw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png" width="420" height="236.25" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:420,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Advancing Claude for Financial Services \\ Anthropic&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Advancing Claude for Financial Services \ Anthropic" title="Advancing Claude for Financial Services \ Anthropic" srcset="https://substackcdn.com/image/fetch/$s_!UrQw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 424w, https://substackcdn.com/image/fetch/$s_!UrQw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 848w, https://substackcdn.com/image/fetch/$s_!UrQw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!UrQw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3fbb25f-b850-4446-8a11-41d9118397c3_2560x1440.png 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><h2>Deep dives</h2><ul><li><p>Lessons from 6 months of using <a href="https://www.reddit.com/r/ClaudeAI/s/qJIuz2SndH">Claude Code to refactor 300k lines of code</a></p></li></ul><ul><li><p>Vercel: <a href="https://vercel.com/blog/what-we-learned-building-agents-at-vercel">&#8220;What we learned building agents&#8221;</a>. The sweet spot of low-cognitive, high-repetition tasks.</p></li><li><p>How Figma built <strong>human-centric AI evals</strong> for <a href="https://review.firstround.com/figma-ai-eval-process/">Figma Make</a>, including design and functionality scoring.</p></li></ul><blockquote><p>&#8220;It&#8217;s easy to over-engineer your eval stack, your data set, some part of the quality loop &#8212; but it all depends on what users want to use your product for&#8230;. Building conviction on where you want to invest is the key part to get right.&#8221;</p></blockquote><h2>Learning</h2><ul><li><p><a href="https://academy.langchain.com/courses/quickstart-langgraph-essentials-typescript">LangGraphEssentials</a>: Short course teaching LangGraph concepts like nodes, edges and state for building graph-style agents in Typescript.</p></li><li><p>A <a href="https://x.com/bookercodes/status/1991877317799657769https://x.com/bookercodes/status/1991877317799657769">quick start guide to MastraAI</a> (LLM framework for Typescript). Get started in 5 minutes </p></li></ul><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.roughmagic.me/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 Rough Magic! Subscribe to learn about LLMs. Practical tips, no hype.</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><p></p>]]></content:encoded></item></channel></rss>