{"id":23531,"date":"2026-08-26T18:56:08","date_gmt":"2026-08-26T18:56:08","guid":{"rendered":"https:\/\/scannn.com\/saas-isnt-dead-sameness-is\/"},"modified":"2026-08-26T18:56:08","modified_gmt":"2026-08-26T18:56:08","slug":"saas-isnt-dead-sameness-is","status":"publish","type":"post","link":"https:\/\/scannn.com\/lv\/saas-isnt-dead-sameness-is\/","title":{"rendered":"SaaS Isn\u2019t Dead. Sameness Is."},"content":{"rendered":"\n<div>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-0 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"0\" data-index=\"0\"><span class=\"                                                 \">Everyone suddenly wants to tell you SaaS is dead.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"1\" data-index=\"1\"><span class=\"                                                 \">The Klarna-replaced-Salesforce story spread because it fit the mood, whatever the exact boundary between \u201creplaced the CRM\u201d and \u201cconsolidated the data underneath it\u201d turned out to be. Agents are starting to do work that once required people clicking through applications. Seat-based pricing looks vulnerable when the seats themselves stop doing the work.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"2\" data-index=\"2\"><span class=\"                                                 \">Even <\/span><a href=\"https:\/\/www.gartner.com\/en\/newsroom\/press-releases\/2026-07-01-gartner-says-us-dollars-234-billion-in-enterprise-application-software-spend-is-at-risk-from-agentic-artificial-intelligence\" class=\"text-accent-contrast hover:underline                                                  \" target=\"_blank\" rel=\"noopener noreferrer\">Gartner now estimates<\/a><span class=\"                                                 \"> that as much as $234 billion in enterprise application spending could be exposed to what it calls \u201cagentic arbitrage\u201d by 2030, roughly 20 percent of enterprise SaaS spending.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"3\" data-index=\"3\"><span class=\"                                                 \">But Gartner itself hedges the apocalypse. It calls what is coming less an apocalypse than a metamorphosis.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"4\" data-index=\"4\"><span class=\"                                                 \">I think that\u2019s right.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"5\" data-index=\"5\"><span class=\"                                                 \">And I want to make a more specific prediction about what SaaS turns into.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"6\" data-index=\"6\"><span class=\"                                                 \">Companies will still pay other companies to host important software, secure it, operate it, maintain authoritative data, track regulatory changes, connect to external networks, and answer the phone when something breaks.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"7\" data-index=\"7\"><span class=\"                                                 \">What is much less obviously going to survive is the assumption that ten thousand different companies should use substantially the same application.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"8\" data-index=\"8\"><span class=\"                     font-bold                            \">The next SaaS company may run one service underneath ten thousand different applications.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"we-standardized-software-because-variation-was-expensive\" data-index=\"9\"><a href=\"#we-standardized-software-because-variation-was-expensive\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">We standardized software because variation was expensive<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"10\" data-index=\"10\"><span class=\"                                                 \">Suppose your company has an unusual sales process.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"11\" data-index=\"11\"><span class=\"                                                 \">Twenty years ago you had two realistic options.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"12\" data-index=\"12\"><span class=\"                                                 \">You could buy a CRM designed for thousands of companies and configure it until it approximately fit the way you worked.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"13\" data-index=\"13\"><span class=\"                                                 \">Or you could build your own.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"14\" data-index=\"14\"><span class=\"                                                 \">The second option sounded appealing until somebody calculated what \u201cbuild your own\u201d meant: developers, designers, product management, security, hosting, integrations, upgrades, migrations, support, on-call coverage, and years of maintenance.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"15\" data-index=\"15\"><span class=\"                                                 \">You would spend millions building a worse version of something Salesforce already did, then own it forever.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"16\" data-index=\"16\"><span class=\"                                                 \">Of course you bought Salesforce.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"17\" data-index=\"17\"><span class=\"                                                 \">The same logic played out across the enterprise. Companies bought SAP, Workday, Jira, ServiceNow, Oracle, and hundreds of other products, then gradually changed themselves to fit the software.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"18\" data-index=\"18\"><span class=\"                                                 \">A CRM has concepts for opportunities, stages, accounts, contacts, and forecasts. A project management system has issues, epics, sprints, statuses, and workflows. An HR system has its own model of employees, managers, organizations, approvals, and reviews.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"19\" data-index=\"19\"><span class=\"                                                 \">These can be good abstractions. But they are still choices.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"20\" data-index=\"20\"><span class=\"                                                 \">Over time, the choices made by software vendors become the language of the organizations using them.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"21\" data-index=\"21\"><span class=\"                                                 \">We tend to describe this as standardization or best practice. Sometimes it is.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"22\" data-index=\"22\"><span class=\"                                                 \">Sometimes it is simply the result of an economic bargain:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"23\" data-index=\"23\"><p><span class=\"                                                 \">Adapting the organization to the software is cheaper than adapting the software to the organization.<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"24\" data-index=\"24\"><span class=\"                                                 \">For decades, that bargain was obviously correct.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"25\" data-index=\"25\"><span class=\"                                                 \">The first copy of a serious software product was enormously expensive. The ten-thousandth copy cost almost nothing.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"26\" data-index=\"26\"><span class=\"                                                 \">SaaS turned that asymmetry into one of the best business models ever invented.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"configure-dont-customize-was-an-economic-rule\" data-index=\"27\"><a href=\"#configure-dont-customize-was-an-economic-rule\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">\u201cConfigure, don\u2019t customize\u201d was an economic rule<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"28\" data-index=\"28\"><span class=\"                                                 \">SaaS did more than move applications into the browser.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"29\" data-index=\"29\"><span class=\"                                                 \">It made sameness operationally valuable.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"30\" data-index=\"30\"><span class=\"                                                 \">The vendor controlled the running system. Everyone could be upgraded. Security fixes rolled out centrally. Features shipped continuously. The vendor no longer had to support hundreds of customer installations that had been modified beyond recognition.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"31\" data-index=\"31\"><span class=\"                                                 \">This produced one of enterprise software\u2019s most durable maxims:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"32\" data-index=\"32\"><p><span class=\"                                                 \">Configure, don\u2019t customize.<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"33\" data-index=\"33\"><span class=\"                                                 \">Customization created forks.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"34\" data-index=\"34\"><span class=\"                                                 \">The customer changed the software. Then the vendor changed the software. Somebody had to reconcile the two.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"35\" data-index=\"35\"><span class=\"                                                 \">Repeat that for several years and the customer ended up stranded on an ancient release with a pile of modifications nobody fully understood.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"36\" data-index=\"36\"><span class=\"                                                 \">Configuration solved that problem by constraining variation. The vendor decided in advance which dimensions could differ: fields, permissions, workflow states, plugins, integrations, feature flags.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"37\" data-index=\"37\"><span class=\"                                                 \">Customers could be different, but only in ways the product had anticipated.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"38\" data-index=\"38\"><span class=\"                                                 \">That was an excellent compromise.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"39\" data-index=\"39\"><span class=\"                                                 \">But it was not a law of software engineering.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"40\" data-index=\"40\"><span class=\"                     font-bold                            \">\u201cConfigure, don\u2019t customize\u201d was a coping strategy for expensive code.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"41\" data-index=\"41\"><span class=\"                                                 \">If customer-specific software becomes cheap to produce and cheap to reproduce, that trade changes.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"software-no-longer-needs-a-market-to-deserve-to-exist\" data-index=\"42\"><a href=\"#software-no-longer-needs-a-market-to-deserve-to-exist\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Software no longer needs a market to deserve to exist<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"43\" data-index=\"43\"><span class=\"                                                 \">Imagine an internal approval process used by fifty people.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"44\" data-index=\"44\"><span class=\"                                                 \">It is peculiar to one company because of two acquisitions, three jurisdictions, an old regulatory settlement, and a division of authority no sane product manager would ever design from scratch.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"45\" data-index=\"45\"><span class=\"                                                 \">Today the company probably buys a generalized workflow platform and spends months configuring it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"46\" data-index=\"46\"><span class=\"                                                 \">Now imagine a small internal team can produce a purpose-built application in a few days.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"47\" data-index=\"47\"><span class=\"                                                 \">The company\u2019s identity system already exists. The necessary data is available through stable interfaces. Authorization rules are explicit. Hosting, observability, security, and deployment come from a shared platform.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"48\" data-index=\"48\"><span class=\"                                                 \">The application does not need to appeal to five thousand other customers.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"49\" data-index=\"49\"><span class=\"                                                 \">It does not need a roadmap.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"50\" data-index=\"50\"><span class=\"                                                 \">It does not need a total addressable market.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"51\" data-index=\"51\"><span class=\"                                                 \">It needs to solve this problem for these fifty people.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"52\" data-index=\"52\"><span class=\"                                                 \">That changes what software is economically allowed to exist.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"53\" data-index=\"53\"><span class=\"                                                 \">For most of software history, an application had to justify its production cost. Either enough people needed roughly the same thing, or the problem was important enough to justify bespoke development.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"54\" data-index=\"54\"><span class=\"                                                 \">As production costs fall, the minimum viable market shrinks.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"55\" data-index=\"55\"><span class=\"                                                 \">One organization. One department. Eventually, for some software, one person.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"56\" data-index=\"56\"><span class=\"                                                 \">This leads to a strange possibility:<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"57\" data-index=\"57\"><span class=\"                     font-bold                            \">More software may mean fewer software companies.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"58\" data-index=\"58\"><span class=\"                                                 \">An insurance company might generate twenty highly specific internal applications next year and never release any of them publicly. If three replace existing SaaS contracts, the world contains more software and less commercial software spend at the same time.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"59\" data-index=\"59\"><span class=\"                                                 \">That is a very different dynamic from the software economy we grew up with.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"saas-is-not-the-thing-that-disappears\" data-index=\"60\"><a href=\"#saas-is-not-the-thing-that-disappears\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">SaaS is not the thing that disappears<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"61\" data-index=\"61\"><span class=\"                                                 \">\u201cSaaS is dead\u201d bundles together several different ideas.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"62\" data-index=\"62\"><span class=\"                                                 \">The software is hosted by someone else. The vendor operates and secures it. The vendor maintains authoritative data, updates regulatory logic, handles migrations and integrations, and takes responsibility for availability and support. Customers pay for that capability over time.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"63\" data-index=\"63\"><span class=\"                                                 \">And historically, thousands of customers have also used substantially the same application.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"64\" data-index=\"64\"><span class=\"                                                 \">Cheap generation attacks that last property much harder than the others.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"65\" data-index=\"65\"><span class=\"                                                 \">I don\u2019t want to run my own payment network because an agent can generate a checkout page.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"66\" data-index=\"66\"><span class=\"                                                 \">I don\u2019t want to maintain tax tables because an agent can build payroll screens.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"67\" data-index=\"67\"><span class=\"                                                 \">I don\u2019t want every hospital generating its own authoritative interpretation of medical records.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"68\" data-index=\"68\"><span class=\"                                                 \">A lot of the value in modern SaaS has surprisingly little to do with the visible application.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"69\" data-index=\"69\"><span class=\"                                                 \">It is data, trust, networks, compliance, operational responsibility, domain knowledge, auditability, accumulated history, and someone being accountable when reality gets complicated.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"70\" data-index=\"70\"><span class=\"                                                 \">AI can destroy the interface to a service while increasing demand for the service underneath it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"71\" data-index=\"71\"><span class=\"                                                 \">That is why the disappearance of seats or screens does not imply the disappearance of the vendor.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"the-seat-was-never-the-value\" data-index=\"72\"><a href=\"#the-seat-was-never-the-value\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">The seat was never the value<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"73\" data-index=\"73\"><span class=\"                                                 \">This matters for pricing too.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"74\" data-index=\"74\"><span class=\"                                                 \">Traditional SaaS pricing often maps neatly onto humans using applications.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"75\" data-index=\"75\"><span class=\"                                                 \">Per seat. Per user. Per agent.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"76\" data-index=\"76\"><span class=\"                                                 \">That worked because the application was both the place where the work happened and the place where the vendor captured value.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"77\" data-index=\"77\"><span class=\"                                                 \">Agents weaken that link.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"78\" data-index=\"78\"><span class=\"                                                 \">A payroll provider does not become valueless because an employee stops opening its payroll interface. The customer is still paying it to calculate payroll correctly, keep up with tax law, move money, file with governments, maintain records, and accept operational responsibility.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"79\" data-index=\"79\"><span class=\"                                                 \">So perhaps it increasingly gets paid for employees processed, money moved, filings completed, jurisdictions supported, or outcomes guaranteed.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"80\" data-index=\"80\"><span class=\"                                                 \">A payments company already charges around transactions rather than seats. A data company can charge around information, rights, volume, or usage. A security company can charge around protected assets, workloads, identities, or risk.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"81\" data-index=\"81\"><span class=\"                                                 \">A substrate company has to price the thing it actually supplies.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"82\" data-index=\"82\"><span class=\"                                                 \">This will be painful for SaaS companies whose economics depend on selling access to screens that agents no longer need.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"83\" data-index=\"83\"><span class=\"                                                 \">It may be excellent for companies whose real value was hidden behind those screens all along.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"the-future-is-mass-customized-saas\" data-index=\"84\"><a href=\"#the-future-is-mass-customized-saas\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">The future is mass-customized SaaS<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"85\" data-index=\"85\"><span class=\"                                                 \">The easiest way to imagine the new model is to split the application into pace layers.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"86\" data-index=\"86\"><span class=\"                                                 \">At the bottom are things we want to move slowly: identity and authority, authoritative data, audit history, core domain semantics, regulatory logic, security boundaries, external contracts, networks, money movement, and accumulated operational knowledge.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"87\" data-index=\"87\"><span class=\"                                                 \">That last one matters more than it first appears.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"88\" data-index=\"88\"><a href=\"https:\/\/www.gartner.com\/en\/newsroom\/press-releases\/2026-07-01-gartner-says-us-dollars-234-billion-in-enterprise-application-software-spend-is-at-risk-from-agentic-artificial-intelligence\" class=\"text-accent-contrast hover:underline                                                  \" target=\"_blank\" rel=\"noopener noreferrer\">Gartner argues<\/a><span class=\"                                                 \"> that useful agentic systems will need to retain deep institutional memory and customer context over time. Every exception resolved, correction made, policy interpreted, and operational failure understood can become part of the durable capability underneath the application.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"89\" data-index=\"89\"><span class=\"                                                 \">The screens may be disposable while the institution underneath them gets smarter.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"90\" data-index=\"90\"><span class=\"                                                 \">Above those slow layers are things that can move much faster: workflows, interfaces, reports, approvals, automations, dashboards, local policy, orchestration, agent behavior, and team-specific tools.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"91\" data-index=\"91\"><span class=\"                                                 \">Today\u2019s SaaS product typically bundles both layers together and expresses customer differences through configuration.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"92\" data-index=\"92\"><span class=\"                                                 \">A generative SaaS company can operate the slow layer and generate much of the fast layer separately for each customer.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"93\" data-index=\"93\"><span class=\"                                                 \">The vendor can still host everything. Still secure it. Still monitor it. Still control deployment. Still provide support.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"94\" data-index=\"94\"><span class=\"                                                 \">But customer A gets one application, customer B gets another, and customer C may interact mostly through agents.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"95\" data-index=\"95\"><span class=\"                     font-bold                            \">The software is bespoke. The service is shared.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"96\" data-index=\"96\"><span class=\"                                                 \">That is not the death of SaaS.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"97\" data-index=\"97\"><span class=\"                                                 \">It is mass-customized SaaS.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"sameness-has-real-value\" data-index=\"98\"><a href=\"#sameness-has-real-value\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Sameness has real value<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"99\" data-index=\"99\"><span class=\"                                                 \">There is an easy way to overstate this argument.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"100\" data-index=\"100\"><span class=\"                                                 \">Sameness is not valuable only because variation was expensive.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"101\" data-index=\"101\"><span class=\"                                                 \">People join a company already knowing Salesforce or Jira.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"102\" data-index=\"102\"><span class=\"                                                 \">Consultants know how to implement them. A labor market forms around them. Integrations target them. Training and certifications exist. Answers are searchable. Thousands of customers discover bugs and edge cases together.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"103\" data-index=\"103\"><span class=\"                                                 \">A common workflow can also make an organization better by pushing it toward a practice that has already been learned elsewhere.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"104\" data-index=\"104\"><span class=\"                                                 \">Those effects are real.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"105\" data-index=\"105\"><span class=\"                                                 \">The future is not \u201cvariation wins.\u201d<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"106\" data-index=\"106\"><span class=\"                                                 \">It is:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"107\" data-index=\"107\"><p><span class=\"                     font-bold                            \">Standardize where sameness creates leverage. Generate where difference creates value.<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"108\" data-index=\"108\"><span class=\"                                                 \">Why should every business share a payment protocol? There are enormous advantages.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"109\" data-index=\"109\"><span class=\"                                                 \">Why should two companies with radically different sales motions use the same opportunity-review screen?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"110\" data-index=\"110\"><span class=\"                                                 \">Much harder to explain.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"111\" data-index=\"111\"><span class=\"                                                 \">Historically, the second question barely mattered because arbitrary variation was prohibitively expensive.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"112\" data-index=\"112\"><span class=\"                                                 \">When variation gets cheap, sameness becomes a choice that needs a reason.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"pace-layers-keep-customization-from-becoming-chaos\" data-index=\"113\"><a href=\"#pace-layers-keep-customization-from-becoming-chaos\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Pace layers keep customization from becoming chaos<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"114\" data-index=\"114\"><span class=\"                                                 \">Anyone old enough to remember serious bespoke enterprise software should be nervous at this point.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"115\" data-index=\"115\"><span class=\"                                                 \">We already tried letting every organization have its own software.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"116\" data-index=\"116\"><span class=\"                                                 \">It produced enormous amounts of archaeology: mystery scripts, custom databases, frozen vendor forks, spreadsheets acting as critical infrastructure, and integrations nobody dared touch.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"117\" data-index=\"117\"><span class=\"                                                 \">Customization gave us local fit and global incoherence.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"118\" data-index=\"118\"><span class=\"                                                 \">AI can reproduce that disaster much faster.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"119\" data-index=\"119\"><span class=\"                                                 \">The answer is not to avoid bespoke software.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"120\" data-index=\"120\"><span class=\"                                                 \">It is to stop making the whole stack bespoke.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"121\" data-index=\"121\"><span class=\"                                                 \">Stewart Brand\u2019s idea of pace layers is useful here. Healthy complex systems contain parts that change at different rates. Fast layers experiment. Slow layers provide continuity.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"122\" data-index=\"122\"><span class=\"                                                 \">Software is no different.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"123\" data-index=\"123\"><span class=\"                                                 \">A dashboard can change tomorrow. A team\u2019s workflow can change next month. The authoritative definition of a customer may need to survive for years. Identity and authority can survive generations of applications.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"124\" data-index=\"124\"><span class=\"                                                 \">Problems arise when those layers become fused.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"125\" data-index=\"125\"><span class=\"                                                 \">A temporary workflow gets baked into a data model. An org chart leaks into authorization. A UI assumption becomes an API contract. A local integration becomes the only place an important business rule exists.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"126\" data-index=\"126\"><span class=\"                                                 \">Then fast change starts dragging slow meaning behind it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"127\" data-index=\"127\"><span class=\"                                                 \">The architectural rule for mass-customized SaaS is simple:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"128\" data-index=\"128\"><p><span class=\"                     font-bold                            \">Standardize the slow layers. Generate the fast layers.<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"129\" data-index=\"129\"><span class=\"                                                 \">The point of strong architecture is not to prevent customization.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"130\" data-index=\"130\"><span class=\"                     font-bold                            \">It is to make customization cheap without making the system incoherent.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"131\" data-index=\"131\"><span class=\"                                                 \">The slow layers give the generated software something to push against.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"132\" data-index=\"132\"><span class=\"                                                 \">A claims interface can change. The meaning of a claim should not casually change with it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"133\" data-index=\"133\"><span class=\"                                                 \">A team\u2019s workflow can be regenerated next week. The identity model underneath it should not be reinvented because a generator found another representation more convenient.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"134\" data-index=\"134\"><span class=\"                                                 \">A temporary reporting application can disappear. The authoritative financial data and audit trail cannot disappear with it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"135\" data-index=\"135\"><span class=\"                                                 \">Cheap variation is safe only when something durable constrains it.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"customization-without-forks\" data-index=\"136\"><a href=\"#customization-without-forks\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Customization without forks<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"137\" data-index=\"137\"><span class=\"                                                 \">The old bespoke era had another problem: every customization became something you had to maintain.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"138\" data-index=\"138\"><span class=\"                                                 \">A customer modified version 4.2. The vendor shipped 4.3. Now somebody had to merge the changes.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"139\" data-index=\"139\"><span class=\"                                                 \">Over time, custom software accumulated weight.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"140\" data-index=\"140\"><span class=\"                                                 \">Generative software offers another possibility.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"141\" data-index=\"141\"><span class=\"                                                 \">Suppose the durable things are not the generated implementation itself but the customer\u2019s intent, applicable policies, architectural constraints, available capabilities, data contracts, provenance, and evaluations that establish acceptable behavior.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"142\" data-index=\"142\"><span class=\"                                                 \">The implementation can be derived from those artifacts.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"143\" data-index=\"143\"><span class=\"                                                 \">The workflow changes. Regenerate it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"144\" data-index=\"144\"><span class=\"                                                 \">The platform changes. Regenerate it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"145\" data-index=\"145\"><span class=\"                                                 \">The company reorganizes. Regenerate it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"146\" data-index=\"146\"><span class=\"                                                 \">This gives us something the old customization model did not:<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"147\" data-index=\"147\"><span class=\"                     font-bold                            \">Customization without forks.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"148\" data-index=\"148\"><span class=\"                                                 \">There is a very large assumption hiding here.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"149\" data-index=\"149\"><span class=\"                                                 \">Intent, constraints, provenance, and evaluations have to become durable enough that an implementation can actually be regenerated from them. If they are incomplete, stale, or wrong, regeneration will faithfully produce the wrong software.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"150\" data-index=\"150\"><span class=\"                                                 \">That is the problem I have been exploring in <\/span><a href=\"https:\/\/aicoding.leaflet.pub\/\" class=\"text-accent-contrast hover:underline                                                  \" target=\"_blank\" rel=\"noopener noreferrer\">The Phoenix Architecture and my Regenerative Software work<\/a><span class=\"                                                 \">: if code becomes disposable, the knowledge required to recreate it cannot remain trapped inside the code.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"151\" data-index=\"151\"><span class=\"                                                 \">If we can solve enough of that problem, the economics change dramatically.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"152\" data-index=\"152\"><span class=\"                                                 \">A vendor no longer has to maintain ten thousand diverging implementations by hand.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"153\" data-index=\"153\"><span class=\"                                                 \">It maintains a shared substrate plus the durable knowledge necessary to produce ten thousand variations.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"154\" data-index=\"154\"><span class=\"                                                 \">The implementations become replaceable.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"ten-thousand-applications-still-need-support\" data-index=\"155\"><a href=\"#ten-thousand-applications-still-need-support\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Ten thousand applications still need support<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"156\" data-index=\"156\"><span class=\"                                                 \">There is an obvious operational objection.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"157\" data-index=\"157\"><span class=\"                                                 \">Who supports ten thousand different applications?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"158\" data-index=\"158\"><span class=\"                                                 \">Who tests them?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"159\" data-index=\"159\"><span class=\"                                                 \">What does SOC 2 or HIPAA certification mean if customer A and customer B are running different generated interfaces and workflows?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"160\" data-index=\"160\"><span class=\"                                                 \">Customization without forks solves the source-maintenance problem. It does not automatically solve support, testing, security, or compliance.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"161\" data-index=\"161\"><span class=\"                                                 \">If every variation is an unconstrained snowflake, mass-customized SaaS collapses under its own operational cost.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"162\" data-index=\"162\"><span class=\"                                                 \">That is why the slow layer has to include more than APIs.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"163\" data-index=\"163\"><span class=\"                                                 \">It needs a governed execution environment with common identity and authorization, telemetry, deployment controls, data contracts, security boundaries, policy enforcement, and evaluation frameworks.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"164\" data-index=\"164\"><span class=\"                                                 \">A customer\u2019s software can be different without being arbitrary.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"165\" data-index=\"165\"><span class=\"                                                 \">Cloud platforms already do something analogous one layer lower. Millions of applications can be different because the infrastructure underneath them standardizes enough operational behavior to make that diversity manageable.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"166\" data-index=\"166\"><span class=\"                                                 \">The next generation of SaaS may do the same thing above the infrastructure layer.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"167\" data-index=\"167\"><span class=\"                                                 \">Different applications.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"168\" data-index=\"168\"><span class=\"                                                 \">Common guarantees.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"169\" data-index=\"169\"><span class=\"                                                 \">Support changes too. The vendor should not need a human support engineer to reverse-engineer every customer\u2019s generated source code. It needs enough provenance, telemetry, constraints, and reproducibility to answer what was generated, why it was generated, what changed, and whether it remains inside the supported envelope.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"170\" data-index=\"170\"><span class=\"                                                 \">Otherwise we have merely reinvented consultingware at AI speed.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"the-saas-company-becomes-a-substrate\" data-index=\"171\"><a href=\"#the-saas-company-becomes-a-substrate\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">The SaaS company becomes a substrate<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"172\" data-index=\"172\"><span class=\"                                                 \">This reframes the strategic question for software companies.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"173\" data-index=\"173\"><span class=\"                                                 \">What are customers actually paying you for?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"174\" data-index=\"174\"><span class=\"                                                 \">If the answer is mostly CRUD screens, generic workflows, dashboards, forms, approval logic, reports, and a configurable database, then the ground is moving.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"175\" data-index=\"175\"><span class=\"                                                 \">Those things remain useful, but part of their historical value came from the fact that somebody had to write and maintain them.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"176\" data-index=\"176\"><span class=\"                                                 \">If the answer is a trusted network, authoritative data, regulatory expertise, money movement, a system of record, an ecosystem, accumulated institutional knowledge, auditability, or operational responsibility, then cheap code does not reproduce the important part.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"177\" data-index=\"177\"><span class=\"                                                 \">The visible application can shrink while the substrate becomes more valuable.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"178\" data-index=\"178\"><a href=\"https:\/\/www.idc.com\/resource-center\/blog\/agent-supplier-or-featureware-the-choice-every-saas-vendor-faces-now\/\" class=\"text-accent-contrast hover:underline                                                  \" target=\"_blank\" rel=\"noopener noreferrer\">IDC has described<\/a><span class=\"                                                 \"> one possible version of this future as SaaS applications becoming \u201cfeatureware,\u201d with agents owning more of the interaction while existing applications remain underneath as governed systems of record and capabilities.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"179\" data-index=\"179\"><span class=\"                                                 \">I think the opportunity is more ambitious than accepting demotion behind an agent.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"180\" data-index=\"180\"><span class=\"                                                 \">The best SaaS companies can deliberately become <\/span><span class=\"                     font-bold                            \">substrate companies<\/span><span class=\"                                                 \">.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"181\" data-index=\"181\"><span class=\"                                                 \">They own the slow layer.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"182\" data-index=\"182\"><span class=\"                                                 \">They make it safe to generate the fast one.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"the-uncomfortable-question-for-saas-founders\" data-index=\"183\"><a href=\"#the-uncomfortable-question-for-saas-founders\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">The uncomfortable question for SaaS founders<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"184\" data-index=\"184\"><span class=\"                                                 \">If I ran a SaaS company today, I would ask:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"185\" data-index=\"185\"><p><span class=\"                     font-bold                            \">If every customer had a bespoke application tomorrow, what part of our product would they still need to share?<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"186\" data-index=\"186\"><span class=\"                                                 \">That question separates the application from the durable business underneath it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"187\" data-index=\"187\"><span class=\"                                                 \">For Stripe, the answer is obviously not a checkout form.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"188\" data-index=\"188\"><span class=\"                                                 \">For a payroll company, it is not the employee table.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"189\" data-index=\"189\"><span class=\"                                                 \">For a financial information company, it is not a dashboard.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"190\" data-index=\"190\"><span class=\"                                                 \">For some companies, the answer will be substantial.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"191\" data-index=\"191\"><span class=\"                                                 \">For others, it may turn out that most of the product lives in the fast layer.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"192\" data-index=\"192\"><span class=\"                                                 \">That does not mean those companies disappear tomorrow.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"193\" data-index=\"193\"><span class=\"                                                 \">It does mean they should probably be racing to discover what they own underneath the UI before somebody else does.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"the-return-of-internal-software\" data-index=\"194\"><a href=\"#the-return-of-internal-software\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">The return of internal software<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"195\" data-index=\"195\"><span class=\"                                                 \">The same economics changes \u201cbuy before build.\u201d<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"196\" data-index=\"196\"><span class=\"                                                 \">That advice made sense when building an internal application meant staffing a software project indefinitely.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"197\" data-index=\"197\"><span class=\"                                                 \">But consider fifty employees losing twenty minutes a day to a workflow that poorly fits them.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"198\" data-index=\"198\"><span class=\"                                                 \">That may not justify six months of custom development.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"199\" data-index=\"199\"><span class=\"                                                 \">It could easily justify a few days of generated development on top of an existing substrate.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"200\" data-index=\"200\"><span class=\"                                                 \">This can produce a renaissance in internal software.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"201\" data-index=\"201\"><span class=\"                                                 \">Not giant IT departments rebuilding SAP.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"202\" data-index=\"202\"><span class=\"                                                 \">Small teams maintaining strong shared foundations while producing highly specific tools around them.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"203\" data-index=\"203\"><span class=\"                                                 \">Their advantage is not that they can type code better than a SaaS vendor.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"204\" data-index=\"204\"><span class=\"                                                 \">It is that they know the organization: its language, policies, data, authority structure, exceptions, and history.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"205\" data-index=\"205\"><span class=\"                                                 \">These are exactly the details generalized software has always had to abstract away.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"206\" data-index=\"206\"><span class=\"                                                 \">Difference becomes the internal team\u2019s comparative advantage.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"someone-still-has-to-own-reality\" data-index=\"207\"><a href=\"#someone-still-has-to-own-reality\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Someone still has to own reality<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"208\" data-index=\"208\"><span class=\"                                                 \">There is a nightmare version of all of this.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"209\" data-index=\"209\"><span class=\"                                                 \">Every team starts generating applications. Each creates another representation of customer identity, invents another permissions model, or makes another convenient copy of important data. Every agent gets whatever access makes the current task easiest.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"210\" data-index=\"210\"><span class=\"                                                 \">Within a year, the company owns a thousand locally sensible applications that disagree about basic reality.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"211\" data-index=\"211\"><span class=\"                                                 \">Generation makes this easier, not harder.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"212\" data-index=\"212\"><span class=\"                                                 \">So someone still has to own the slow layers.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"213\" data-index=\"213\"><span class=\"                                                 \">There needs to be authoritative data, shared domain concepts where common meaning matters, stable capabilities, authority boundaries, protocols, and constraints on what generated software is allowed to do.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"214\" data-index=\"214\"><span class=\"                                                 \">The governance should match the pace.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"215\" data-index=\"215\"><span class=\"                                                 \">A team should be able to regenerate its dashboard without an architecture committee.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"216\" data-index=\"216\"><span class=\"                                                 \">Redefining who may move company money is different.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"217\" data-index=\"217\"><span class=\"                                                 \">If every change requires central approval, customization dies.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"218\" data-index=\"218\"><span class=\"                                                 \">If nothing requires it, coherence dies.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"219\" data-index=\"219\"><span class=\"                                                 \">Good architecture tells us which is which.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"build-versus-buy-is-too-coarse-now\" data-index=\"220\"><a href=\"#build-versus-buy-is-too-coarse-now\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Build versus buy is too coarse now<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"221\" data-index=\"221\"><span class=\"                                                 \">The traditional enterprise decision was made at the application level:<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"222\" data-index=\"222\"><span class=\"                                                 \">Should we build a CRM or buy one?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"223\" data-index=\"223\"><span class=\"                                                 \">Build payroll or buy it?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"224\" data-index=\"224\"><span class=\"                                                 \">Build a support system or buy one?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"225\" data-index=\"225\"><span class=\"                                                 \">That unit may be too large.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"226\" data-index=\"226\"><span class=\"                                                 \">The better question is:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"227\" data-index=\"227\"><p><span class=\"                     font-bold                            \">Which layers should we buy, which should we share, and which should we generate?<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"228\" data-index=\"228\"><span class=\"                                                 \">Buy the network.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"229\" data-index=\"229\"><span class=\"                                                 \">Share authoritative data.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"230\" data-index=\"230\"><span class=\"                                                 \">Standardize identity.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"231\" data-index=\"231\"><span class=\"                                                 \">Reuse the regulatory engine.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"232\" data-index=\"232\"><span class=\"                                                 \">Outsource the operational responsibility you do not want.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"233\" data-index=\"233\"><span class=\"                                                 \">Generate the workflow, interface, reports, and orchestration.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"234\" data-index=\"234\"><span class=\"                                                 \">Regenerate the things whose requirements change quickly.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"235\" data-index=\"235\"><span class=\"                                                 \">Preserve the things whose meaning needs to remain stable.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"236\" data-index=\"236\"><span class=\"                                                 \">A healthcare record should move slowly. The application one clinical team uses around it may move constantly.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"237\" data-index=\"237\"><span class=\"                                                 \">An accounting ledger should move slowly. The CFO\u2019s current reporting experience probably should not.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"238\" data-index=\"238\"><span class=\"                                                 \">A customer identity should be durable. The sales workflow surrounding it can be peculiar to one company.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"239\" data-index=\"239\"><span class=\"                                                 \">This is not build versus buy anymore.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"240\" data-index=\"240\"><span class=\"                                                 \">It is build, buy, share, generate, and regenerate, each applied at the right pace.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"the-application-becomes-an-instance-of-the-organization\" data-index=\"241\"><a href=\"#the-application-becomes-an-instance-of-the-organization\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">The application becomes an instance of the organization<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"242\" data-index=\"242\"><span class=\"                                                 \">Configuration starts with the product.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"243\" data-index=\"243\"><span class=\"                                                 \">Here is our application.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"244\" data-index=\"244\"><span class=\"                                                 \">Here are the dimensions along which we anticipated you might differ.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"245\" data-index=\"245\"><span class=\"                                                 \">Tell us which values you want.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"246\" data-index=\"246\"><span class=\"                                                 \">Generation can start somewhere else.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"247\" data-index=\"247\"><span class=\"                                                 \">What are you trying to accomplish?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"248\" data-index=\"248\"><span class=\"                                                 \">What data and capabilities exist?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"249\" data-index=\"249\"><span class=\"                                                 \">What policies constrain them?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"250\" data-index=\"250\"><span class=\"                                                 \">What does success look like?<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"251\" data-index=\"251\"><span class=\"                                                 \">Generate something appropriate.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"252\" data-index=\"252\"><span class=\"                                                 \">That reverses the relationship between software and the organization.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"253\" data-index=\"253\"><span class=\"                                                 \">For decades, organizations increasingly became instances of applications. They mapped themselves into the nouns, workflows, and screens provided by the software they bought.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"254\" data-index=\"254\"><span class=\"                                                 \">Generative systems make another relationship possible:<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"255\" data-index=\"255\"><span class=\"                     font-bold                            \">The application becomes an instance of the organization.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"256\" data-index=\"256\"><span class=\"                                                 \">That does not mean every difference is good.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"257\" data-index=\"257\"><span class=\"                                                 \">It means difference no longer has to be rejected merely because it would have required another codebase.<\/span><\/p>\n<h3 class=\"h2Block whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-4 sm:mt-5 mb-0!&#10;    undefined&#10;    undefined&#10;     font-bold leading-tight pb-1 [font-family:var(--theme-heading-font)]\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1.5em\" id=\"sameness-has-to-earn-its-keep\" data-index=\"258\"><a href=\"#sameness-has-to-earn-its-keep\" class=\"no-underline text-inherit cursor-pointer\"><span class=\"                                                 \">Sameness has to earn its keep<\/span><\/a><\/h3>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"259\" data-index=\"259\"><span class=\"                                                 \">The history of business software starts to look like three eras.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"260\" data-index=\"260\"><span class=\"                                                 \">The first was bespoke: excellent local fit, terrible economics.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"261\" data-index=\"261\"><span class=\"                                                 \">The second was standardized: packaged software and SaaS gave us extraordinary economies of scale by persuading enormous numbers of organizations to share applications.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"262\" data-index=\"262\"><span class=\"                                                 \">The third may combine both.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"263\" data-index=\"263\"><span class=\"                                                 \">Shared slow layers. Bespoke fast layers. Centralized operations. Local fit. Stable foundations. Replaceable applications.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"264\" data-index=\"264\"><span class=\"                                                 \">The first SaaS era achieved economies of scale by eliminating variation.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"265\" data-index=\"265\"><span class=\"                                                 \">The next one may achieve economies of scale while restoring it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"266\" data-index=\"266\"><span class=\"                                                 \">That is why I don\u2019t think SaaS is dead.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"267\" data-index=\"267\"><span class=\"                                                 \">Companies will still buy software as a service. Vendors will still host it. In many cases they may host even more of it.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"268\" data-index=\"268\"><span class=\"                                                 \">What changes is the default assumption that the visible application must be substantially identical for everyone.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"269\" data-index=\"269\"><span class=\"                                                 \">For the last twenty-five years, the software industry has asked an extraordinarily profitable question:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"270\" data-index=\"270\"><p><span class=\"                                                 \">What application can ten thousand companies share?<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"271\" data-index=\"271\"><span class=\"                                                 \">The next era asks a different one:<\/span><\/p>\n<blockquote class=\"blockquote whitespace-pre-wrap py-0! mb-2! &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     mt-1!\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word\" id=\"272\" data-index=\"272\"><p><span class=\"                     font-bold                            \">What must ten thousand companies share so that everything else can safely be different?<\/span><\/p><\/blockquote>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"273\" data-index=\"273\"><span class=\"                                                 \">One service.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"274\" data-index=\"274\"><span class=\"                                                 \">Ten thousand applications.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-2&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"275\" data-index=\"275\"><span class=\"                                                 \">SaaS isn\u2019t dead.<\/span><\/p>\n<p class=\"textBlock whitespace-pre-wrap &#10;    postBlockWrapper&#10;    min-h-7&#10;    mt-1 mb-3 sm:mb-4&#10;    undefined&#10;    undefined&#10;     text-primary\" style=\"scroll-margin-top:4rem;scroll-margin-bottom:4rem;word-break:break-word;font-size:1em\" id=\"276\" data-index=\"276\"><span class=\"                     font-bold                            \">Sameness is.<\/span><\/p>\n<\/div>\n<p><a href=\"https:\/\/aicoding.leaflet.pub\/3mtu6c5wsvc2n?utm_source=tldrit\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Everyone suddenly wants to tell you SaaS is dead. The Klarna-replaced-Salesforce story spread because it fit the mood, whatever the exact boundary between \u201creplaced the CRM\u201d and \u201cconsolidated the data underneath it\u201d turned out to be. Agents are starting to do work that once required people clicking through applications. Seat-based pricing looks vulnerable when the [&hellip;]<\/p>\n","protected":false},"author":16,"featured_media":23532,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[143],"tags":[],"class_list":["post-23531","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ai"],"_links":{"self":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/posts\/23531","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/users\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/comments?post=23531"}],"version-history":[{"count":0,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/posts\/23531\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/media\/23532"}],"wp:attachment":[{"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/media?parent=23531"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/categories?post=23531"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scannn.com\/lv\/wp-json\/wp\/v2\/tags?post=23531"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}