<?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[Two Steps Forward]]></title><description><![CDATA[Insights and Analysis about AI, technology and the future]]></description><link>https://www.twostepsforward.tech</link><image><url>https://substackcdn.com/image/fetch/$s_!tH38!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F854ae5bb-97f5-4674-8b9e-4c5c9e921f43_408x408.png</url><title>Two Steps Forward</title><link>https://www.twostepsforward.tech</link></image><generator>Substack</generator><lastBuildDate>Thu, 30 Apr 2026 23:37:23 GMT</lastBuildDate><atom:link href="https://www.twostepsforward.tech/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Sean Byrnes]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[twostepsforward1@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[twostepsforward1@substack.com]]></itunes:email><itunes:name><![CDATA[Sean Byrnes]]></itunes:name></itunes:owner><itunes:author><![CDATA[Sean Byrnes]]></itunes:author><googleplay:owner><![CDATA[twostepsforward1@substack.com]]></googleplay:owner><googleplay:email><![CDATA[twostepsforward1@substack.com]]></googleplay:email><googleplay:author><![CDATA[Sean Byrnes]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Vibe Cloning]]></title><description><![CDATA[Copying your product is too easy with AI]]></description><link>https://www.twostepsforward.tech/p/vibe-cloning</link><guid isPermaLink="false">https://www.twostepsforward.tech/p/vibe-cloning</guid><dc:creator><![CDATA[Sean Byrnes]]></dc:creator><pubDate>Thu, 02 Apr 2026 17:52:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_Aol!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the old days (around 12 months ago), building software was hard. It was so hard, in fact, that simply building your product was a competitive advantage. If you had better features, a better interface or more integrations you could win in your market.</p><p>Today, building software is easy. <a href="https://www.twostepsforward.tech/p/why-no-one-agrees-about-vibe-coding">AI codegen/vibe coding</a> (or whatever you call it) means that non-technical folks can build in hours what used to take teams of skills engineers weeks. Entire products can be built in a day!</p><p>The future certainly is a weird place to live.</p><p>This shift has had many impacts, but one of the most important is the competitive landscape. It used to be simple to track your competitors, understand their products and compare your capabilities. Now, they can copy your best features over a weekend.</p><p>The era of <strong>Vibe Cloning</strong> is upon us.</p><h3><strong>Quality Doesn&#8217;t Matter</strong></h3><p>I spent 30 minutes with Claude Code and vibe cloned (copied) the Salesforce CRM product. Evidence below:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_Aol!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_Aol!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 424w, https://substackcdn.com/image/fetch/$s_!_Aol!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 848w, https://substackcdn.com/image/fetch/$s_!_Aol!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 1272w, https://substackcdn.com/image/fetch/$s_!_Aol!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_Aol!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png" width="1456" height="586" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:586,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_Aol!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 424w, https://substackcdn.com/image/fetch/$s_!_Aol!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 848w, https://substackcdn.com/image/fetch/$s_!_Aol!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 1272w, https://substackcdn.com/image/fetch/$s_!_Aol!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ed1727b-f176-486b-8369-96593e05dbe4_2048x824.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Sean CRM is clearly better than Salesforce CRM</em></figcaption></figure></div><p>Does it work? You have no way to know without trying it. Is it better or worse than Salesforce? Again, you need to try it.</p><p>It doesn&#8217;t matter that the vibe clones aren&#8217;t as good as your product because that is only something a customer will realize AFTER using it. By then they have already invested time and effort.</p><p>This is the core problem with Vibe Cloning. It&#8217;s possible to create something that looks exactly like your product/feature quickly but it&#8217;s very hard to figure out if it&#8217;s real.</p><p>Worse, what if the difference is subtle? What if they will only realize the difference after a few months? Differences like scale and reliability might not be apparent for a while, long after a customer has already made a buying decision.</p><p>You are no longer competing with real products. You are now competing with facades, mirages and ghosts. All of them can confuse customers, lengthen sales cycles and reduce prices.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Two Steps Forward is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3><strong>The Zombie Hordes</strong></h3><p>&#8220;But my product quality will shine through!&#8221; You say. Customers will realize your product is better, and word of mouth will prevail. Maybe you&#8217;ll have the best case studies, or customer referrals. Will all of that evidence help?</p><p>Not really. Vibe Cloning isn&#8217;t just about the speed of cloning your product, it&#8217;s about how many people can do it. If you find any kind of success you aren&#8217;t going to have a dozen vibe cloned competitors, you will have thousands.</p><p>I called these the &#8220;zombie horde&#8221;. No specific zombie is very intelligent, but in very large numbers they are a problem. Likewise, none of your vibe cloned competitors might be very impressive on their own but there are too many of them. Their sheer numbers create noise to drown you out.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-s41!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-s41!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 424w, https://substackcdn.com/image/fetch/$s_!-s41!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 848w, https://substackcdn.com/image/fetch/$s_!-s41!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 1272w, https://substackcdn.com/image/fetch/$s_!-s41!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-s41!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png" width="1456" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-s41!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 424w, https://substackcdn.com/image/fetch/$s_!-s41!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 848w, https://substackcdn.com/image/fetch/$s_!-s41!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 1272w, https://substackcdn.com/image/fetch/$s_!-s41!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32f5a58c-5373-4914-ac49-25b860adddc4_2048x1117.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>This is what Google&#8217;s Nano Banana thinks zombies look like</em></figcaption></figure></div><p>And they will also poison the well. Customers who tried one of the vibe cloned competitors might have a horrible experience and write off your entire category. You never get a chance to prove your product works, because the customers are biased against you. The zombie hordes can touch hundreds of customers in the time it takes you to touch just a few.</p><p>You need a different playbook.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/p/vibe-cloning?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.twostepsforward.tech/p/vibe-cloning?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><h3><strong>How to Win</strong></h3><p>You don&#8217;t win in this new world using the playbook from the old world. Trying to increase your product velocity won&#8217;t help, because it&#8217;s so fast to vibe clone already. Trying to spend more in marketing won&#8217;t work as your voice can never be as loud as thousands of clones.</p><p>What you need to do is create a new playbook.</p><p>An entirely new approach means you are doing things others are not or cannot. If that&#8217;s not product development speed, it needs to be something else that is hard to replicate.</p><p>While I can&#8217;t tell you how to build a unique playbook for your business, here are some things that might be in your playbook:</p><ul><li><p><strong>Instantaneous Value</strong>. Most products require the user to spend time setting them up before they get value. Enterprise products might require months! That is time you no longer have, so can you create value for the customer immediately? With no effort? In their first minute of using the product? It requires a different way of thinking about the customer experience, and the product itself. For example, instead of asking the user to provide a lot of data up front, can you load it for them automatically? Can you make it so easy that it&#8217;s just pressing a button? If you can, then they can spend a minute to see that your product is better.</p></li><li><p><strong>In-person Events</strong>. Even in the era of AI, people enjoy meeting in person. While it might be easy to clone your product, it is still very hard to host high-quality in person events. They need to be local, they need to have great attendance by great people and they need to be valuable. If you can do it, customers will see value from you that goes beyond the product and build a deeper connection along the way.</p></li><li><p><strong>People products</strong>. Your product doesn&#8217;t start and end with an app, website or API. Your customer support team, your customer success managers and everyone else on your team is part of the product. You can lean into that and ensure every customer thinks of the people on your team as part of their team. That kind of relationship cannot be vibe cloned and the team required to make it happen is very hard to create.</p></li></ul><p>These are just examples, there are many more! In fact, when you put your current playbook aside you have a chance to rethink everything about how customers find you and interact with your product. The best ideas start with what makes your product category different from all others, and what makes your customers different from all others. </p><p>Leaning into those differences with unique strategies is the beginning of a new playbook.</p><h3><strong>The Bottom Line</strong></h3><p>Vibe cloning makes the competitive landscape more treacherous than ever. Your best product ideas are no longer a moat, they are a bridge for your competition to reach your customers.</p><p>While it creates problems for you, it also creates opportunities. If you can succeed, your competitors can be dragged down by the same zombie horde that tried to get you. Survival in this market is a form of competitive advantage.</p><p>To survive, you need an entirely new approach. Don&#8217;t be a victim of vibe cloning, tackle the problem head on!</p>]]></content:encoded></item><item><title><![CDATA[Will Salesforce Survive the Age of AI?]]></title><description><![CDATA[The debates are raging, here are both sides.]]></description><link>https://www.twostepsforward.tech/p/will-salesforce-survive-the-age-of</link><guid isPermaLink="false">https://www.twostepsforward.tech/p/will-salesforce-survive-the-age-of</guid><dc:creator><![CDATA[Sean Byrnes]]></dc:creator><pubDate>Wed, 18 Feb 2026 20:39:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8aAi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the past few weeks, I&#8217;ve had a number of discussions about the future of Salesforce. As the dominant CRM company and the prototypical SaaS business, it provides a great forum for exploring the impact of AI on the technology industry.</p><p>These discussions inevitably turn into two different points of view:</p><ul><li><p>Salesforce is doomed.</p></li><li><p>Salesforce will win.</p></li></ul><p>It&#8217;s interesting that there are rarely any opinions in between! Here are all the arguments I&#8217;ve heard on either side, what they tell us about the future and my personal opinion at the end.</p><h2><strong>Salesforce is Doomed</strong></h2><p>Is Salesforce doomed? Here are the arguments for its demise.</p><h4><strong>Argument 1:</strong> Integrations no longer have value.</h4><p>Why have no other companies been able to challenge Salesforce&#8217;s dominance in CRM? One reason is that Salesforce aggressively acquires any potential competitors, but it&#8217;s largely about integrations. Companies use Salesforce because it integrates with everything else, and in many cases has the only integrations. That was valuable when integrations were hard, expensive and valuable.</p><p>Today, AI codegen can build an API integration in minutes. Even better, it can use browser agents to create integrations to systems without any API by logging into their web interface. That means that integrations are no longer valuable, or even an effective moat.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8aAi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8aAi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 424w, https://substackcdn.com/image/fetch/$s_!8aAi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 848w, https://substackcdn.com/image/fetch/$s_!8aAi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 1272w, https://substackcdn.com/image/fetch/$s_!8aAi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8aAi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png" width="1456" height="585" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:585,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8aAi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 424w, https://substackcdn.com/image/fetch/$s_!8aAi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 848w, https://substackcdn.com/image/fetch/$s_!8aAi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 1272w, https://substackcdn.com/image/fetch/$s_!8aAi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9919f70c-aa93-47e1-b0e9-e35d1099706d_1564x628.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Integrations had high value when they were hard, but that ended with AI codegen.</figcaption></figure></div><p>Without that key advantage and lock-in, customers no longer have the most important reason to choose Salesforce.</p><h4><strong>Argument 2:</strong> The value of packaged software will plummet.</h4><p>For many years, companies had to contort themselves to fit how software worked. Regardless of how you wanted to run your business, you needed to fit into how platforms like Salesforce worked. Yes, you could spend time and money customizing it but that only went so far.</p><p>Now, companies no longer have to settle. They can build tools that fit exactly how they work best, even if it&#8217;s different from every other company. The infinite flexibility vastly outperforms the limited customization available in Salesforce.</p><p>This is true of most legacy SaaS software. Instead of a one-size-fits-all model, companies can have what they want, when they want it. The advantage of SaaS companies to sell the same product to everyone for a high margin is now a liability.</p><p>Even worse for Salesforce, their business model relies on charging a premium price. That makes it hard for them to compete with AI codegen solutions that are perfectly customized and will cost less than the hefty Salesforce price tag. Other SaaS solutions with lower prices might be able to adjust, but not Salesforce.</p><h4><strong>Argument 3:</strong> People hate Salesforce.</h4><p>While widely used, Salesforce is largely disliked. In fact, it&#8217;s hard to find a more widely used product with such a low customer satisfaction score (except for NetSuite). The interface is hard to use, hard to learn and very unforgiving if you make a mistake. I don&#8217;t know of any Salesforce customer who doesn&#8217;t pay for someone to manage it for them full time.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iJYQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iJYQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 424w, https://substackcdn.com/image/fetch/$s_!iJYQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 848w, https://substackcdn.com/image/fetch/$s_!iJYQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!iJYQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iJYQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d69133d-79c6-4934-8182-577df262af86_2048x1152.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!iJYQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 424w, https://substackcdn.com/image/fetch/$s_!iJYQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 848w, https://substackcdn.com/image/fetch/$s_!iJYQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!iJYQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d69133d-79c6-4934-8182-577df262af86_2048x1152.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>While the design is new, the Salesforce product hasn&#8217;t changed in 15 years.</em></figcaption></figure></div><p>Even before AI, Salesforce was losing market share to Hubspot. While Hubspot has plenty of its own problems, the eagerness to switch to another solution is a serious warning sign for their business.</p><p>Why do people still use it? There are few alternatives and the lock-in is strong. Salesforce requires so much configuration that it&#8217;s hard to migrate everything to a new system, even if they made extracting your data easy.</p><p>AI not only allows customers to build their own CRM, exactly as they want it, it lets them migrate off of Salesforce using agents.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Two Steps Forward is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2><strong>Salesforce will win in AI</strong></h2><p>Can Salesforce win in the age of AI? Here are the arguments for its continued success.</p><h4><strong>Argument 1:</strong> Systems of record will persist.</h4><p>The first and most important role of software in business was to manage information. Providing a centralized location for the most important information about a business, and keeping it up to date, was why software revolutionized how businesses operate.</p><p>That is still true today! For example, a business needs to have a single accounting system to understand how much money it is making, spending and keeping. The primary systems where this information lives are called &#8220;systems of record&#8221; and they are the most valuable software any company uses. Salesforce is the system of record for customer information for most of its customers.</p><p>Changing a system of record is more than just software, it involves the people and processes of the business. It can take years to fully migrate from one system of record to another if you include the time to migrate, train and test.</p><p>That makes systems of record like Salesforce extremely sticky and hard for companies to move off.</p><h4><strong>Argument 2:</strong> AI still requires maintenance.</h4><p>Building software has historically been extremely expensive and time consuming. That cost was spread between the initial build of the product and the maintenance that keeps it working. AI makes the initial build almost trivial, but does it help with the maintenance? We don&#8217;t yet know.</p><p>If the AI cannot handle the maintenance for you, then you still need someone to do it for you. That is exactly what software companies like Salesforce specialize in, as evidenced by how long it&#8217;s been since the Salesforce CRM product has changed. They have teams dedicated to keeping their systems up, recovering from incidents and constantly upgrading the plumbing.</p><p>Even if the AI can handle the maintenance, someone needs to oversee it. That&#8217;s easy for technical companies, but non-technical businesses might not have anyone on their staff to do so. They will remain with companies like Salesforce who provide them both with software and technical expertise.</p><h4><strong>Argument 3: </strong>Armies of people are trained on Salesforce.</h4><p>The people who use Salesforce everyday are the sales, marketing and customer employees managing the customer relationships it contains. These people are not software engineers and, while good at their jobs, are not all great at learning new technologies.</p><p>Salesforce has been dominant for so long that these folks have been trained on Salesforce and know it well. It is hard and expensive to retrain them on something else, and there is no guarantee they will reach the same level of expertise that has come with Salesforce.</p><p>There are around <a href="https://www.salesforce.com/news/stories/salesforce-company-facts/">20 million people</a> with Salesforce training and certification, which is an amazing number.</p><p>Most companies do not want to take on unnecessary risks, so if their team knows Salesforce that can be reason enough to stick with it. It also means new employees can ramp up faster as they are using a tool they already know from their previous job.</p><p>This forms a self-reinforcing network effect where companies use Salesforce because other companies use Salesforce. That kind of barrier is hard for anything to overcome.</p><h2><strong>The Bottom Line</strong></h2><p>If you step back, the arguments against Salesforce all look forward at how things will change with AI and the arguments in favor look backwards at the way things were. It&#8217;s a common problem with AI debates today, as some folks are looking ahead and others are looking behind.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!POsT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!POsT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 424w, https://substackcdn.com/image/fetch/$s_!POsT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 848w, https://substackcdn.com/image/fetch/$s_!POsT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 1272w, https://substackcdn.com/image/fetch/$s_!POsT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!POsT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png" width="1456" height="463" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:463,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!POsT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 424w, https://substackcdn.com/image/fetch/$s_!POsT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 848w, https://substackcdn.com/image/fetch/$s_!POsT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 1272w, https://substackcdn.com/image/fetch/$s_!POsT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd36fee7-ad0f-466c-afe7-913b75739f31_2048x651.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Why the divide? The tech industry is run by people with decades of experience who don&#8217;t want to admit that experience is now obsolete. People with less experience find it easier to look forwards, as they aren&#8217;t relying on the trends of the past to continue.</p><p>But when we debate these things today, they overlap enough to be different points of view. It&#8217;s true that the future might change the rules but it&#8217;s impossible to know. It&#8217;s possible that the trends of the past continue! This is why it&#8217;s a debate.</p><p>Speaking of which&#8230;</p><h2><strong>What&#8217;s my take?</strong></h2><p>To be honest, in all of these discussions I have been on the side of Salesforce&#8217;s fall. Even without AI, they have been losing market share to Hubspot due to poor customer satisfaction, an aging technology platform and an aggressive pricing strategy.</p><p>I already see many companies building their own CRMs using AI codegen, as they can better fit their workflow with a custom solution. The value of Salesforce integrations goes to zero when AI can build integrations in seconds, and use agents to create integrations into other systems that don&#8217;t even have APIs. Yes, sales teams are trained on Salesforce but your AI codegen can create an interface similar enough that they pick it up quickly.</p><p>I also reject the argument about &#8220;systems of record&#8221; because it assumes a certain way of operating a business. It&#8217;s not clear that the model will survive the rise of AI agents and even if it does, the shape these systems take will change radically.</p><p>The good news for Salesforce is that they have diversified their business and do a lot more than CRM now. Some of those other businesses will hold them up as growth disappears from the CRM business, especially the AI products.</p><p>But I wouldn&#8217;t make a long term bet on their prospects right now. The Age of AI is coming for the core of the technology industry and changing the rules every day. The innovator&#8217;s dilemma is in full effect.</p>]]></content:encoded></item><item><title><![CDATA[When Is an Agent Not An Agent?]]></title><description><![CDATA[All the innovation is in AI Agent Design Patterns]]></description><link>https://www.twostepsforward.tech/p/when-is-an-agent-not-an-agent</link><guid isPermaLink="false">https://www.twostepsforward.tech/p/when-is-an-agent-not-an-agent</guid><dc:creator><![CDATA[Sean Byrnes]]></dc:creator><pubDate>Thu, 05 Feb 2026 18:51:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!EWJt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Everything in tech today is about AI Agents. So much so that the meaning of &#8220;agent&#8221; and &#8220;agentic&#8221; have almost lost all meaning as companies race to slap them on anything and everything.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EWJt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EWJt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 424w, https://substackcdn.com/image/fetch/$s_!EWJt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 848w, https://substackcdn.com/image/fetch/$s_!EWJt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 1272w, https://substackcdn.com/image/fetch/$s_!EWJt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EWJt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png" width="1104" height="738" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:738,&quot;width&quot;:1104,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EWJt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 424w, https://substackcdn.com/image/fetch/$s_!EWJt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 848w, https://substackcdn.com/image/fetch/$s_!EWJt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 1272w, https://substackcdn.com/image/fetch/$s_!EWJt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cde0c59-99f1-4b6d-8efa-2cefcb1c1755_1104x738.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Agents, agents everywhere.</figcaption></figure></div><p>While there is not a consistent definition, the implication is that an agent can perform multi-step tasks that would otherwise require a human. There are some great agents in the market today, such as Claude Code which can build a fully functional, complex application from a detailed description. Similarly, the Deep Research functions of Gemini and ChatGPT can research a topic online and provide a full report to you. These agents can take minutes or hours to complete their tasks and deal well with ambiguity.</p><p>Those agents are fairly complex, but many agents follow some simpler, standard patterns. These patterns are less complex but also less powerful, and raise the question of whether the products built using them are truly &#8220;agentic&#8221;. We&#8217;ll walk through them and try to answer the question of whether they are truly agents.</p><p>The most common of these patterns are:</p><ul><li><p>Decision Trees</p></li><li><p>Criteria Loops</p></li><li><p>Planners</p></li></ul><h3><strong>Agent Type 1: Decision Trees</strong></h3><p>Decision trees are an old computer science design pattern where decisions are broken down into branching steps. There is some kind of input, and a structured flow of decisions to be made from the input that lead to a set of potential next steps. In the case of agents, the nodes in these decision trees are LLMs with prompts that produce the decision. <br><br>For example, let&#8217;s say we want to process tax documents for an accounting firm. The input might be a PDF document, which the user uploads. The first step of the decision tree is to determine what kind of document it is (W-4, 1099, etc.). Based on the document type, it would be routed to another step that might extract the relevant fields from that document using an LLM. Depending on what those values are, it is then routed to another step to decide how it affects their taxes. And so on.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!D79X!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!D79X!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 424w, https://substackcdn.com/image/fetch/$s_!D79X!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 848w, https://substackcdn.com/image/fetch/$s_!D79X!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 1272w, https://substackcdn.com/image/fetch/$s_!D79X!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!D79X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png" width="1198" height="1120" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1120,&quot;width&quot;:1198,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!D79X!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 424w, https://substackcdn.com/image/fetch/$s_!D79X!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 848w, https://substackcdn.com/image/fetch/$s_!D79X!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 1272w, https://substackcdn.com/image/fetch/$s_!D79X!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F07ca6ed2-9b6a-4c82-b20f-5cc22ca17fef_1198x1120.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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"><em>The Decision Tree agent design pattern</em></figcaption></figure></div><p>Decision trees are powerful, even without LLMs. They can take complicated decision processes and codify them for automation, which LLMs make even more powerful. Even better, by breaking down the decision process into small, atomic pieces it reduces the potential hallucinations of LLMs and improves the accuracy and fidelity. LLM-based decision trees really can feel like magic.</p><p>However, a decision tree is a structure that does not change. Every document would go through the same decision tree in our example above, until the code is changed to change the tree. There is no real structured thinking except for the decision at each node in the tree. There is no learning or improvement based on experience or memory.<br><br>As a result, decision trees will struggle to handle anything that doesn&#8217;t fit the rigid expected range of inputs and states. If you upload a document that the decision tree wasn&#8217;t designed to handle, it won&#8217;t be able to do anything.</p><p>Because of this static structure, I think it&#8217;s hard to classify them as true agents. Yes, they feel like they are doing human-level work when they work. But the inability to work outside of very structured processes means that they cannot deal with ambiguity and as a result are more like very intelligent deterministic processes.</p><blockquote><p><strong>Verdict</strong>: Not Agents</p></blockquote><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Two Steps Forward is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3><strong>Agent Type 2: Criteria Loops</strong></h3><p>Loops are very simple structures, where a program is told to repeat until certain criteria are met. With LLMs this means working on a task until a pre-defined set of criteria is achieved by the output.</p><p>For example, if we want to search the web for specific information about a business we can ask an LLM to perform the task. It might find it on the first try, but it might not! The loop would require a specific criteria on the answer such as a website, an address and a phone number. The LLM would run, find what it can and compare to the criteria. If it doesn&#8217;t match, it goes back and keeps searching.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UVmZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UVmZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 424w, https://substackcdn.com/image/fetch/$s_!UVmZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 848w, https://substackcdn.com/image/fetch/$s_!UVmZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 1272w, https://substackcdn.com/image/fetch/$s_!UVmZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UVmZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png" width="1196" height="255" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:255,&quot;width&quot;:1196,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!UVmZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 424w, https://substackcdn.com/image/fetch/$s_!UVmZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 848w, https://substackcdn.com/image/fetch/$s_!UVmZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 1272w, https://substackcdn.com/image/fetch/$s_!UVmZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6c0faf1e-fb6a-4a1b-96ac-8c2a1a9f6ead_1196x255.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><em>The Criteria Loop agent design pattern</em></figcaption></figure></div><p>These loops can handle much more ambiguous problems than decision trees because the actual steps and decisions are not hard-coded. The LLM can do whatever it thinks is necessary to achieve the goal, while the criteria ensure that we get a desired result. <br><br>The challenge is that these loops can go on forever. Imagine we ask the system to find a company that doesn&#8217;t exist, it could keep searching forever and never meet the criteria! There is usually a limit put on the number of iterations the loop can perform but that means in some cases no result matching the criteria will be produced.</p><p>Similarly, the result is only as good as the criteria. On complex problems this can be difficult because it might not be possible to describe the result if you aren&#8217;t quite sure what it needs to be. In those cases you can have other LLMs act as the critics, evaluating the results against some vague criteria and using some judgement on whether to continue. That is recursive as well!</p><p>Loops are powerful as long as they don&#8217;t get stuck, and have enough iterations to find the goal. While not as good at humans at every task, criteria loops are definitely agents.</p><blockquote><p><strong>Verdict</strong>: Agents</p></blockquote><h3><strong>Agent Type 3: Planners</strong></h3><p>Planners are a design pattern used for the most complex tasks. In this design, there are two steps:</p><ol><li><p>Planning. The system creates a plan on how to achieve the required outcome.</p></li><li><p>Execution. The system executes each step of the plan, updating the plan along the way.</p></li></ol><p>As a result, these systems are really two systems in one. The Planner needs to be good at building a plan and the criteria to know if it was successfully performed. Then an Executor needs to execute the plan in a way that meets the criteria.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MIgc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MIgc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 424w, https://substackcdn.com/image/fetch/$s_!MIgc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 848w, https://substackcdn.com/image/fetch/$s_!MIgc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 1272w, https://substackcdn.com/image/fetch/$s_!MIgc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MIgc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png" width="1196" height="255" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:255,&quot;width&quot;:1196,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MIgc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 424w, https://substackcdn.com/image/fetch/$s_!MIgc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 848w, https://substackcdn.com/image/fetch/$s_!MIgc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 1272w, https://substackcdn.com/image/fetch/$s_!MIgc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc9d3cffe-4e26-4f4a-a078-502bce97f197_1196x255.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><em>The Planner agent design pattern</em></figcaption></figure></div><p>In some cases the Planner is a decision tree, and in others it&#8217;s a Criteria Loop. The Executors are almost always Criteria Loops as they need to continue until the step of the plan they are working on is completed.</p><p>These systems often take a long time to run, since generating the plan takes time and then executing every step the plan takes time. In most cases the steps are executed serially, which takes even longer. However, for complex tasks it&#8217;s worth the time as it greatly improves the chances of achieving the desired outcome.</p><p>Since this pattern underlines most of the high quality agents you might use, these are the current standard of agents.</p><blockquote><p><strong>Verdict</strong>: Definitely Agents</p></blockquote><h3><strong>The Bottom Line</strong></h3><p>These are just a few different design patterns for agents, there are many more. In fact, agent design is one of the most interesting areas of AI right now!</p><p><a href="https://openclaw.ai/">OpenClaw</a> has become a hot product but it includes no innovation on the LLM/AI side at all. It&#8217;s just a good collection of design and implementation of a variety of different agent design patterns. The same is true of Claude Code which is just a set of agent design patterns on top of the Anthropic LLM you can use directly. These design patterns turn the existing AI into something new and more powerful.</p><p>In the coming months and years we&#8217;ll see a lot of interesting new ideas arise in agent design patterns. It&#8217;s also likely that a virtuous cycle will erupt where agent design patterns provide ideas around better training of LLMs and vice versa. That kind of cycle creates even faster innovation and improvements.</p><p>As a result, expect agents to get a lot more interesting in the near future.</p>]]></content:encoded></item><item><title><![CDATA[No More Chatbots]]></title><description><![CDATA[We Need Better AI UX]]></description><link>https://www.twostepsforward.tech/p/no-more-chatbots</link><guid isPermaLink="false">https://www.twostepsforward.tech/p/no-more-chatbots</guid><dc:creator><![CDATA[Sean Byrnes]]></dc:creator><pubDate>Thu, 29 Jan 2026 18:53:15 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!dvSD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Every product either has AI features, or will have them soon. In the age of AI, it&#8217;s become expected that there is some magical automation available everywhere.</p><p>Unfortunately, almost all of these features take the form of chatbots. Bolted onto the side of the product is a chat where you can interact with AI and <strong>maybe</strong> accomplish your goals.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dvSD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dvSD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 424w, https://substackcdn.com/image/fetch/$s_!dvSD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 848w, https://substackcdn.com/image/fetch/$s_!dvSD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 1272w, https://substackcdn.com/image/fetch/$s_!dvSD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dvSD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png" width="1390" height="828" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:828,&quot;width&quot;:1390,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dvSD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 424w, https://substackcdn.com/image/fetch/$s_!dvSD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 848w, https://substackcdn.com/image/fetch/$s_!dvSD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 1272w, https://substackcdn.com/image/fetch/$s_!dvSD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5dbdf71-90fe-45bd-b047-c4bf06b52ca2_1390x828.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Almost every AI feature looks like this</em></figcaption></figure></div><p>The experience of using these chatbots is generally very poor. They are disconnected from the user interface of the rest of the product, and it&#8217;s never clear exactly what they can or cannot do. They all have cute personal names like &#8220;Bradley&#8221; or &#8220;Veronica&#8221; to make them seem accessible but trying to use them is an exercise in frustration.</p><p>Part of the cause is that these features really are bolted onto existing products. Some of them are third party tools, but even the natively built versions are not part of the main application experience. They cannot do very much in the application other than explain how you can do things, like an online support agent. Instead of a magical AI assistant, they are more like an AI spectator that can look at the product but not do much.</p><p>But the biggest cause is that chatbots themselves are a horrible user experience.</p><h3><strong>What is a great user experience?</strong></h3><p>If you are a software developer, or someone working in the technology industry, you&#8217;re comfortable with playing with software. In fact, playing with software is likely how you teach yourself to do things. You try something, see if it works, rinse and repeat.</p><p>Most people outside of the technology industry don&#8217;t think about software that way. Years of fragile tools have taught them that doing the wrong thing, or typing the wrong thing, can break systems and delete data. Most people use software because it&#8217;s a part of their job, and their biggest fear is getting fired.</p><p>As a result, that chat box that seems so welcoming to someone who learned to use computers on the command line is an impenetrable fortress to non-technical folks. They don&#8217;t know what to type in the box, and are afraid if they type the wrong thing it might have catastrophic consequences.</p><p>A great user interface is one that explains itself to the user as part of the interaction of using it. <a href="https://en.wikipedia.org/wiki/The_Design_of_Everyday_Things">The Design of Everyday Things</a> (although a bit dated now) explains this exceedingly well even though it was written before the internet age. A great product does not require a long training session or user manual, it allows the user to teach themselves.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!v6S1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!v6S1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 424w, https://substackcdn.com/image/fetch/$s_!v6S1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 848w, https://substackcdn.com/image/fetch/$s_!v6S1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 1272w, https://substackcdn.com/image/fetch/$s_!v6S1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!v6S1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png" width="916" height="914" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:914,&quot;width&quot;:916,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!v6S1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 424w, https://substackcdn.com/image/fetch/$s_!v6S1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 848w, https://substackcdn.com/image/fetch/$s_!v6S1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 1272w, https://substackcdn.com/image/fetch/$s_!v6S1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6841f4ef-cdf4-4624-9587-9367ab927742_916x914.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Great products are both powerful and easy to learn. Unlike chatbots.</em></figcaption></figure></div><p>Chatbots are the opposite of this. They provide no coaching or expectation setting, and assume a very deep understanding for even a first time user. Even if you provide example prompts, it&#8217;s not entirely clear what outcome they will create or how long that might take.</p><p>Chatbots offload all of the work to the end user.</p><p>It doesn&#8217;t need to be this way! AI really can do amazing things, but not if we continue to push the onus onto the user to know how and when to use it. Instead of chatbots we need a new generation of AI user experience models.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Two Steps Forward is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3><strong>The &#8220;Do It For Me Button&#8221;</strong></h3><p>What would a better AI user experience look like?</p><p>Imagine you are in the process of planning an elaborate event. You&#8217;re using event planning software which has countless options to choose from and requires a lot of tracking of dependencies.</p><p>If you wanted to add an AI chatbot to this interface, how would it work? Maybe the user types in &#8220;plan my event&#8221; and the AI then proceeds to ask a series of questions to distill the user&#8217;s intent. But how would the user know to type that, or that the interview would ensue? What if it didn&#8217;t, and the AI went ahead and planned a random event instead?</p><p>Now, think about the same product interface. As the user begins to plan the event, a button appears called &#8220;Do This For Me&#8221; after they have filled out enough of the existing product experience to know what they intend for the party. If you click the button, it finishes setting everything up for you.</p><p>The product looks the same it did before AI, just with a new button that appears.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U_CN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U_CN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 424w, https://substackcdn.com/image/fetch/$s_!U_CN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 848w, https://substackcdn.com/image/fetch/$s_!U_CN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 1272w, https://substackcdn.com/image/fetch/$s_!U_CN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U_CN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png" width="1390" height="828" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:828,&quot;width&quot;:1390,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U_CN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 424w, https://substackcdn.com/image/fetch/$s_!U_CN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 848w, https://substackcdn.com/image/fetch/$s_!U_CN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 1272w, https://substackcdn.com/image/fetch/$s_!U_CN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b5c8e20-3988-42a7-9d0f-75efece518c9_1390x828.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>The &#8220;Do It For Me&#8221; button appearing in the application experience, otherwise unchanged</em></figcaption></figure></div><p>The button explains what it does! &#8220;Do It For Me&#8221; is as clear as you can get. The system did the work of deciding when it knew enough to complete the task, and the user just had to make one decision: do you want it to do it for you?</p><p>This kind of interface is much more accessible to users, as a button feels deterministic. Instead of needing to craft the perfect prompt, all they need to do is click.</p><p>But what if it&#8217;s more complex than that? What if you need more information to do it for them? The &#8220;Do It For Me&#8221; button doesn&#8217;t need to be the only part of the experience, it just needs to be the beginning. An easier, more accessible on-ramp to using AI.</p><p>In fact, the &#8220;Do It For Me&#8221; button might launch a chatbot! Instead of asking the user to drive, it takes care of starting the conversation and setting up the intent so the user is along for the ride.</p><h3><strong>The Bottom Line</strong></h3><p>This is just an example of how rethinking the user experience of AI features can work, and how the user can perceive very simple changes in very different ways. It might not make sense to pepper &#8220;Do It For Me&#8221; buttons everywhere in a product, but what simple mechanisms can you provide that are easy on-ramps?</p><p>Chatbots are popular because they are easy. They are easy to implement, easy to add and easy to think about. However, great interfaces are about the user and not the maker. In making it easy for the people building the product the user takes on the most difficult tasks.</p><p>For AI to succeed, the opposite needs to be true.</p>]]></content:encoded></item><item><title><![CDATA[Why No One Agrees About Vibe Coding]]></title><description><![CDATA[Whether vibe coding is the future or a total scam depends on how it's used and who is using it.]]></description><link>https://www.twostepsforward.tech/p/why-no-one-agrees-about-vibe-coding</link><guid isPermaLink="false">https://www.twostepsforward.tech/p/why-no-one-agrees-about-vibe-coding</guid><dc:creator><![CDATA[Sean Byrnes]]></dc:creator><pubDate>Mon, 19 Jan 2026 18:54:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!5szQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F176fa09d-4eb3-4db7-9899-fa2f85a85727_1386x1142.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Everyone has opinions about &#8220;vibe coding&#8221;, and those opinions differ widely. Depending on who you talk to, vibe coding is either the future of the technology industry or doomed to fail.</p><p>Part of the problem is that &#8220;vibe coding&#8221; is a broad term for something that has much more specific use cases. AI code generation (aka &#8220;AI codegen&#8221; or &#8220;codegen&#8221;) is a better term, as you can use AI to generate code in a variety of ways, in a variety of contexts for a variety of purposes. Thinking about it this way, it&#8217;s clear why there is no agreement.</p><p>Interestingly, none of those radically different opinions is incorrect. They just refer to different forms of codegen, like different facets of a complex shape. In some cases they are doomed to fail, and others are the future of the technology industry.</p><p>We can group these forms into a few categories:</p><ul><li><p>The AI does all the work</p></li><li><p>The Human works for AI</p></li><li><p>The AI works for the Human</p></li><li><p>The Human does all the work</p></li></ul><p>We&#8217;ll break down each category to show how it differs, and why popular opinions might be wrong about them.</p><h3><strong>Form 1: The AI Does All The Work</strong></h3><p>This first form is the one that is most romanticized: a human writes a prompt and the AI generates all of the code to fulfill the request on the first try (aka &#8220;one-shot&#8221;). It has the appeal of our dream of AI, where it can do all of the work for us without requiring oversight or assistance.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uk72!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uk72!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!uk72!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!uk72!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!uk72!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uk72!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png" width="1385" height="354" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:354,&quot;width&quot;:1385,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!uk72!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!uk72!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!uk72!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!uk72!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62433d29-5a1a-4c86-a02c-5d801734257b_1385x354.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Today it is possible for codegen systems to perfectly complete a request in one-shot if a few things are true:</p><ol><li><p>The problem is simple</p></li><li><p>The request is specific</p></li><li><p>The human is flexible on the end result</p></li></ol><p>However, those three things are rarely true at the same time. Either the problem is complex, the request is vague or the human has a specific result they want. When any of the three doesn&#8217;t hold true, the result of the codegen doesn&#8217;t meet the expectations and is considered a failure.</p><p>This is where most of the doom-saying about vibe coding originates. For non-technical users it might be impossible to know if the problem is hard or how to make a specific request. As a result, they try and it fails and the entire category is dismissed.</p><p>On the other hand, more sophisticated users use this form as a strawman to dismiss the entire category. It&#8217;s easy to create examples of failures when you attempt to one-shot a complex problem with specifics that can&#8217;t be captured in a single prompt.</p><h3><strong>Form 2: The Human Works for the AI</strong></h3><p>This form is much more common, and is typical of the experience of non-technical folks using platforms like Loveable. The initial prompt gets 80% of the way to the desired result, but there is a lot of time and iteration to try and get the last 20%. Many times the end result is never achieved.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pV-8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pV-8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!pV-8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!pV-8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!pV-8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pV-8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png" width="1385" height="354" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:354,&quot;width&quot;:1385,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:35569,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.twostepsforward.tech/i/184604723?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!pV-8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!pV-8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!pV-8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!pV-8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F72273837-cfb5-4882-bf14-4e05ed4b905b_1385x354.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Most of the frustration with AI comes from people using this form. The first 80% comes so easily, and is done so well, that it seems like the task should be easily completed. Unfortunately, the last 20% is usually the complexity and if the user does not have the skills to guide the AI to the solution it can get lost in loops and dead ends.</p><p>As AI improves, this is getting better. In the earliest days of Lovable or Cursor, it was common to have the AI get lost in a loop in the last 20% while tackling hard problems. Today, that&#8217;s rare.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Two Steps Forward is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3><strong>Form 3: The AI Works For the Human</strong></h3><p>Experienced software engineers use codegen very differently, as they know what they need to build and how. The AI becomes the channel by which the human creates the software in the form they need it, following the design they desire.</p><p>This looks like a conversation between the human and the AI, where the human gives the AI specific tasks in a specific order that add up to the end result.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AW1Z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AW1Z!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!AW1Z!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!AW1Z!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!AW1Z!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AW1Z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png" width="1385" height="354" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:354,&quot;width&quot;:1385,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AW1Z!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!AW1Z!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!AW1Z!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!AW1Z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdc83b024-d996-4a2c-8e14-b9f0b64b8ccb_1385x354.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For example, the first step might be to update the SQL database model. The next step is to update the REST API and the final step is to update the React web app to consume the new API. By breaking down the problem into discrete tasks with clear inputs and outputs, the AI produces an expected result that can then be modified and improved through further discussion.</p><p>This is the model that Cursor is ideal for, unsurprisingly, and which Claude Code excels. While one-shot of a complex problem might be impossible, this approach works extremely well on even complex problems. Especially with large, complex codebases where changes might have unintended side effects (and all of the code does not fit into the context window) this approach is necessary.</p><p>The people who talk about AI as the future of development are often referring to this model as well. As an experienced developer, once you get good at this you realize that all software will be written this way in the future. It&#8217;s fast, efficient and predictable.</p><h3><strong>Form 4: The Human Does All the Work</strong></h3><p>The final form is more typical of people who are resisting the move to AI. In these cases the human still writes most of the code themselves, and relies on the AI as an advisor on questions of syntax or design. AI becomes an interactive version of StackOverflow, filling in gaps in the developer&#8217;s knowledge.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LEtk!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LEtk!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!LEtk!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!LEtk!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!LEtk!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LEtk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png" width="1385" height="354" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:354,&quot;width&quot;:1385,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LEtk!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 424w, https://substackcdn.com/image/fetch/$s_!LEtk!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 848w, https://substackcdn.com/image/fetch/$s_!LEtk!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 1272w, https://substackcdn.com/image/fetch/$s_!LEtk!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ce3bc4b-68f8-4037-a6e3-ae11f2d50249_1385x354.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This is where AI codegen started. In the earliest versions of Cursor, it was simply an IDE with a chat box on the side you used to get advice from AI. The fact that there are still hold-outs using this reflects more on how hard it is to adapt to massive changes in process for people with a lot of experience.</p><p>Of all the forms, this is the one that will definitely disappear. The productivity of developers who use AI interactively is too high, and this process too slow, to compete.</p><h3><strong>The Bottom Line</strong></h3><p>When you look at vibe coding this way, it&#8217;s clear why there is so much disagreement. Non-technical users want one-shot completion of complex projects, and engineers have found a very different way of using AI that delivers better results in professional development.<br><br>The good news is that this is not the realm of opinions. As AI gets better, one-shot development (Form 1) will get more common and the frustration of Form 2 will fade away. Developers will all converge on Form 3 and Form 4 will go the way of punchcards for programming.</p><p>In a decade, it will be hard to remember how software was developed before AI.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!J4b-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!J4b-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 424w, https://substackcdn.com/image/fetch/$s_!J4b-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 848w, https://substackcdn.com/image/fetch/$s_!J4b-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!J4b-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!J4b-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png" width="1386" height="1142" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1142,&quot;width&quot;:1386,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:133071,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.twostepsforward.tech/i/184604723?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!J4b-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 424w, https://substackcdn.com/image/fetch/$s_!J4b-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 848w, https://substackcdn.com/image/fetch/$s_!J4b-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 1272w, https://substackcdn.com/image/fetch/$s_!J4b-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa6141074-b688-4b3c-8722-9d79088d645c_1386x1142.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div>]]></content:encoded></item><item><title><![CDATA[The Forward Deployed Engineer Trap]]></title><description><![CDATA[Companies are using Forward Deployed Engineers to hide a lack of PMF]]></description><link>https://www.twostepsforward.tech/p/the-forward-deployed-engineer-trap</link><guid isPermaLink="false">https://www.twostepsforward.tech/p/the-forward-deployed-engineer-trap</guid><dc:creator><![CDATA[Sean Byrnes]]></dc:creator><pubDate>Thu, 15 Jan 2026 01:58:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!bTVV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>One of the hottest jobs in technology today is the &#8220;<a href="https://newsletter.pragmaticengineer.com/p/forward-deployed-engineers">Forward Deployed Engineer</a>&#8221; (FDE). In short, an FDE is a software engineer that acts as an on-location consultant to make sure your product works exactly the way a customer needs.</p><p>If you look at the data, job listings for FDEs have been growing rapidly across a wide swath of the industry:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bTVV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bTVV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 424w, https://substackcdn.com/image/fetch/$s_!bTVV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 848w, https://substackcdn.com/image/fetch/$s_!bTVV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 1272w, https://substackcdn.com/image/fetch/$s_!bTVV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bTVV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png" width="1400" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&quot;width&quot;:1400,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!bTVV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 424w, https://substackcdn.com/image/fetch/$s_!bTVV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 848w, https://substackcdn.com/image/fetch/$s_!bTVV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 1272w, https://substackcdn.com/image/fetch/$s_!bTVV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7628f26-dfe6-4fe4-8f85-e034dc1c5848_1400x970.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Chart <a href="https://www.linkedin.com/posts/alexbouaziz_deel-data-shows-theforward-deployed-engineer-activity-7401929394102976512-by3j?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAARUXgBbynYDUXVxllA-a0ePlanBtsL3dA">courtesy of Deel</a></em></figcaption></figure></div><p>Behind this growth are the armies of AI startups who need to help their customers make use of complex products and platforms. There have always been sales engineers who assist with the sales process, but they were there typically for advice and sales support. FDEs represent a person who helps with both sales, adoption, integration AND modifying the product to fit the needs of the customer. In some ways it&#8217;s a person who can do almost anything to help make sure a customer is successful.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y-6M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y-6M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 424w, https://substackcdn.com/image/fetch/$s_!y-6M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 848w, https://substackcdn.com/image/fetch/$s_!y-6M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 1272w, https://substackcdn.com/image/fetch/$s_!y-6M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y-6M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png" width="1264" height="674" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:674,&quot;width&quot;:1264,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:260886,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.twostepsforward.tech/i/184602422?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!y-6M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 424w, https://substackcdn.com/image/fetch/$s_!y-6M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 848w, https://substackcdn.com/image/fetch/$s_!y-6M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 1272w, https://substackcdn.com/image/fetch/$s_!y-6M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5fbfc9fb-e701-498e-aa12-dfdc17e46af4_1264x674.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><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"><em>LinkedIn is awash in <a href="https://www.linkedin.com/jobs/search-results/?keywords=forward%20deployed%20engineer&amp;origin=SUGGESTION">FDE job postings</a></em></figcaption></figure></div><p><a href="https://a16z.com/services-led-growth/">Andreessen Horowitz believes this is a positive</a> for the ecosystem, as services-led growth has always been necessary for certain kinds of products. This is true! There are many products where the integration is so complex that customers don&#8217;t have the tools themselves to make them work.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Two Steps Forward is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3>Here&#8217;s the catch</h3><p>Unfortunately, many AI companies are using FDEs as a way to outsource their search for Product/Market Fit (PMF). PMF is generally the point at which it&#8217;s clear your business is working, customer adoption is so strong it pulls the business forward. Finding PMF is the primary goal of all new companies.</p><p>With the amount of funding flowing into early stage AI companies, the market is full of companies with huge amounts of cash but no PMF. Their product/platform has potential, but they are early and their business does not yet work well enough to justify the growth built into the valuation.</p><p>Many are hiring FDEs to bridge the gap between what their customer needs and what their product provides, using their abundant capital to create the illusion of PMF. If your product doesn&#8217;t yet solve a specific problem for the customer, an FDE can help shape it into something that does.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VI12!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VI12!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 424w, https://substackcdn.com/image/fetch/$s_!VI12!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 848w, https://substackcdn.com/image/fetch/$s_!VI12!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 1272w, https://substackcdn.com/image/fetch/$s_!VI12!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VI12!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png" width="525" height="250.07396449704143" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:644,&quot;width&quot;:1352,&quot;resizeWidth&quot;:525,&quot;bytes&quot;:47003,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.twostepsforward.tech/i/184602422?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VI12!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 424w, https://substackcdn.com/image/fetch/$s_!VI12!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 848w, https://substackcdn.com/image/fetch/$s_!VI12!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 1272w, https://substackcdn.com/image/fetch/$s_!VI12!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b33d25d-aafa-430b-8cb1-f7282c25e357_1352x644.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Companies without PMF are using FDEs to bridge the gap between what they offer and customers need.</figcaption></figure></div><p>In a surprising number of these cases, the &#8220;product&#8221; is just a collection of capabilities that are combined in different ways for each customer. It&#8217;s like a buffet, where the FDE prepares meals by selecting the right foods and amounts for each person. That provides infinite flexibility, but is not a product-based business model.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qBEE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qBEE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 424w, https://substackcdn.com/image/fetch/$s_!qBEE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 848w, https://substackcdn.com/image/fetch/$s_!qBEE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 1272w, https://substackcdn.com/image/fetch/$s_!qBEE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qBEE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:526,&quot;bytes&quot;:48955,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.twostepsforward.tech/i/184602422?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qBEE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 424w, https://substackcdn.com/image/fetch/$s_!qBEE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 848w, https://substackcdn.com/image/fetch/$s_!qBEE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 1272w, https://substackcdn.com/image/fetch/$s_!qBEE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1c6213e2-7bb8-4c9e-be61-a21adc8cd56c_1309x365.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><em>Companies that mis-use the FDE model create the equivalent of different products for each customer, based on a basket of capabilities.</em></figcaption></figure></div><p>There is nothing specifically wrong with this, software has been sold through Value-Added Resellers (VARs) and Systems Integrators (SIs) for decades for good reasons. Customers have a variety of needs and often customization is necessary to meet everyone&#8217;s needs.</p><p>In fact, the concept of the FDE was originated by Palantir, a company that sells data science tools to very large companies. Palantirs contracts were huge (millions of dollars) partly because every customer needed a distinct product. The Palantir FDEs built those through the basket of capabilities their platform provided and the model worked because the contract sizes were so large.</p><p>However, if your contract sizes are smaller this model doesn&#8217;t work.</p><p>Without contracts large enough to support a custom product for each, tech companies need to sell the same product to many different customers. By using a form of consulting to bridge the gap, they get <strong>farther</strong> from PMF instead of closer by assembling a potpourri of customers with no clear consistency in the sales or usage motions. Without focus and consistency it&#8217;s not possible to build a high-growth business, and by using FDEs to meet the needs of such a wide range of customers they get less focused.</p><p>Even worse, all of those bespoke customer products become more and more expensive to maintain. Product companies rely on the efficiencies gained by sharing maintenance and R&amp;D cost across all their customers. When your customers all use different products, that efficiency is lost.</p><p>This is not a secret, and it&#8217;s clear why this is happening. With so much pressure to grow, every prospective customer (aka lead) is a golden opportunity and it&#8217;s hard to let them go. At the same time, many companies raised money before doing enough market research to be sure their product would solve a real problem. Faced with a series of leads and a product that doesn&#8217;t quite fit the problem, it&#8217;s easier to hire FDEs than tear up the foundation to address the real problem.</p><p>We see a lot of startups getting to impressive revenue levels quickly, but then hitting a plateau and having trouble growing further. They are falling into this trap. Revenue grows quickly (at low margins) but then hits a ceiling when the cost of FDEs, maintenance and distraction add up. What allowed the company to grow fast begins to hold it back.</p><p>This is another reason we see such a fast growth in the number of job listings for FDEs. If you need FDEs to close and activate customers, the more FDEs you have the faster your revenue grows. It&#8217;s like how you need to hire more salespeople to sell more.</p><h3><strong>The Bottom Line</strong></h3><p>There is nothing wrong with the FDE position if the company has PMF, as it&#8217;s just a different kind of sales process. If the company lacks PMF, then they are building a mirage that will eventually collapse when pushed far enough.</p><p>It&#8217;s likely we will see this shake out in 2026. The companies using FDE to outsource their search for PMF will not find it, and the ones that have it will continue to grow. The market will have a lot of small/medium sized AI companies that are generating revenue but struggling for venture-scale growth.</p><div class="captioned-button-wrap" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/p/the-forward-deployed-engineer-trap?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="CaptionedButtonToDOM"><div class="preamble"><p class="cta-caption">Thanks for reading Two Steps Forward! This post is public so feel free to share it.</p></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/p/the-forward-deployed-engineer-trap?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.twostepsforward.tech/p/the-forward-deployed-engineer-trap?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p></div>]]></content:encoded></item><item><title><![CDATA[Taking Two Steps Forward]]></title><description><![CDATA[Your future is now arriving...]]></description><link>https://www.twostepsforward.tech/p/coming-soon</link><guid isPermaLink="false">https://www.twostepsforward.tech/p/coming-soon</guid><dc:creator><![CDATA[Sean Byrnes]]></dc:creator><pubDate>Wed, 14 Jan 2026 18:54:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!mBvp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Twenty years ago I was in graduate school studying AI, and we used to joke that the research we were doing would never be relevant in our lifetimes. It would be our children&#8217;s children who would reap the benefits we saw even in those early days of AI. </p><p>Fast forward 20 years and AI has already arrived. It&#8217;s shaping not just technology, but business, politics and how we live our lives. </p><p>The internet changed how we work and mobile changed how we live but AI is something different. It&#8217;s moving so quickly to change the very foundation of how we do everything and doing so in ways we don&#8217;t yet understand. </p><p>Consider:</p><ul><li><p>AI codegen tools are replacing highly paid software engineers, a profession that has been stable and lucrative for over two decades. This is happening so fast that college CS majors who just 18 months ago could expect a few lucrative offers at graduation are <a href="https://www.latimes.com/business/story/2025-12-19/they-graduated-from-stanford-due-to-ai-they-cant-find-job">finding themselves unemployed</a>. </p></li><li><p>AI has enabled cheating in <a href="https://www.axios.com/2025/05/26/ai-chatgpt-cheating-college-teachers">schools</a>, <a href="https://www.cnbc.com/2025/03/09/google-ai-interview-coder-cheat.html">interviews</a> and everywhere else at a level never seen before. It&#8217;s become so bad that it&#8217;s not even clear if you&#8217;re talking to a real person or a <a href="https://www.bbc.com/news/articles/c3e0kw80wwzo">foreign spy</a> during a job interview. </p></li><li><p>AI companies are the <a href="https://a16z.com/revenue-benchmarks-ai-apps/">fastest growing companies</a> in history, with companies going from zero to hundreds of millions in revenue in just 12 months and raising <a href="https://news.crunchbase.com/venture/biggest-seed-round-ai-thinking-machines-mira-murati/">multi-billion dollar seed rounds</a>. </p></li></ul><p>And these are just the changes we see today. Tomorrow the more subtle changes will take hold and we&#8217;ll see more transformation of everything we do. </p><p>I&#8217;m lucky enough to work on the front lines of this transformation, and Two Steps Forward is where I&#8217;ll share what I&#8217;m seeing and what I think it means. If you disagree, I&#8217;d love to hear from you in the comments, or just reply to the email. </p><p>It&#8217;s time to take two steps forward&#8230;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mBvp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mBvp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg 424w, https://substackcdn.com/image/fetch/$s_!mBvp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg 848w, https://substackcdn.com/image/fetch/$s_!mBvp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!mBvp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mBvp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg" width="1280" height="960" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:960,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:324769,&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.twostepsforward.tech/i/184578293?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.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_!mBvp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg 424w, https://substackcdn.com/image/fetch/$s_!mBvp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg 848w, https://substackcdn.com/image/fetch/$s_!mBvp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!mBvp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4bec3861-78ac-481f-94a9-55e0657884a6_1280x960.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><figcaption class="image-caption">Me, 20 years ago when I was in graduate school studying AI. Man, I was so young back then&#8230;</figcaption></figure></div><p></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.twostepsforward.tech/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.twostepsforward.tech/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item></channel></rss>