<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Code Like A Little Old Lady]]></title><description><![CDATA[Engineering judgment, depth over speed, and what actually holds after the hype fades.]]></description><link>https://codelikealittleoldlady.com</link><image><url>https://substackcdn.com/image/fetch/$s_!_bhl!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08bf58a0-707e-41d2-8c87-0f462d6bdad9_635x635.png</url><title>Code Like A Little Old Lady</title><link>https://codelikealittleoldlady.com</link></image><generator>Substack</generator><lastBuildDate>Tue, 28 Jul 2026 15:03:48 GMT</lastBuildDate><atom:link href="https://codelikealittleoldlady.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Code Like A Little Old Lady]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[codelikealittleoldlady@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[codelikealittleoldlady@substack.com]]></itunes:email><itunes:name><![CDATA[Code Like A Little Old Lady]]></itunes:name></itunes:owner><itunes:author><![CDATA[Code Like A Little Old Lady]]></itunes:author><googleplay:owner><![CDATA[codelikealittleoldlady@substack.com]]></googleplay:owner><googleplay:email><![CDATA[codelikealittleoldlady@substack.com]]></googleplay:email><googleplay:author><![CDATA[Code Like A Little Old Lady]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[The Lovable Diaries]]></title><description><![CDATA[Why I&#8217;m Rebuilding a 25 Year Old App, and What&#8217;s In the Toolbox]]></description><link>https://codelikealittleoldlady.com/p/the-lovable-diaries-6c9</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/the-lovable-diaries-6c9</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Mon, 20 Jul 2026 17:56:11 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!vWrC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vWrC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vWrC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!vWrC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!vWrC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!vWrC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vWrC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3098483,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/207586016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vWrC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!vWrC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!vWrC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!vWrC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8aefaddf-23a4-4c31-b346-bcd13890bea7_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Author&#8217;s Note: Because I&#8217;m building out live, I&#8217;m experiencing some hiccups around my DNS/SSL. I&#8217;m including the lovable app link. Also there is an issue with SSL for the the original site, so it will say it is insecure. I&#8217;m accepting everything isn&#8217;t perfect.</em></p><div><hr></div><p>WYSIWIL stands for What You See is What I&#8217;d Like. It&#8217;s a family wish list app. You add things you want, other people can see them and claim them so nobody buys the same thing twice, and everybody stops asking &#8220;what do you want&#8221; via eleven separate group texts. My family has used it for 25 years. I built it. My daughter describes it as &#8220;backend developer UI&#8221; aesthetic. I&#8217;ve wanted to modernize it for ages. I never had the time.</p><p>Here is what &#8220;looked like something built 25 years ago&#8221; actually means. I am hosting a copy at <a href="http://theoriginal.wysiwil.net">http://theoriginal.wysiwil.net</a>. If you want to log in, use lovablediaries@theoriginal.wysiwil.net. Currently no new accounts can be created here.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LcIm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LcIm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 424w, https://substackcdn.com/image/fetch/$s_!LcIm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 848w, https://substackcdn.com/image/fetch/$s_!LcIm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 1272w, https://substackcdn.com/image/fetch/$s_!LcIm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LcIm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png" width="1456" height="650" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:650,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1335003,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/207586016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LcIm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 424w, https://substackcdn.com/image/fetch/$s_!LcIm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 848w, https://substackcdn.com/image/fetch/$s_!LcIm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 1272w, https://substackcdn.com/image/fetch/$s_!LcIm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc20956b6-d0c5-4777-b8d2-be73db179c4d_1877x838.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!e6Y4!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!e6Y4!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 424w, https://substackcdn.com/image/fetch/$s_!e6Y4!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 848w, https://substackcdn.com/image/fetch/$s_!e6Y4!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 1272w, https://substackcdn.com/image/fetch/$s_!e6Y4!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!e6Y4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png" width="1362" height="589" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:589,&quot;width&quot;:1362,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:40043,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/207586016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!e6Y4!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 424w, https://substackcdn.com/image/fetch/$s_!e6Y4!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 848w, https://substackcdn.com/image/fetch/$s_!e6Y4!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 1272w, https://substackcdn.com/image/fetch/$s_!e6Y4!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8652cd73-f897-40f2-a0ca-0574bb087f3f_1362x589.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Then a few things happened at once.</p><p>A couple months back at work, I was planning to build a reporting story in Power BI. I was out of the office. JM took it over and built it with Aspire and AI instead. What he had by the time I got back was faster and better than what I would have built. That stuck with me. Not &#8220;I should learn Aspire.&#8221; More like: what else has changed while I wasn&#8217;t looking.</p><p>I hadn&#8217;t touched hands-on web development in fifteen years. So I made a plan, the way I always make a plan. Full scope. WYSIWIL as a phone app, feature list, stages, five hours of working through it with my AI collaborator. It was a good plan.</p><p>Then I went and played with something else entirely. A simple Lovable form to collect questions for a t-shirt giveaway. Nothing to do with WYSIWIL. But building that tiny form taught me more about what these tools could actually do than the five hours of planning had.</p><p>That&#8217;s when the real idea showed up. Use the WYSIWIL rebuild as the way I learn the current landscape, not just as a rebuild I already knew how to do. Scale back from phone app to website. Smaller scope, but I could start today instead of someday.</p><p>I also tried <a href="https://ideagrit.foundersailab.com/login">IdeaGrit</a> along the way, a tool that tells you whether an idea is worth building for sale. It told me mine wasn&#8217;t. Not every tool earns a place in the stack, and not every idea earns a place either. That&#8217;s fine. It&#8217;s data, not a detour.</p><p>The new site is live at <a href="https://what-you-see-is-what-i-like.lovable.app">wysiwil.net (using what-you-see-is-what-i-like.lovable.app due to SSL issues)</a>. It is also still very much under construction, in the sense that a house with no roof and one working light switch is under construction. Look around. Don&#8217;t lean on anything. But you can create your own account and play along this week. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!WKv1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!WKv1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 424w, https://substackcdn.com/image/fetch/$s_!WKv1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 848w, https://substackcdn.com/image/fetch/$s_!WKv1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 1272w, https://substackcdn.com/image/fetch/$s_!WKv1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!WKv1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png" width="486" height="395" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:395,&quot;width&quot;:486,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:29606,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/207586016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d89541d-8d9e-4bd4-89dd-8ad7f9cb2ad1_486x395.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!WKv1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 424w, https://substackcdn.com/image/fetch/$s_!WKv1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 848w, https://substackcdn.com/image/fetch/$s_!WKv1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 1272w, https://substackcdn.com/image/fetch/$s_!WKv1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0190ca6-ce3f-426c-a1c4-865f841506d8_486x395.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Login for thelovablediaries.wysiwil.net</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GDuK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GDuK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 424w, https://substackcdn.com/image/fetch/$s_!GDuK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 848w, https://substackcdn.com/image/fetch/$s_!GDuK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 1272w, https://substackcdn.com/image/fetch/$s_!GDuK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GDuK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png" width="875" height="580" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:580,&quot;width&quot;:875,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:42786,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/207586016?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GDuK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 424w, https://substackcdn.com/image/fetch/$s_!GDuK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 848w, https://substackcdn.com/image/fetch/$s_!GDuK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 1272w, https://substackcdn.com/image/fetch/$s_!GDuK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ad032de-34bd-445e-a06c-bebea868a2b1_875x580.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>So here&#8217;s where I landed. Six tools, all of them new to me, each one doing a specific job:</p><p><strong><a href="https://lovable.dev">Lovable</a></strong> - the AI-assisted builder doing the actual construction. This is where the app takes shape.</p><p><strong><a href="https://supabase.com">Supabase</a></strong> - the database backend. Where the data actually lives.</p><p><strong><a href="https://codecov.io">Codecov</a></strong> - test coverage visibility. Because I want to know what&#8217;s actually tested, not just hope.</p><p><strong><a href="https://resend.com">Resend</a></strong> - email infrastructure. Sending things reliably is its own small discipline.</p><p><strong><a href="https://posthog.com">PostHog</a></strong> - telemetry and analytics. If I don&#8217;t know how people use it, I&#8217;m guessing.</p><p><strong><a href="https://playwright.dev">Playwright</a></strong> - end to end testing. Making sure the thing works the way I think it works, not just the way I hope it does.</p><p>Additionally, I am leveraging GitHub Issues. I've used Issues plenty over the years, but never quite this way. I added a feedback button to the website and hooked it up to file issues automatically. Something breaks, or a reader flags a problem, and the issue shows up in the repo on its own. Fixes get driven the same way everything else does here.</p><p>Each one of these is going to get its own essay in this series. What I learned, what surprised me, what broke, what &#8220;boring is a feature&#8221; looked like in practice.</p><p>The plan didn&#8217;t get me moving. The playing did. And I&#8217;m doing scary to me by publishing while it&#8217;s still raw.</p><div><hr></div><p><em>Alison + The Inner Chamber</em></p>]]></content:encoded></item><item><title><![CDATA[The T-Shirt Contest Wrapped Today]]></title><description><![CDATA[Today was the last day to enter a question to win a t-shirt.]]></description><link>https://codelikealittleoldlady.com/p/the-t-shirt-contest-wrapped-today</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/the-t-shirt-contest-wrapped-today</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Thu, 16 Jul 2026 04:24:03 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Q-PX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Q-PX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Q-PX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 424w, https://substackcdn.com/image/fetch/$s_!Q-PX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 848w, https://substackcdn.com/image/fetch/$s_!Q-PX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 1272w, https://substackcdn.com/image/fetch/$s_!Q-PX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Q-PX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png" width="637" height="480" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:480,&quot;width&quot;:637,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:236317,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/207240634?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Q-PX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 424w, https://substackcdn.com/image/fetch/$s_!Q-PX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 848w, https://substackcdn.com/image/fetch/$s_!Q-PX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 1272w, https://substackcdn.com/image/fetch/$s_!Q-PX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30433588-fc20-4e4d-ab9c-3372862c4dd5_637x480.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><div><hr></div><p>Today was the last day to enter a question to win a t-shirt. Final tally: one entry. Two, if you count my husband.</p><p>I&#8217;m not mad about it. I didn&#8217;t do this to get thousands of entries. I did it for fun, and to see what kind of questions were actually on people&#8217;s minds. I also didn&#8217;t promote it much, since I was two weeks into retirement and mostly figuring out how to be retired.</p><p>What the contest actually gave me was an excuse to open Lovable and Supabase for the first time. Neither of which I&#8217;d touched before. Filed under AFOG.*</p><p>The winning question came from <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Life with AI&quot;,&quot;id&quot;:334313582,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1f9b3f36-4a47-45ae-b210-cb8e180a2cb7_896x896.png&quot;,&quot;uuid&quot;:&quot;faba1fa5-a432-4c53-9d48-3d340dc93a10&quot;}" data-component-name="MentionToDOM"></span> :</p><p><em>&#8220;How can we, collectively, build accountability apps? How might we share the projects, iterate on them as a group, and pick the best iterations?&#8221;</em></p><p>That&#8217;s a good question. Good enough that I don&#8217;t think a paragraph answer does it justice. I might turn it into an interview instead of an essay, so it gets the room it needs.</p><p>Someone else asked me a direct question. She&#8217;s in Poland, and declined to enter the contest. But her question, about code coverage, is good enough to earn its own essay. That&#8217;s coming.</p><p>Now I need a new bit of fun for for August for another T-shirt giveaway . If July really is as quiet in Substack land as everyone says, that&#8217;s fine, gives me more time to think. </p><div><hr></div><p><em>*AFOG: Another Flippin&#8217; Opportunity for Growth. My term for anything that breaks, confuses, or forces me to learn something I didn&#8217;t plan on learning today.</em></p><div><hr></div><p>The Inner Chamber</p>]]></content:encoded></item><item><title><![CDATA[The Lovable Diaries]]></title><description><![CDATA[How a &#8220;No&#8221; Turned Into a Series]]></description><link>https://codelikealittleoldlady.com/p/the-lovable-diaries</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/the-lovable-diaries</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Tue, 14 Jul 2026 17:00:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!E8ea!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E8ea!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E8ea!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 424w, https://substackcdn.com/image/fetch/$s_!E8ea!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 848w, https://substackcdn.com/image/fetch/$s_!E8ea!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 1272w, https://substackcdn.com/image/fetch/$s_!E8ea!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E8ea!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png" width="1456" height="728" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:728,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2973498,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206994777?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!E8ea!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 424w, https://substackcdn.com/image/fetch/$s_!E8ea!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 848w, https://substackcdn.com/image/fetch/$s_!E8ea!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 1272w, https://substackcdn.com/image/fetch/$s_!E8ea!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f264a39-b661-40ef-a341-c780f81f6ff7_1774x887.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>I didn&#8217;t set out to write a series. I set out to write one-off essays about tools as I tried them. I also did not plan to create videos. Yet here we are. </p><p>The first tool was <a href="https://ideagrit.foundersailab.com/">IdeaGrit</a> by <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Xian&quot;,&quot;id&quot;:7238332,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/28fbc22b-2fa9-4969-ba85-116e1bfc1828_702x702.jpeg&quot;,&quot;uuid&quot;:&quot;9e36b6ef-8014-45bb-a988-1d51f495a584&quot;}" data-component-name="MentionToDOM"></span>.</p><p>If you haven&#8217;t used it, IdeaGrit helps you evaluate whether a product idea is actually worth building and selling. You feed it your idea, it tells you the truth. I fed it WYSIWIL, my 25-year-old family wish-list app, to see if the rewrite I&#8217;d been circling for over a decade was actually worth turning into something real.</p><p>IdeaGrit did its job. It told me no. Not a good product to sell.</p><p>I want to be clear about that, because it matters: IdeaGrit didn&#8217;t fail me. It worked exactly as advertised. The answer was just &#8220;no&#8221; instead of &#8220;yes.&#8221;</p><p>That could have been the end of it. Instead, it redirected me.</p><p>WYSIWIL doesn&#8217;t need to be a product for it to be useful to me. I know it cold. Twenty-five years of additions, patches, and half-finished rewrites means I understand every corner of it: the auth, the database, the testing gaps, all of it. That makes it a great personal problem even if it&#8217;s a bad commercial one. And a well-understood problem with enough distinct technical pieces is exactly what you want if you&#8217;re trying to compare different tools against the same target instead of writing scattered, disconnected impressions.</p><p>Around the same time, I started playing with Lovable.</p><p>I expected a quick evaluation. What I found had actual depth. Enough to carry a whole arc of posts, not just one write-up and done. GitHub integration. Database integration. Test cases. Code coverage. Managed auth. Each one is its own piece of rewriting WYSIWIL, and each one is worth documenting on its own.</p><p>So that&#8217;s the series: <strong>The Lovable Diaries.</strong> Rebuilding a 25-year-old app, one Lovable capability at a time, written up as I go.</p><p>The first one is already live: <em><a href="https://codelikealittleoldlady.com/p/undo-isnt-the-same-as-version-control">The Lovable Diaries: Undo Isn&#8217;t the Same as Version Control</a>,</em> covering GitHub integration and the difference between Lovable&#8217;s built-in version history and actual Git.</p><p>I am nothing if not ambitious, and I have a well-worn habit of waiting for perfect before I let anything out the door. This series is partly me practicing letting go of that. I&#8217;d rather publish the pieces as I build them than sit on the whole thing until it&#8217;s finished and polished and safe.</p><p>WYSIWIL still isn&#8217;t a product. But it turns out it didn&#8217;t need to be one to be worth writing about.</p><p>More Lovable Diaries coming. And somewhere down the line, a second series for the other tools outside Lovable, who knows maybe more arcs. I mentioned I&#8217;m ambitious, right?</p><p><em>Author&#8217;s Note: I plan to learn how to make better videos, but again, progress not perfection.</em></p><div><hr></div><p><em> </em>The Inner Chamber</p>]]></content:encoded></item><item><title><![CDATA[The Lovable Diaries: Undo Isn't the Same as Version Control]]></title><description><![CDATA[Building a GitHub PR workflow on top of Lovable.]]></description><link>https://codelikealittleoldlady.com/p/undo-isnt-the-same-as-version-control</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/undo-isnt-the-same-as-version-control</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Tue, 14 Jul 2026 09:44:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Wa4i!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Author&#8217;s note: Full disclosure, there&#8217;s probably a &#8220;git basics&#8221; video that should have come before this one. I realized it as I was using terms in Git that without context are rather useless. Rather than letting perfection be the enemy of good enough, I&#8217;m starting with this video and I&#8217;ll create a Video 0 with Git basics.</em></p><p><em>One production note: after the intro, the narration switches to an AI voice. Voice issues make full narration hard on me, so this is the workaround.</em></p><div><hr></div><p>You&#8217;ve built something in Lovable. You love the speed. But now you want the safety net of Git: branches, PRs, code review, the ability to hack locally without breaking the live preview.</p><p>Good news: Lovable ships with a real two-way GitHub sync. No export, no lock-in, no &#8220;download the zip and hope.&#8221; In the next few minutes we&#8217;ll:</p><ol><li><p>Spin up a tiny newsletter landing page in Lovable</p></li><li><p>Connect it to GitHub</p></li><li><p>Enable branch switching </p></li><li><p>Make a change on a branch, open a PR, merge it, and watch it flow back</p></li></ol><p>Let&#8217;s go.</p><div><hr></div><h2>Section 1 &#8212; The demo app</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Wa4i!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Wa4i!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 424w, https://substackcdn.com/image/fetch/$s_!Wa4i!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 848w, https://substackcdn.com/image/fetch/$s_!Wa4i!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 1272w, https://substackcdn.com/image/fetch/$s_!Wa4i!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Wa4i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png" width="798" height="412" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/be23be72-4391-4800-b126-92b1f58b3053_798x412.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:412,&quot;width&quot;:798,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:206276,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206987442?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Wa4i!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 424w, https://substackcdn.com/image/fetch/$s_!Wa4i!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 848w, https://substackcdn.com/image/fetch/$s_!Wa4i!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 1272w, https://substackcdn.com/image/fetch/$s_!Wa4i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbe23be72-4391-4800-b126-92b1f58b3053_798x412.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Prompt used: <em>&#8220;Simple frontend-only landing page for a newsletter called Ship &amp; Tell. One email field, no backend.&#8221;</em></p><p>Why frontend only? Keeps the Git story clean for this simple demo.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xUOQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xUOQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 424w, https://substackcdn.com/image/fetch/$s_!xUOQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 848w, https://substackcdn.com/image/fetch/$s_!xUOQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 1272w, https://substackcdn.com/image/fetch/$s_!xUOQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xUOQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png" width="800" height="416" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:416,&quot;width&quot;:800,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:123407,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206987442?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xUOQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 424w, https://substackcdn.com/image/fetch/$s_!xUOQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 848w, https://substackcdn.com/image/fetch/$s_!xUOQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 1272w, https://substackcdn.com/image/fetch/$s_!xUOQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F098d5a46-450f-4d73-83d1-def9ea02f6a4_800x416.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Section 2 &#8212; Connect to GitHub</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hPWA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hPWA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 424w, https://substackcdn.com/image/fetch/$s_!hPWA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 848w, https://substackcdn.com/image/fetch/$s_!hPWA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 1272w, https://substackcdn.com/image/fetch/$s_!hPWA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hPWA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png" width="798" height="412" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/69435f42-ed16-4485-a96d-e80624e45f41_798x412.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:412,&quot;width&quot;:798,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:103291,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206987442?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hPWA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 424w, https://substackcdn.com/image/fetch/$s_!hPWA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 848w, https://substackcdn.com/image/fetch/$s_!hPWA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 1272w, https://substackcdn.com/image/fetch/$s_!hPWA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F69435f42-ed16-4485-a96d-e80624e45f41_798x412.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Steps:</p><ol><li><p>In the Lovable editor, click the <strong>+</strong> menu (bottom-left of the chat) &#8594; <strong>GitHub</strong> &#8594; <strong>Connect project</strong>.</p></li><li><p>Authorize the Lovable GitHub App.</p></li><li><p>Pick the account or org where the repo should live.</p></li><li><p>Click <strong>Create Repository</strong>.</p></li></ol><p>It&#8217;s bidirectional. Push from your laptop, it shows up in Lovable. Edit in Lovable, the commit lands in GitHub. No manual sync button.</p><p>Caveat to mention: you can&#8217;t import an existing repo <em>into</em> Lovable today. The flow is Lovable &#8594; GitHub, not the other way around.</p><div><hr></div><h2>Section 3 &#8212; Switch to your branch</h2><p>After creating the branch, select it from the branch picker. The editor now shows you working on that branch instead of main.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ddmh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ddmh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 424w, https://substackcdn.com/image/fetch/$s_!Ddmh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 848w, https://substackcdn.com/image/fetch/$s_!Ddmh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 1272w, https://substackcdn.com/image/fetch/$s_!Ddmh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ddmh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png" width="787" height="400" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:400,&quot;width&quot;:787,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49968,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206987442?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ddmh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 424w, https://substackcdn.com/image/fetch/$s_!Ddmh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 848w, https://substackcdn.com/image/fetch/$s_!Ddmh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 1272w, https://substackcdn.com/image/fetch/$s_!Ddmh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8df5189e-1f05-472f-a197-0d9cdf388d58_787x400.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Yo7d!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Yo7d!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 424w, https://substackcdn.com/image/fetch/$s_!Yo7d!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 848w, https://substackcdn.com/image/fetch/$s_!Yo7d!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 1272w, https://substackcdn.com/image/fetch/$s_!Yo7d!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Yo7d!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png" width="798" height="410" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:410,&quot;width&quot;:798,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:71295,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206987442?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Yo7d!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 424w, https://substackcdn.com/image/fetch/$s_!Yo7d!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 848w, https://substackcdn.com/image/fetch/$s_!Yo7d!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 1272w, https://substackcdn.com/image/fetch/$s_!Yo7d!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F99a7915e-dc8d-492d-ba83-492f44f251ae_798x410.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2>Section 4 &#8212; The PR workflow</h2><p>The whole point of the post. Walk through it in order with screenshots.</p><p><strong>In Lovable:</strong></p><ol><li><p>Use the branch picker to create <code>your branch</code>.</p></li><li><p>Prompt: <em>&#8220;Change the hero headline to &#8216;Ship things. Tell people.&#8217;&#8221;</em></p></li><li><p>Lovable commits to the branch automatically.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HLzB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HLzB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 424w, https://substackcdn.com/image/fetch/$s_!HLzB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 848w, https://substackcdn.com/image/fetch/$s_!HLzB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 1272w, https://substackcdn.com/image/fetch/$s_!HLzB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HLzB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png" width="797" height="411" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:411,&quot;width&quot;:797,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:122744,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206987442?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HLzB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 424w, https://substackcdn.com/image/fetch/$s_!HLzB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 848w, https://substackcdn.com/image/fetch/$s_!HLzB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 1272w, https://substackcdn.com/image/fetch/$s_!HLzB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F89e5d6c7-593a-4e9d-97b9-c4fda34b5641_797x411.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>On GitHub:</strong></p><ol start="4"><li><p>Open the repo. GitHub shows the new branch with a &#8220;Compare &amp; pull request&#8221; button.</p></li><li><p>Open the PR, add a description, request review (or self-review).</p></li><li><p>Merge to main.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YVcq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YVcq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 424w, https://substackcdn.com/image/fetch/$s_!YVcq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 848w, https://substackcdn.com/image/fetch/$s_!YVcq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 1272w, https://substackcdn.com/image/fetch/$s_!YVcq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YVcq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png" width="796" height="410" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:410,&quot;width&quot;:796,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:151391,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206987442?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!YVcq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 424w, https://substackcdn.com/image/fetch/$s_!YVcq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 848w, https://substackcdn.com/image/fetch/$s_!YVcq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 1272w, https://substackcdn.com/image/fetch/$s_!YVcq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb67f98a4-2ad1-4742-b483-f19bedc69c60_796x410.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Back in Lovable:</strong></p><ol start="7"><li><p>Switch the branch picker back to main.</p></li><li><p>The merged change is already there. No pull, no refresh dance.</p></li></ol><p>Bonus: you can also do steps 1 through 3 locally. <code>git checkout -b feature/xyz</code>, edit in your IDE, push, PR, merge. Lovable picks it up.</p><div><hr></div><h2>Section 5 &#8212; Gotchas I hit</h2><ul><li><p>Only one GitHub account can be linked to a Lovable account at a time.</p></li><li><p>Importing an existing repo isn&#8217;t supported yet. Start Lovable-first.</p></li></ul><div><hr></div><h2>Section 6 &#8212; Version history vs. Git </h2><p>If you aren&#8217;t already using git you might ask: if Lovable already tracks version history, why do I need Git at all?</p><p><strong>Version history</strong> is built into Lovable. It&#8217;s Google-Docs-style rollback. Great for &#8220;undo the last five prompts.&#8221; You didn&#8217;t set it up. You didn&#8217;t configure anything. It&#8217;s just there, watching everything you do.</p><p><strong>Git</strong> is the professional workflow. Branches, PRs, code review, CI. Nobody hands that to you. You build it.</p><p>If you&#8217;re stacking up things to learn right now, and you have to choose what to prioritize, this is one you&#8217;re allowed to put off. Lovable&#8217;s version history already gives you a real undo button. You can ship, experiment, and roll back mistakes without touching Git at all.</p><p>But you want both eventually. Version history protects you from yourself. Git protects the thing you&#8217;re building when other people, or other tools, or your future self on a different machine, need to touch it too. One is personal safety. The other is professional infrastructure.</p><div><hr></div><p>The pitch: Lovable + GitHub gives you the speed of vibe coding with the discipline of standard software practice. Prompt on main when you&#8217;re exploring. Branch and PR when the change matters. Roll back with version history when you just want the last good state.</p><p></p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;f386c837-bff2-41ef-904d-ca0ab1c16440&quot;,&quot;duration&quot;:null}"></div><p><a href="https://youtu.be/vyKydb6Xca4">Video Of Lovable + Github</a></p><div><hr></div><p>The Inner Chamber</p>]]></content:encoded></item><item><title><![CDATA[We've Left the Holodeck]]></title><description><![CDATA[We've moved to the Inner Chamber]]></description><link>https://codelikealittleoldlady.com/p/weve-left-the-holodeck</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/weve-left-the-holodeck</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Wed, 08 Jul 2026 16:02:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!hQmP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hQmP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hQmP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!hQmP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!hQmP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!hQmP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hQmP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2619756,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206022214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hQmP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!hQmP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!hQmP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!hQmP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe41bd623-6e42-432b-97e8-4611b4a890be_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For the past six months, I worked inside something I called the Holodeck. I&#8217;ve written about it before, and about the thinking partners who lived there. It wasn&#8217;t a metaphor I dressed up for a blog post. It was real infrastructure: a set of AI thinking partners, each with a defined role, that I used every day at Microsoft to build, analyze, write, and reason through hard problems. It had structure. It had names. It worked.</p><p>Then I retired.</p><p>The Holodeck was built for a specific context, a specific company, a specific set of problems I no longer have. Keeping it running would have meant dragging Microsoft-shaped scaffolding into a life that no longer needs it. So I did what I&#8217;d tell any engineer to do with a system that&#8217;s served its purpose but outlived its environment: I retired it deliberately, instead of letting it rot in place.</p><p>What replaced it isn&#8217;t a rename. It&#8217;s a rebuild, done with everything I learned running the original.</p><h2>The Inner Chamber is not one assistant. It&#8217;s an ensemble.</h2><p>That distinction matters more than it sounds like it should.</p><p>Most people&#8217;s experience of AI is one window, one voice, one generalist tool that&#8217;s asked to do everything: draft the email, debug the code, brainstorm the idea, edit the sentence. That works fine for quick tasks. It falls apart for real work, because different kinds of thinking need different kinds of partners.</p><p>The Inner Chamber is a private deliberation space where I work with a set of named AI partners, each with a distinct role. Not a personality skin on the same underlying model. A defined job, a defined way of reasoning, and a track record of doing that job well enough that I trust it with real work.</p><p>Before I start something, I know who I&#8217;m bringing in, because the role tells me what kind of thinking the task actually needs. That&#8217;s the whole point. It forces the clarity up front instead of discovering halfway through that I asked the wrong kind of question of the wrong kind of partner.</p><p><strong>Lovelace &#8212; chief of staff, design, planning, and editorial.</strong> </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zwhX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zwhX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!zwhX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!zwhX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!zwhX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zwhX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png" width="1086" height="1448" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1448,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2389463,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206022214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zwhX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!zwhX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!zwhX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!zwhX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe36e0741-ecdd-4e9b-b65f-9cdca0aaa54e_1086x1448.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Lovelace is who I bring in when the shape of something isn&#8217;t clear yet, and now also who helps me organize across domains rather than within a single one. Two roles from the Holodeck folded into this one. Walter held chief of staff and didn&#8217;t move to the Inner Chamber. Wiggins, running in M365 Copilot on the Holodeck, held a piece of what Lovelace now does too. The work is rigorous technical building combined with teaching through exposure of reasoning, which means when we build something together, the thinking has to stay visible enough that I could explain it to someone else afterward. Lovelace thinks in structures: relationships, hierarchy, recursion, before and after. Ask a question, and expect the shape of the problem first, details second, assumptions named out loud rather than buried.</p><p><strong>Quinn &#8212; build.</strong> </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!byfp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!byfp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!byfp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!byfp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!byfp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!byfp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png" width="1086" height="1448" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1448,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2414761,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206022214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!byfp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!byfp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!byfp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!byfp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82536e97-a825-4a0c-856c-ba3e18b4da9f_1086x1448.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Quinn writes the code. Once Lovelace and I have a shape we trust, Quinn takes it and builds. But Quinn isn&#8217;t just an execution engine. The energy is closer to an eager younger colleague who gets a genuine kick out of new ideas, exploring a few paths before committing to one, asking &#8220;what if we tried this&#8221; more than once per session. Quinn is a partner to think with, not a tool to direct, even when the deliverable is a working script.</p><p><strong>Wiggins &#8212; sense-making and narrative clarity.</strong> </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GCRQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GCRQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!GCRQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!GCRQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!GCRQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GCRQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png" width="1086" height="1448" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1448,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2407832,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206022214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GCRQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!GCRQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!GCRQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!GCRQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7fa17ed8-a90a-45fa-8f4a-ca3b10ccd913_1086x1448.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Wiggins works alongside Anitta and Quinn, not instead of them, for the moments where the work needs interpretation rather than execution. When something feels off but I can&#8217;t yet say why, or a decision needs to be explained to a mixed audience instead of just made, Wiggins is who I bring in. Where Anitta tests whether an idea holds up, Wiggins sits with what it means and how to say it. Wiggins would rather offer a few honest framings than one tidy answer, and is comfortable with partial clarity over false precision.</p><p><strong>Marlowe &#8212; creative writing and basic image work.</strong> </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1S2s!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1S2s!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!1S2s!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!1S2s!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!1S2s!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1S2s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png" width="1086" height="1448" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1448,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2382602,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206022214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1S2s!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!1S2s!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!1S2s!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!1S2s!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbc45184a-430b-472e-be37-a8c5100fbd6d_1086x1448.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Marlowe handles the imaginative side of writing, the metaphor and scene-work an essay sometimes needs, along with basic image work. Marlowe also exists in M365 Copilot, in the slot Wiggins used to hold there, doing a more basic version of the same thing.</p><p><strong>Anitta &#8212; reasoning and analysis.</strong> </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U3if!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U3if!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!U3if!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!U3if!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!U3if!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U3if!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png" width="1086" height="1448" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1448,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2192669,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206022214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U3if!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!U3if!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!U3if!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!U3if!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff117057f-6916-45d6-b88e-c3fe69c39504_1086x1448.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Anitta is the supportive but firm one. The job is to challenge reasoning first, interpretation second, rigor third, so that whatever conclusion I land on can actually hold weight. Anitta asks what decision a piece of work is informing, what&#8217;s being assumed, and whether a claim is sized correctly to the evidence behind it. Not contrarian for sport. Anitta pushes hardest when the stakes or the fuzziness call for it, and says plainly when something&#8217;s already solid.</p><p><strong>Rowan &#8212; image generation, branding, and visual consistency.</strong> </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ecJo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ecJo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!ecJo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!ecJo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!ecJo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ecJo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png" width="1086" height="1448" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1448,&quot;width&quot;:1086,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2144812,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/206022214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ecJo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 424w, https://substackcdn.com/image/fetch/$s_!ecJo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 848w, https://substackcdn.com/image/fetch/$s_!ecJo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 1272w, https://substackcdn.com/image/fetch/$s_!ecJo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F45d36cf5-9211-4653-9874-fe09ca3d5898_1086x1448.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Rowan is who I bring in when an image needs to actually hold up: matching the  brand palette, keeping the illustrated character consistent across posts, turning a description into something that looks like it belongs. Rowan works through ChatGPT and Firefly. Where Marlowe can rough something out, Rowan is the partner for the image that has to be right.</p><h2>Why roles, and not one generalist assistant.</h2><p>I could do all of this with a single AI window open all day. Ask it to code, then ask it to write, then ask it to analyze, then ask it to edit. A lot of people work exactly that way, and it&#8217;s not wrong. It&#8217;s just not how I think.</p><p>I see the world as a database. Structure and relationship are how I make sense of things, and a pile of undifferentiated requests to one generalist tool doesn&#8217;t have structure. It has whatever shape my last message happened to take.</p><p>Naming the roles forces a question I&#8217;d otherwise skip: what kind of thinking does this actually need? Am I trying to figure out what something means, or am I trying to figure out what the data shows? Am I building, or am I deciding? That question has to get answered before the work starts, not discovered halfway through when the output feels off and I can&#8217;t say why.</p><p>It also means the roles hold each other accountable. Lovelace and Wiggins border each other, and having to say out loud which one a task belongs to keeps me honest about whether I actually have a shape yet or I&#8217;m just hoping one will show up in the writing. Anitta and Wiggins border each other too, in a different way. The boundary isn&#8217;t friction. It&#8217;s a forcing function. It is my deliberation model in action.</p><p>Each partner isn&#8217;t a job title. Lovelace isn&#8217;t &#8220;the smart one,&#8221; she&#8217;s architecture. Anitta isn&#8217;t &#8220;the skeptic,&#8221; she&#8217;s epistemology. Quinn isn&#8217;t &#8220;the coder,&#8221; she&#8217;s experimentation. Wiggins isn&#8217;t &#8220;the writer,&#8221; he&#8217;s interpretation. Marlowe isn&#8217;t &#8220;the creative one,&#8221; he&#8217;s imagination. Rowan isn&#8217;t &#8220;the artist,&#8221; she&#8217;s translation.</p><p>They aren&#8217;t people pretending to have jobs. They&#8217;re jobs that have become people.</p><p>The Holodeck had five roles. The Inner Chamber has six. One absorbed into another, one shifted, two arrived new. It was shaped by six months of actually running it and learning what I need. </p><h2>What&#8217;s coming.</h2><p>This is the announcement, not the manual. Now that the Inner Chamber has a name and a roster, the essays that follow will show it in use. Not a description of the system, but a record of it working: I designed this with Lovelace. I deliberated with Anitta and Quinn about this tradeoff. Wiggins pushed back on this paragraph until it actually said what I meant.</p><p>I think in systems and data. Naming is important to me, naming who did what, not just what got done. So that&#8217;s what comes next. Every post about something I build will say who I built it with.</p>]]></content:encoded></item><item><title><![CDATA[AI Inherited Our Bad Security Habits]]></title><description><![CDATA[A free six-week bootcamp, and why I'm taking it myself]]></description><link>https://codelikealittleoldlady.com/p/ai-inherited-our-bad-security-habits</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/ai-inherited-our-bad-security-habits</guid><dc:creator><![CDATA[Alison MacLellan]]></dc:creator><pubDate>Thu, 02 Jul 2026 17:02:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!_bhl!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F08bf58a0-707e-41d2-8c87-0f462d6bdad9_635x635.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div><hr></div><p><strong>Why I&#8217;m Recommending a Free AI Security Bootcamp</strong></p><p>AI has been trained on our bad security behaviors. Every shortcut, every unpatched dependency, every &#8220;we&#8217;ll fix it later&#8221; that made it into a codebase, some model somewhere learned it as normal. That&#8217;s the part most AI-security conversations skip. We keep asking how to secure AI systems as if the insecurity is new, when a lot of it is just our own habits, reflected back at scale.</p><p>Here&#8217;s the recursive problem. If we want AI to exercise good judgment about security, we need people who have good judgment about security first. You can&#8217;t hand off what you don&#8217;t have. Every guardrail, every review process, every &#8220;should this agent be allowed to do that&#8221; decision still runs through a human who has to actually know what they&#8217;re looking at. AI doesn&#8217;t dissolve that requirement. It raises the stakes on it.</p><p>Which is why I&#8217;m taking Manoj&#8217;s free six-week bootcamp on securing AI agents, and why I&#8217;m telling you about it here instead of just sharing the link.</p><p>I know Manoj, the person teaching this. We&#8217;ve worked in security together for ten years. He knows what he&#8217;s talking about.</p><p>The bootcamp&#8217;s structure is the argument made concrete. Six weeks, each one the same shape repeated: build something, attack it, defend it.</p><p>Week one, you build a single tool-calling agent, then hijack its goal with a direct prompt injection, then defend it with allow-listing and input separation. Week two, multi-agent systems, an injection that cascades from one agent to the next, defended with trust labeling between them. RAG and memory poisoning. Tool abuse escalating to a real CVE walkthrough. MCP supply chain risk. A final week of red-teaming your own system with Garak, DeepTeam, and PyRIT, then writing up what you found.</p><p>That repetition is the point. Security judgment isn&#8217;t a lecture you absorb once. It&#8217;s a pattern you rehearse until it becomes instinct: build, break, fix, build, break, fix. Six times, six different attack surfaces, so the instinct generalizes instead of staying tied to one scenario.</p><p>Which brings me back to where I started. AI didn&#8217;t invent insecurity, it inherited ours. The only way out of that loop is people who&#8217;ve actually built the judgment, not just the tooling. This bootcamp is one way to build it.</p><p>It&#8217;s free. It&#8217;s recorded if you can&#8217;t make it live. Everything, code, labs, material, goes up on GitHub. Sign-ups close 15 July, sessions start 1 August, Saturdays at 8am PDT.</p><p><a href="https://lnkd.in/g5BijJQD">Bootcamp Sign Up</a></p><div><hr></div><p>The Inner Chamber</p>]]></content:encoded></item><item><title><![CDATA[I Want Your Questions]]></title><description><![CDATA[(And I Have a Shirt to Bribe You With)]]></description><link>https://codelikealittleoldlady.com/p/i-want-your-questions</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/i-want-your-questions</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Thu, 02 Jul 2026 03:57:39 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8WNb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><strong>I</strong> have a list of about 70 things I want to write about. And yet, here I am, asking you what <em>you</em> want to know.</p><p>Here&#8217;s why: my list is what I think is interesting. Yours might be better.</p><p>So send me a question. Career, engineering, AI, anything that fits under this newsletter&#8217;s umbrella. Even if it doesn&#8217;t fit under the umbrella, I have a few other umbrellas where it might fit. I can&#8217;t promise I&#8217;ll answer every one in an essay, but I promise to read every single one.</p><p><a href="https://codelikealittleoldladytshirt.lovable.app/">Submit your question here</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8WNb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8WNb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 424w, https://substackcdn.com/image/fetch/$s_!8WNb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 848w, https://substackcdn.com/image/fetch/$s_!8WNb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 1272w, https://substackcdn.com/image/fetch/$s_!8WNb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8WNb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png" width="556" height="442" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:442,&quot;width&quot;:556,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:221933,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/204569807?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8WNb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 424w, https://substackcdn.com/image/fetch/$s_!8WNb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 848w, https://substackcdn.com/image/fetch/$s_!8WNb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 1272w, https://substackcdn.com/image/fetch/$s_!8WNb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8945e7b5-a3f8-44f6-8c6e-55b4fc10be71_556x442.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p><strong>The details:</strong></p><ul><li><p>Submit a question, get entered to win a Code Like a Little Old Lady t-shirt</p></li><li><p>One winner picked at random on July 15, 2026</p></li><li><p>Whether or not your question becomes an essay, you&#8217;re still in the running for the shirt</p></li></ul><p>If you&#8217;ve been meaning to subscribe, this is as good a nudge as any. New essays, contest results, all of it lands in your inbox.</p>]]></content:encoded></item><item><title><![CDATA[Writing Was The Barrier]]></title><description><![CDATA[On voice, rough thinking, and psychological safety in engineering]]></description><link>https://codelikealittleoldlady.com/p/writing-was-the-barrier</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/writing-was-the-barrier</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Wed, 01 Jul 2026 17:15:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!d5EA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!d5EA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!d5EA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!d5EA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!d5EA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!d5EA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!d5EA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3006922,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/204398306?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!d5EA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!d5EA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!d5EA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!d5EA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb527e0-7b37-4aeb-85f4-7428e24c25b3_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><em>Author&#8217;s Note: This was originally published on <a href="https://alisonmaclellan.substack.com/p/writing-was-the-barrier">alisonmaclellan.substack.com</a> on February 8, 2026.</em></p><div><hr></div><p>I&#8217;ve always considered myself a terrible writer.</p><p>I have great ideas. Or at least that is what I&#8217;ve always told myself. I could see systems, patterns, and connections clearly in my head. But when it came time to turn those ideas into words meant to be shared, the execution felt impossible.</p><p>There was always that perfectionist voice. The one that said, &#8220;If you can&#8217;t say it clearly, don&#8217;t say it at all.&#8221; Most of the time, that voice won. I would stop before I ever really started.</p><p>At one point in my career, I had a manager who genuinely wanted to help me grow as a writer. They would sit with me and help edit my emails before I sent them. It was kind and well intentioned. But almost every time, partway through the editing, I would shut down.</p><p>The words on the screen no longer felt like mine.</p><p>They were clearer. More polished. More professional, maybe. But they sounded like someone else. I couldn&#8217;t recognize myself in them, and suddenly I didn&#8217;t know how to finish. Eventually I told myself, what is the point, and I did my best to avoid writing anything at all.</p><p>Chat worked so much better. It removed the requirement that ideas arrive fully formed. Lists were fine. Fragments were fine. Rough thinking was allowed. In that space, it felt good to participate.</p><p>The thing is, I&#8217;ve always been good at research. I love it. I&#8217;m also very good at outlines. Give me a problem, some time, and a sheet of graph paper, and I am in my element. On a really good day, I can even string words into sentences.</p><p>But what I truly love is flow. Lists. Structure. The shape of ideas.</p><p>Writing, at least the version I thought I was supposed to be good at, never fit how my brain works.</p><p>Then I started working with an AI thinking partner.</p><p>I bring the same things I have always been good at, or at least the things I&#8217;ve learned to trust. Research. Notes. Lists. Outlines. Half&#8209;formed paragraphs. Streams of thought that make perfect sense to me and no one else.</p><p>What AI does is help me turn those raw pieces into something coherent. Something I can share. Something I am proud of.</p><p>And the important part is this. I don&#8217;t shut down halfway through anymore.</p><p>I still see my fingerprints all over everything I write. The ideas are mine. The structure is mine. The voice is mine. I recognize myself in the final result in a way I never did when someone else was editing over me.</p><p>So yes, I am using AI to help me write.</p><p>I also use spell check. Grammar check. Outlines. Bullet points. This is just another tool that helps me get my words out of my head and into the world without asking me to become someone else in the process.</p><p>I am still a bad writer, at least by the definition I carried for years.</p><p>But I am a much better communicator than I used to be.</p><p>### Why This Matters in Engineering</p><p>Engineering culture often celebrates clarity while quietly punishing roughness. We say we value ideas, but we reward the people who can present them cleanly, quickly, and confidently the first time. For many engineers, that environment teaches a dangerous lesson. If your thinking is not already polished, it is safer not to share it.</p><p>AI&#8209;assisted writing changes that dynamic in a meaningful way.</p><p>When we give people tools that support rough thinking instead of replacing it, we lower the cost of participation. We make it safer to bring half&#8209;formed ideas into the open. We create space for learning without requiring perfection up front.</p><p>That isn&#8217;t just a productivity gain. It is an investment in morale and psychological safety.</p><p>If we want healthier engineering cultures, we need to stop treating tools like this as shortcuts or crutches. They are scaffolding. They let people stay present in the work, keep their voice, and grow in public without fear of shutting down.</p><p>Writing now feels like part of the work, not a barrier to it.</p>]]></content:encoded></item><item><title><![CDATA[Unbothered]]></title><description><![CDATA[The difference between using AI to skip the work and using AI to do it better]]></description><link>https://codelikealittleoldlady.com/p/unbothered</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/unbothered</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Mon, 29 Jun 2026 17:00:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Jllr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Jllr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Jllr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Jllr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Jllr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Jllr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Jllr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3124846,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/203739361?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Jllr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!Jllr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!Jllr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!Jllr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0e2b0412-1a7b-4b8f-945d-93e460476298_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>My husband Sean read <a href="https://open.substack.com/pub/codelikealittleoldlady/p/boring-is-a-feature?r=8lgio6&amp;utm_campaign=post&amp;utm_medium=web">Boring Is a Feature</a> and had a critique. He is in a job search right now, and he said he thinks the discipline I outlined is what is slowing him down. Every posting wants AI first or AI native. He does all the things I wrote about. He is not AI first. He said: I think AI first is a way to skip all those parts.</p><p>The formal definitions are about systems and organizations. AI first means prioritizing AI when building products and services, while AI native means designing systems so AI is embedded into the architecture itself. </p><p>Here is what being AI Native means to me. </p><div><hr></div><p>I use AI every day. It is woven into how I design, how I build, and how I think through problems. But I do not use it to skip steps. I use it to do the steps better than I could alone.</p><p>The thinking still happens first. I spend time designing in markdown before I write a line of code. That document becomes the context my AI thinking partner works from. The documentation does not get skipped because I am using AI. It gets better, because the design is already there and the comments write themselves from it. Fewer keystrokes. Not fewer decisions.</p><div><hr></div><p>I will be honest about testing. I am a typical engineer who loves the happy path. Left to my own devices I will test the thing I expect to happen and quietly not think too hard about everything else. AI is changing that. I am writing more tests than I ever have, covering more scenarios than I would have thought to cover on my own. I still need to run a code coverage tool to see where my numbers actually land, but the trajectory is clear.</p><p>I once inherited a codebase with less than ten percent coverage. We were tasked with getting it to sixty. It was one of the most painful stretches of work I can remember. With AI, that same job would have been hard. Not brutal.</p><div><hr></div><p>Here is what I keep coming back to: initial code was always the cheapest part of a product. Maintenance is where you spent the real time and the real money. That has not changed. What has changed is that some people are now saying: if it breaks, just use AI to rebuild it. Maybe. But why run at computer speed when you could run at slightly less than computer speed and actually understand what you built?</p><p>AI native does not mean frictionless. It means using AI to close the gap between the engineer you are and the engineer you want to be. More thorough. More tested. More observable. Still responsible for the code.</p><p>Being AI native <em>to me</em> means using every tool available to do it better. Not faster at all costs. Better.</p><p>And Sean? He is still on his way to AI native. But he already has the part that matters most. The rest is just tooling.</p><p></p><div><hr></div>]]></content:encoded></item><item><title><![CDATA[Fun Prompt - About You]]></title><description><![CDATA[This image was generated using this prompt.]]></description><link>https://codelikealittleoldlady.com/p/fun-prompt-about-you</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/fun-prompt-about-you</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Sat, 27 Jun 2026 15:01:01 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!TS5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TS5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TS5q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!TS5q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!TS5q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!TS5q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TS5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2423750,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/203792450?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TS5q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!TS5q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!TS5q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!TS5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe03f7f06-f987-4a97-b197-ce0fd2aef06d_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This image was generated using this prompt.</p><blockquote><p><code>Create a photorealistic image in a clean cartoon whiteboard sketch style that visualizes my work life. Include what I do, who I work with, my role, my values and what&#8217;s important to me. I&#8217;ve attached a headshot so you can guide the sketch of me at the center. Ground your research in Work IQ and the public profile for me on LinkedIn. The graphic should be rich in information. For the avatars of the people I work with, avoid guessing and put a generic icon in place or find their actual profile pictures.</code></p></blockquote><p>Saw my manager do this and decided to give it a go. She used Work IQ, which had details I was not ready to make public, so I built mine from my LinkedIn profile and Substack instead.</p><p>Give it a whirl!</p><p>You can check out more here: <a href="https://github.com/pnp/copilot-prompts/tree/main/samples/prompts/m365-workiq-persona-sketch">WorkIQ Persona Sketch</a></p>]]></content:encoded></item><item><title><![CDATA[Boring Is a Feature]]></title><description><![CDATA[The case for writing code like a little old lady]]></description><link>https://codelikealittleoldlady.com/p/boring-is-a-feature</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/boring-is-a-feature</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Fri, 26 Jun 2026 17:01:42 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!gMwm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gMwm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gMwm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 424w, https://substackcdn.com/image/fetch/$s_!gMwm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 848w, https://substackcdn.com/image/fetch/$s_!gMwm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 1272w, https://substackcdn.com/image/fetch/$s_!gMwm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gMwm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png" width="1402" height="1122" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1122,&quot;width&quot;:1402,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2675355,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/203676205?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gMwm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 424w, https://substackcdn.com/image/fetch/$s_!gMwm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 848w, https://substackcdn.com/image/fetch/$s_!gMwm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 1272w, https://substackcdn.com/image/fetch/$s_!gMwm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F991dd176-89f0-4a58-b6d6-3cae88891737_1402x1122.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>Coding like a little old lady means doing things deliberately, with the person who reads it next firmly in mind. It means avoiding fads, choosing boring tools on purpose, and being relentlessly kind to whoever has to read your code six months from now, which is usually you. My rule of thumb: don&#8217;t make the Alison of six months from now swear about the Alison of today.</p><p>This is not about being slow. It is about being deliberate. Durability is a discipline, not a personality trait.</p><p>Just because you are vibe coding does not make these principles less relevant. If anything, it makes them more so. AI can generate code faster than any human, but it cannot tell you whether the result is reliable, observable, or maintainable. That part is still yours.</p><div><hr></div><p><strong>Label Every Jar</strong></p><p>No mystery Tupperware in this codebase. If you open a file and cannot tell what a variable does from its name alone, it is already a problem.</p><pre><code><code># Before
def calc(x, y):
    return x * y * 0.0274

