<?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[Am I Human?]]></title><description><![CDATA[A place where I think out loud about Artificial Intelligence, its technical development, future directions, and how it might affect society in general.]]></description><link>https://www.gummihaf.com</link><image><url>https://www.gummihaf.com/img/substack.png</url><title>Am I Human?</title><link>https://www.gummihaf.com</link></image><generator>Substack</generator><lastBuildDate>Tue, 14 Apr 2026 21:48:45 GMT</lastBuildDate><atom:link href="https://www.gummihaf.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Gummi Hafsteinsson]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[gummi@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[gummi@substack.com]]></itunes:email><itunes:name><![CDATA[Gummi Hafsteinsson]]></itunes:name></itunes:owner><itunes:author><![CDATA[Gummi Hafsteinsson]]></itunes:author><googleplay:owner><![CDATA[gummi@substack.com]]></googleplay:owner><googleplay:email><![CDATA[gummi@substack.com]]></googleplay:email><googleplay:author><![CDATA[Gummi Hafsteinsson]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Operating Above the Code]]></title><description><![CDATA[How to structure and steer systems when implementation is no longer the bottleneck.]]></description><link>https://www.gummihaf.com/p/operating-above-the-code</link><guid isPermaLink="false">https://www.gummihaf.com/p/operating-above-the-code</guid><dc:creator><![CDATA[Gummi Hafsteinsson]]></dc:creator><pubDate>Mon, 09 Mar 2026 17:29:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!tOWq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the <a href="https://www.gummihaf.com/p/when-specs-become-the-programming">first part</a> of this series, I argued that when you build with agents, the specification starts to look more like the programming language than the code itself. In the <a href="https://www.gummihaf.com/p/the-discipline-behind-building-with">second</a>, I wrote about what that shift does to responsibility and cognitive load.</p><p>This last part of the series is about how to operate in that world.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tOWq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tOWq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!tOWq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!tOWq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!tOWq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tOWq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png" width="642" height="428.14697802197804" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cd252150-da0b-4e85-9212-1792ad027dff_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;:642,&quot;bytes&quot;:2351641,&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://www.gummihaf.com/i/189889036?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_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_!tOWq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!tOWq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!tOWq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!tOWq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcd252150-da0b-4e85-9212-1792ad027dff_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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If the spec is the language, then shaping it, maintaining it, and structuring it becomes the craft.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.gummihaf.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.gummihaf.com/subscribe?"><span>Subscribe now</span></a></p><h2>Prompts are transient. Specs persist.</h2><p>A useful distinction I&#8217;ve learned the hard way is this: prompts are transient, specs persist.</p><p>A conversation with an agent can feel aligned and productive, but anything that lives only in scrollback is temporary. It disappears when the context fills and it becomes difficult to reconstruct precisely.</p><p>Specifications, on the other hand, persist. They sit outside the conversation. They can be referenced, revised, compared against the code, and revisited weeks later.</p><p>That leads to a simple rule: never leave anything important in the prompt.</p><p>If a constraint matters, it moves into the spec. If an invariant is discovered, it gets written down. If a decision shapes future behavior, it is promoted out of the thread and into a living document.</p><p>The conversation is where ideas are explored. The spec is where they are anchored.</p><h2>Exploration is cheap - Commitment is deliberate</h2><p>Agents make exploration inexpensive. You can sketch alternatives, test edge cases, and evaluate approaches quickly. That&#8217;s a gift.</p><p>But exploration and commitment are not the same thing.</p><p>Moving something into the spec is an act of commitment. It means the idea is no longer tentative - it is now part of the system&#8217;s definition. That transition should be deliberate.</p><p>Conversations are fluid. Specs are structural.</p><p>Knowing when to promote an idea from discussion to documentation is one of the most important judgment calls in this model.</p><h2>Executive function becomes the constraint</h2><p>When you first start building with agents, there&#8217;s a subtle trap.</p><p>Execution moves so quickly that you instinctively try to keep your side of the work in the same proportions as before. In older cycles, planning was important, but implementation dominated the timeline. It felt natural to move briskly through design because the heavy lifting was still ahead.</p><p>With agents, the proportions flip.</p><p>Most of the time is now spent defining what to build. Clarifying constraints. Stress-testing assumptions. Asking the agent to push back. Exploring alternatives before committing. Execution keeps up effortlessly. Your thinking does not.</p><p>There&#8217;s a temptation to match the agent&#8217;s speed - to move faster on definition simply because implementation is no longer the bottleneck. That&#8217;s a trap.</p><p>The work hasn&#8217;t shrunk. It has shifted upward. And if anything, the definition phase deserves more time than it used to, not less.</p><p>The constraint is no longer implementation capacity. It&#8217;s the quality of decisions.</p><h2>Structure before speed</h2><p>The temptation with agents is obvious: just build something and see what happens.</p><p>That works - until it doesn&#8217;t.</p><p>Before touching implementation, I set up structure. Documents are organized by concern. Specs reference each other deliberately. Release boundaries are clear. The agent is instructed to maintain those references so the system holds together as a whole.</p><p>This is not different from code architecture. It&#8217;s just that architecture now lives one layer higher as well.</p><p>Speed makes iteration cheap. Structure makes iteration safe.</p><h2>The vision as a north star</h2><p>Before building a product, I now spend substantial time documenting what it is and where it&#8217;s heading. I call this the vision.</p><p>It isn&#8217;t static. It evolves as understanding deepens. But it exists at the top of the hierarchy, and any part of the system can be checked against it.</p><p>Without a north star, local decisions drift quietly. With one, trade-offs have context.</p><p>The vision isn&#8217;t marketing copy. It&#8217;s alignment at the highest level of abstraction.</p><h2>Instructions are part of the system</h2><p>Specs describe the product. Instructions describe how the agent should behave while building it - how to interpret documents, how to maintain consistency, what to be careful about.</p><p>These instruction layers are first-class artifacts.</p><p>Some of this can live in files like <code>AGENTS.md</code> or similar. But I don&#8217;t rely passively on automatic injection. Instead, I explicitly reference relevant instruction documents when needed. That act of pointing forces attention and reinforces consistency.</p><p>Consistency isn&#8217;t accidental. It&#8217;s the result of deliberate reference.</p><h2>Resetting makes context length irrelevant</h2><p>Context windows fill. That&#8217;s normal.</p><p>When a discussion becomes dense or approaches the limit, I ask the agent to document the current state of the conversation - what has been decided, what constraints exist, what open questions remain, and what assumptions are still in play.</p><p>Then I start fresh, reference that document, and continue.</p><p>Nothing important is lost because anything important has already been promoted into a persistent artifact.</p><p>Handled this way, context size becomes largely irrelevant. A longer window allows deeper exploration before anchoring decisions, but the durability of the work comes from the documents, not the thread.</p><p>Put the state aside. Reset. Continue.</p><h2>Where this leaves us</h2><p>Across these three parts, the pattern is consistent: as implementation becomes easier, coordination becomes the real leverage.</p><p>We&#8217;ve moved up a layer.</p><p>The code still matters. But it&#8217;s no longer where the primary leverage lives. That leverage now sits in how clearly intent is defined, how deliberately decisions are anchored, and how consistently the system is steered over time.</p><p>In the posts that follow, I&#8217;ll go deeper into the specifics - how to structure spec documents, how to design instruction layers, how to prevent drift in longer projects, and how to operate tactically without losing architectural coherence.</p><p>If the spec is the programming language, learning to write it well is not philosophical. It&#8217;s practical.</p><p>And this is where the interesting work really begins.</p>]]></content:encoded></item><item><title><![CDATA[The Discipline Behind Building with Agents]]></title><description><![CDATA[Faster code, harder thinking.]]></description><link>https://www.gummihaf.com/p/the-discipline-behind-building-with</link><guid isPermaLink="false">https://www.gummihaf.com/p/the-discipline-behind-building-with</guid><dc:creator><![CDATA[Gummi Hafsteinsson]]></dc:creator><pubDate>Wed, 25 Feb 2026 14:47:03 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!esNO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the <a href="https://www.gummihaf.com/p/when-specs-become-the-programming">first part</a>, I argued that the specification is starting to look more like the programming language than the code itself.</p><p>If that&#8217;s true, then a lot of familiar instincts stop working.</p><p>This was the part that surprised me most.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!esNO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!esNO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!esNO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!esNO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!esNO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!esNO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png" width="728" height="485.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:2056667,&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://www.gummihaf.com/i/189088761?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!esNO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!esNO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!esNO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!esNO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F449cc044-be80-428f-b635-dfb66b5ea450_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 role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Once you get past the initial thrill of watching an agent work, you run into a harder truth: <strong>speed doesn&#8217;t remove responsibility, it concentrates it</strong>. Working with agents is not easier. It&#8217;s different.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.gummihaf.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Am I Human?! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Explicitness is no longer optional</h2><p>The single most important thing I&#8217;ve learned is this: <strong>you have to be painfully explicit</strong>.</p><p>Working with an agent is like working with a super-compliant, high-initiative person. They will run with whatever direction you give them - confidently, quickly, and at scale. That means you don&#8217;t just need to say what you want - you need to define the constraints around it.</p><p>If you want checkpoints or reviews, you have to say so. If you want clarifying questions, you have to explicitly request them.</p><p>One example that kept coming up for me was type handling. The architecture required dates to exist in two specific primitives, but the agent would occasionally convert them to strings for convenience. Each change looked harmless, but over time the system drifted away from the constraints the product depended on. Until I wrote the rule down explicitly, the problem kept coming back.</p><p>When things go wrong - and they will - it&#8217;s almost always because something obvious lived only in your head. The agent is extremely literal about ideas you never actually wrote down.</p><p>Agents don&#8217;t read minds. They read specs.</p><h2>Specs are living documents, not contracts</h2><p>Early on, I treated specifications like something you &#8220;finish&#8221; before implementation. That&#8217;s how we&#8217;ve been trained to think about them. That model doesn&#8217;t hold up here.</p><p>The real work happens in discussion - first before implementation, then again when implementation reveals new constraints.</p><p>I often spend time having the agent rewrite or reorganize the specification before asking it to change the code. This feels backwards for about a week, and then inevitable.</p><p>The spec stops being a plan and becomes a description of the system as you understand it today.</p><h2>The agent amplifies everything</h2><p>One of the most important mental models to internalize is that agents amplify everything.</p><p>Clear intent scales. Ambiguity scales. Bad assumptions scale. Architectural mistakes scale.</p><p>The old rule was garbage in, garbage out. This is closer to garbage pile in, garbage pile out.</p><p>In one case a data structure assumption slipped through early because I wasn&#8217;t yet sure if it was correct. The system happily built around it. By the time I revisited the decision, it had propagated everywhere. Fixing it was fast - understanding its spread wasn&#8217;t.</p><p>Speed doesn&#8217;t prevent mistakes. It industrializes them.</p><h2>Collaboration works best when it goes both ways</h2><p>One surprisingly effective tactic is to explicitly ask the agent to ask you questions.</p><p>Left alone, an agent will often make reasonable assumptions and move forward. Sometimes that&#8217;s exactly what you want. Other times, it&#8217;s a fast path to subtle misalignment.</p><p>Making the interaction bidirectional improves the output dramatically. When it works well, it stops feeling like command-and-control and starts feeling like a real working relationship.</p><h2>Architecture does not take care of itself</h2><p>Speed can be deceptive. When code appears quickly, it&#8217;s tempting to assume the system is organizing itself. It isn&#8217;t. It&#8217;s just becoming confidently wrong faster.</p><p>You have to actively steward the architecture. Agents tend to anchor in whatever structure exists today, even when a deeper rethink would be healthier.</p><p>I once asked the agent to analyze a processing pipeline that felt off. The explanation immediately showed how the design had veered from my earlier intent.</p><p>The system was internally consistent.</p><p>It just wasn&#8217;t the system I meant to build.</p><h2>When things break, resist the urge to dive right into code</h2><p>As systems grow, regressions appear.</p><p>My instinct used to be to dive straight into the code. Now, I first ask the agent to explain what it believes exists - not what it tried to build, but what it thinks is there now.</p><p>Seeing the system described back to you reveals the mismatch quickly - and often the part you misunderstood first.</p><p>This takes patience. But it works.</p><h2>A different economics of building</h2><p>Historically, product development has been about careful addition. Building was expensive, so you spent most of your time deciding what not to build.</p><p>With agents, that constraint loosens. Instead of choosing one idea and hoping it was right, you can try several and remove the ones that don&#8217;t work. Seeing something exist is more informative than debating it in the abstract.</p><p>Ideas alone are cheap. Reality is decisive.</p><p>The agent does not share your emotional attachment to effort. It&#8217;s a little like the first time you write a for-loop and realize the computer doesn&#8217;t get tired.</p><h2>The hidden cost: decision fatigue</h2><p>There is, however, a cost that&#8217;s easy to underestimate.</p><p>Execution used to create thinking time. Now the system keeps up with every decision you make, and you spend less time implementing and more time deciding - continuously.</p><p>The computer is no longer tired. You are.</p><p>This can feel exhausting in a different way. If you find yourself overwhelmed despite moving faster than ever, that&#8217;s not a failure mode - it&#8217;s a sign that you&#8217;re now operating at the level where judgment matters most.</p><p>Someone recently told me they were occasionally relieved when they hit their daily token limit because it forced them to stand up and take a walk.</p><p>That felt accurate.</p><h2>Stay informed, but don&#8217;t chase the shiny things</h2><p>This space is moving fast, and it&#8217;s worth paying attention.</p><p>But progress doesn&#8217;t come from constantly switching tools or chasing every new plugin. It comes from learning how to work effectively with the agent you already have.</p><p>Depth beats novelty here.</p><h2>Where this leads</h2><p>At this point, a lot of people ask the same question: OK, but how do you actually do this well?</p><p>That&#8217;s where things get interesting.</p><p>In the next part, I&#8217;ll go deeper into the craft - how I structure specifications, how I keep agents aligned over time, and how to steer complex systems without losing the thread.</p><p>Once the spec becomes the programming language, how you shape it becomes the craft.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.gummihaf.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Am I Human?! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[When Specs Become the Programming Language]]></title><description><![CDATA[I&#8217;m building an assistant &#8212; one that goes beyond conversation &#8212; and in the process I&#8217;ve realized that code is no longer the most important thing I create.]]></description><link>https://www.gummihaf.com/p/when-specs-become-the-programming</link><guid isPermaLink="false">https://www.gummihaf.com/p/when-specs-become-the-programming</guid><dc:creator><![CDATA[Gummi Hafsteinsson]]></dc:creator><pubDate>Fri, 13 Feb 2026 14:40:13 GMT</pubDate><content:encoded><![CDATA[<p>Computers have been a big part of my life since I was very young. It started with the family getting a Commodore 64, and I vividly remember the day my parents brought it home. I was mesmerized. That machine felt magical, and it quietly set the direction for my life.</p><p>Later came the Amiga years. I spent a lot of time in the demo scene in the late 80s, writing code close to the metal, counting cycles, worrying about memory layout, squeezing performance out of hardware that was brutally constrained. Back then, writing efficient code wasn&#8217;t an aesthetic preference &#8212; it was survival.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.gummihaf.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Am I Human?! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>I grew up believing that real programmers understood what the machine was doing.</p><p>I&#8217;ve had my share of exciting moments since then. Working on Google Maps for mobile before the modern smartphone was really a thing. Getting the first voice search product to market at Google. Leading product at Siri, and later helping build Google Assistant from the ground up. All of those were thrilling in their own way.</p><p>But none of them quite matched the pure exhilaration of getting that C64 as a kid. I honestly thought I&#8217;d never feel that again.</p><p>And then I started building with agents.</p><h2>A new kind of &#8220;coding&#8221;</h2><p>When people talk about agentic coding, the conversation often gets stuck on tools. Which model. Which IDE. Which plugins. That&#8217;s understandable, but it misses the point.</p><p>What matters isn&#8217;t the tool &#8212; it&#8217;s the shift in how work gets done.</p><p>When you work with agents, you&#8217;re no longer just issuing commands and getting outputs. You&#8217;re collaborating with a system that can reason, implement, refactor, explain, and iterate. It can take on open-ended tasks and run with them.</p><p>That alone is interesting.</p><p>But what really matters is what happens next.</p><h2>We&#8217;ve been here before</h2><p>There&#8217;s an analogy I keep coming back to, and it&#8217;s one that anyone who&#8217;s been around long enough will recognize.</p><p>In the early days, we wrote code in machine language. Or very close to it. You had to understand the hardware intimately. Performance mattered. Memory mattered. Every instruction mattered.</p><p>Then compilers arrived.</p><p>And a certain type of programmer &#8212; myself included &#8212; frowned upon them. The code they generated was bloated. Inefficient. Wasteful. If you really cared, you wrote assembly.</p><p>Of course, we all know how that story ends.</p><p>We moved up the stack.</p><p>We learned to care deeply about the source code written in higher-level languages, and we stopped caring about the exact instructions emitted by the compiler. Not because they were perfect, but because the compiler got better &#8212; and eventually much better than any human at that layer.</p><p>The abstraction won.</p><h2>The same shift is happening again</h2><p>When people criticize agent-generated code today, I hear the same arguments I heard decades ago:</p><p><em>&#8220;I wouldn&#8217;t have written it this way.&#8221;</em></p><p><em>&#8220;This is inefficient.&#8221;</em></p><p><em>&#8220;This feels messy.&#8221;</em></p><p><em>&#8220;I don&#8217;t trust what it&#8217;s doing.&#8221;</em></p><p>And often, they&#8217;re right.</p><p>But they&#8217;re also focusing on the wrong thing.</p><blockquote><p>The new &#8220;source code&#8221; is no longer Python, C++, or JavaScript.</p><p>It&#8217;s the specification.</p></blockquote><p>The specs are what you should care about now. They encode intent, constraints, trade-offs, and structure. The code is an artifact generated downstream &#8212; just like assembly was an artifact of C, and machine code was an artifact of assembly.</p><p>Once you see this, a lot of things snap into focus.</p><h2>Why this feels so different</h2><p>This is not just a productivity improvement. It&#8217;s not &#8220;coding, but faster.&#8221;</p><p>It&#8217;s a fundamentally different way of developing software.</p><p>When you work this way, the bottleneck shifts. Execution is cheap. Iteration is cheap. Rewrites are cheap. What&#8217;s expensive is clarity of thought.</p><p>If your thinking is sloppy, the agent will faithfully scale that sloppiness. If your intent is vague, it will amplify the ambiguity. If your assumptions are wrong, they&#8217;ll show up everywhere.</p><p>Agents amplify everything.</p><p>That&#8217;s both the magic and the danger.</p><h2>What this means for how you work</h2><p>Once specs become the primary programming artifact, your role changes.</p><p>You spend less time typing code and more time:</p><ul><li><p>thinking through edge cases,</p></li><li><p>making trade-offs explicit,</p></li><li><p>deciding what matters and what doesn&#8217;t,</p></li><li><p>and correcting course when reality diverges from intent.</p></li></ul><p>This can feel uncomfortable at first, especially if your identity is tied to being a strong individual contributor at the code level. It certainly did for me.</p><p>But it&#8217;s also where the leverage is.</p><p>The quality of what you build is now dominated by the quality of the specifications you write, not the keystrokes you produce.</p><h2>This is just the beginning</h2><p>Every major shift in how we build software has looked like cheating at first.</p><p>Compilers felt like cheating. Garbage collection felt like cheating. High-level languages felt like cheating.</p><p>Building with agents feels the same way &#8212; right up until you realize that the rules have changed, and the old instincts don&#8217;t apply anymore.</p><p>In the next part, I&#8217;ll dig into what it takes to build real products in this new model &#8212; and why treating agents like faster interns is the fastest way to miss what&#8217;s actually happening here.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.gummihaf.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Am I Human?! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[When Machines Outplay Us: The Unintended Renaissance of Chess]]></title><description><![CDATA[While new technologies that mimic human abilities can be unsettling, the history of chess and technology suggests a future of optimism rather than doom.]]></description><link>https://www.gummihaf.com/p/when-machines-outplay-us-the-unintended</link><guid isPermaLink="false">https://www.gummihaf.com/p/when-machines-outplay-us-the-unintended</guid><dc:creator><![CDATA[Gummi Hafsteinsson]]></dc:creator><pubDate>Tue, 04 Jun 2024 13:07:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!rn8j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>It was the ultimate man-vs-machine showdown. <a href="https://en.wikipedia.org/wiki/Garry_Kasparov">Garry Kasparov</a>, the reigning chess master, had already shown that no machine could beat a human in the ultimate game of strategy: chess. However, the engineers at IBM kept improving <a href="https://en.wikipedia.org/wiki/Deep_Blue_(chess_computer)">Deep Blue</a>, and in a highly anticipated event in 1997, the machine finally triumphed over humanity. Deep Blue <a href="https://www.youtube.com/watch?v=KF6sLCeBj0s">won against Kasparov</a> 3&#189;&#8211;2&#189;. It was a landmark moment, heralding the rise of AI.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rn8j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rn8j!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!rn8j!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!rn8j!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!rn8j!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rn8j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp" width="446" height="446" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:446,&quot;bytes&quot;:389892,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!rn8j!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!rn8j!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!rn8j!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!rn8j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f1968f3-400c-4c57-a028-b56b16e7222e_1024x1024.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If machines can beat us at chess, why should we even bother playing? Humans are a fiercely competitive species, having <a href="https://en.wikipedia.org/wiki/Sapiens:_A_Brief_History_of_Humankind#:~:text=Harari's%20main%20argument%20is%20that,Neanderthals%20and%20numerous%20other%20megafauna.">outlasted the other eight species</a> of the genus Homo. Unlike other animals, we didn't coexist with our close relatives; we dominated. This competitive drive, ingrained in our DNA, has propelled us to build cities, travel the world, and use technology to improve our lives. But it also makes us paranoid about any potential competition, fearing not only for our lives but for the future of humanity.</p><p>The logic seems sound: if machines can surpass us, we should stop their advancement. When it comes to chess (which some argue is more than just a &#8220;game&#8221;), the results might seem harmless. The machines win, we stop playing, and life goes on. Right? Maybe we just switch to playing Go, that <a href="https://en.wikipedia.org/wiki/AlphaGo">seems like a safe choice</a>.</p><p>But&#8230; if the machine can beat us at chess, how long until it can beat us at anything?</p><p>Oh, I can feel the paranoia creep back in. Why didn&#8217;t we just destroy Deep Blue back in 1997 and ban all development in AI? That would save humanity for sure.</p><p>The problem is, this us-vs-machines mindset is flawed. We apply the same competitive logic we've used against other humans and life forms to machines. However, machines don't strive for survival. They don't need resources or worry about offspring. Machines are tools, and history shows that better tools lead to better lives.</p><p>So what happened after Big Blue beat Kasparov? Well, we didn&#8217;t destroy the machine, thank god. We did worry about the future of chess, and many predicted the game would soon become obscure if not obsolete. But those predictions were wrong. Completely wrong.</p><p>Even though the event was staged as a competition between human and machine, it was more for the spectacle. In reality, no one cares if a computer can beat them at chess, just like we don't mind that cars are faster than us. Actually, we <em>do</em> care&#8212;because faster cars mean we can travel quickly with less effort. Similarly, better chess tools have made the game more accessible and enjoyable.</p><p>When I was growing up in the 80s I dabbled with playing chess, but it was hard. My family owned a book about chess that covered the basics and some intermediate tactics, but if I wanted to practice I either had to convince a friend to play a game or join a local chess club which would yield maybe an hour or two each week of actual playtime. And let&#8217;s imagine I had become really good, it would have become increasingly harder (and probably impossible given that I lived in a small island in the North Atlantic) for me to find opponents that challenged me and helped me improve even further.</p><p>That&#8217;s no longer the case. If you are interested in chess, all you need is a mobile phone and you can spend as much time as you want playing opponents at any level. You can even play puzzles and challenges created by machines to improve certain aspects of the game, making the whole journey even more fulfilling and fun.</p><p>Machines didn&#8217;t kill chess by beating us, they made it wildly more popular and accessible. Chess players around the world still enjoy playing with each other but the barrier to entry has gone so much down that anyone can enter.</p><p>It&#8217;s hard to find good numbers on how many people play chess on a regular basis, but <a href="https://www.chess.com/article/view/how-many-chess-players-are-there-in-the-world">a survey from 2012</a> put it at around 600 million people worldwide. That&#8217;s around 8.5% of the world population at the time! And as an indicator of the growing popularity of chess, between 2009 and 2014 the number of active chess players with a FIDE rating almost doubled. These statistics are over a decade old, and chess&#8217;s popularity just keeps rising, thanks to machines getting better at it.</p><p>History has shown that we tend to panic when things seem to threaten us. The most famous example was the <a href="https://en.wikipedia.org/wiki/Luddite">Luddites</a> who revolted against textile machines in the early days of the Industrial Revolution. People were naturally scared; suddenly, a machine became an expert at their livelihood. But history has repeatedly shown that inventing new tools has consistently made our lives better.</p><p>Should we be afraid that Google knows more facts than any human in the world? Or that the mobile phone can help us find a nearby driver, tell them our location, and handle everything from navigation to charging for the ride? The list of things technology can do for us is endless, and they are by design things we cannot do as well without these inventions.</p><p>Why is AI so different?</p><p>AI, like all technologies before it, is a tool&#8212;one that has the potential to enhance our capabilities and improve our lives. Instead of fearing its rise, we should embrace it while remaining vigilant about its ethical implications. Deep Blue's victory over Kasparov didn't mark the downfall of humanity; it showcased our ability to innovate and adapt. Today, AI is making chess more accessible, learning more intuitive, and problem-solving more efficient.</p><p>Rather than seeing AI as a competitor, we should view it as a collaborator&#8212;one that can push us to new heights of creativity, productivity, and understanding. The future of AI is not a zero-sum game where machines win and humans lose. It's a symbiotic relationship where both can thrive.</p><p>So, let's not destroy our Deep Blues. Let's build them, refine them, and use them to unlock possibilities we never imagined. In doing so, we might just find that the greatest victories are not won on a chessboard but in the limitless potential of human ingenuity amplified by the tools we create.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.gummihaf.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Am I Human?! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[To Write or Not to Write... About AI]]></title><description><![CDATA[Amidst the excitement and opinions on AI's future, here's my perspective. I aim to clarify rather than confound.]]></description><link>https://www.gummihaf.com/p/to-write-or-not-to-write-about-ai</link><guid isPermaLink="false">https://www.gummihaf.com/p/to-write-or-not-to-write-about-ai</guid><dc:creator><![CDATA[Gummi Hafsteinsson]]></dc:creator><pubDate>Wed, 22 May 2024 14:54:54 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!cJMq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I finally got myself to sit down and start writing. I&#8217;ve been thinking a lot about AI these past quarters (who hasn&#8217;t?) and while many others are writing about the latest trends on this topic, I personally am tracking a few dozen newsletters and commentators, I won&#8217;t replicate their efforts. Instead, I'll focus on the overall development of the field, potential applications, and how AI might impact our work, life, and society as a whole. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cJMq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cJMq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!cJMq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!cJMq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!cJMq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cJMq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;A futuristic scene where a person is interacting with an AI. The person is standing in a sleek, high-tech room filled with holographic displays and advanced technology. The AI appears as a glowing, translucent figure, with digital patterns and circuits visible within its form. The room is illuminated with blue and white lights, giving it a sci-fi feel. The person is wearing modern, futuristic clothing, with an expression of awe and concentration as they interact with the AI through a holographic interface.&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="A futuristic scene where a person is interacting with an AI. The person is standing in a sleek, high-tech room filled with holographic displays and advanced technology. The AI appears as a glowing, translucent figure, with digital patterns and circuits visible within its form. The room is illuminated with blue and white lights, giving it a sci-fi feel. The person is wearing modern, futuristic clothing, with an expression of awe and concentration as they interact with the AI through a holographic interface." title="A futuristic scene where a person is interacting with an AI. The person is standing in a sleek, high-tech room filled with holographic displays and advanced technology. The AI appears as a glowing, translucent figure, with digital patterns and circuits visible within its form. The room is illuminated with blue and white lights, giving it a sci-fi feel. The person is wearing modern, futuristic clothing, with an expression of awe and concentration as they interact with the AI through a holographic interface." srcset="https://substackcdn.com/image/fetch/$s_!cJMq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!cJMq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!cJMq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!cJMq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6dba8b8f-9e0c-46ff-8560-57037bb90257_1792x1024.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Images are generated by tools like <a href="https://www.openai.com/research/dall-e">DALL-E</a> and <a href="https://www.midjourney.com/">Midjourney</a>, unless otherwise sourced and cited. I'll also use various AI tools to refine and enhance my text.</figcaption></figure></div><p>I've always been, for better or worse, ahead of the curve in my work. It can be frustrating but also a lot of fun. I started working on mobile technology back when it was based on WAP (<a href="https://en.wikipedia.org/wiki/Wireless_Application_Protocol">Wireless Access Protocol</a>). Most of you probably don&#8217;t remember, and honestly, that's a good thing. </p><p>The company I started in 1998 worked with Nokia to bring various services to mobile devices. It was a nightmare in many ways&#8212;the technology just wasn't ready. But it pointed to an interesting future. </p><p>When I moved to California in 2005 and joined Google, my first project as a product manager was Google Maps for mobile. This was before the iPhone, when 3G was barely a thing, and phones didn't have GPS. Well, one model did, but it took ages to warm up and cost $20 a month just to activate the chip. It was hard to use a map on a tiny screen with limited interaction options. Despite general skepticism, we persevered because the potential was undeniable.</p><p>With the advent of the iPhone and Android, I worked with the search and speech teams at Google to build voice search. At the time, the &#8220;best&#8221; speech interfaces were frustrating automated systems at banks and utility companies.</p><p>We launched voice search in 2008, the first speech-based consumer product that actually worked! But the bigger challenge was creating an interface where people could naturally converse with an intelligent system, and be truly useful.</p><p>This challenge led me to leave Google and join a small startup called <a href="https://www.apple.com/siri/">Siri</a> as VP of Product. After Apple acquired us and we launched the product on iPhone 4s, I continued on this path, starting my own company which was acquired by Google and eventually led to the birth of <a href="https://assistant.google.com/">Google Assistant</a>.</p><p>These were exciting times. We had good technology and a solid product vision, but there was still a gap between what assistants could do and people's expectations.</p><p>In hindsight, it was like WAP and Google Maps for mobile all over again&#8212;too early, but on the right track. I left Google in 2019, took some time off, dabbled in a startup, and now I'm pondering the future&#8212;not just mine, but the world's.</p><p>AI has garnered a lot of hype, and it's not the first time. We've had <a href="https://en.wikipedia.org/wiki/History_of_artificial_intelligence">numerous false starts</a>, but this time feels different. The technology is finally starting to deliver on its promises.</p><p>So, why am I writing about AI? To share my thoughts on its <a href="https://www.brookings.edu/articles/unleashing-possibilities-ignoring-risks-why-we-need-tools-to-manage-ais-impact-on-jobs/">potential and pitfalls</a>. I won't be sharing the latest news, but rather building on my experience with early-stage technologies that were on the right path.</p><p>If you're interested in following my thoughts, feel free to subscribe. I won't have a fixed schedule, and topics will vary based on my interests. Consider yourself warned.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.gummihaf.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Am I Human?! Subscribe for free to receive new posts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item></channel></rss>