<?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[Proof of Concept]]></title><description><![CDATA[Proof of Concept is a digital publication about creativity and experimentation for designers, builders, and entrepreneurs.]]></description><link>https://www.proofofconcept.pub</link><image><url>https://substackcdn.com/image/fetch/$s_!aLi3!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3908f34-06c0-4b61-bc51-c3d632c2226b_1000x1000.png</url><title>Proof of Concept</title><link>https://www.proofofconcept.pub</link></image><generator>Substack</generator><lastBuildDate>Wed, 29 Apr 2026 14:05:42 GMT</lastBuildDate><atom:link href="https://www.proofofconcept.pub/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[David Hoang]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[davidhoang@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[davidhoang@substack.com]]></itunes:email><itunes:name><![CDATA[David Hoang]]></itunes:name></itunes:owner><itunes:author><![CDATA[David Hoang]]></itunes:author><googleplay:owner><![CDATA[davidhoang@substack.com]]></googleplay:owner><googleplay:email><![CDATA[davidhoang@substack.com]]></googleplay:email><googleplay:author><![CDATA[David Hoang]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Design Systems are now Inference Systems]]></title><description><![CDATA[Issue 295: From prescriptive patterns to adaptive parameters]]></description><link>https://www.proofofconcept.pub/p/design-systems-are-now-inference</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/design-systems-are-now-inference</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 26 Apr 2026 16:31:09 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!iSCP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Whether it&#8217;s building them, leading teams that owned them, I&#8217;ve spent most my career inside a design system. As a designer, I was one systems designer who broke things in favor of evolution. My intention was not malicious rather to future proof the system. Design Systems in the Blitzscaling era of the 2010s were built for a different purpose than what&#8217;s needed for the AI Scale era we&#8217;re living in the 2020s.</p><p>We&#8217;re moving from Design Systems to <em>Inference Systems</em>. There are three shifts I&#8217;ll walk through. Patterns become parameters. Documentation becomes context. Governance becomes feedback loops. Each one rewires a different part of how the system works, and together they change the system purpose.</p><h2>Patterns to parameters</h2><p>Traditional design systems define patterns: a modal looks like this, primary button uses these tokens, and this form field follows this spacing rhythm. it documents the constructs to build components with fixed values. Design teams were built to assemble those components into screens in a prescriptive process.</p><p>That stability is what&#8217;s changing along with the definition of consistency. A user in an agentic experience might start in a chat thread, have the agent surface a comparison table mid-conversation, drop into a focused task view, and end with a voice summary on their phone. None of those surfaces existed as a designed artifact when the interaction started. The <a href="https://www.proofofconcept.pub/p/dynamic-interface">agent assembled them on the fly</a> based on what the moment required.</p><p>Most of the patterns defined in the Blitzscaling era don&#8217;t survive that context. They assume a designer chose the layout, that the layout is stable for the duration of the task, and that the user&#8217;s input modality is roughly fixed. Agentic experiences break all three assumptions. Interactions are now multi-modal and new affordances such as streaming responses, interruptible flows, ambient confirmations don&#8217;t have a 2018 equivalent to copy from.</p><p>The shift is from defining values to parameters. A pattern of values says &#8220;the modal is 480px wide with 24px of padding based on these variables.&#8221; A parameter says, &#8220;the modal expresses focused attention in a transient surface; its width compresses when the surrounding context is dense and expands when the user is committing to a multi-step task.&#8221; Setting parameteres is a behavior the system can apply in conditions the original designer never anticipated.</p><p>The Inference System doesn&#8217;t care what the modal looks like but the insights to know when to invent something the library doesn&#8217;t contain at all.</p><h2>Documentation to context</h2><p>Design system documentation today is written for humans. The usage guidelines include values, UI Kits, code samples, and a list of do&#8217;s and don&#8217;ts. LLMs don&#8217;t need to scan a Storybook page and parses the structure. It benefits from the rule that produced the placement.</p><p>Years of design system work have gone making the guidelines digestable for humans; often a huge effort to maintain. This is where design tokens become something more than a convenience. A traditional token stores a value: <code>--color-primary: #0066FF</code>. An inference-ready token stores intent: <code>--color-interactive-primary</code>, with semantic meaning, usage rules, contrast requirements, and relationships to adjacent tokens. The first tells you what color to use. The second tells you why &#8212; and <em>why</em> is what a model can reason about. A model that knows <code>interactive-primary</code> is for &#8220;the most prominent action in a given context&#8221; can make a defensible choice in a layout it has never seen before. A model that only knows <code>#0066FF</code> can only match.</p><p>MCP servers are an <em>early</em> signal of this shift. When an agent inspects a Figma frame through MCP, the server hands it structured context: the components in use, their variant properties, the variables they consume, the styles applied. The agent receives the design as data, in the same way a developer receives an API response. <a href="https://stitch.withgoogle.com/docs/design-md/overview?pli=1">Google Stitch&#8217;s </a><code>design.md</code><a href="https://stitch.withgoogle.com/docs/design-md/overview?pli=1"> file gestures at the same idea</a> from a different angle: a single file describing a product&#8217;s design intent in a format a model can read end-to-end.</p><p>The pattern across these examples is the same. The artifact a designer produces is becoming an interface that talks to two audiences at once. Humans still need the screenshots and the prose. Models need the structure underneath. User Experience is now human and agent. The systems that thrive will treat both as first-class outputs of the same source, not one as a translation of the other.</p><h2>Governance to feedback loops</h2><p>Design system governance has traditionally been a review process. Did you use the right component? Is this on-brand? Does this follow the spacing guidelines? Someone on the design systems team checks the work, flags deviations, and asks the team to bring their PR back into compliance. It&#8217;s quality control through human oversight, and it works at human scale.</p><p>This model breaks at agentic scale. When an agent generates a layout, then revises it twelve seconds later in response to a user&#8217;s follow-up, then generates a different layout for the next user with slightly different context, the volume of &#8220;design decisions&#8221; being made per day jumps by orders of magnitude. There is no version of the design systems team that reviews each one. Even if there were, the review would arrive too late to matter.</p><p>Inference systems need a different model. The system itself has to evaluate conformance as the work is being produced, and more importantly, it has to learn from what gets built. This is where &#8220;inference&#8221; becomes literal. The system doesn&#8217;t just hand the agent a rulebook. It watches what the agent (and the humans alongside it) actually ship, and updates its own understanding of the product accordingly.</p><p>The most important reframe is what to do with <em>deviation</em>. In the old model, a deviation is viewed as a mistake to fix. The team failed to use the prescribed component and the fix is to bring them back into line. In an Inference System, a single deviation is still probably a mistake. But fourteen teams independently building the same off-system component is no longer a governance failure. It&#8217;s a signal that the system is behind its users.</p><p><em>The question is which is the mistake, the governed decision or the deviation?</em></p><p>Sometimes the answer is the deviation, and the system holds. Sometimes the answer is the governed decision, and the deviation is showing you where the system needs to evolve. The job of the systems designer shifts from enforcing the first answer to investigating the second.</p><p>This is what I mean by governance becoming legacy. Not that quality control disappears, but that the locus of quality moves from a checkpoint at the end of the process to a feedback loop running underneath it. Deviations stop being &#8220;don&#8217;ts&#8221; and start being data. The system stops being a wall and starts being a sensor.</p><h2>How execution is reframed</h2><p>The three shifts above all converge on a single change in what a design system <em>is</em>. It stops being reference material and is contextual material. The artifact a designer produces is no longer a thing the agent looks up; it&#8217;s the substrate the agent thinks in.</p><p>This is not a concept I claim to invent rather capturing something that&#8217;s already happening across the industry. Airbnb has been classifying its 150+ components with ML so that AI tools can assemble prototypes from user behavior rather than from a designer&#8217;s blank canvas. The design system isn&#8217;t a passive reference the team consults &#8212; it&#8217;s the infrastructure the AI builds on top of. Brad Frost, one of the people who shaped what design systems became in the first place, has been writing about an agentic design system framework that treats the system as something an agent operates within rather than something a human reads. Google Stitch shipped a <code>design.md</code> convention; a model-readable file describing a product&#8217;s design intent end-to-end.</p><p>None of these teams are doing the same thing, and that&#8217;s the point. There isn&#8217;t a settled pattern yet. What they share is the underlying move: treating the design system as the model&#8217;s understanding of the product, not as a catalog the model consults.</p><p>That&#8217;s the reframe. Adoption, the metric that defined design system success for the last decade, measured how many teams used the components you shipped. Adaption measures how well the system evolves in response to what those teams (and their agents) actually build. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2Ary!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2Ary!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2Ary!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2Ary!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2Ary!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2Ary!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:186282,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/195529693?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.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_!2Ary!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2Ary!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2Ary!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2Ary!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3eb1003e-8c55-4853-bbd9-eb24e3687ccb_2000x1125.jpeg 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>The system&#8217;s new purpose</h2><p><em>We&#8217;re going from adoption to adaption.</em> </p><p>Adoption has been the standard metric of design system success for as long as the discipline has existed. How many teams use the buttons you ship? How many screens are built from canonical components? How much of the product surface is on-system? Those numbers matter, and they&#8217;re not going away. Scaling consistency through re-usable design and code is still the foundation, and any team that abandons it in pursuit of something shinier will regret it within a quarter.</p><p>Adoption is no longer enough of a metric on its own, and Adaption sits on top of it. While Adoption is important to know how widely the system is used, Adaption allows us to understand the evolution of the system.</p><p>In an Inference System, prototypes are data varying from a static HTML exploration, a branch of code experiments, a design file built outside the canonical components. These are not sins of the system but signals of what needs to grow.</p><p>What this looks like is various levels of prototypes become first-class context. It&#8217;s a mistake to think every single prototype created needs to go to production. It defeats the purpose of rapid prototyping, where the <em>insight is the artifact</em>. From these thousands of insights captured, the adaption of the system allows to bring in the collective intention of what to ship to production.</p><p>Design systems were never only about tokens and components. The goal was to codify decisions and scaling craft. It&#8217;s the decoder that&#8217;s changed, which for the past decade was a designer reading documentation. Now the decoder is a model parsing structure.</p><p>The teams who get this early will spend the next few years quietly rebuilding their design systems into something that looks less like a component catalog and more like the model's understanding of their product. Call it an Inference System if it's useful. The label matters less than the shift.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iSCP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iSCP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!iSCP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!iSCP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!iSCP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iSCP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:374346,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/195529693?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.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_!iSCP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!iSCP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!iSCP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!iSCP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1156d4a4-5dba-429f-8d9d-c74d18ab46da_2000x1406.jpeg 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><div><hr></div><h2>Hyperlinks + notes</h2><ul><li><p><a href="https://arxiv.org/html/2412.20071v3">Towards Human-AI Synergy in UI Design: Leveraging LLMs for UI Generation with Intent Clarification and Alignment | arXiv</a> </p></li><li><p><a href="https://bradfrost.com/blog/post/agentic-design-systems-in-2026/">Agentic Design Systems in 2026 | Brad Frost</a></p></li><li><p><a href="https://bradfrost.com/blog/post/ai-and-design-systems/">AI and Design Systems | Brad Frost</a></p></li><li><p><a href="https://uxdesign.cc/the-next-era-of-design-is-intent-driven-f789ee521482">The Next Era of Design is Intent-Driven | Vamsi Batchu, UX Collective</a></p></li><li><p><a href="https://medium.com/@Rythmuxdesigner/ai-design-systems-why-tokens-schema-generative-rules-matter-now-ca3ab41c96d9">AI Design Systems: Why Tokens, Schema &amp; Generative Rules Matter Now | Medium</a></p></li></ul>]]></content:encoded></item><item><title><![CDATA[The shape of leadership]]></title><description><![CDATA[Issue 294: Where do leaders spend their time now?]]></description><link>https://www.proofofconcept.pub/p/the-shape-of-leadership</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/the-shape-of-leadership</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 19 Apr 2026 16:31:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aLi3!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3908f34-06c0-4b61-bc51-c3d632c2226b_1000x1000.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The leadership role has changed drastically in the past three years. We&#8217;ve moved from the blitz scaling era to the scale era of AI. Though managing towards outcomes is still the focus, the way we do it has changed. As organizations figure out how to go from AI-novice to AI-native, it&#8217;s important to find new ways of working across various companies and crafts. This results in leaders needing to conduct their own personal discovery.</p><p>Let&#8217;s look at where areas are de-emphasized and what highlights the new focus area for leaders. Whether you&#8217;re in the craft of Growth, Design, Engineering, or Product, we&#8217;re all participating in the organizational re-write.</p><h2>Areas collapsing</h2><p>In order to know what the focus areas are for leaders in this new era, we must understand what might converge and collapse. This doesn&#8217;t mean what changes isn&#8217;t important. It means how it&#8217;s done and the emphasis changes.</p><h3>Being the single point of direction and communication</h3><p>If the majority of your scope was passing down communications from one person to another, you aren&#8217;t a leader. You are a line manager like those in production factories. Communication is important, but it&#8217;s more bi-directional than ever. With Retrieval and other AI techniques, it&#8217;s easier to get a sense of what is going on. I find myself talking to <a href="http://rovo.com/">Rovo</a> at work before I ask another human to see if I can get the information I need first.</p><h3>The era of extreme ownership</h3><p><a href="https://www.carolapc.com/">Carola Pescio Canale</a>, our leader on Rovo &amp; AI, speaks to this being the time for extreme ownership for everyone. For individual contributors, there are a high expectation and opportunity for agency. The saying, &#8220;You can just do things&#8221; is not a stretch. The ways of working are going from reviewing proposals of what to fund to reviewing existing evidence to continually fund.</p><h2>The focus areas for leaders</h2><p><strong>Upholding craft excellence<br></strong>If you are a leader of a craft such as Engineering, it&#8217;s your primary responsibility to ensure the way the work is done and what gets shipped meets the highest bar possible. It&#8217;s always been important, and more important than ever, to manage the work.</p><p>The bar itself is moving. When generation is cheap, the scarce resource is taste: the ability to tell what&#8217;s actually good from what merely looks good. A team that ships twenty AI-generated components a day but can&#8217;t distinguish the two that belong in the product from the eighteen that don&#8217;t is not shipping faster. It&#8217;s accumulating debt faster. Craft leaders hold the line on that distinction.</p><p>Our skills are being re-applied with new capabilities and new tools. Leaders need to be on top of the newest innovations and tools in order to enable the team.</p><p>This means using the tools yourself, not just reading about them. A leader who hasn&#8217;t built something with the current generation of models is calibrating on stale data, and their sense of what&#8217;s hard, what&#8217;s trivial, and what&#8217;s genuinely novel will be wrong within a quarter. Being on top of the tools is no longer a research task delegated to the most curious IC on the team. It&#8217;s a core leadership practice, and it&#8217;s what lets you keep setting a credible bar for everyone else.</p><p><strong>Clarity of purpose and vision</strong><br>As software is being re-written and many companies are re-founding themselves, it is difficult to find clarity and stability in a time of much distraction.</p><p>Every week brings a new model, a new benchmark, a new competitor, a new framing of what the company should be. Each one feels urgent, and most of them are noise. The leader&#8217;s job is to absorb that volatility so the team doesn&#8217;t have to. When everything looks like a priority, nothing is, and teams start optimizing for the loudest signal in the room rather than the work that actually compounds.</p><p>The role of the leader remains important to ensure the purpose and vision are clear. With priorities changing, it is crucial to set a vision that is enduring through the changes. Leaders must double down on the vital few initiatives that will sustain the change.</p><p>A useful test: can your team articulate the vision without quoting you? If the answer is no, the vision isn&#8217;t enduring, it&#8217;s just recent. Endurance comes from repetition and from pruning. Saying yes to the vital few means saying no to the interesting many, and that work is almost entirely the leader&#8217;s to do. Nobody below you has the standing to kill a promising initiative, which is exactly why so many of them survive past their usefulness.</p><p><strong>Oversee a portfolio of outcomes</strong><br>Julie Zhuo said, &#8220;You are all managers now,&#8221; speaking to agent orchestration and interacting with the new tools. If everyone is now a manager, leaders oversee a portfolio of outcomes.</p><p>The unit of leadership work used to be the team. Now it&#8217;s the bet. A team is a stable structure you staff and grow over quarters. A bet is a thesis about where value might emerge, and it may need two people for six weeks or ten people for a year. Treating every initiative like a team leads to over-investment in things that should have stayed experiments, and under-investment in the ones that were ready to scale.</p><p>First, leaders are constantly placing new bets that don&#8217;t scale. This is one of the reasons 70% of my direct reports are individual contributors. The reason to keep things flatter than conventional orgs in the past is because priorities fluctuate in relationship to the bets.</p><p>A flatter org is a faster org when the bets are still forming. Layers exist to manage known work, and most of what matters right now isn&#8217;t known work yet. Keeping ICs close also means the signal from the frontier reaches you without being filtered through three rounds of synthesis, which is what you need when the ground is moving.</p><p>Portfolio management includes initiatives and vision horizons. Leaders have to consider what aspects of capabilities to scale and what to transform. The hardest calls are the ones about existing capabilities. Scaling something that works is satisfying and legible, but transformation is where the compounding happens, and it rarely looks like progress in the quarter you commit to it. A portfolio without at least one uncomfortable transformation bet is probably a portfolio that&#8217;s quietly optimizing for the last era.</p><p><strong>Fostering ecosystems<br></strong>As a system designer at heart, the ecosystems must be nurtured, and there are many of them. Leaders must understand the possible paths in partnerships. As products and businesses are being re-written, partnerships become non-deterministic themselves. The question of build or buy becomes asked more frequently in the assets needed for the company. This could be a strategic lever, capability, or talent.</p><p>The build-or-buy question used to be an annual exercise. Now it&#8217;s a monthly one, and sometimes a weekly one. A capability you would have spent a year developing internally might be available as an API next quarter, and a partner you integrated with this summer might be acquired by a competitor before the year ends. Leaders have to hold the map loosely and redraw it often. The skill is less about picking the right partner and more about structuring relationships that can absorb change without collapsing.</p><p>The second ecosystem to foster is what once was systems built for governance. They now need to be transformed into a new shape. Brands and Design Systems are examples of this. Governance systems were built to create consistency across a large surface area, and they worked by constraining what people could do. That logic breaks when the surface area is being generated faster than any central team can review. The new shape of these systems is closer to a substrate than a gate: a set of primitives, defaults, and signals that guide good decisions at the edges without requiring approval at the center. Brands and design systems that survive this transition will be the ones that trade control for leverage.</p><h2>Recap</h2><p>Leaders used to be the ones that held the clarity and consistency, but now they need to be more of a source of disruption. I wrote about my <a href="https://www.proofofconcept.pub/p/the-three-leadership-pillars">three leadership pillars</a>, and conviction is more important than ever.</p><p>The instinct in uncertain times is to wait for more data. More data is not coming. The environment is producing signal faster than anyone can synthesize it, and the leaders who wait for clarity before committing will find themselves a year behind the ones who committed without it. Disruption from the top is not recklessness. It&#8217;s the recognition that standing still is itself a bet, and usually a losing one. Leaders will need to have the conviction to place bets in a time where there are very few answers or previous playbooks to draw from. This is, in fact, what leadership was to begin with.</p><p>The playbook era made leadership look like execution. It wasn&#8217;t. The playbooks were scaffolding built on top of earlier conviction, and we mistook the scaffolding for the work. What&#8217;s happening now is a return to the actual job: deciding what to do when nobody can tell you whether you&#8217;re right, and staying with that decision long enough to find out.</p><div><hr></div><h2>Hyperlinks + Notes</h2><ul><li><p><a href="https://www.youtube.com/watch?v=7rzYDM6vMtI">How I Created OpenClaw, the Breakthrough AI Agent | Peter Steinberger | TED</a></p></li><li><p><a href="https://mjtsai.com/blog/2026/04/15/ipados-postmacbook-neo/">iPadOS Post&#8211;MacBook Neo</a></p></li><li><p><a href="https://review.firstround.com/reluctantly-influential-inside-lenny-rachitskys-demandingly-chill-life/">Reluctantly Influential: Inside Lenny Rachitsky&#8217;s Demandingly Chill Life</a> | <a href="https://www.firstround.com/">First Round</a></p></li></ul>]]></content:encoded></item><item><title><![CDATA[The formlessness of AI agents]]></title><description><![CDATA[Issue 292: Finding the right vessel for new capabilities]]></description><link>https://www.proofofconcept.pub/p/the-formlessness-of-ai-agents</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/the-formlessness-of-ai-agents</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 12 Apr 2026 16:30:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!HakA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In <a href="https://marvel.fandom.com/wiki/Avengers_Vol_1_54">The Avengers #54</a>, a mysterious villain called the Crimson Cowl is orchestrating attacks against the team. It&#8217;s not until the last page that the cowl drops and we see what&#8217;s underneath: a robot. The next issue reveals him fully&#8212;Ultron-5, a living automation built by Hank Pym using his own brain patterns.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!X0th!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!X0th!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!X0th!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!X0th!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!X0th!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!X0th!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:894249,&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.proofofconcept.pub/i/193935933?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.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_!X0th!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!X0th!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!X0th!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!X0th!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ee5bbb3-d625-491a-8e91-46cd84554462_2000x1125.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><p>By the time anyone sees Ultron, he&#8217;s already on version five. He was created, gained sentience, rebelled against his creator, hypnotized Pym into forgetting he ever existed, and then quietly iterated through four bodies in secret as a self upgrade. Each time Ultron is defeated, he rebuild to a better enclosure for the same intelligence. Like a hermit crab moving through shells, Ultron wasn&#8217;t becoming something new but finding the optimal fit.</p><p>Our AI tools are having their Ultron moment. In a few years of <a href="https://press.stripe.com/scaling">the scaling era of AI</a>, capabilities have evolved rapidly, and compounding. They are breaking out of the chat boxes with tiny context windows to now taking actions, running in the background, and using similar tools as us. It&#8217;s not AGI, but it turns out serendipitous chron jobs invokes a sentient connection to many human beings.</p><p>The question in the Ultron moment is, &#8220;what is the right body for this intelligence?&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Nk8_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Nk8_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Nk8_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Nk8_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Nk8_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Nk8_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:953200,&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;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/193935933?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.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_!Nk8_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Nk8_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Nk8_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Nk8_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa49b6e49-3fe9-4a87-813c-e17a3eaa8602_2000x1125.jpeg 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"><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>New capabilities begin in borrowed form</h2><p>Steve Jobs made this observation at the <a href="https://stevejobsarchive.com/stories/objects-of-our-life">1983 International Design Conference in Aspen</a>. The new media in television shows were radio shows with a camera pointed at them. Because the capability is new, people used existing patterns of what they already knew&#8212;a host behind a desk, reading to an audience, and filmed it. The breakthrough was you could visually tell a story of <a href="https://en.wikipedia.org/wiki/The_War_of_the_Worlds_(1938_radio_drama)">War of The Worlds instead of reading it to them</a>. </p><p>Early websites were digital brochures and mobile apps were shrunken desktop software. <a href="https://www.theverge.com/2019/3/19/18263844/apple-iphone-prototype-m68-original-development-board-red">Early iPhone prototypes ran a cut&#8209;down version of OS X&#8217;s core</a>, adapted to fit a phone. AI agents talking through chat interfaces are like radio shows with a camera pointed at them. Chat is frictionless not because it&#8217;s the right interface but because it&#8217;s a familiar one; a turn-by-turn conversational text box.</p><p>In Silicon Valley, we&#8217;re obsessed with pushing the edges of technology and need to be reminded of global behaviors. I recently ran rapid research comparing site-building tools for SMBs (yes I do this for fun). When compared to classic site builders such as Framer, Webflow, and Squarespace, people preferred using Lovable or Replit to build a website because of the conversational interface.</p><h2>Giving agents a body</h2><p><a href="https://openclaw.ai/">OpenClaw&#8217;s</a> primary interacting is a chat agent, an open&#8209;source framework for controlling your computer through natural&#8209;language agents. You text it on messaging platforms such as Telegram or WhatsApp. It runs tasks on your computer, manages your calendar, clears your inbox. That wasn&#8217;t enough for some people.</p><p>Tom saw a fundamental problem: how do you get OpenClaw to control actual motors in real time? His answer was <a href="https://huggingface.co/spaces/tomrikert/clawbody">ClawBody</a>, a software bridge that connects OpenClaw to physical hardware so you can train agents in simulation, then deploy them to real robots. Chris asked a different question: what if robots could actually understand spatial depth? He integrated Intel RealSense cameras with OpenClaw and a vision&#8209;language model so robots can track a person through space, maintain distance, and navigate obstacles all driven by natural language.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mYhV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mYhV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 424w, https://substackcdn.com/image/fetch/$s_!mYhV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 848w, https://substackcdn.com/image/fetch/$s_!mYhV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 1272w, https://substackcdn.com/image/fetch/$s_!mYhV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mYhV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif" width="724" height="407.74007220216606" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/df0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:312,&quot;width&quot;:554,&quot;resizeWidth&quot;:724,&quot;bytes&quot;:3930400,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/gif&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/193935933?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mYhV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 424w, https://substackcdn.com/image/fetch/$s_!mYhV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 848w, https://substackcdn.com/image/fetch/$s_!mYhV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 1272w, https://substackcdn.com/image/fetch/$s_!mYhV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf0d0190-3ca1-4a70-b007-ba663fb06952_554x312.gif 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><figcaption class="image-caption">ClawBody by Tom</figcaption></figure></div><p>Then there&#8217;s ClawStage, a device built by HooRii Technology that turns OpenClaw into a companion robot &#8212; a Raspberry Pi 5 with a transparent display that creates a hologram-like effect for an animated AI persona, with a camera and microphone array that let it perceive its surroundings and respond to voice directionally. <a href="https://www.hackster.io/news/clawstage-brings-openclaw-to-life-c246233e1e3b">Hackster</a> Users can design custom personalities for it, download characters from a shared hub, make the intelligence feel like <em>someone</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_!tsDC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tsDC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!tsDC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!tsDC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!tsDC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tsDC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:519546,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/193935933?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.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_!tsDC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!tsDC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!tsDC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!tsDC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0bc6db0d-0633-428b-9bd1-01c8b50cca98_2000x1125.jpeg 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><figcaption class="image-caption">A vignette of different shells and encapsulations for AI; some more functional than others.</figcaption></figure></div><p>A project called <a href="https://eu.36kr.com/en/p/3710669695185284">Dimensional</a> integrated OpenClaw with the Unitree G1 humanoid robot and gave it Spatial Agent Memory. The agent understands physical space and temporality, knows the layout of rooms, the location of objects, where people tend to be. </p><p>Many of these projects started as DIY projects because they wanted to create an enclosure for their sentient tools; like a hermit crab between shells.</p><p>We know how to relate to things that have form. A hammer looks like something you swing and a doorknob affords turning. When something is formless, such as an intelligence in machine-form that sees the world in lines of code, we don&#8217;t have the same intuitive relationship with it. Human and agentic behaviors are not the same. <em>It&#8217;s a miss for us to replicate ourselves in the form of a new intelligence.</em></p><p>This is why we must explore the right enclosures and interfaces for agents. We&#8217;ll soon realize all these CLI tools are not primarily for the humans. People giving the formless thing a shape so they can understand what it does.</p><p><em>The shell keeps changing.</em></p><h2>The trust tension</h2><p>Humans need visibility of agents to trust them; understand they are doing and where the boundaries are. Formlessness creates anxiety for humans. If one can&#8217;t see the agent, how is it held accountable?</p><p>The current challenge is the interfaces are designed in the borrowed form of chat, sidebar, and copilots. We&#8217;re in the uncanny valley of agent design. The form is close enough to be usable but wrong enough to be limiting. A chat-based agent can answer your question but can&#8217;t show you it&#8217;s already working on three other things in parallel. A copilot can suggest edits but can&#8217;t demonstrate that it understands the broader context of your project.</p><p>The interface doesn&#8217;t match the capability. As a result, humans and agents are working on the same interfaces and it&#8217;s not visibly clear who is doing what.</p><p>This is the enclosure problem. Not just how agents look, but what kind of container can hold something that is, by nature, without container. That&#8217;s a harder design question than it sounds. Many of us haven&#8217;t designed for things that can think, plan, reason, and use the same tools we do.</p><p>And if you want to go somewhere uncomfortable: we haven&#8217;t solved this problem for ourselves either. The relationship between consciousness and body, between the mind and the form it inhabits, is the oldest unsolved question in philosophy. We&#8217;re spiritual beings who never fully made sense of our own enclosures. Now we&#8217;re being asked to design one for something else.</p><h2>The form is still being found</h2><p>We&#8217;re doing what humans always do when faced with something formless: we reach for the containers we already have. We put radio on television. We put the legal pad in the Notes app. We put intelligence in a chat box.</p><p>We&#8217;re the ones designing the body for the new medium. That reframes every choice. A chat interface is a claim about what kind of enclosure intelligence should have. A sidebar copilot is a claim. A robotic arm is a claim. Each enclosure shapes what the intelligence can do, how people relate to it, and what it becomes. The form isn&#8217;t neutral.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HakA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HakA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HakA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HakA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HakA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HakA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:493835,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/193935933?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.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_!HakA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HakA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HakA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HakA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb97fe273-df5e-4dd5-b225-bf6981756c43_2000x1406.jpeg 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>It&#8217;s tempting to settle with the borrowed form, but that&#8217;s not we do as designers. Understanding what formless experiences need form is what we should explore. The fact that we haven&#8217;t found the native form of agents yet means the field is genuinely open. This is the equivalent of being a filmmaker in 1910, a web designer in 1995, a mobile designer in 2008. The early chaotic moments that feel disorienting is what we live for as makers.</p><p><a href="https://x.com/ashebytes/status/2017283202268991823">We are at the beginning of thinking about different enclosures for intelligence</a>, even as we continue reconciling our own as spiritual beings in human bodies.</p><div><hr></div><h2>Hype links + notes</h2><ul><li><p><a href="https://www.cbr.com/marvel-every-version-of-ultron-ranked/">https://www.cbr.com/marvel-every-version-of-ultron-ranked/</a></p></li><li><p><a href="https://fig-events.figma.com/push-pull-ai-apac/">The push and pull of AI + design: How roles are changing and what comes next</a></p></li><li><p><a href="https://artium.ai/insights/beyond-chat-how-ai-is-transforming-ui-design-patterns">Beyond Chat: How AI is Transforming UI Design Patterns &#8212; Artium</a> &#8212; Why chat struggles with complex tasks and what&#8217;s emerging instead</p></li><li><p><a href="https://uxdesign.cc/where-should-ai-sit-in-your-ui-1710a258390e">Where Should AI Sit in Your UI? &#8212; UX Collective</a> &#8212; Mapping emerging AI UI patterns</p></li><li><p>Cool project by Sophie Brenner, a student I met at <a href="https://www.linkedin.com/posts/dhoang2_nycxdesign-talk-with-will-hall-designing-activity-7329494886619971584-UibJ/">NYCxDESIGN</a> last year; very relevant to the topic: <a href="https://www.sbrenn.com/holomaid">https://www.sbrenn.com/holomai</a></p></li><li><p><a href="https://x.com/hwchase17/status/2042978500567609738">Your Harness, Your Memory</a> | <a href="https://x.com/hwchase17">Harrison Chase</a></p></li><li><p><a href="https://designtools.fyi/">designtools.fyi</a></p></li></ul>]]></content:encoded></item><item><title><![CDATA[The protégé problem today]]></title><description><![CDATA[Issue 292: Knowledge flows downhill anymore]]></description><link>https://www.proofofconcept.pub/p/the-protege-problem-today</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/the-protege-problem-today</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 05 Apr 2026 16:31:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!FD0X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>For the past three years I&#8217;ve been asking myself the same question at the end of each week: &#8220;Are things going to get crazier than they are now?&#8221; I stopped asking the question because the answer seems to be, &#8220;Yes&#8221; every single time. I keep going back to the tech shift being <a href="https://www.proofofconcept.pub/p/multi-modal-and-multi-generational">Multi-modal and Multi-generational</a> as two key reasons why things are so unstable. </p><p>The first rewrite makes a lot of sense. Software development is changing before our eyes. A year ago, when Anthropic CEO <a href="https://www.businessinsider.com/anthropic-ceo-ai-90-percent-code-3-to-6-months-2025-3">Dario Amodei said 90% of code would be written by AI</a>, the statement felt like lunacy. These past three months made me think he was right. The Multi-modal shift of sentient lobsters, more sophisticated toolchain access, and generative AI breakthroughs means every company has to re-write and re-imagine itself. </p><p>The Multi-generational shift is like plate tectonics; slower moving, quiet, but when it happens, it&#8217;ll be felt at immense scale. There are three generational shifts happening at the same time in one of the most tumultuous times in tech. One of the generations is getting squeezed in the middle with nowhere to go.</p><p>This is the <em>prot&#233;g&#233; problem</em> we&#8217;re facing.</p><p>The prot&#233;g&#233;, often mistakenly described as a mentee, is traditionally a talented prospect guided by a wiser mentor; the person who provides wisdom to help guide their careers. This relationship doesn&#8217;t look the same anymore. The first reason is careers are non-linear. The concept of climbing the ladder is not as rigid as it once was. The second factor, most relevant to the issues at hand today, is many people who often provided mentorship don&#8217;t know the new skills and way of working and their prot&#233;g&#233;s are more advanced than them. This type of mentor can still offer some value, but it&#8217;s now limited because of the lack of foundational skills.</p><h2>The generational landscape</h2><p>Any time there is discussion about different generations, it can be generalized and a hasty generalization. However, it&#8217;s important to talk recognize the three groups and reflect on the situational challenges each face, and how to find a path forward together.</p><p>There&#8217;s a version of this essay that gives everyone a clean action item. I&#8217;m not sure that&#8217;s actually useful here, because the situation for each group is different enough that a single prescription would flatten what makes it interesting. But the move does look different depending on where you sit &#8212; so let&#8217;s be specific.</p><h3>The Elder Millennial</h3><p>The <strong>Elder Millennial</strong> (also known as <a href="https://www.businessinsider.com/typical-geriatric-millennial-age-digital-skills-communication-2021-7">Geriatric Milennial</a>), born roughly from 1981 to 1989. These are the people who get excited about Justice&#8217;s &#8220;Genesis&#8221; being played in a Cadillac commercial. They are the one generation active in tech who grew up along with the internet; using dial-up connections to make GeoCities pages and self-taught HTML through Notepad.exe. They didn&#8217;t consume the internet as much as they tinkered with it like a toy. Each platform shift &#8212; web to social to mobile to cloud &#8212; required them to actively adapt to new interfaces.</p><p>The position you&#8217;re in right now is genuinely unusual. You span both paths in a way most people don&#8217;t &#8212; mentor on judgment, be mentored on tools, hold credibility in both directions without fully belonging to either. That&#8217;s a rare thing and worth taking seriously.</p><p>The thing worth being honest about is that it has a shelf life. The people who built during the mobile boom had a window of maybe three to five years where that particular fluency was differentiated before it just became normal and the advantage disappeared. Something similar is happening now. Spending that window waiting for things to settle is a way of watching it close.</p><p>You&#8217;re not running out of relevance. You&#8217;re running out of time to position yourself as the bridge before the bridge becomes the road.</p><h3>The Squeezed Middle</h3><p><strong>Younger Millennials, early Gen Z</strong>, are people in their late twenties to mid-thirties. They are caught between two gravitational pulls of different generations; not enough seniority to coast on experience, not enough native fluency to be the person everyone&#8217;s suddenly paying attention to.</p><p>The tools they built are being deprecated faster than they can be replaced. The instinct is to manage that by staying current &#8212; reading, course-taking, keeping up &#8212; without fully committing to being a beginner again. That instinct is understandable, and it&#8217;s also the thing getting in the way. The obstacle is rarely the skill gap. It&#8217;s the ego that formed around the previous version of the skill.</p><p>The App Store is the meal kit you nuke. Convenient, reliable, completely abstracted from the making of it, which was fine until the moment required something different. Building with AI agents rewards people who at some point had to understand the material, not just use it. This is the challenge for many in The Squeezed Middle. They  no-coded and auto-layout&#8217;d their way through the work. </p><p>The people navigating this well aren&#8217;t just consuming information about AI. They&#8217;re actually letting themselves be taught by tools, younger colleagues, and in situations that have no particular respect for what they already know. That&#8217;s the move. Not catching up. </p><h3>The Young Builder</h3><p>The young builder is <strong>late Gen Z and emerging Gen Alpha</strong>. They are born digital natives with what others call emerging tools as the baseline. They&#8217;re sitting on something that hasn&#8217;t been fully valued because the professional world is still figuring it out. The lag makes it frustrating for people who hold a title higher than them to &#8220;catch up&#8221; to their capability. They were the ones in school who worked on their own side projects because the professor was teaching out-of-date concepts.</p><p>The soft skills can feel like a tax on top of the work. A 21-year-old can ship what used to require a team of twelve. What&#8217;s harder is managing the fallout when it breaks, reading a room that&#8217;s operating on fear, navigating a board conversation where the subtext is more important than the text. Those things are learnable. They just require the same kind of humility that everyone else in this story is also being asked to find.</p><h2>Two paths to the same breakpoint</h2><p>The mentor and prot&#233;g&#233; relationship isn&#8217;t gone. However, it&#8217;s forked and completely changed in path. One version still looks recognizable &#8212; a young builder, an elder Millennial somewhere above them in the org chart or in their network. The exchange is real but the terms changed. The young person often knows more about the tools, what&#8217;s possible right now, what the current defaults are, where the interesting edges are. What the older person has is harder to name but not less valuable: judgment, pattern recognition, the ability to sit with an unresolved situation without panicking. Having watched hype cycles inflate and detonate, having been through acquisitions and pivots and the particular kind of organizational grief that follows a reorg &#8212; that experience doesn&#8217;t look like expertise in the traditional sense anymore. It looks more like weather prediction. You&#8217;ve seen enough systems fail in enough similar ways that you can sometimes feel the pressure changing before anyone else does.</p><p>The second version is harder. An experienced person submitting &#8212; genuinely submitting &#8212; to being taught by someone younger. The difficulty isn&#8217;t really about learning new tools. Most people can do that with enough time and motivation. The difficulty is what you have to put down first: the identity that formed around knowing things, the assumption that seniority means something in territory that&#8217;s unfamiliar to everyone, the specific discomfort of being uncertain in front of someone who used to report to you. The people who can move through that without making it a whole thing tend to be okay. The people who keep waiting for things to stabilize are going to wait a long time.</p><p>Both paths have the same requirement: you have to know who you are clearly enough that learning something new and not feel threatened.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FD0X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FD0X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!FD0X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!FD0X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!FD0X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FD0X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:658390,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/193253261?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.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_!FD0X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!FD0X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!FD0X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!FD0X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F86e29a67-641f-436f-b19f-e52341f25f43_2000x1406.jpeg 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>What replaces it</h2><p>The traditional format assumed knowledge had a fixed address. It lived in the most experienced person and traveled toward the least experienced one, and the whole architecture of professional development was built around managing that transfer. What&#8217;s been destabilized isn&#8217;t just who holds the knowledge &#8212; it&#8217;s the assumption that knowledge works that way at all right now.</p><p>The multi-modal AI rewrite and the multi-generational rewrite feel like separate phenomena but they&#8217;re doing the same thing. Both are dismantling the idea that expertise is located, stable, and moves in one direction. You don&#8217;t get to finish one before the other starts and need to face both at once.</p><p>Here is the opportunity for each group.</p><p>The<em> Elder Millennials</em> have a narrow window to do something that matters as they are towards the end of their careers. They&#8217;ve seen the patterns before and have the foundational tinkering skills; the reason adaptability to AI is familiar. These folks have the right amount of experience and capability to set up the next generation just like the original casts in sequel reboots.</p><p>The <em>Young Builder</em> has more to offer professionally than ever. They are the digital natives who know the tools, now with the direct distribution the Elder Millennials didn&#8217;t have as much. The ability to build in public is not at the speed of bringing your Iomega Zip drive to the computer lab so you can FTP your files to your personal website. It&#8217;s at the tap of a button to go live and share.</p><p>Finally, for the <em>Squeezed Middle, </em>you have to find a path by choosing a direction. Though it&#8217;s not their fault as many started careers during the <a href="https://www.blitzscaling.com/">Blitzscaling</a> era; an era that isn&#8217;t valued or frankly exists. This cohort actually has the best advantage of holding both positions. It&#8217;s not too late to re-skill and they have a lot to offer. The key is acknowledging the tough situation they are in and moving forward.</p><p>That quality turns out to be the thing that transfers across all three situations. Not the tools, not the tenure, not the title. The willingness to keep learning without needing the learning to be finished.</p><p>The people who come through this well won&#8217;t have figured it out. They&#8217;ll have stayed curious long enough that figuring it out stopped being the point.</p><div><hr></div><h2>Hyperlinks + notes</h2><ul><li><p><a href="https://nextplayso.substack.com/p/15-ideas-to-help-you-build-a-better?publication_id=2876&amp;post_id=187272379&amp;isFreemail=true&amp;r=39wsz&amp;triedRedirect=true">15 ideas to help you build a better personal network</a> | <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;next play&quot;,&quot;id&quot;:2876,&quot;type&quot;:&quot;pub&quot;,&quot;url&quot;:&quot;https://open.substack.com/pub/nextplayso&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a52ae65-e680-467b-8fd1-a60254192a79_500x500.png&quot;,&quot;uuid&quot;:&quot;55904c70-7807-40bb-ace7-e21c92fbaa22&quot;}" data-component-name="MentionToDOM"></span> </p></li><li><p><a href="https://blog.cloudflare.com/emdash-wordpress/">Introducing EmDash &#8212; the spiritual successor to WordPress that solves plugin security</a> | Begun, the technology and ecosystem wars, has</p></li><li><p><a href="https://www.macrumors.com/2026/03/29/biggest-iphone-overhaul-ever-rumor/">Apple Preparing &#8216;Most Significant Overhaul in the iPhone&#8217;s History&#8217;</a>  &#8594; Thunderbolt for Stage Manager, please!</p></li><li><p><a href="https://marco.org/2026/04/01/letter-to-john-ternus">A letter to John Ternus</a> | <a href="https://marco.org/2026/04/01/letter-to-john-ternus">Marco Arment</a></p></li><li><p><a href="https://braunandbrains.substack.com/p/how-much-money-i-spent-on-my-first?publication_id=2842079&amp;post_id=192965323&amp;isFreemail=true&amp;r=39wsz&amp;triedRedirect=true">How Much Money I Spent on My First Newsletter Event</a> | <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Rachel Braun&quot;,&quot;id&quot;:135598628,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3cf36a5b-aacd-4c69-8ad4-c286d1b3f1df_3601x3601.jpeg&quot;,&quot;uuid&quot;:&quot;64e2f088-9ea0-4a83-986e-bd5d5f8d2754&quot;}" data-component-name="MentionToDOM"></span> </p></li><li><p><a href="https://open.substack.com/pub/gooddaysbymarina/p/a-look-inside-issue-02-of-my-zine?r=39wsz&amp;utm_campaign=post&amp;utm_medium=web">A look inside issue 02 of my zine</a> | <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;good days&quot;,&quot;id&quot;:7183944,&quot;type&quot;:&quot;pub&quot;,&quot;url&quot;:&quot;https://open.substack.com/pub/gooddaysbymarina&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6601327-de86-4aa9-9385-c5506ffb660b_500x500.png&quot;,&quot;uuid&quot;:&quot;0b3b2793-e09a-4d07-98cf-51e881c12309&quot;}" data-component-name="MentionToDOM"></span> </p></li></ul>]]></content:encoded></item><item><title><![CDATA[AI tokens are mana]]></title><description><![CDATA[Issue 291: Spend them like you mean it]]></description><link>https://www.proofofconcept.pub/p/ai-tokens-are-mana</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/ai-tokens-are-mana</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 29 Mar 2026 16:30:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!sR7k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The most formidable experiences that inspired my passion for making software and design was playing computer games in the bedroom growing up on our Gateway 2000 PC. Of many of the games I love and played, <a href="https://en.wikipedia.org/wiki/Diablo_(video_game)">Diablo</a> ranked high on the list. Diablo (1996) is a dark fantasy action RPG by Blizzard Entertainment set in the cursed town of Tristram, where you descend through 16 levels of monster-filled dungeon to confront the Lord of Terror himself. It pioneered the loot-driven, click-to-kill gameplay loop that defined the genre. It was very addictive, just like agent orchestration.</p><p>You played as one of three classes: the Warrior, a melee bruiser who hit hard but struggled with magic; the Rogue, a nimble archer who sat somewhere in the middle; or the Sorcerer, who was physically fragile but wielded the most devastating spells in the game. Same dungeon, same enemies, completely different relationships with power.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!C8fC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!C8fC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!C8fC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!C8fC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!C8fC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!C8fC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:304598,&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.proofofconcept.pub/i/192512654?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.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_!C8fC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!C8fC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!C8fC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!C8fC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40d2b4f8-eb95-43a7-a90c-7df681b43894_2000x1125.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><p>In Diablo, the magical energy system is called <em>mana</em>. The word itself comes from Melanesian and Polynesian cultures, where it described a supernatural force &#8212; spiritual power that could reside in people, objects, or places. Not magic in the theatrical sense, but authority and potency earned through existence. RPGs borrowed the concept and made it mechanical: mana is the finite resource that fuels your most powerful abilities. Use it well and you&#8217;re unstoppable. Drain it at the wrong moment and you&#8217;re defenseless.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Cx8D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Cx8D!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Cx8D!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Cx8D!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Cx8D!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Cx8D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:776535,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/192512654?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Cx8D!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Cx8D!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Cx8D!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Cx8D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c3534fd-a346-436f-a1bd-a036ee0a5f69_2000x1125.jpeg 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"><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>Today, making and building with AI tools feels a lot like magic. People can build an app they&#8217;ve dreamt of creating for years in a matter of days.</p><p>On the All-In Podcast during NVIDIA GTC 2026, Jensen Huang said something that stopped me cold: <em>&#8220;<a href="https://x.com/theallinpod/status/2034976468699164917">If that $500,000 engineer did not consume at least $250,000 worth of tokens, I&#8217;m going to be deeply alarmed</a>.&#8221;</em></p><p>There are ways to read that.</p><p>The first is the drug dealer take. Jensen runs a company whose entire business model depends on you burning compute. Of course he&#8217;s alarmed if you&#8217;re not spending. The dealer is always going to tell you to do more drugs &#8212; that&#8217;s not insight, that&#8217;s a revenue projection dressed up as wisdom.</p><p>The second take is wielding a new power. In Diablo, you can&#8217;t master spell casting without burning through a lot of mana. You have to use the Fireball on random enemies to understand what it does and how it&#8217;s useful. You can&#8217;t development judgment until you understand the material. Jensen may be speaking on behalf of the incentives of NVIDIA&#8217;s business, but he&#8217;s not wrong.</p><p>Now that the mana is loose and AI is here to stay, the focus is on the itnention of casting. </p><h3>Learn to cast</h3><p>In Diablo, you don&#8217;t buy spells or are handed them. You find them in the dungeon amongst hidden chests, dropped by enemies, and hidden behind doors. You have to look for it and have the Magic stat to read it.</p><p>Learning AI is similar. You have all the capabilities within reach, but you must learn how to use them yourself. Learn the skills before using /skills. It&#8217;s important to understand what the tools and material actually do before you spell cast like a crazy person. I still think learning to write code matters, perhaps more than ever. You don&#8217;t need to memorize every syntax pattern but understanding the abstractions well enough to know when the AI is building you something solid versus something that will collapse on level 12.</p><p>This is where I agree with Jensen&#8217;s statement. You need to put the reps and practice in, and it&#8217;ll take mana. The cost of casting drops as your skills improve.</p><h3>Knowing when to cast</h3><p>Situational awareness is what separates a novice spell caster from a dangerous one. In Diablo, a Sorcerer who just found Bone Spirit doesn&#8217;t run around casting it on Fallen Ones in the Cathedral. Bone Spirit tracks a target and drains a third of their total HP in a single cast. You save it for the most important moments and toughest battles.</p><p>The same intelligence applies to AI. <em>Not every problem is a boss fight</em>.</p><p>It&#8217;s important to rightsize your tools for what you need to achieve. This was true before AI, but even-more crucial today. Don&#8217;t use the Apocalypse spell when a simple Firebolt would do. This applies to model selection and when you may need to use generative tools to achieve an outcome.</p><p>The end goal is maximum spell impact. It only comes with enough experience to recognize when mana is the right answer in the first place.</p><h3>Mana isn&#8217;t free</h3><p>In Diablo, mana feels infinite as you start. You&#8217;ve got a full blue bar and a stack of potions. You feel like you can take on the entire dungeon. Then level 10 hits. The enemies get harder, the spells cost more, and suddenly you&#8217;re rationing every cast and making uncomfortable tradeoffs.</p><p><em>We&#8217;re at that moment with AI.</em></p><p>Tokens felt free because we were returning chat responses for retrieval. Now agents can execute with high autonomy. Suddenly, it doesn&#8217;t feel as free anymore. The unit economics are becoming real, and the people building on top of these models are starting to feel it. Every agent loop that spins for five minutes instead of thirty seconds has a higher cost than before</p><p>Learn how the supply chain works and where the model companies are incentivized. They are the people who set the price of the raw mana. The second are the application layer companies that take the raw mana and create spells for vendors and customers.</p><p>Invisible costs are the most dangerous kind. In Diablo, there is no worse feeling than being in a boss battle only to realized you used too much mana before. Understanding where your tokens go, what they cost at each layer, and what return you&#8217;re getting on that spend is becoming a core professional competency.</p><p>The blue bar of mana now has a visible bottom.</p><h2>Know the spell book</h2><p>Developing skills takes a lot of deliberate practice and usage. In any craft, the beginning of your journey is inefficient. As you understand the capabilities of the materials and tools, you become more efficient. </p><p>I&#8217;ve burned a lot of tokens myself. Looking back, it feels foolish to use it in such a way. The value of it is I now know the use cases and can design for it; ensuring the efficiency increases.</p><p>There are times where I know I won&#8217;t cast spells because I love using the broadsword that requires no mana. I&#8217;ve found this in writing. Casting mana for a medium that should be my voice. I haven&#8217;t achieved great results with agentic writing. </p><p>For code, I&#8217;m a Sorcerer with a full blue bar and no regrets. I&#8217;m going to cast the Hell out of converting things to TypeScript or writing Python code. That is sorcery I never want to touch in my life.</p><p>Based on your role, you&#8217;ll approach things different. The Product Manager, Marketer, Designer, and Engineer are similar to classes in Diablo. There are certain strengths they&#8217;ll have and it depends on what you want to be focusing on that will determine how mana-native you need to be.</p><p>Diablo doesn&#8217;t end when you run out of mana. It ends when you face the Lord of Terror and you&#8217;re not ready. Start practicing.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sR7k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sR7k!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sR7k!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sR7k!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sR7k!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sR7k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:466316,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/192512654?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.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_!sR7k!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!sR7k!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!sR7k!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!sR7k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd12b9682-ea14-4df7-b1f2-2e349ba69dc5_2000x1406.jpeg 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><div><hr></div><h2>Hyperlinks + notes</h2><ul><li><p>Congrats to <a href="https://www.linkedin.com/in/lmacfadyen/">Louise Macfadyen</a> on <a href="https://www.amazon.com/Designing-AI-Interfaces-Principles-Autonomous/dp/B0FYC7XRP7?sr=8-1">Designing AI Interfaces</a> being available for pre-order!</p></li><li><p><a href="https://512pixels.net/2026/03/how-apple-could-have-saved-the-mac-pro/">How Apple Could Have (Maybe) Saved the Mac Pro</a> | <a href="https://512pixels.net">512 Pixels</a></p></li><li><p><a href="https://a16z.fillout.com/t/2dqvGNMYi9us">a16z New Media Fellowship Application</a></p></li><li><p><a href="https://nextplayso.substack.com/p/a-better-way-to-apply-to-startups?utm_source=post-email-title&amp;publication_id=2876&amp;post_id=192481245&amp;utm_campaign=email-post-title&amp;isFreemail=true&amp;r=39wsz&amp;triedRedirect=true&amp;utm_medium=email">A better way to apply for startups</a> | <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;next play&quot;,&quot;id&quot;:2876,&quot;type&quot;:&quot;pub&quot;,&quot;url&quot;:&quot;https://open.substack.com/pub/nextplayso&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a52ae65-e680-467b-8fd1-a60254192a79_500x500.png&quot;,&quot;uuid&quot;:&quot;497630be-0676-4231-b798-d53144ed2061&quot;}" data-component-name="MentionToDOM"></span> </p></li><li><p><a href="https://substack.com/@ruben/p-189763580">Cowork.</a> | <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Ruben Hassid&quot;,&quot;id&quot;:339636559,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4df84eb2-227f-435e-913c-4210fe339229_1203x1203.png&quot;,&quot;uuid&quot;:&quot;d54be596-b0d4-4ce0-9d72-e024fce9b2c4&quot;}" data-component-name="MentionToDOM"></span> </p></li><li><p><a href="https://substack.com/home/post/p-190232071">I Built 63 Design Skills For Claude - and They&#8217;re Free</a> | <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;MC Dean&quot;,&quot;id&quot;:21150141,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5fa96e74-b7c9-475e-a197-06891071407d_1122x1122.jpeg&quot;,&quot;uuid&quot;:&quot;90b90f41-c1bb-4fef-a2b9-de86b92efc7f&quot;}" data-component-name="MentionToDOM"></span> </p></li></ul>]]></content:encoded></item><item><title><![CDATA[Product Design lessons from the MacBook Neo]]></title><description><![CDATA[Issue 290: Knowing what to cut is the hardest part of design]]></description><link>https://www.proofofconcept.pub/p/product-design-lessons-from-the-macbook</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/product-design-lessons-from-the-macbook</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 22 Mar 2026 16:30:58 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1aTS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Ten days in, and the <a href="https://www.apple.com/macbook-neo/">MacBook Neo</a> already feels different from Apple&#8217;s previous attempts at an entry-level machine. The reviews are positive, the discourse is lively, and &#8212; more telling than either &#8212; people who don&#8217;t usually get emotional about spec sheets are writing essays about what a $599 laptop meant to them as a kid.</p><p>This wasn&#8217;t the first iteration of an entry-level laptop for Apple. In my younger days, I was the owner of a few of them. This time around, Apple seemed to nail the product use cases and their customer. Let&#8217;s look at some key areas where Apple really got it right.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Egan!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Egan!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Egan!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Egan!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Egan!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Egan!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:255948,&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.proofofconcept.pub/i/191768422?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.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_!Egan!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Egan!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Egan!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Egan!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faaeddb9b-5b96-450a-bdb1-2ce6a93db275_2000x1125.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><h2><strong>Knowing who it is for</strong></h2><p>In case you&#8217;re wondering, I did purchase a MacBook Neo. The best articulation I&#8217;ve read was beautifucally told in Sam Henri Gold&#8217;s essay, <a href="https://samhenri.gold/blog/20260312-this-is-not-the-computer-for-you/">This Is Not The Computer For You</a>. It is abundantly clear this computer is for the entry-level individuals. This is the computer for Sam growing up, and many like him now going to college or purchasing their first computer on their own.</p><p>You&#8217;re already disqualified from the customer profile if you&#8217;re asking how Xcode runs on it. The MacBook Neo is the computer you get as an introduction to the ecosystem of media and creative tools that your future self will require maximum compute and RAM.<br>The barrier to entry must be economically accessible. It must be comfortable enough for the hobbyist to become the professional in the future.</p><h2><strong>The right capabilities at the price</strong></h2><p>Apple has tried this before. My first Mac was one of those attempts &#8212; the iconic BlackBook, a machine I loved. But even as an &#8220;entry-level&#8221; option at the time, it cost $1,499 (roughly $2,600 today). The 2015 12&#8221; MacBook came in at $1,299. Neither was actually accessible.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AAxW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AAxW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!AAxW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!AAxW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!AAxW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AAxW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ebf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:196279,&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;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/191768422?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.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_!AAxW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!AAxW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!AAxW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!AAxW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf23b28-e6a7-4517-8b1e-d7a5fe61db21_2000x1125.jpeg 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"><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><figcaption class="image-caption">The first MacBook I owned purchased with my own money.</figcaption></figure></div><p>The MacBook Neo starts at $599. Though materials and production costs have evolved over the past two decades, this is still a remarkable accomplishment. Apple got here by being deliberate about trade-offs rather than just stripping things out. The chassis is still aluminum; an important material to recognize the Mac brand. Plastic wasn&#8217;t an option because of the environmental commitments and would not differentiate from other computers in that price range.</p><p>There were design trade-offs, for sure. For example, there is no backlit keyboard, True Tone display, or the iconic MagSafe. Though these are iconic features of the Mac, they are likely not the first ones newcomers will miss. What remains is a machine that feels premium without performing like one is out of reach.</p><p>The keyboard has the same tactile quality as the iPad Pro Magic Keyboard. The frame is familiar to the MacBook Air. Even the light-tinted keys carry a quiet distinctiveness, a small detail that makes the device feel considered rather than compromised.</p><h2><strong>First experience</strong></h2><p>The MacBook Neo is Apple&#8217;s device onboarding to the ecosystem. It&#8217;s designed to be a person&#8217;s first Mac, not the last. Though there are professionals who&#8217;ll buy this as a secondary machine, the ideal customer profile are new customers for. Think about who actually unwraps one of these. The freshman hauling it out at orientation, setting it on a dorm desk for the first time. The boomer parent whose kid got tired of playing IT support every Thanksgiving and just <em>solved the problem</em> by putting a MacBook under the tree. The longtime Windows user who&#8217;s been Mac-curious for years and finally found a price point that felt like a reasonable bet. The use cases are wildly different, but the moment is the same: a first step into Apple&#8217;s world.</p><p>To onboard, there are careful considerations to make the experience approachable. Let&#8217;s look at something as subtle as the wallpaper. The MacBook Neo&#8217;s wallpapers are colorful, playful and approachable. The MacBook Pro on the other hand is either Silver or Space Black; conveying a sense of seriousness in the work.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KcPU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KcPU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KcPU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KcPU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KcPU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KcPU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:169375,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/191768422?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.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_!KcPU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KcPU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KcPU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KcPU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb91d3db8-7a37-4c9d-899f-df83d6b9df3f_2000x1125.jpeg 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>This provides psychological simplicity for someone just onboarding to a new device. It appears like using an iPhone or iPad then it does a MacBook. Apple has thought very carefully about what happens next.</p><p>Once you&#8217;re in, you set up iCloud sync with your photos and messages. As a result, you may get a second device and subsequent MacBooks. As a customer becomes more advanced in their use cases, they might upgrade to the MacBook Air or MacBook Pro. Each product makes the next one more obvious. Each service makes leaving feel slightly more inconvenient.</p><p>This is where my favorite business metric comes in: <strong>Customer Lifetime Value (CLV)</strong>. A single MacBook Neo sale is almost beside the point. What Apple is really acquiring is a customer who will go on to buy iPhone upgrades, an iPad, an Apple Watch, AirPods, a MacBook Pro when they graduate or get promoted, and years of services revenue on top of all of it. The Neo is less a product and more an enrollment form.</p><p>Apple makes great first impressions and they&#8217;ve built an entire business model around the compounding returns of getting that first impression right.</p><h2><strong>Product Design lessons</strong></h2><p>Designing a product means understanding who it&#8217;s for, what they actually need, what to leave out, and what price makes it real for them. Apple worked backwards from a specific customer and made every decision in service of reaching them. Aluminum over plastic because first impressions matter. No MagSafe, no True Tone, because that customer won&#8217;t miss what they&#8217;ve never had. A keyboard that feels like it belongs on a more expensive machine because the experience has to earn the next purchase.</p><p>Rightsizing is not about stripping something down until it&#8217;s cheap, but it&#8217;s also not being excessive about the offering at the cost of business impact. It is precisely understanding customer needs and having the discipline to stop there.</p><p>The entry experience into a product line isn&#8217;t a lesser version of the real thing. For the right person at the right moment, it <em>is</em> the real thing. Apple designed the MacBook Neo with that person in mind &#8212; not the power user, not the reviewer, not the person already deep in the ecosystem.</p><p>The question worth asking about your own work: who is your MacBook Neo customer, and are you actually designing for them?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1aTS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1aTS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!1aTS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!1aTS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!1aTS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1aTS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:543853,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/191768422?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.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_!1aTS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!1aTS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!1aTS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!1aTS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3ae9d8b7-d9da-4b5c-8892-831906d385c4_2000x1406.jpeg 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><div><hr></div><h2>Hyperlinks + notes</h2><ul><li><p><a href="https://www.youtube.com/watch?v=nPyxVMd1LIA">Dive: Become an AI-Native Designer with Kris Puckett</a></p></li><li><p><a href="https://www.dezeen.com/2026/03/06/molly-anderson-interview-macbook-neo/">Dezeen: Molly Anderson interview on MacBook Neo design</a></p></li><li><p><a href="https://www.macrumors.com/2026/03/06/apple-macbook-neo-design-interview/">MacRumors: Apple on MacBook Neo design &#8212; &#8220;no compromises&#8221;</a></p></li><li><p><a href="https://www.proofofconcept.pub/p/wtf-is-a-product-designer">WTF is a Product Designer &#8212; Proof of Concept</a></p></li><li><p><a href="https://appleinsider.com/articles/26/03/20/macbook-neo-review-the-new-king-of-budget-laptops">AppleInsider: MacBook Neo review</a></p></li><li><p><a href="https://9to5mac.com/2026/03/10/macbook-neo-review/">9to5Mac: MacBook Neo review</a></p></li><li><p><a href="https://resource-recycling.com/e-scrap/2026/03/17/apples-macbook-neo-ifixits-best-macbook-score-in-14-years-but-the-residual-value-ceiling-is-real/">iFixit / Resource Recycling: Repairability analysis</a></p></li><li><p><a href="https://gizmodo.com/macbook-neo-review-no-other-budget-laptop-can-compete-2000731635">Gizmodo: No other budget laptop can compete</a></p></li><li><p><a href="https://9to5mac.com/2026/03/04/download-the-new-macbook-neo-wallpaper-here/">MacBook Neo wallpapers</a></p></li></ul>]]></content:encoded></item><item><title><![CDATA[Re-writing Tapestry for AI workflows]]></title><description><![CDATA[Issue 289: I shipped a production app, then blew it all up]]></description><link>https://www.proofofconcept.pub/p/re-writing-tapestry-for-ai-workflows</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/re-writing-tapestry-for-ai-workflows</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 15 Mar 2026 16:31:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!qh-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Last year, I made an app with vibe coding tools called <a href="http://tapestry.design">Tapestry</a>. Like many recruiters, high-touch relationship management is one of the most important parts of my job as a hiring manager. Instead of automating these relationships, I made a piece of software that helps me stay connected. Before tapestry, most of my notes and action items were stored in Airtable, Obsidian, and other apps. I shipped an app and built the entire platform on <a href="https://replit.com/refer/dh-design">Replit</a>: the UI, database, and LLM integrations.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3vaA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3vaA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3vaA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3vaA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3vaA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3vaA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg" width="1456" height="701" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:701,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:416221,&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.proofofconcept.pub/i/190979326?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.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_!3vaA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3vaA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3vaA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3vaA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7d1e2f3-4831-490e-a60e-c2e851d3f9d3_2000x963.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><p>What I shipped was my personal CRM, built for my perferences in the interface and curation tools.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!00lX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!00lX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 424w, https://substackcdn.com/image/fetch/$s_!00lX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 848w, https://substackcdn.com/image/fetch/$s_!00lX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!00lX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!00lX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg" width="1456" height="879" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:879,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:401070,&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;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/190979326?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.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_!00lX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 424w, https://substackcdn.com/image/fetch/$s_!00lX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 848w, https://substackcdn.com/image/fetch/$s_!00lX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!00lX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcabc08a1-21bd-477f-a66c-4b8e21ca0f6b_2000x1208.jpeg 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"><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>Over time, Tapestry became my tool of choice. I continued to customize and add new features, such as a familiar spreadsheet view. One day, as I was vibe coding along with my favorite synthwave playlist, I had this difficult relationship:</p><p><em><strong>Am I just re-rebuilding CRUD apps with AI?</strong></em></p><p>Though there is a utilitarian value to building software at a low cost and quick, I realized what I built wasn&#8217;t reflecting of my new workflows and behaviors I&#8217;m forming. Having applications that are form submission for CRUD apps feel archaic now. There are some who believe UI is going away with AI. I am not one of them. Though UI isn&#8217;t going anywhere, it will rapidly become friction in the era of <a href="https://www.davidhoang.com/writing/a-new-mvc-is-emerging">decoupled MVC</a>. In its place are  experiences that bring your interfaces closer to proximity to context.</p><p>The lesson of Tapestry v1 was simple: I built a personalized version of old software. Making someone log into yet another app felt laborious, not valuable. What I did find helpful was the service infrastructure I built to foster human relationships through notes, context, and promising direction of a recommendation engine.</p><h2>Tapestry v2</h2><p>Building v2 of Tapestry started with platform and protocols. I kept the UI built in v1 but shoved it aside to re-imagine the experience headless. Where would people actually be needing this product in their tool suite and proximity of their work? </p><p>When I interviewed recruiters for user research, most of them told me a lot of their workflows were now in ChatGPT or Claude. The first pivot was obvious to me, build a <a href="https://tapestry.design/docs/mcp">MCP server</a> for Tapestry. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ONDe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ONDe!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ONDe!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ONDe!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ONDe!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ONDe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg" width="1456" height="895" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:895,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:89109,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/190979326?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!ONDe!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ONDe!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ONDe!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ONDe!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73a77a57-9153-4d31-8938-2f3901e43870_2000x1229.jpeg 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>The new hypothesis is people likely will use their AI Chat Assistants as the primary workflow instead of logging into the app. The MCP Server allows customers to view, update, and action on key relationships with Natural Language instead of editing a bunch of fields in the UI. Notes, enrichment, and relationship tracking all became conversational rather than form-based. Instead of logging into the Tapestry app UI, people can work directly in their desktop tools. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WT7k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WT7k!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 424w, https://substackcdn.com/image/fetch/$s_!WT7k!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 848w, https://substackcdn.com/image/fetch/$s_!WT7k!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!WT7k!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WT7k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg" width="1456" height="895" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:895,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:500672,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/190979326?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!WT7k!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 424w, https://substackcdn.com/image/fetch/$s_!WT7k!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 848w, https://substackcdn.com/image/fetch/$s_!WT7k!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!WT7k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51fb2023-1ac7-4314-bd17-bd793f764f56_2000x1229.jpeg 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>Reflection</h2><p>The big lesson in v1 of Tapestry was it was a <em>prototype disguised as a production app</em>. However, it was learning by shipping that allowed me to get to the value realization of the MCP Server. The value of what I was building with Tapestry turned out not to be the UI at all. It was the services and data that could be used in closer proximity to other tools I have. </p><p>Once those were separated, the experience drastically improved for me. It&#8217;s an important reminder that building for new behaviors means resisting the muscle memory of building what you&#8217;re used to.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qh-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qh-q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!qh-q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!qh-q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!qh-q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qh-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:587199,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:&quot;&quot;,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/190979326?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!qh-q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!qh-q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!qh-q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!qh-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48587ea5-0aa7-4246-9821-d584d046cbe8_2000x1406.jpeg 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>MCP and agentic workflow setup is not very approachable today. My next step on this project is to figure out the best onboarding experience for a neophyte to be able to know what MCP is during their setup, let alone knowing how to set one up.</p><p>The future of work used to feel like everything was going to the cloud. With agents and new workflows, it may be a mix of <em>hyper-local and hyper-cloud</em>. Not only is Tapestry v2 more productive for me, but I&#8217;m also having so much joy using it directly from Claude Desktop to stay in touch with people.</p><p>Between Tapestry and Open Claw (a story for another day), I&#8217;m able to spend more time having high-touch conversations instead of doing administrative management.</p><div><hr></div><h2>Hyperlinks + notes</h2><ul><li><p><a href="https://www.ifixit.com/News/116152/macbook-neo-is-the-most-repairable-macbook-in-14-years">MacBook Neo Is the Most Repairable MacBook in 14 Years</a></p></li><li><p><a href="https://www.digitaltrends.com/movies/hollywoods-biggest-filmmaker-just-came-out-clean-about-using-ai-in-movies/">Hollywood&#8217;s biggest filmmaker just came out clean about using AI in movies</a></p></li><li><p>Congrats, Replit, on launching <a href="https://blog.replit.com/introducing-agent-4-built-for-creativity">Agent 4</a></p></li><li><p><a href="https://lukew.com/ff/entry.asp?2145">Durable Patterns in AI Product Design</a> by <a href="http://www.lukew.com/about/">Luke Wroblewski</a></p></li><li><p><a href="https://x.com/samhenrigold/status/2032080638635880796">&#8220;The MacBook Neo Is Not The Computer For You&#8221;</a> by <a href="https://samhenri.gold/">Sam Henri Gold</a></p></li><li><p><a href="https://gizmodo.com/rosamund-pike-thinks-the-doom-movie-is-so-bad-it-nearly-killed-her-career-2000733572">Rosamund Pike Thinks the &#8216;Doom&#8217; Movie Is So Bad It Nearly Killed Her Career</a></p></li><li><p><a href="https://www.engadget.com/social-media/digg-shuts-down-for-a-hard-reset-because-it-was-flooded-with-bots-153848094.html?src=rss">Digg shuts down for a &#8216;hard reset&#8217; because it was flooded with bots</a> &#8594; Kevin Rose is back (Digg Nation re-union tour, when?)</p></li></ul>]]></content:encoded></item><item><title><![CDATA[Forward deployed designer]]></title><description><![CDATA[Issue 288: Go to the problem]]></description><link>https://www.proofofconcept.pub/p/forward-deployed-designer</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/forward-deployed-designer</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 08 Mar 2026 16:30:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jmgv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the early 2010s, Palantir coined a role that didn&#8217;t exist before: the Forward Deployed Software Engineer. These weren&#8217;t engineers building features on a roadmap. They were engineers embedded directly at client companies &#8212; sitting with analysts, operators, and decision-makers &#8212; to discover the problem and build the solution in the same motion. The role spread. Databricks, Scale AI, and OpenAI adopted variations. </p><p>The reason is simple: when you collapse the distance between the person who understands the problem and the person who can build the solution, everything moves faster. The feedback loop tightens. The game of telephone between sales, product, and engineering disappears. You stop building to spec and start building to learn.</p><p>So here&#8217;s the question I keep returning to: why hasn&#8217;t design had its version of this?</p><h2><strong>The missing leverage</strong></h2><p>For most of design&#8217;s history, the answer was practical. You could embed a designer at a customer site, but they&#8217;d still need an engineer to build anything. A designer could observe workflows, sketch solutions, and present recommendations &#8212; but the output was a deck, not working software. That&#8217;s useful, but it&#8217;s not the same as what a forward deployed engineer delivers.</p><p>Consulting and agency models tried to bridge this gap. Design sprints became the popular format: a week-long workshop with a rigid agenda &#8212; map on Monday, sketch on Tuesday, decide on Wednesday, prototype on Thursday, test on Friday. The intent was right. Compress the cycle. Get to a testable idea fast. But the format is still a workshop. It&#8217;s bounded, facilitated, and disconnected from real implementation. The prototype you build on Thursday is a clickable mockup, not software.</p><p>The forward deployed model is different. It optimizes for outcomes, not deliverables. The structure is the team, not the ceremony.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jmgv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jmgv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jmgv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jmgv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jmgv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jmgv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:438985,&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.proofofconcept.pub/i/190289784?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.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_!jmgv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jmgv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jmgv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jmgv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6b708e0-f612-4ffe-b131-18eb9804acbf_2000x1406.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><h2><strong>AI changes the equation</strong></h2><p>What&#8217;s shifted is that designers now have technical leverage they never had before. With tools like Claude, Cursor, Replit, and v0, a designer can go from observing a workflow to building a functional prototype in the same day.</p><p>This isn&#8217;t about designers replacing engineers. It&#8217;s about designers being able to do the first 80% of a solution independently: research the problem, design the approach, build a functional prototype, and validate it with real users. The last 20% &#8212; production hardening, systems integration, scale &#8212; still needs engineering. But by the time engineers engage, the problem is well-defined and de-risked. That&#8217;s enormously valuable.</p><p>The Forward Deployed Designer is someone who embeds with a team facing an ambiguous problem, spends time in the field observing real workflows, and rapidly prototypes solutions using AI-assisted development. They leave behind not just a solution, but clarity: a well-articulated problem, a tested approach, and artifacts the team can build on. They compress the discover-design-validate loop from months to weeks.</p><h2><strong>Not consulting. Not a design sprint.</strong></h2><p>It&#8217;s worth being precise about what this isn&#8217;t.</p><p>A consultant optimizes for the engagement. A forward deployed designer optimizes for the problem. The output isn&#8217;t a 60-page deck or a set of recommendations &#8212; it&#8217;s working software and validated insights. You have skin in the game because you&#8217;re embedded with the team, not flying in for a workshop.</p><p>It&#8217;s also different from a staff or principal designer at a company. Forward deployed designers are temporary and targeted. They don&#8217;t own a product area long-term. They bring fresh eyes and cross-pollinated patterns from other domains. They&#8217;re scoped to the hardest, most ambiguous problems &#8212; the ones where you don&#8217;t even know what to build yet. Think of it like a design equivalent of a senior engineer brought in to untangle a gnarly architecture problem.</p><h2><strong>The small team model</strong></h2><p>Here&#8217;s where it gets interesting for companies. You don&#8217;t need to hire Palantir. The most compelling version of this might be internal: a small forward-deployed squad that your own company spins up to tackle its hardest problems.</p><p>The squad: a forward deployed engineer, a forward deployed designer, and a researcher. Three people. That&#8217;s it. They operate like a startup-within-the-company, deployed against a specific, ambiguous problem.</p><p>Product discovery, design, and research have always been intertwined but organizationally separated. This team collapses those silos. The researcher identifies the real problem. The designer shapes the solution and iterates rapidly. The engineer handles systems integration and technical feasibility. All in the same room, same week. This is a product discovery team with teeth &#8212; they don&#8217;t just produce insights and hand them off. They produce working prototypes and validated direction.</p><p>Small teams move fast because communication overhead is near-zero. Three people don&#8217;t need standups, retros, or Jira boards. They need a shared problem and a whiteboard. Companies can deploy these squads: a new market to enter, a product area with high churn, an internal tool bleeding productivity, or an acquisition that needs integration thinking.</p><p>The rotation model matters. These should be temporary deployments &#8212; four to eight weeks &#8212; not permanent structures. After the engagement, the squad disbands and members rotate to new problems. This prevents the team from becoming just another product team, and it solves the career problem: instead of designers and researchers being stuck in support roles on feature teams, they operate at the frontier of the company&#8217;s hardest questions.</p><h2><strong>Deploy to customers, deploy across teams</strong></h2><p>The traditional playbook when a customer has a problem: run a design sprint or kick off a three-month consulting engagement. Both are heavy, slow, and optimized for process over progress.</p><p>Forward deployed squads flip this. Deploy a squad to a key customer&#8217;s site for two to three weeks. They observe real workflows, build a working prototype that addresses the customer&#8217;s specific pain, and come back with something tangible &#8212; not a report about what the customer said they wanted. For enterprise companies, where the gap between what sales hears, what product interprets, and what engineering builds is enormous, a forward-deployed squad collapses that game of telephone into direct observation and rapid prototyping.</p><p>The same model works across internal organizational boundaries. Deploy a squad to work with the sales team on their tooling. Embed with ops to redesign a workflow. Sit with customer support for two weeks and come back with a prototype that cuts ticket volume. These aren&#8217;t projects that need a six-month roadmap. Some problems need two or three smart people with the right skills paying close attention for a short burst.</p><p>This also changes the relationship with customers. Instead of &#8220;we&#8217;ll take your feedback and get back to you in a quarter,&#8221; it becomes &#8220;we&#8217;re going to sit with your team, understand the problem, and show you something in two weeks.&#8221; That builds trust and loyalty in a way that roadmap promises never will.</p><h2><strong>Why this matters now</strong></h2><p>AI amplifies each person on the squad. The designer can prototype at engineering speed. The engineer can explore more solutions faster. The researcher can synthesize data and run analyses that used to take weeks. A three-person team with AI tools in 2026 can cover the ground that used to require a ten-person cross-functional team. That&#8217;s the direct result of collapsing the build cost of exploration.</p><p>Design sprints were a step in the right direction as they tried to compress the cycle. Forward deployed teams are the same compression, but with real output. In ambiguous problem spaces, the company that learns fastest wins.</p><div><hr></div><h2><strong>Hyperlinks + notes</strong></h2><ul><li><p><a href="https://medium.com/design-bootcamp/the-case-for-the-forward-deployed-designer-73188048628c">The case for the forward-deployed designer &#8212; Nathan Lui (Medium)</a></p></li><li><p><a href="https://newsletter.pragmaticengineer.com/p/forward-deployed-engineers">What are Forward Deployed Engineers, and why are they so in demand? &#8212; The Pragmatic Engineer</a></p></li><li><p><a href="https://www.svpg.com/forward-deployed-engineers/">Forward Deployed Engineers &#8212; Silicon Valley Product Group (Marty Cagan)</a></p></li><li><p><a href="https://thomasotter.substack.com/p/wtf-is-a-forward-deployed-engineer">WTF is a forward-deployed engineer? &#8212; Thomas Otter</a></p></li><li><p><a href="https://www.salesforce.com/blog/forward-deployed-engineer/">Forward Deployed Engineer: 5 Skills for This New Role &#8212; Salesforce</a></p></li><li><p><a href="https://www.tipranks.com/news/private-companies/blitzy-targets-design-bottleneck-with-new-forward-deployed-designer-role">Blitzy Targets Design Bottleneck With New Forward Deployed Designer Role &#8212; TipRanks</a></p></li><li><p><a href="https://www.lennysnewsletter.com/p/how-to-get-your-entire-team-prototyping">How to get your entire team prototyping with AI &#8212; Lenny&#8217;s Newsletter</a><a href="https://www.producttalk.org/ai-prototyping-lovable/">AI Prototyping: How Real-World Teams Are Transforming Their Work &#8212; Product Talk</a> </p></li></ul>]]></content:encoded></item><item><title><![CDATA[Software interoperability]]></title><description><![CDATA[Issue 287: Your moat is now a bridge]]></description><link>https://www.proofofconcept.pub/p/software-interoperability</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/software-interoperability</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 01 Mar 2026 17:30:37 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aLi3!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3908f34-06c0-4b61-bc51-c3d632c2226b_1000x1000.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>For years, the winning strategy in software was consolidation. Build the suite. Own the workflow end-to-end. Make it painful to leave. The walled garden wasn&#8217;t a bug&#8212;it was the business model.</p><p>That model is cracking. Not because the walls aren&#8217;t strong, but because the value is shifting to what flows between them.</p><h2>What&#8217;s pushing this</h2><p>Software pricing is moving toward usage and outcomes, which means the opportunity is in how deeply your product integrates with everything else the customer already uses. You can&#8217;t charge for value delivered if your tool is an island. The products that connect well get embedded into workflows; the ones that don&#8217;t get replaced by ones that do.</p><p>Agents are accelerating this. A coding agent that can only talk to one editor or one version control system isn&#8217;t very useful. The ones people actually rely on push code, trigger reviews, run tests, and update documentation across whatever stack is in place. They need open protocols and shared standards to do their job&#8212;they don&#8217;t care about ecosystem boundaries, they need to cross them.</p><p>And users now expect to swap parts. People assume they can bring their own editor, their own AI model, their own deployment target. The expectation has shifted from &#8220;learn our way&#8221; to &#8220;work with my setup.&#8221; If your platform can&#8217;t accommodate that, they&#8217;ll find one that does.</p><h2>Implications</h2><p>I&#8217;ve written about the Integrated Design and Development Environment (IDDE) before. I&#8217;d now amend that: the &#8220;I&#8221; stands for <em>Interoperable</em>. Building extensible options and offering customer choice used to be a nice-to-have. Now it&#8217;s a differentiator.</p><p>Consider a design tool that ships protocol access not for one coding agent, but for every major agent on the market. That&#8217;s not a courtesy&#8212;it&#8217;s a strategy. You&#8217;re saying: we don&#8217;t care which agent you prefer, we just want to be in your workflow. The product that integrates with everything becomes harder to remove than the one that integrates with nothing.</p><p>This is already playing out in standards. Open protocols for agent-to-tool communication have gone from side projects to industry foundations in under a year. Government agencies are publishing frameworks for agent interoperability. The major platform companies&#8212;ones that spent decades building competing ecosystems&#8212;are now sitting at the same table, contributing to shared protocols. That doesn&#8217;t happen because interoperability is a nice idea. It happens because the alternative is irrelevance.</p><p>The same pattern is showing up in developer tools. Editor-agnostic agent registries let you pick your preferred coding environment and AI assistant independently&#8212;no bundling, no lock-in. Agent frameworks are shipping with open protocol support as a baseline, not a plugin. The assumption has flipped: if your tool doesn&#8217;t speak the common language, it&#8217;s the one that gets cut from the workflow.</p><p>Ironically, your product moat is the bridges you build for people to come through.</p><h2>What changes</h2><p>The defensible position isn&#8217;t lock-in anymore&#8212;it&#8217;s being the thing everything else connects to. If your platform is where value gets exchanged between tools, removing you breaks the whole workflow. The moat becomes a bridge: you win by making it easy for people to come through, not by making it hard for them to leave.</p><p>This means customers bring their own stack. They integrate components from different vendors, build custom solutions on top of your platform, and expect it to work. You provide the foundation; they choose the furniture. The product that fights this loses to the one that embraces it.</p><p>It also means partnerships replace features. Instead of building everything natively, you co-create value with other products. Your integration catalog becomes as important as your feature list. Open standards and shared protocols let customers move between cloud, on-prem, and hybrid setups without ripping everything out&#8212;and that flexibility makes them more willing to commit, not less.</p><p>Lock-in, once the whole strategy, is now a liability. Customers actively avoid single-vendor dependencies. The platforms that adopt open standards signal confidence: they&#8217;re betting you&#8217;ll stay because the product is good, not because leaving is expensive.</p><div><hr></div><h2>Hyperlinks + notes</h2><ul><li><p><a href="https://x.com/paper/status/2026349288805326878">Paper Desktop + MCP announcement</a> &#8212; Paper&#8217;s launch supporting Claude Code, Codex, Copilot, and other agents via MCP</p></li><li><p><a href="https://thenewstack.io/why-the-model-context-protocol-won/">Why the Model Context Protocol Won</a> &#8212; The New Stack on how MCP became the de facto standard</p></li><li><p><a href="https://events.linuxfoundation.org/2026/02/24/agentic-ai-foundation-unveils-mcp-dev-summit-north-america-2026-schedule/">Agentic AI Foundation Unveils MCP Dev Summit 2026 Schedule</a> &#8212; Linux Foundation event on open standards for agentic AI (April 2-3, NYC)</p></li><li><p><a href="https://www.linuxfoundation.org/press/linux-foundation-announces-the-formation-of-the-agentic-ai-foundation">Linux Foundation Announces the Agentic AI Foundation</a> &#8212; Anthropic, OpenAI, Google, Microsoft, AWS all under one governance umbrella for MCP</p></li><li><p><a href="https://dev.to/wcamon/nist-just-launched-an-ai-agent-standards-initiative-heres-what-developers-should-do-now-11h8">NIST Launches AI Agent Standards Initiative</a> &#8212; First U.S. government framework for autonomous AI agents, explicitly referencing MCP</p></li><li><p><a href="https://onereach.ai/blog/what-is-a2a-agent-to-agent-protocol/">A2A Protocol Explained: Secure Interoperability for Agentic AI</a> &#8212; Google&#8217;s Agent-to-Agent protocol as a companion to MCP</p></li><li><p><a href="https://cloudwars.com/ai/openai-and-microsoft-support-model-context-protocol-mcp-ushering-in-unprecedented-ai-agent-interoperability/">OpenAI and Microsoft Support MCP</a> &#8212; Former competitors adopting a shared protocol</p></li><li><p><a href="https://www.infoq.com/news/2026/02/ms-agent-framework-rc/">Microsoft Agent Framework RC</a> &#8212; Microsoft&#8217;s agent framework shipping with MCP support built-in</p></li><li><p><a href="https://blog.jetbrains.com/ai/2026/01/acp-agent-registry/">JetBrains ACP Agent Registry</a> &#8212; Pick your preferred agent and editor with no vendor lock-in</p></li></ul>]]></content:encoded></item><item><title><![CDATA[Sketching with code]]></title><description><![CDATA[Issue 286: Treating code like a pencil, not a blueprint]]></description><link>https://www.proofofconcept.pub/p/sketching-with-code</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/sketching-with-code</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 22 Feb 2026 17:30:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rJ-M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>A common concern with coding through Gen AI is that the outputs are so high fidelity that they narrow the solution space. But you can run into the same problem with Figma. Long before generative AI, I was sketching in code&#8212;and the distinction matters. My love for a spatial canvas to explore infinite ideas applies just as much to programmatic drawing.</p><p>Sketching with code is a different mode, but it feels natural to me. I can often draw faster on a keyboard than with a stylus. Over the years, I developed a physical sketching system&#8212;symbols, color coding, hierarchy through line weight&#8212;as a shorthand to accelerate ideation. Sketching with code is the programmatic extension of that same system. The shorthand I built for pen and paper trained my instinct for what to feed the machine.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rJ-M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rJ-M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!rJ-M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!rJ-M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!rJ-M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rJ-M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg" width="1456" height="1024" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:431019,&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.proofofconcept.pub/i/188756624?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.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_!rJ-M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg 424w, https://substackcdn.com/image/fetch/$s_!rJ-M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg 848w, https://substackcdn.com/image/fetch/$s_!rJ-M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!rJ-M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad1e09bd-cee0-4382-83dd-2bf8f6302258_2000x1406.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><h2><strong>My approach to sketching with code</strong></h2><p>Before I share how I sketch with code in the age of LLMs, it&#8217;s worth establishing what matters to me regardless of whether I&#8217;m writing code by hand or directing AI to generate it.</p><p>I start without a design system. This is deliberate. Production-grade components carry assumptions&#8212;spacing, hierarchy, interaction patterns&#8212;that narrow the solution space before you&#8217;ve had a chance to explore it. If I&#8217;m proposing a feature, the design system is the right starting point. But in exploration mode, the system comes later. Sketches are for divergence; design systems are instruments of convergence.</p><p>Second, I sketch for technical fidelity. Early in my career I relied on Axure RP, but eventually switched to coding in HTML, CSS, and JavaScript. The power of code as a sketching medium is that fidelity is a dial, not a binary. A code sketch can be a single HTML file with hardcoded data&#8212;just enough to show a flow and get a reaction&#8212;or it can connect to a real API and handle edge cases. Most people assume that opening a code editor means working in high fidelity. It doesn&#8217;t. A <code>&lt;div&gt;</code> with a background color and placeholder text is just as low-fi as a sticky note&#8212;it just happens to run in a browser.</p><h3><strong>Upload drawings to LLMs</strong></h3><p><a href="https://bengrace.com/">Ben Grace</a>, Product Designer at Atlassian, recently shared with our team a walkthrough of how he uses Excalidraw as the context for his projects in Replit. I remember the words of a mentor describing computer vision simply:</p><p><em>Computers can read what we see.</em></p><p>That blew my mind. We often forget how long computers have been reading visual input. In 1989, Yann LeCun trained a neural network to read handwritten zip codes off envelopes at Bell Labs. By the late &#8216;90s, his system was processing over 10% of all checks written in the U.S. In 2017, Tony Beltramelli&#8217;s pix2code took a GUI screenshot and generated working code for iOS, Android, and web. Then in 2023, tldraw shipped &#8220;Make it Real&#8221; &#8212; draw a rough UI sketch on a canvas, click a button, and GPT-4V returns a functional HTML prototype. The gap between what humans draw and what computers can execute has been closing for 35 years. In the last two, it effectively collapsed.</p><p>Most of my sketching with code today starts on paper. I upload wireframes, screenshot annotations, and hand-drawn sketches to have the LLM explore code variations.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4UgT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4UgT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 424w, https://substackcdn.com/image/fetch/$s_!4UgT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 848w, https://substackcdn.com/image/fetch/$s_!4UgT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!4UgT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4UgT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg" width="1456" height="773" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:773,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:159542,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/188756624?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.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_!4UgT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 424w, https://substackcdn.com/image/fetch/$s_!4UgT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 848w, https://substackcdn.com/image/fetch/$s_!4UgT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!4UgT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d43ea4a-1849-4946-afdf-c80d13ade2ca_2000x1062.jpeg 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></p><p>My favorite prompt is &#8220;Build 10 variations of this&#8221; to rapidly explore.</p><h3><strong>Shaping up technical fidelity</strong></h3><p>Early in my career, designers used Parse as a back end to prototype iOS apps. You&#8217;d define a data model, wire up a few API calls, and suddenly your prototype remembered state, handled multiple users, and behaved like a real product. That experience taught me something lasting: data and models are structure, and structure is a powerful sketching technique.</p><p>When I sketch with code today, technical fidelity is the dimension I dial up first. Visual fidelity&#8212;colors, spacing, type&#8212;layers on easily later. The questions that matter early are structural: What&#8217;s the data model? Where does state live? What happens when this list is empty, or has 10,000 items?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!R2Z9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R2Z9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 424w, https://substackcdn.com/image/fetch/$s_!R2Z9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 848w, https://substackcdn.com/image/fetch/$s_!R2Z9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!R2Z9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R2Z9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg" width="1456" height="773" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:773,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:238227,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/188756624?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.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_!R2Z9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 424w, https://substackcdn.com/image/fetch/$s_!R2Z9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 848w, https://substackcdn.com/image/fetch/$s_!R2Z9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!R2Z9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5d361031-dfd9-4981-9c80-714a20b79ea2_2000x1062.jpeg 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><h3><strong>Design system interlock</strong></h3><p>Once I have a few solutions worth pursuing, I bring in the design system. This is where sketching ends and shaping begins&#8212;where a rough concept starts to inherit the constraints and conventions of the product it might become.</p><p>Previously, this transition was high effort. You&#8217;d rebuild your prototype from scratch using production components, re-mapping every layout decision to the system&#8217;s grid, tokens, and interaction patterns. It felt like translation work&#8212;tedious and lossy. The sketch had energy; the systemized version often didn&#8217;t. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3Ech!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3Ech!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3Ech!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3Ech!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3Ech!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3Ech!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg" width="1456" height="773" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:773,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:299469,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/188756624?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!3Ech!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3Ech!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3Ech!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3Ech!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F00501119-b8fd-4946-9062-f31d388a2e0b_2000x1062.jpeg 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>Now that gap is collapsing. At work, I can point an LLM at Atlassian&#8217;s Atlaskit component library or connect to our MCP server, and it will re-skin a rough code sketch with real design system components in minutes. The structure I built during the sketching phase&#8212;data model, state management, flow logic&#8212;carries forward. What changes is the surface: a plain <code>&lt;select&gt;</code> becomes an Atlaskit dropdown, a hardcoded list becomes a dynamic table with sorting and pagination baked in.</p><p>This is the interlock I care about. The design system isn&#8217;t a starting point&#8212;it&#8217;s a finishing move. You sketch unconstrained to explore the problem space, then snap your best ideas onto the system&#8217;s rails to see if they hold up. The LLM makes that snap nearly instant, so I can run the full loop&#8212;sketch, evaluate, systemize&#8212;multiple times in a single session. Ideas that break under the system&#8217;s constraints get caught early. Ideas that survive get stronger.</p><p>Because I started without the design system, there are style overrides&#8212;the UI won&#8217;t be pixel-perfect. But after screenshot revisions with the LLM and micro-prompting, I can get it to a realized state.</p><h3><strong>Contributing to new values and patterns</strong></h3><p>For design systems to remain relevant, they need contributions. Too often, the system calcifies&#8212;it caps innovation instead of enabling it. Sketching with code surfaces those gaps naturally. You find the places where the system falls short, and in doing so, you find opportunities to contribute back. To innovate on a system, you have to break it apart and put it back together.</p><p>This mode of working also lets you build your own tools along the way. I&#8217;m an admittedly lazy documentor, so instead of manually tracking proposed changes to our design system, I built a component tracker that documents them for me.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YeUN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YeUN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YeUN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YeUN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YeUN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YeUN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg" width="1456" height="948" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:948,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:292516,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.proofofconcept.pub/i/188756624?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!YeUN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 424w, https://substackcdn.com/image/fetch/$s_!YeUN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 848w, https://substackcdn.com/image/fetch/$s_!YeUN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!YeUN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F57126651-4a42-44af-bd23-45092aa7a7e0_2000x1302.jpeg 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>In addition to exploration tools, code sketches are communication tools. A running prototype changes the conversation in a room faster than any slide deck. People stop arguing about what something <em>might</em> feel like and start reacting to what it <em>does</em> feel like. A scrappy code sketch deployed to a URL has more persuasive power than a polished presentation. It builds conviction because it&#8217;s real&#8212;it runs, it responds, it has edges you can poke at. If you want to move a decision forward, demo before the memo.</p><h2><strong>Recap</strong></h2><p>If you start with the design system, you&#8217;ve already narrowed what&#8217;s possible. Resist the urge to reach for production components when you&#8217;re still exploring. Feed the LLM with images of your sketches and annotations&#8212;hand-drawn wireframes, screenshots, whatever captures the idea&#8212;and let it generate variations in code. Once you&#8217;ve found directions worth pursuing, bring the design system back in and interlock it with your findings. Weirdly, making apps is itself a form of sketching to get to the final app you want to build.</p><div><hr></div><h2><strong>Hyperlinks + notes</strong></h2><ul><li><p><a href="https://newsletter.baselinedesign.com/the-mcp-tool-thats-changing-how-i-use-figma">The MCP Tool That&#8217;s Changing How I Use Figma</a> by <a href="https://www.joeyabanks.me/">Joey Banks</a></p></li><li><p><a href="https://www.proofofconcept.pub/p/developing-a-sketching-system">078 - Developing your sketching system</a></p></li><li><p><a href="https://www.proofofconcept.pub/p/the-art-of-prototyping">265 - The art of prototyping</a></p></li><li><p><a href="https://www.proofofconcept.pub/p/strategy-to-pixelshttps://www.proofofconcept.pub/p/strategy-to-pixels">271 - Strategy-to-Pixels</a></p></li><li><p><a href="https://www.proofofconcept.pub/p/how-product-discovery-changes-with">283 - How Product Discovery changes with AI</a></p></li><li><p><a href="https://arxiv.org/abs/1705.07962">pix2code: Generating Code from a Graphical User Interface Screenshot</a> &#8212; Tony Beltramelli (2017)</p></li><li><p><a href="https://tldraw.substack.com/p/make-real-the-story-so-far">Make Real, the story so far</a> &#8212; tldraw&#8217;s sketch-to-code demo</p></li></ul>]]></content:encoded></item><item><title><![CDATA[The supply side of AI]]></title><description><![CDATA[Issue 285: What you sell in a marketplace changes with every platform shift]]></description><link>https://www.proofofconcept.pub/p/the-supply-side-of-ai</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/the-supply-side-of-ai</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 15 Feb 2026 17:30:54 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aLi3!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3908f34-06c0-4b61-bc51-c3d632c2226b_1000x1000.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Every major distribution shift creates a new marketplace. And every new marketplace starts with the same question: what&#8217;s being supplied?</p><p>The answer is never static. What fills the shelves of a new platform economy always begins with the most obvious artifact&#8212;the thing that looks most like what came before&#8212;and evolves as builders discover what the platfo&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/the-supply-side-of-ai">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Surfaces, capabilities, and extensions]]></title><description><![CDATA[Issue 284: Future casting opinionated platforms]]></description><link>https://www.proofofconcept.pub/p/surfaces-capabilities-and-extensions</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/surfaces-capabilities-and-extensions</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 08 Feb 2026 17:30:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!9AJk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F15539fbf-1e23-4086-854a-6d248b4867b0_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Throughout my career, I&#8217;ve had the pleasure of working across many different focuses: consumer, growth, design systems, marketplaces, platform, and so much more. Each focus area has its own approaches and incentives. Over time, I amalgamated them into three pillars to distill it to the simplest form: <em>surfaces</em>, <em>capabilities</em>, and <em>extensions</em>. Each layer ha&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/surfaces-capabilities-and-extensions">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[How Product Discovery changes with AI]]></title><description><![CDATA[Issue 283: Understanding the new uncertainty to de-risk]]></description><link>https://www.proofofconcept.pub/p/how-product-discovery-changes-with</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/how-product-discovery-changes-with</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 01 Feb 2026 17:31:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!G3ri!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff887133a-e2c1-4439-925b-8c2386ffaaa2_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Product Discovery is the secret weapon I&#8217;ve used throughout my career. I&#8217;ve used it as the vehicle for changing the business&#8212;at One Medical when we launched new service lines, at Webflow when we needed to validate core product changes. It&#8217;s betting on your conviction with end users.</p><p><strong>What is Product Discovery?</strong></p><p>Product discovery is the process of figuring o&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/how-product-discovery-changes-with">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[From LECHTTURM 1917 to Markdown: a workflow for personal AI context]]></title><description><![CDATA[Issue 282: How I took 10 years of notebooks and used Claude Code build my knowledge]]></description><link>https://www.proofofconcept.pub/p/from-lechtturm-1917-to-markdown-a</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/from-lechtturm-1917-to-markdown-a</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 25 Jan 2026 17:30:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QLCj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F42cbbc2a-dd61-4cb4-8ee4-d25192a09a82_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><a href="https://www.proofofconcept.pub/i/183399501/4-personal-llms-and-agents">Personal LLMs and Agents</a> is an area I&#8217;m focusing on this year. I&#8217;m in the phase where I&#8217;m prototyping what that looks like. What works well for me is using the combination of Claude Code and Obsidian as my notes. Since Claude Code has local access to Obsidian and the Markdown files, it makes updating notes and automating work simple. However, I don&#8217;t fu&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/from-lechtturm-1917-to-markdown-a">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The alumni mindset]]></title><description><![CDATA[Issue 281: The long game of team building]]></description><link>https://www.proofofconcept.pub/p/the-alumni-mindset</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/the-alumni-mindset</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 18 Jan 2026 17:31:03 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aLi3!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3908f34-06c0-4b61-bc51-c3d632c2226b_1000x1000.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The word <em>alumni</em> is most affiliated with the collegiate system. University alumni groups connect students who matriculated many years apart&#8212;people who never overlapped, yet share a common thread: memories, values, and culture. The concept applies well to professional alumni networks as well. </p><p>Over the years, alumni groups have formed in technology compani&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/the-alumni-mindset">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Terminal velocity]]></title><description><![CDATA[Issue 280: Claude Code and the CLI comeback]]></description><link>https://www.proofofconcept.pub/p/terminal-velocity</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/terminal-velocity</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 11 Jan 2026 17:30:51 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!T-uP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3f42cb5-b00c-4fc1-acd7-c974289839a4_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the new year, as many people were coming back from the holiday break, it seemed like everyone was talking about Claude Code. It&#8217;s been around for a while, but yet there was an explosion of discussion, which I suspect was the downtime people had to tinker. The agentic workflow in the Command Line Interface (CLI) began as Boris Cherny&#8217;s side project th&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/terminal-velocity">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[My 2026 focus areas]]></title><description><![CDATA[Issue 279: Where I&#8217;m placing my attention this year]]></description><link>https://www.proofofconcept.pub/p/my-2026-focus-areas</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/my-2026-focus-areas</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 04 Jan 2026 17:30:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!DJ9v!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd478c79c-32f3-4c96-a87b-0c71cb086a72_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The conclusion of 2025 brought with it the annual ritual of prediction posts for the new year. I enjoy reading them. Most are written in good faith and are thoughtful. However, I find myself increasingly uncomfortable with the posture as we navigate high <a href="https://open.substack.com/pub/davidhoang/p/displacement-variance?utm_campaign=post-expanded-share&amp;utm_medium=web">displacement variance</a>. We are in a period where foundational assumptions are shifting at the same ti&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/my-2026-focus-areas">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Proof of Concept in 2025]]></title><description><![CDATA[Issue 278: Reflecting on themes and issues from the year]]></description><link>https://www.proofofconcept.pub/p/proof-of-concept-in-2025</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/proof-of-concept-in-2025</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 28 Dec 2025 17:30:15 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aLi3!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff3908f34-06c0-4b61-bc51-c3d632c2226b_1000x1000.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When I write Proof of Concept, I don&#8217;t work from an editorial calendar. There&#8217;s no fixed schedule or predetermined list of topics. I write what&#8217;s top of mind&#8212;often experimental&#8212;and only in hindsight do the themes reveal themselves.</p><p>Looking back, it&#8217;s no surprise that much of this year circled AI. It was inescapable. But I&#8217;ve been intentional about not tu&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/proof-of-concept-in-2025">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[Natural light week]]></title><description><![CDATA[Issue 277: Embracing winter and seasonality]]></description><link>https://www.proofofconcept.pub/p/natural-light-week</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/natural-light-week</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 21 Dec 2025 17:30:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jWiU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F17e4e694-0d67-4cfa-90bd-749330a4533d_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em><a href="https://www.imdb.com/title/tt0402399/">The New World</a></em> &#8212;directed by Terrence Malick and shot by Emmanuel Lubezki is often described as a film shot with natural light (mostly true, but not in a purist sense). Day scenes were filmed using real sunlight, often during early morning and late afternoon. Interiors relied on windows and reflected daylight instead of studio rigs. Night scenes used fire&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/natural-light-week">
              Read more
          </a>
      </p>
   ]]></content:encoded></item><item><title><![CDATA[The plan is the program]]></title><description><![CDATA[Issue 276: Knowledge engineering and plans as an atomic unit]]></description><link>https://www.proofofconcept.pub/p/the-plan-is-the-program</link><guid isPermaLink="false">https://www.proofofconcept.pub/p/the-plan-is-the-program</guid><dc:creator><![CDATA[David Hoang]]></dc:creator><pubDate>Sun, 14 Dec 2025 17:36:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rV6w!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3e2dc54-5ada-4dc5-9d11-346b0a598da6_2000x1406.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>&#8220;The plan is the program,&#8221; is something <a href="https://tyler.cafe/">Tyler Angert</a> said when working on <a href="https://www.youtube.com/watch?v=kCudFI4tcpg&amp;themeRefresh=1">Amjad Masad&#8217;s TED Talk</a>. At the time, it captured how modern tools collapse intent and execution. Looking at it now, the phrase feels less like a metaphor and more like a literal description of how work is getting done.</p><p>This is not just an observation about LLMs. It&#8217;s about how huma&#8230;</p>
      <p>
          <a href="https://www.proofofconcept.pub/p/the-plan-is-the-program">
              Read more
          </a>
      </p>
   ]]></content:encoded></item></channel></rss>