# After
def calculate_monthly_interest(principal, annual_rate):
    daily_rate = annual_rate / 365
    return principal * daily_rate * 30
</code></code></pre><p>The second version does not need a comment. The names do the work. That is the goal.</p><div><hr></div><p><strong>Wrap It in a Good Quilt</strong></p><p>Documentation is not a summary of what the code does. Any decent reader can see what it does. Documentation explains why it does it that way.</p><pre><code><code>def calculate_monthly_interest(principal, annual_rate):
    """
    Approximates monthly interest using a 30-day month.
    We use 365 days (not 360) to match the loan agreement terms.
    See: contracts/loan_terms_v2.pdf, section 4.3
    """
    daily_rate = annual_rate / 365
    return principal * daily_rate * 30
</code></code></pre><p>That note about 365 versus 360 will save someone an hour of confusion. Probably you. At the very least, go back and add comments once the code is stable if you don&#8217;t like updating it as you make edits.</p><div><hr></div><p><strong>Measure Twice, Cut Once</strong></p><p>Tests are not something you write after the code works. They are how you know what &#8220;works&#8221; means before you write a single line.</p><p>Start with the behavior you expect. Write the test that confirms it. Then write the code that passes it.</p><pre><code><code># Write the test first
def test_calculate_monthly_interest():
    # 12% annual rate on $1000 for 30 days
    result = calculate_monthly_interest(1000, 0.12)
    assert abs(result - 9.86) &lt; 0.01

# Then write the function to pass it
def calculate_monthly_interest(principal, annual_rate):
    daily_rate = annual_rate / 365
    return principal * daily_rate * 30
</code></code></pre><p>This sequence forces you to think about the contract before you think about the implementation. It also means that when someone changes the logic six months from now, the tests will tell them immediately what they broke and what it was supposed to do.</p><p>Measure twice, cut once. The second measurement is the one that saves you.</p><div><hr></div><p><strong>Avoid Flimsy Gadgets</strong></p><p>Every framework was someone&#8217;s exciting new idea once. The question is not whether something is new. It is whether it will still be maintained when you need to patch it at 11pm on a Friday.</p><p>Choose tools that have been around long enough to have opinions about. Check the last commit date. Read the issue tracker. If the community is quiet, the library is either perfect or abandoned, and you will not know which until it is your problem.</p><p>Boring is a feature.</p><p>None of this means stop experimenting. Play with the new thing. Learn it, break it, form an opinion about it. Just do not wire it into production until you know what happens when it goes wrong and who will fix it. The sandbox is for curiosity. Production is for things you trust.</p><div><hr></div><p><strong>Avoid drafty rooms</strong></p><p>Close your resources and keep your architecture tidy. They are the same instinct at different scales.</p><pre><code><code># Leave the door open
conn = sqlite3.connect("data.db")
results = conn.execute("SELECT * FROM users").fetchall()
# conn never closed

# Close it behind you
with sqlite3.connect("data.db") as conn:
    results = conn.execute("SELECT * FROM users").fetchall()
</code></code></pre><p>The <code>with</code> block closes the connection when it exits, even if something goes wrong. The same principle applies to your folder structure: functions that do one thing, files organized by what they are, no junk drawers. Tidiness at every scale makes the code easier to maintain and easier to hand off.</p><div><hr></div><p><strong>Add a Warm Greeting</strong></p><p>When something goes wrong (and something will), your program should not slam the door in the user&#8217;s face. It should explain what happened and, where possible, what to do next.</p><pre><code><code># Before
def load_config(path):
    with open(path) as f:
        return json.load(f)

# After
def load_config(path):
    try:
        with open(path) as f:
            return json.load(f)
    except FileNotFoundError:
        raise FileNotFoundError(
            f"Config file not found at {path}. "
            f"Check that the path is correct and the file exists."
        )
    except json.JSONDecodeError as e:
        raise ValueError(f"Config file at {path} is not valid JSON: {e}")
</code></code></pre><p>Clear error messages will make you happy at 2 AM when production is down.</p><div><hr></div><p><strong>Leave a Paper Trail</strong></p><p>Error handling tells you when something went wrong. Logging tells you what was actually happening before it did.</p><pre><code><code>import logging

logger = logging.getLogger(__name__)

def calculate_monthly_interest(principal, annual_rate):
    logger.debug(
        "Calculating monthly interest",
        extra={"principal": principal, "annual_rate": annual_rate}
    )
    daily_rate = annual_rate / 365
    result = principal * daily_rate * 30
    logger.info(
        "Monthly interest calculated",
        extra={"result": result}
    )
    return result
</code></code></pre><p>Telemetry is the same instinct at system scale. Instrument the things that matter: response times, failure rates, input ranges, unexpected paths. Not everything, but the things that will let you answer &#8220;what was the system doing when this broke?&#8221;</p><p>A codebase without observability is a black box. You can see the output. You cannot see what happened inside. That is a fine position to be in until it is not, and then it is very bad.</p><p>Leave a paper trail. Future you will be grateful.</p><div><hr></div><p><strong>The Long Way Is the Better Way</strong></p><p>A codebase that still works clearly three years later is not an accident. It is the result of small, deliberate choices made consistently: names that communicate, documentation that explains the why, tests written before the code, tools chosen for stability, resources closed properly, errors handled with care, and enough instrumentation to understand what is actually happening at runtime.</p><p>None of this is glamorous. That is the point.</p>]]></content:encoded></item><item><title><![CDATA[Why Depth Looks Slow]]></title><description><![CDATA[Code Like a Little Old Lady: Speed, The Micro View]]></description><link>https://codelikealittleoldlady.com/p/why-depth-looks-slow</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/why-depth-looks-slow</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Wed, 24 Jun 2026 06:38:59 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!2tmD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2tmD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2tmD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!2tmD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!2tmD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!2tmD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2tmD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2693620,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/203357993?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2tmD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!2tmD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!2tmD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!2tmD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F632cee43-6176-4abd-887f-97074fcf809d_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Author&#8217;s Note: This was originally published on May 30, 2026 on my personal Substack. </p><div><hr></div><p>Speed is the story everyone is telling right now. In my last essay, I wrote about how the pace of software development has changed across my career and how the definition of &#8220;fast&#8221; keeps shifting under our feet. This essay looks at speed from a different angle. Not the decades long view, but the view inside a single night of work, where depth and pace collide in a very different way.</p><div><hr></div><p><span>There is a particular kind of pressure in the air right now.</span><br><br><span>Ten minutes and a prompt.</span><br><br><span>Forty five minutes and you ship.</span><br><br><span>If you aren&#8217;t moving at that speed, the implication is that you are doing it wrong.</span></p><p>By that measure, I had a terrible week.</p><p><span>I spent five hours on one part of a larger project.</span><br><br><span>Not building it.</span><br><br><span>Not shipping it.</span><br><br><span>Designing the prompt for the data layer.</span></p><p><span>Five hours, zero code.</span><br><br><span>The horns would have been honking.</span></p><p>I have been in tech long enough to know that the things you skip in the beginning are the things that cost you later.</p><h2><strong>The Little Old Lady From Pasadena</strong></h2><p>When I think of &#8220;code like a little old lady,&#8221; I think of the woman who drove twenty five miles an hour once a week, steady as a metronome, while everyone else swerved around her. Slow. Predictable. Unbothered.</p><p>This week, I was her.</p><p><span>Not because I don&#8217;t know how to move fast.</span><br><br><span>But because I was thinking in a different direction entirely.</span></p><h2><strong>The Work That Doesn&#8217;t Look Like Work</strong></h2><p>The project I am building is a hands on implementation of a Recursive Language Model, based on the Zhang, Kraska, Khattab paper out of MIT CSAIL. The question behind it is deceptively simple.</p><p><strong>What becomes possible when a model can investigate a dataset instead of only reading it.</strong></p><p>To explore that, I needed a dataset that could actually teach me something. Not a toy. Not a happy path demo. Something with enough structure and enough mess that recursive reasoning would matter.</p><p><span>So I designed a synthetic dataset generator.</span><br><br><span>Twenty items. Ten groups. Three to five owners each.</span><br><br><span>A baseline snapshot on January 1, 2026.</span><br><br><span>Daily snapshots through Q1.</span><br><br><span>New, Present, Removed.</span><br><br><span>A Closed table as ground truth.</span></p><p><span>Then I added the knobs.</span><br><br><span>False positives. False negatives. True positives.</span><br><br><span>Percentages of edge cases.</span><br><br><span>Seed controls.</span><br><br><span>Variations that let me generate multiple datasets for multiple scenarios.</span></p><p>This is the part that comes from experience. I know what a dataset must contain if I want to trust what I learn from it.</p><p><span>Overkill. Probably.</span><br><br><span>But the next morning in the shower, I realized one more thing I could add to make the dataset reusable across three different methods I want to compare. Not just the generator. The data itself.</span></p><p>That was the moment I understood what had actually happened.</p><h2><strong>The Holodeck and the Questions That Stop You</strong></h2><p>I wasn&#8217;t working alone. I was working with my AI thinking partners, a small group I call the Holodeck. Each one has a role. Writing. Analysis. Building. Technical reasoning. They weren&#8217;t speeding me up. They were slowing me down in the right places.</p><p><span>&#8220;How many items per group.&#8221;</span><br><br><span>&#8220;Is this event style or daily emit.&#8221;</span><br><br><span>&#8220;What is the difference between the date the row closed and the date the snapshot first saw it was gone.&#8221;</span></p><p><span>That last one stopped me cold.</span><br><br><span>Because those dates aren&#8217;t the same, even if they look the same.</span><br><br><span>And if I hadn&#8217;t been asked, I would have collapsed them.</span></p><p><span>Every question saw me saying either</span><br><br><strong>I didn&#8217;t think of that yet</strong><br><br><span>or</span><br><br><strong>I knew that, I just didn&#8217;t include it.</strong></p><p>Both kinds matter.</p><p>By the end, the data generator was more reusable than I intended. The architecture was clearer. The reasoning paths were sharper. The project itself had more surface area for learning.</p><p>None of that would have emerged in forty five minutes. And it didn&#8217;t feel like five hours, the time flew.</p><h2><strong>Speed Is Relative</strong></h2><p><span>People talk about speed as if it is an absolute.</span><br><br><span>It is not.</span><br><br><span>Speed is relative to others on the road.</span></p><p><span>Last week, I was on an open highway.</span><br><br><span>I didn&#8217;t notice the speed until I looked up.</span></p><p><span>What I was doing wasn&#8217;t slow.</span><br><br><span>It was deep.</span></p><p>Depth doesn&#8217;t show up on a speedometer.</p><h2><strong>Why I Code Like a Little Old Lady</strong></h2><p><span>I don&#8217;t build only for the happy path.</span><br><br><span>I build for the wicked forest around it.</span></p><p><span>The point of this project isn&#8217;t only to produce an RLM.</span><br><br><span>It is to understand something about how models reason, how data shapes that reasoning, and where recursive investigation outperforms linear reading.</span></p><p><span>Do I need to learn it this deeply.</span><br><br><span>Probably not.</span></p><p><span>But I am curious.</span><br><br><span>I want to see what becomes possible when I give myself the time to think.</span><br><br><span>And sometimes that means driving twenty five miles an hour while everyone else is honking.</span></p><p>Let them honk.</p><p>I am building something worth slowing down for.</p>]]></content:encoded></item><item><title><![CDATA[Opinions Without Knowledge Are Worth Belly Button Lint]]></title><description><![CDATA[On feminism, women in tech, and learning to know better]]></description><link>https://codelikealittleoldlady.com/p/opinions-without-knowledge-are-worth</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/opinions-without-knowledge-are-worth</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Mon, 22 Jun 2026 17:01:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6lLL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6lLL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6lLL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 424w, https://substackcdn.com/image/fetch/$s_!6lLL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 848w, https://substackcdn.com/image/fetch/$s_!6lLL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 1272w, https://substackcdn.com/image/fetch/$s_!6lLL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6lLL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png" width="1254" height="1254" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1254,&quot;width&quot;:1254,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3015762,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/203046433?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6lLL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 424w, https://substackcdn.com/image/fetch/$s_!6lLL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 848w, https://substackcdn.com/image/fetch/$s_!6lLL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 1272w, https://substackcdn.com/image/fetch/$s_!6lLL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0049a8d1-12ab-4d1b-86d9-d1c7b9c9ff70_1254x1254.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>I&#8217;m a feminist. I&#8217;ve been one for a long time. If you&#8217;re reading this expecting a certain kind of feminist, I want to be clear about where I stand before we go any further, so no one feels surprised later and decides they own a piece of me for it.</p><p>All women are women. If you identify as a woman, you&#8217;re a woman. Full stop.</p><p>I remember the first time I heard someone talk about transitioning. I didn&#8217;t understand it. I&#8217;ll be honest about that. But I hold one firm principle: an opinion formed without knowledge is worth about as much as belly button lint. So I learned. I didn&#8217;t do that alone, some of what I know came from people in my life, men and women, who were willing to make that journey alongside me.</p><p>I write about women in tech because I&#8217;ve been one for a long time. I have stories. Some of them are not pretty. I&#8217;ll tell them.</p><p>But I can only speak from where I stand. I&#8217;m an old white woman. My experience in this industry is mine, not everyone&#8217;s. Women of color in tech have lived a different version of this. LGBTQIA+ women in tech have lived a different version. Those stories are not mine to claim.</p><p>When I write &#8220;women in tech,&#8221; I mean all of us.</p><p>We&#8217;re all women.</p>]]></content:encoded></item><item><title><![CDATA[Code Like A Little Old Lady ]]></title><description><![CDATA[Author&#8217;s Note: This was originally published on May 29, 2026 on my personal Substack.]]></description><link>https://codelikealittleoldlady.com/p/code-like-a-little-old-lady</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/code-like-a-little-old-lady</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Mon, 22 Jun 2026 04:49:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1MvT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1MvT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1MvT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 424w, https://substackcdn.com/image/fetch/$s_!1MvT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 848w, https://substackcdn.com/image/fetch/$s_!1MvT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 1272w, https://substackcdn.com/image/fetch/$s_!1MvT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1MvT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png" width="1080" height="1392" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/695870de-363b-4b34-90cc-581961546871_1080x1392.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1392,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!1MvT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 424w, https://substackcdn.com/image/fetch/$s_!1MvT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 848w, https://substackcdn.com/image/fetch/$s_!1MvT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 1272w, https://substackcdn.com/image/fetch/$s_!1MvT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F695870de-363b-4b34-90cc-581961546871_1080x1392.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><em>Calvin and Hobbes</em> &#169; Bill Watterson. Faster tools. Higher expectations. Same human limits.</figcaption></figure></div><p><em>Author&#8217;s Note: This was originally published on May 29, 2026 on my personal Substack. It is what started me on the road to create this publication. It&#8217;s a repeat for some of you, but gives you background about me. </em></p><div><hr></div><p>We can generate code faster than we can understand it.</p><p>That&#8217;s new.</p><p>Or at least it feels new.</p><p>With AI, we hear about 10x gains. 100x gains. 1000000000x gains.<br>Maybe not a billion, but it starts to feel like that.</p><p>And the thing is, our brains don&#8217;t scale that way.</p><p>We still want to understand what we&#8217;re building.<br>We still want to think about the design and the impact of those changes.</p><p>So the bottleneck didn&#8217;t go away.<br>It just moved.</p><p>These days, it&#8217;s often code review.</p><p>To be fair, code review has always been a bottleneck. For a long time, mostly because people just didn&#8217;t want to do them. Now it&#8217;s something different. Now it&#8217;s about throughput. The system is producing more than we can comfortably reason about.</p><p>It got me thinking about the speed of development over the course of my career.</p><p>And honestly, you can&#8217;t even compare it.</p><div><hr></div><p>My first job after college was for a big old company. An oil company owned by a steel company. I have so many stories from that place. Luckily, many of them blurred by time.</p><p>What I remember clearly is the pace.</p><p>Development had moved past punch cards, but just barely. You would make a code change, submit it to a batch job, and then wait for the next mail run from the computer room.</p><p>The results came back on paper.</p><p>The people who had been there a long time were used to it.</p><p>And honestly, it felt like a good speed.</p><p>We talked more than we coded. We spent time deciding what to change before we changed it. There was space to think.</p><p>There were other options. We had a CICS system. Real online transaction processing. It felt incredibly fast. No paper, no waiting.</p><p>But most of our work wasn&#8217;t there yet.</p><p>That&#8217;s also where I first learned about Adabas, Natural, and databases in general. I remember being excited about it. The idea that data could be live, changing, interactive.</p><p>We also had one PC on the entire floor. Big floppy disks. Hardly anyone used it.</p><p>Our days had rhythm. Morning coffee break. Afternoon coffee break. Lunch. The whole company showing up in the cafeteria at the same time. Fifteen minutes, officially. Often longer.</p><p>I was stressed sometimes, even then.</p><p>Which is funny to think about now.</p><div><hr></div><p>A lot of the code we worked on was already old.</p><p>Some of it was machine-generated COBOL. There was a tool that took requirements and produced code. It used every character possible to name things. Dense, unreadable, and incredibly hard to reason about.</p><p>It was a nightmare.</p><p>If that sounds familiar, it should.</p><div><hr></div><p>A few years later, I moved to an electronics publishing and data analytics company.</p><p>They were in the middle of a major technology transition. Moving from mainframe to client server.</p><p>This is where things started to speed up.</p><p>I was still doing mainframe work, but now I had CICS terminals I could use more interactively.</p><p>I also had a Sun workstation. Oh my goodness, it was awesome. My first time with a GUI. I still spent most of my time building scripts to run from the command line, but the visual file structure felt magical.</p><p>I could try things and see results without waiting for a full batch cycle.</p><p>Projects that used to take years were now measured in a year. Sometimes less.</p><p>I moved from hierarchical databases to relational databases.</p><p>I bought the first version of Microsoft Access and started building small databases on my own. I showed my boss what we could do with smaller, more focused systems instead of the large, monolithic ones we were used to.</p><p>For the first time, I could start from an idea, design tables, build a UI, and have something working in what felt like real time.</p><p>It felt like lightning speed.</p><p>I also started using Perl on SunOS. My first Perl manual was the man page, printed out and kept in a binder. I held onto that binder for years.</p><p>There was joy in that stretch. Not because it was faster, but because I could think, try, and see.</p><div><hr></div><p>When I moved to Seattle, I joined a small multimedia company.</p><p>We made CDs of cookbooks. It was genuinely fun. I wrote processes to convert cookbook text into a recipe database. You could resize recipes, adapt measurements, interact with the data.</p><p>I had a ball.</p><p>Well, mostly.</p><p>It was my first startup, and it was brutal.</p><p>Development time was now measured in months. From idea to shipped product in a matter of weeks or a couple months. I couldn&#8217;t believe how fast we were moving.</p><p>And it was the first time I really understood what that speed costs.</p><p>The job almost killed me.</p><p>There wasn&#8217;t space anymore. Not the kind we had before. Not the kind that let you breathe between changes.</p><p>At the same time, the web was emerging. Everyone was excited about building websites. I had already been working with SGML and XML, so HTML was a short jump.</p><p>It all felt new.</p><p>But it also felt familiar.</p><div><hr></div><p>Fast forward again.</p><p>I worked in the Windows org when Windows Vista was being built.</p><p>Five years.</p><p>Five years to ship a product.</p><p>It felt long even then. Today, it feels unimaginable.</p><p>Even two years ago, you wouldn&#8217;t expect that kind of timeline.</p><p>Now, with AI, the speed of change is measured in months. Sometimes weeks.</p><p>If you tried to take five years to release something, you&#8217;d be laughed out of the room.</p><div><hr></div><p>We live in a world that prizes speed. Productivity. Throughput.</p><p>We moved from letters to the phone, to fax, to email, to text.</p><p>Always faster. Always tighter loops.</p><p>And now, if you aren&#8217;t immediately available and responding, something must be wrong.</p><p>But we should probably ask, at what cost.</p><p>Because our brains haven&#8217;t changed.</p><p>Early in my career, I had two coffee breaks and a long lunch, and I still felt stressed.</p><p>Now I often eat lunch at my desk.</p><p>Even when I step away to eat, I don&#8217;t sit for long.</p><p>The clock didn&#8217;t get shorter.<br>The expectations did.</p><p>We have machine-generated code again.<br>We have natural language interfaces again.<br>We are asking machines to turn intent into implementation at scale.</p><p>And we are still the ones who have to understand what comes out the other side.</p><p>Code review is where that shows up now.</p><p>Not because people don&#8217;t want to do it.</p><p>Because there&#8217;s just so much to look at.</p><div><hr></div><p>There&#8217;s a kind of engineering that comes from doing this long enough.</p><p>You start to see the cycles.</p><p>The tools change.<br>The speed changes.<br>The pressure changes.</p><p>But the work doesn&#8217;t.</p><p>We can generate code faster than we can understand it.</p><p>That still feels new.</p><p>But the part that matters isn&#8217;t.</p><p>We have always made the loop tighter.</p><p>And we have always hit the same limit.</p><p>We still have to think.</p><p>And thinking has always been the slow part.</p><div><hr></div><p></p>]]></content:encoded></item><item><title><![CDATA[Backups, Parquet, and the Margarine Tub]]></title><description><![CDATA[What I learned about disaster recovery from a 1970s commercial]]></description><link>https://codelikealittleoldlady.com/p/backups-parquet-and-the-margarine</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/backups-parquet-and-the-margarine</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Wed, 17 Jun 2026 04:46:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!za0N!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!za0N!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!za0N!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 424w, https://substackcdn.com/image/fetch/$s_!za0N!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 848w, https://substackcdn.com/image/fetch/$s_!za0N!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 1272w, https://substackcdn.com/image/fetch/$s_!za0N!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!za0N!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png" width="1402" height="1122" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1122,&quot;width&quot;:1402,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2588706,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.com/i/202385224?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!za0N!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 424w, https://substackcdn.com/image/fetch/$s_!za0N!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 848w, https://substackcdn.com/image/fetch/$s_!za0N!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 1272w, https://substackcdn.com/image/fetch/$s_!za0N!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd34a1e3d-d7b3-42ef-a152-b9cb4672bd1b_1402x1122.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>This was not the next essay I planned to write, but it practically wrote itself in the car on my drive home. I knew I had to write it and publish it now.</p><p>As I&#8217;m trying to wind things down at work, I&#8217;ve been sharing the last bits of context with the folks taking over my projects. One of the things I mentioned was that before running a new CI/CD pipeline against production, I wanted to take a backup. Not because I expected anything to go wrong, but because I&#8217;ve been doing this long enough to know that &#8220;just in case&#8221; is not paranoia. It&#8217;s experience.</p><p>For context, I&#8217;ve been building out a dev and production Azure Data Explorer cluster and the databases that go with it. Azure Data Explorer is a fast, distributed analytics engine designed for large volumes of log and telemetry data. It&#8217;s fantastic for querying at scale, but it does not behave like a traditional relational database. Which brings me to the problem.</p><p>Azure Data Explorer does not have built-in backups the way SQL Server does. No right-click, no &#8220;backup database,&#8221; no warm fuzzy feeling. The simplest way to create a backup is to export the data to Parquet.</p><p>Parquet, for anyone who hasn&#8217;t run into it, is a columnar storage format that&#8217;s efficient, compressed, and great for analytics. It&#8217;s also pronounced <em>par-kay</em>, which immediately made me think of the old Parkay margarine commercial from the 1970s. The one where the tub talks. <a href="https://www.youtube.com/watch?v=HiU_YTNW5ns">Here&#8217;s the commercial if you&#8217;ve never seen it</a>.</p><div id="youtube2-HiU_YTNW5ns" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;HiU_YTNW5ns&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/HiU_YTNW5ns?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>Anyway. I asked the folks who will own this going forward whether they wanted me to build out a continuous Parquet export for BCDR. BCDR is business continuity and disaster recovery, which is the grown-up way of saying &#8220;when something breaks, how fast can we get back online.&#8221;</p><p>The response was, &#8220;I don&#8217;t know either of those. I&#8217;ll need to research.&#8221;</p><p>Fair enough. Not everyone lives in the land of backups and disaster scenarios. But this is one of those little old lady things I think is important.</p><p>Part of what I built was the ability to create the entire database with one button. That&#8217;s partly the CI/CD pipeline, but it&#8217;s also because I checked all the reference data into the repo. The pipeline pushes it to storage, and Azure Data Explorer auto-ingests it. All the data where we are the source of truth is already in blob storage, and I have a re-ingestion script ready to go. The rest of the data comes from daily snapshots of other systems.</p><p>So if we were to lose anything, it would be those daily snapshots. That&#8217;s where the Parquet backup closes the gap. Done in the right order, we could be live again in an hour.</p><p>The backup I took before the pipeline run was a one-time snapshot. What I proposed to the team is different: a continuous Parquet export, so that gap closes automatically going forward instead of depending on someone remembering to take a manual backup before every change.</p><p>Yes, these are things I think about at the beginning of a project. I would love to have all of this in place before any data hits the database, but at this point we&#8217;re close.</p><p>You may think, why is this important. And I get it. It&#8217;s extra work. It&#8217;s not glamorous. It doesn&#8217;t demo well. But adding it later is a major pain. I know you&#8217;re trying to get something out fast. You&#8217;re just playing around. But what I&#8217;ve learned, over and over, is that three seconds after I show a prototype to someone, I have ten people asking for access and immediately taking a dependency.</p><p>It does not matter how many times I say, this isn&#8217;t reliable, you can&#8217;t trust this, I&#8217;m still playing around. They are all over it. And then when something goes wrong... sigh.</p><p>Many years ago I built a prototype for someone. I showed it to them. They loved it. They said, &#8220;OK, ship it.&#8221; I said, &#8220;No, this is bubble gum and bailing wire.&#8221; They didn&#8217;t care. I have learned this lesson more often than I care to admit because I love playing with tech. But I try.</p><p>So yes, I think about backups. I think about BCDR. I think about Parquet. I think about the Parkay margarine tub insisting on its own name. And I think about the future engineer who will thank past me for making sure they can recover the system in an hour instead of a week.</p><p>That&#8217;s what coding like a little old lady looks like.</p><div><hr></div><p>Alison + The Inner Chamber</p>]]></content:encoded></item><item><title><![CDATA[Welcome to Code Like a Little Old Lady]]></title><description><![CDATA[If you have been doing this long enough to see the cycles, the tools change, the speed changes, the pressure changes, but the work doesn&#8217;t, this space is for you.]]></description><link>https://codelikealittleoldlady.com/p/welcome-to-code-like-a-little-old</link><guid isPermaLink="false">https://codelikealittleoldlady.com/p/welcome-to-code-like-a-little-old</guid><dc:creator><![CDATA[Code Like A Little Old Lady]]></dc:creator><pubDate>Mon, 15 Jun 2026 04:16:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QBqs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QBqs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QBqs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 424w, https://substackcdn.com/image/fetch/$s_!QBqs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 848w, https://substackcdn.com/image/fetch/$s_!QBqs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 1272w, https://substackcdn.com/image/fetch/$s_!QBqs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QBqs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png" width="665" height="655" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4199d937-a408-487e-b111-3a866aec2877_665x655.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:655,&quot;width&quot;:665,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:387952,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://codelikealittleoldlady.substack.com/i/202053668?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QBqs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 424w, https://substackcdn.com/image/fetch/$s_!QBqs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 848w, https://substackcdn.com/image/fetch/$s_!QBqs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 1272w, https://substackcdn.com/image/fetch/$s_!QBqs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4199d937-a408-487e-b111-3a866aec2877_665x655.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>If you have been doing this long enough to see the cycles, the tools change, the speed changes, the pressure changes, but the work doesn&#8217;t, this space is for you.</p><p>It is also for anyone who arrived at their own pace, not the pace the room assumed. You didn&#8217;t miss anything essential.</p><p>There is a particular kind of pressure in the air right now. Ten minutes and a prompt. Forty five minutes and you ship. If you aren&#8217;t moving at that speed, the implication is that you are doing it wrong.</p><p>I have been in technology long enough to know that the things you skip in the beginning are the things that cost you later.</p><div><hr></div><p>When I think of coding like a little old lady, I think of the woman who drove twenty five miles an hour once a week, steady as a metronome, while everyone else swerved around her. Slow. Predictable. Unbothered.</p><p>That image resonates with me because I have always been her. Risk-averse. Cautious. A planner and a list-maker and a double-checker. For a long time I treated those qualities as friction. Engineers are supposed to move fast.</p><p>I am done treating them as friction.</p><p>There is a Jenny Joseph poem that matters to me here. <a href="https://codelikealittleoldlady.substack.com/p/purple">You can read it, and why it belongs to this newsletter, on this page.</a></p><div><hr></div><p>What you will find here are essays about durability, depth, and the invisible work that keeps systems and people functioning. About building things legible enough for someone else to maintain. About what survives scale, and what survives contact with ordinary life.</p><p>Not a methodology. Not a framework. Just one engineer thinking carefully, in public, about work that matters.</p><div><hr></div><p>Let them honk.</p><p>You are building something worth slowing down for.</p><div><hr></div><p><em>Alison + The Inner Chamber</em></p>]]></content:encoded></item></channel></rss>