<?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[Product Coalition: The Build]]></title><description><![CDATA[Behind the scenes of building ExecReps.ai — the product decisions, breakthroughs, and hard lessons from creating voice-based leadership coaching for executives.]]></description><link>https://www.productcoalition.com/s/the-build</link><image><url>https://substackcdn.com/image/fetch/$s_!bm_y!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F877df65f-055f-4743-a743-1fd3f7c73355_572x594.png</url><title>Product Coalition: The Build</title><link>https://www.productcoalition.com/s/the-build</link></image><generator>Substack</generator><lastBuildDate>Wed, 06 May 2026 22:13:51 GMT</lastBuildDate><atom:link href="https://www.productcoalition.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Jay Stansell]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[productcoalition@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[productcoalition@substack.com]]></itunes:email><itunes:name><![CDATA[Jay Stansell]]></itunes:name></itunes:owner><itunes:author><![CDATA[Jay Stansell]]></itunes:author><googleplay:owner><![CDATA[productcoalition@substack.com]]></googleplay:owner><googleplay:email><![CDATA[productcoalition@substack.com]]></googleplay:email><googleplay:author><![CDATA[Jay Stansell]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Security Is a Feature, Not a Checkbox]]></title><description><![CDATA[A solo founder's public story of building ExecReps.ai]]></description><link>https://www.productcoalition.com/p/security-is-a-feature-not-a-checkbox</link><guid isPermaLink="false">https://www.productcoalition.com/p/security-is-a-feature-not-a-checkbox</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 03 May 2026 14:40:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!zNv-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>So, three weeks ago, I was on a call with the Head of IT at a mid-size financial services firm. Fifteen minutes in, she stopped me mid-sentence.</p><p>&#8220;Jay, can I see your security architecture?&#8221;</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>She didn&#8217;t ask, &#8220;do you have SOC 2?&#8221; She didn&#8217;t ask &#8220;are you GDPR compliant?&#8221; She wanted to see the <em>architecture</em>. The actual policies. The scanning pipeline. How data flows and who can touch it.</p><p>I pasted a link into the chat: <code>execreps.ai/security</code>.</p><p>Thirty seconds of silence stretched.</p><p>Then: &#8220;Okay. This is more than I expected.&#8221;</p><p>That page is why I&#8217;m writing this post. Building security as a first-class product feature, not a compliance afterthought, has been one of the highest-ROI investments I&#8217;ve made. I even built it when I was a team of one.</p><p>Don Norman would recognize what happened on that call. The buyer had a &#8216;Gulf of Evaluation&#8217;. She needed to answer, &#8220;Can I trust this vendor with my company&#8217;s data?&#8221; Most startups force buyers to dig through questionnaires and schedule follow-ups to close that gap. A public security page closes it in thirty seconds.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zNv-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zNv-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!zNv-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!zNv-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!zNv-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zNv-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Product Management: Addressing Potential Abuse Vectors in New Attachment Preview Feature icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product Management: Addressing Potential Abuse Vectors in New Attachment Preview Feature icon" title="Product Management: Addressing Potential Abuse Vectors in New Attachment Preview Feature icon" srcset="https://substackcdn.com/image/fetch/$s_!zNv-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!zNv-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!zNv-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!zNv-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F578a919f-2657-4e14-961f-46fbdddcb746_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The First RLS Policy (October 2025)</strong></h2><p>Back in October 2025, I shipped v0.5 of ExecReps. The product was barely functional. People could record themselves practicing a presentation, get AI feedback, track their scores. Maybe two dozen active users.</p><p>That release included Row Level Security across six database tables.</p><p>If you&#8217;re not a backend engineer, Row Level Security means the database <em>itself</em> enforces who can see what. It isn&#8217;t application logic saying &#8216;don&#8217;t show User A&#8217;s recordings to User B.&#8217; It&#8217;s the database saying &#8216;this row does not exist for you.&#8217; Even if someone bypasses the API, even if there&#8217;s a bug in the code, the database won&#8217;t hand over data that doesn&#8217;t belong to you.</p><p>Overkill for two dozen users? Absolutely.</p><p>The thing I understood, after fifteen years of product work, was this: security debt compounds faster than any other form of technical debt. Kahneman and Tversky&#8217;s research on loss aversion explains why. Losses are felt roughly twice as intensely as equivalent gains. You can refactor a messy UI. You can optimize a slow query. You cannot un-leak data. A breach isn&#8217;t a setback you recover from. It&#8217;s a loss your users feel viscerally. That asymmetry makes early security investment disproportionately valuable.</p><p>Six tables. Every query filtered by the authenticated user&#8217;s ID. A day and a half of work that&#8217;s paid for itself a hundred times over.</p><h2><strong>The Recursion Bug That Almost Ruined Everything</strong></h2><p>You might expect this part to be smooth. It wasn&#8217;t.</p><p>When I started building team functionality, managers seeing team data, admins needing org-wide visibility, the original RLS policies became a problem. The naive approach was policies that check team membership by joining against the teams table. Which had its own RLS policies. Which tried to check membership. Which queried the teams table again.</p><p>Infinite recursion. In the database layer.</p><p>Supabase doesn&#8217;t give you a helpful error for this. The query just&#8230; dies. I spent an evening staring at Postgres logs, convinced I&#8217;d broken my approach.</p><p>The fix was <code>security definer</code> functions that bypass RLS for specific trusted operations, restructured team membership verification, and extreme deliberation about which policies reference which tables. Sounds simple in a blog post. Had me questioning my life choices at midnight on a Thursday.</p><p>The critical part, though, was this: I found the bug during development, not in production. Nielsen&#8217;s Error Prevention heuristic (H5) says the best error message is no error message. The best data breach is one that&#8217;s structurally impossible. Because the RLS foundation already existed, I was forced to solve multi-tenant complexity <em>before</em> real enterprise data was at stake. If I&#8217;d waited, if I thought &#8216;we&#8217;ll add security later when we have enterprise customers,&#8217; I&#8217;d have been retrofitting access control while actual company data flowed through the system.</p><p>That is exactly how breaches happen.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sFSy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sFSy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 424w, https://substackcdn.com/image/fetch/$s_!sFSy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 848w, https://substackcdn.com/image/fetch/$s_!sFSy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 1272w, https://substackcdn.com/image/fetch/$s_!sFSy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sFSy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png" width="838" height="493" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c305e892-3a45-4d13-99af-8841fbd27415_838x493.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:493,&quot;width&quot;:838,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:67369,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191772563?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.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_!sFSy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 424w, https://substackcdn.com/image/fetch/$s_!sFSy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 848w, https://substackcdn.com/image/fetch/$s_!sFSy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 1272w, https://substackcdn.com/image/fetch/$s_!sFSy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc305e892-3a45-4d13-99af-8841fbd27415_838x493.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2><strong>Building the Wall Higher (v2.4)</strong></h2><p>v2.4 is &#8216;Enterprise Security Hardening&#8217;. It&#8217;s the release that transformed our security story from &#8216;solid foundation&#8217; to &#8216;genuinely enterprise-grade.&#8217;</p><p>Product teams who use the Kano Model know the categories: must-be, performance, and delighter. For enterprise buyers, security is firmly must-be. Absence kills a deal instantly, but presence alone doesn&#8217;t win one. What wins is when the <em>implementation</em> exceeds expectations. When a must-be quality is delivered at a delighter level, buyers notice.</p><p>On every pull request, we now run these checks:</p><p><strong>Semgrep.</strong> This is Static Application Security Testing, scanning for vulnerability patterns like SQL injection, XSS, insecure auth patterns, and hardcoded secrets. Every PR, every time.</p><p><strong>Gitleaks.</strong> This scans for accidentally committed secrets: API keys, tokens, passwords. Because sooner or later someone (or some AI, I&#8217;ll come back to this) pastes a token in a config file.</p><p><strong>Dependency auditing.</strong> Every npm package is checked against known vulnerability databases. A critical CVE? The build fails.</p><p><strong>Content-Security-Policy headers.</strong> These tell the browser exactly which domains can execute scripts, load images, or open connections. Most startups don&#8217;t implement this until past Series B.</p><p><strong>Aikido DAST integration.</strong> This is Dynamic Application Security Testing, monitoring the running application. It probes endpoints, tests real-world attack vectors, and reports continuously.</p><p>The <code>/security</code> page itself ties it together. A public, human-readable overview of everything above. Not a compliance PDF. A web page that an IT buyer can read, share with their team, and use to make a procurement decision. Norman&#8217;s Gulf of Evaluation and Gulf of Execution, closed simultaneously. Buyers can <em>evaluate</em> without scheduling a call, and <em>act</em> by forwarding the URL to their CISO, without needing us in the room.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-oKS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-oKS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!-oKS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!-oKS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!-oKS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-oKS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Finance Manager: Addressing Direct Report's Surprise at Reporting to Someone Returning from 2-Year Break icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Finance Manager: Addressing Direct Report's Surprise at Reporting to Someone Returning from 2-Year Break icon" title="Finance Manager: Addressing Direct Report's Surprise at Reporting to Someone Returning from 2-Year Break icon" srcset="https://substackcdn.com/image/fetch/$s_!-oKS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!-oKS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!-oKS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!-oKS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f89e546-58ca-4a8c-99f0-11f65367d5c4_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The AI Engineer Problem</strong></h2><p>Something I haven&#8217;t seen discussed much is this: what happens when one of your engineers is an AI?</p><p>I use Devin, an AI software engineer, for significant portions of development. Devin is remarkably capable. Clean code, follows patterns well, handles complex refactoring. Devin doesn&#8217;t have security intuition, though. It doesn&#8217;t think &#8216;this input should be sanitized.&#8217; It won&#8217;t instinctively avoid hardcoding a token in a test file.</p><p>BJ Fogg&#8217;s B=MAP model describes the AI security problem perfectly. Devin has high <em>ability</em> to write code and zero <em>motivation</em> around security, no concept of consequence. There&#8217;s no built-in &#8216;prompt&#8217; for &#8216;check for vulnerabilities before you commit.&#8217; The SAST pipeline becomes that prompt. Devin opens a PR, scanners run, a vulnerability is found. The build fails. Period.</p><p>It&#8217;s not about trusting or not trusting the AI. Human engineers ship vulnerable code too. Security automation doesn&#8217;t care about intent. It enforces rules. Like guardrails on a mountain road. They aren&#8217;t there because you&#8217;re a bad driver. They&#8217;re there because the cliff doesn&#8217;t care how good you are.</p><p>Not sure where the industry lands on this in a year or two. I had a podcast guest recently who was convinced AI-written code would be <em>more</em> secure than human-written code within 18 months. Maybe. The scanning pipeline doesn&#8217;t care either way.</p><h2><strong>Feature Flags as a Security Mechanism</strong></h2><p>One surprise from v2.4: feature flags became a security tool.</p><p>We built an admin UI for feature flags, turning features on or off for specific users, teams, or globally. The obvious use is gradual rollouts.</p><p>Feature flags also give you a kill switch. Vulnerability in a feature? Disable it in seconds. No emergency hotfix, no midnight deployment. Toggle it off.</p><p>Norman would call this a strong affordance. The toggle <em>looks</em> like instant control because it <em>is</em> instant control. For a solo founder without a 24/7 on-call rotation, mean time to mitigation drops from &#8216;however long it takes to write, test, and deploy a fix&#8217; to &#8216;however long it takes to click a button.&#8217;</p><p>Enterprise buyers get this immediately. &#8220;Any feature can be instantly disabled without a deployment&#8221; translates to &#8220;if something goes wrong, it gets fixed immediately.&#8221; That&#8217;s not just a product feature. That&#8217;s a purchasing decision.</p><h2><strong>Security as Moat</strong></h2><p>I think many startups miss the mark on this: they treat enterprise security as compliance theater.</p><p>The scramble for SOC 2 before the first enterprise deal. The &#8216;we take security seriously&#8217; banner on a website with <code>Access-Control-Allow-Origin: *</code> in production. The security questionnaire answered by Googling in real-time.</p><p>Cialdini&#8217;s research on Authority explains why this fails. Authority isn&#8217;t claimed, it&#8217;s demonstrated. Telling a buyer &#8216;we take security seriously&#8217; is a claim. Showing them automated scanning pipelines and row-level data isolation is a demonstration. The buyer&#8217;s brain processes those inputs completely differently.</p><p>Security is a competitive moat. Not because your competitors <em>can&#8217;t</em> build it, but because they <em>won&#8217;t</em>. It&#8217;s unglamorous. It doesn&#8217;t move metrics VCs ask about. Nobody tweets about CSP headers.</p><p>Enterprise buyers, the ones writing the big checks, care a lot. The gap between &#8216;we&#8217;ll get to security eventually&#8217; and &#8216;here&#8217;s our security architecture, publicly documented&#8217; is enormous in their eyes.</p><p>I&#8217;m a solo founder competing against funded teams. I shouldn&#8217;t be winning security conversations. But when the review happens, I&#8217;m not scrambling. I&#8217;m sending a link.</p><h2><strong>What This Costs</strong></h2><p>The SAST pipeline runs in GitHub Actions. A few hours to configure, almost no ongoing cost. Aikido has a generous startup tier. CSP headers: half a day. RLS policies: three to four days across iterations. The <code>/security</code> page: an afternoon.</p><p>All in? Maybe two weeks of engineering time over five months.</p><p>This is loss aversion math in your favor. Enterprise buyers overweight security risk. Two weeks of your work neutralizes months of their perceived risk. Compare that to losing a deal over a question you can&#8217;t answer, or spending three months rushing SOC 2 because a prospect demanded it. I wonder if this kind of upfront investment is often undervalued by founders focused solely on new feature velocity.</p><h2><strong>The Deeper Connection</strong></h2><p>I think about why I care this much about security for a communication practice tool. ExecReps isn&#8217;t handling financial data or medical records. We hold voice recordings of people practicing presentations, pitch rehearsals, feedback conversations.</p><p>That&#8217;s exactly <em>why</em> it matters.</p><p>Someone records themselves practicing a difficult conversation. Asking their boss for a raise, rehearsing for a board presentation, delivering bad news. That&#8217;s vulnerable. That&#8217;s someone exposing the gap between where they are and where they want to be.</p><p>Deci and Ryan&#8217;s Self-Determination Theory identifies three needs for intrinsic motivation: autonomy, competence, and relatedness. The prerequisite, though, is psychological safety. You can&#8217;t pursue competence if you&#8217;re afraid of being exposed. The practice loop that makes ExecReps work, record, get feedback, improve, repeat, only functions when users trust the container.</p><p>Executive presence should not be a privilege. The willingness to <em>practice</em> it, though, requires trust. Trust requires infrastructure, not just promises.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Zdmc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Zdmc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!Zdmc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!Zdmc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!Zdmc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Zdmc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Operations Management: Catching up on New Tools and Processes Implemented During Leave icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Operations Management: Catching up on New Tools and Processes Implemented During Leave icon" title="Operations Management: Catching up on New Tools and Processes Implemented During Leave icon" srcset="https://substackcdn.com/image/fetch/$s_!Zdmc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!Zdmc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!Zdmc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!Zdmc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F653a9170-6759-4e19-882f-ef9694f9d54a_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>A Question for Builders</strong></h2><p>If you&#8217;re building a product right now, especially if you&#8217;re thinking &#8216;we&#8217;ll handle security later,&#8217; ask yourself:</p><p>What would it mean for your customers if their data leaked tomorrow? Not legally. What would it mean for <em>them</em>?</p><p>The answer tells you when to invest. For many of us, it probably should have been yesterday.</p><p>The good news: &#8216;yesterday&#8217; is closer than you think. A few days of intentional work now can be worth months of panic later.</p><p>Security isn&#8217;t just a phase of your product development. It&#8217;s a core feature. It&#8217;s probably worth building like one.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[The Hardest Product Decision: When to Build for Teams]]></title><description><![CDATA[A founder's public story of building ExecReps.ai]]></description><link>https://www.productcoalition.com/p/the-hardest-product-decision-when</link><guid isPermaLink="false">https://www.productcoalition.com/p/the-hardest-product-decision-when</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 26 Apr 2026 14:36:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!E_bZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The email that changed everything arrived one Tuesday morning. It was from a VP of Learning &amp; Development at a company I can&#8217;t quite name. She&#8217;d been using ExecReps on her own for three weeks. She found us through Product Coalition, and her message was four sentences:</p><p>&#8220;My entire leadership team needs this. Can I buy ten seats? Also, I need to see their scores. Is that possible?&#8221;</p><p>I remember reading it twice. Then I closed my laptop. I walked out the door and headed along the Tagus River here in Lisbon, because I knew what those four sentences meant.</p><p>They meant the hardest product decision I&#8217;d ever have to make was no longer theoretical.</p><p>It was time to build for teams.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!R6Gd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!R6Gd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png 424w, https://substackcdn.com/image/fetch/$s_!R6Gd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png 848w, https://substackcdn.com/image/fetch/$s_!R6Gd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png 1272w, https://substackcdn.com/image/fetch/$s_!R6Gd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!R6Gd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png" width="1057" height="270" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:270,&quot;width&quot;:1057,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27734,&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.productcoalition.com/i/191771955?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.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_!R6Gd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png 424w, https://substackcdn.com/image/fetch/$s_!R6Gd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png 848w, https://substackcdn.com/image/fetch/$s_!R6Gd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.png 1272w, https://substackcdn.com/image/fetch/$s_!R6Gd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc13a9a60-1e70-4d21-8f04-7418f4811289_1057x270.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><h2><strong>The Graveyard of Products That Went Team Too Early</strong></h2><p>If you&#8217;ve been in product long enough, you&#8217;ve seen this movie play out. A product works beautifully for individuals. Users love it. Then someone says the magic words: &#8220;We need to go multi-seat.&#8221; And often, the product dies. It doesn&#8217;t happen overnight. It dies slowly. The dashboard gets cluttered with admin panels. Onboarding asks seventeen questions about org structure before you can even do anything useful. The individual user, the one who <em>loved</em> your product, suddenly feels like they&#8217;re using enterprise software.</p><p>The Kano Model explains why this often kills products. The individual experience, the thing that created genuine excitement, is what Kano would call the &#8216;attractive quality&#8217;. Team features, though, are &#8216;must-be&#8217; qualities: admin panels, permissions, billing. They don&#8217;t generate delight. They just prevent dissatisfaction. If those &#8216;must-be&#8217; features degrade the &#8216;attractive quality&#8217;, you&#8217;ve traded the very reason people cared for infrastructure nobody loves.</p><p>With ExecReps, the stakes felt even higher. This is a product where people practice speaking. Out loud, vulnerably, sometimes badly. That requires psychological safety that most team software never even considers.</p><h2><strong>The First Attempt: v0.6 and the Flat List</strong></h2><p>Back in October 2025, we shipped v0.6. These were our first team accounts. It was basic. A team owner could invite members via email, see aggregate analytics, and manage billing through Stripe.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!E_bZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!E_bZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 424w, https://substackcdn.com/image/fetch/$s_!E_bZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 848w, https://substackcdn.com/image/fetch/$s_!E_bZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 1272w, https://substackcdn.com/image/fetch/$s_!E_bZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!E_bZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png" width="1211" height="411" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:411,&quot;width&quot;:1211,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:61674,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771955?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.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_!E_bZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 424w, https://substackcdn.com/image/fetch/$s_!E_bZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 848w, https://substackcdn.com/image/fetch/$s_!E_bZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 1272w, https://substackcdn.com/image/fetch/$s_!E_bZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9476ea78-d5f7-4502-9d05-75ecfb417406_1211x411.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It worked. Just barely. But within weeks, the feedback exposed every assumption we&#8217;d made.</p><p>&#8220;Can my team members see each other&#8217;s scores?&#8221; We hadn&#8217;t decided.</p><p>&#8220;We have regional sub-teams. Can I create groups within the team?&#8221; No.</p><p>&#8220;I want to add thirty people at once.&#8221; You&#8217;ll need to type thirty email addresses, one at a time.</p><p>&#8220;I manage two teams: product and design. Can I be in both?&#8221; Also no.</p><p>Every one of those questions was a canary in the coal mine. In Don Norman&#8217;s language, we had a massive conceptual model mismatch. We&#8217;d built a mental model of &#8216;team&#8217; that meant &#8216;flat list of people under one admin&#8217;. Our users&#8217; mental model was messy, overlapping, hierarchical, and fluid. Because that&#8217;s how organizations operate. The Gulf of Execution, the gap between what users wanted to do and what our interface let them do, was enormous.</p><h2><strong>The Privacy Problem Nobody Mentions</strong></h2><p>What makes ExecReps different, what makes the team pivot entirely different from adding team features to a design tool or a project tracker, is this:</p><p>When someone practices a high-stakes conversation, maybe a board presentation or a salary negotiation, they&#8217;re being vulnerable. They&#8217;re getting feedback that says their pace is too fast, they use &#8220;um&#8221; forty-seven times, their confidence score is 520 out of 1000. That data is intimate. Now imagine their manager can see all of it.</p><p>Kahneman and Tversky&#8217;s loss aversion research is painfully relevant here. The fear of losing something, like privacy or psychological safety, is roughly twice as powerful as the motivation to gain something, like a better score or team recognition. If a team member even <em>suspects</em> their boss can see a bad session, the fear of exposure outweighs any motivation to practice. They&#8217;ll stop using the product. Or worse, they&#8217;ll only practice things they&#8217;re already good at.</p><p>The VP of L&amp;D who emailed me? She <em>needs</em> to see her team&#8217;s progress. That&#8217;s the entire value proposition for an enterprise buyer. She&#8217;s spending budget. She needs ROI.</p><p>But the individual needs to feel safe enough to be bad at something.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fMr6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fMr6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!fMr6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!fMr6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!fMr6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fMr6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;AI Product Management: Explaining Model Performance Metrics to Sales icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Product Management: Explaining Model Performance Metrics to Sales icon" title="AI Product Management: Explaining Model Performance Metrics to Sales icon" srcset="https://substackcdn.com/image/fetch/$s_!fMr6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!fMr6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!fMr6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!fMr6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7df3c13d-6763-4325-9f2a-2d2c39c5cb77_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Our solution:</p><p><strong>Aggregation is the answer.</strong></p><p>Managers see trends, not transcripts. They see that someone&#8217;s EPS has improved 15% over the last month, not that they bombed a specific practice session on Tuesday. They see engagement patterns, who&#8217;s practicing regularly, but not the content of what anyone practiced. The individual owns their detailed data. The team sees the trajectory.</p><p>Deci and Ryan&#8217;s Self-Determination Theory says people need autonomy, competence, and relatedness to stay intrinsically motivated. Full transparency to managers kills autonomy. Our aggregation model preserves it. The member controls what they practice and when, and their boss sees only the trajectory of growth, not the vulnerable process behind it.</p><p>It&#8217;s the difference between a fitness tracker that tells your boss you worked out three times this week, versus one that shows them the video of you wheezing on the treadmill. I wonder if there&#8217;s an equivalent in other domains, like a coding practice tool. Would a manager want to see every syntax error, or just the overall improvement in code quality?</p><h2><strong>v2.1: Making Teams Find Themselves</strong></h2><p>By March 2026, we were ready for the real team rebuild. The first thing we tackled was the most fundamental question: How do teams form in the first place?</p><p>In most enterprise tools, team creation is top-down. An admin buys seats, manually invites people, and assigns them to groups. From a BJ Fogg B=MAP perspective, it&#8217;s an ability disaster. Every email address the admin has to type is friction. We saw this firsthand: admins who bought ten seats would invite three people, get distracted, and never finish.</p><p>We built domain-based team discovery instead. When you sign up with your work email, say <code>sarah@acmecorp.com</code>, we check if there&#8217;s already a team associated with the <code>acmecorp.com</code> domain. If there is, you see it. You can request to join. An admin approves. No invitation needed.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!rWxb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rWxb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!rWxb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!rWxb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!rWxb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rWxb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Product Management: Explaining Deliverability Metrics Changes to Customer Support icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product Management: Explaining Deliverability Metrics Changes to Customer Support icon" title="Product Management: Explaining Deliverability Metrics Changes to Customer Support icon" srcset="https://substackcdn.com/image/fetch/$s_!rWxb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!rWxb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!rWxb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!rWxb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F286a1c45-d688-48a2-b5f4-fca3105210ef_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This sounds simple. It was not simple. Domain matching has a hundred edge cases: personal Gmail addresses, multiple company domains, embedded consultants. The perfectionist in me wanted every edge case solved before shipping. The product manager in me knew domain matching would cover 80% of signups.</p><p>We saw immediate change. An L&amp;D manager would sign up, invite three people, and within a week we&#8217;d see twelve more from the same domain requesting to join. Any product team familiar with Cialdini&#8217;s social proof research would recognize what was happening. &#8220;Your teammates are already here&#8221; did the selling for us.</p><p>We also built multi-team membership with a sidebar switcher. The real world isn&#8217;t a neat org chart. People belong to functional teams, project groups, and leadership cohorts. Forcing single-team membership tells your users you don&#8217;t understand how they work. Nielsen&#8217;s &#8220;Match Between System and Real World&#8221; heuristic is clear: the system should reflect how people organize, not force them into the system&#8217;s preferred structure.</p><h2><strong>v2.3: When &#8220;Enterprise&#8221; Stops Being a Dirty Word</strong></h2><p>Two weeks later, we shipped v2.3. This was enterprise team management. Flat team lists work for ten people. They break at fifty. They&#8217;re laughable at five hundred. We built nested team hierarchies with unlimited depth.</p><p>&#8216;Unlimited depth&#8217; scared me a bit. Every product instinct says to constrain. The moment you say &#8220;maximum three levels of nesting,&#8221; someone&#8217;s org chart has four. And you&#8217;ve lost the deal.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yStP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yStP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 424w, https://substackcdn.com/image/fetch/$s_!yStP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 848w, https://substackcdn.com/image/fetch/$s_!yStP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 1272w, https://substackcdn.com/image/fetch/$s_!yStP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yStP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png" width="1034" height="754" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e136e095-8719-4637-b4e3-344e8210c222_1034x754.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:754,&quot;width&quot;:1034,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:63877,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771955?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.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_!yStP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 424w, https://substackcdn.com/image/fetch/$s_!yStP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 848w, https://substackcdn.com/image/fetch/$s_!yStP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 1272w, https://substackcdn.com/image/fetch/$s_!yStP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe136e095-8719-4637-b4e3-344e8210c222_1034x754.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Bulk onboarding was the other critical piece. That VP of L&amp;D didn&#8217;t want to type thirty email addresses. She wanted to paste from a spreadsheet. So we built multi-email paste (smart parsing for commas, semicolons, newlines) and CSV import for larger teams.</p><p>This is pure BJ Fogg Ability Chain work. Fogg identifies six friction factors: time, money, physical effort, mental effort, social deviance, and non-routine. Typing thirty emails one-by-one fails on three of six. CSV import collapses the entire action into a single file upload. We didn&#8217;t increase the admin&#8217;s motivation to onboard their team. We made the behavior so easy that their existing motivation was enough.</p><p>Nobody writes blog posts about CSV import. It&#8217;s the difference between a product that <em>can</em> be used by teams and one that teams adopt.</p><h2><strong>The Security Audit That Changed Everything</strong></h2><p>During the v2.1 build, we ran a security audit. This is standard practice when you&#8217;re building team features. You&#8217;re now handling data relationships between users, and that&#8217;s often where vulnerabilities hide.</p><p>The audit found an XSS vulnerability. Someone could inject malicious code through a team name or display name, and it would execute in other users&#8217; browsers. In an individual product, the blast radius is limited. In a team product, one compromised input affects every team member who views that page.</p><p>We fixed it immediately. It changed how I thought about the entire architecture. We implemented timing-safe token comparisons for join requests and hardened every data input that crossed team boundaries.</p><p>The team pivot reveals hidden technical debt. If you&#8217;re making this pivot, audit everything. Assume every user input displayed to another user is an attack vector.</p><h2><strong>The Product Lesson: Individual Magic Is Your Moat</strong></h2><p>If you&#8217;re a founder or PM standing at the edge of the individual-to-team pivot, I&#8217;d tell you this:</p><p><strong>The individual experience is not a stepping stone to the team product. It IS the team product.</strong></p><p>Nir Eyal&#8217;s Hook Model makes this concrete. The hook loop: trigger, action, variable reward, investment, lives entirely at the individual level. The trigger is a morning prompt to practice. The action is completing a workout. The variable reward is the AI feedback that surprises you with a specific insight. The investment is the data that accumulates in your profile, making the next session more personalized. Every piece of that loop belongs to the individual user. The team layer doesn&#8217;t create a new hook. It amplifies the existing one by adding social proof (&#8220;your teammates practiced today&#8221;) and Daniel Pink&#8217;s relatedness dimension (&#8220;you&#8217;re growing together&#8221;).</p><p>Every feature we built for teams is worthless if the individual hook isn&#8217;t working. A manager can buy fifty seats. If the individual user doesn&#8217;t feel safe, doesn&#8217;t see improvement, doesn&#8217;t find each practice session genuinely valuable? Usage drops to zero within a month and the contract doesn&#8217;t renew.</p><p>The team layer should be a <em>window</em> into individual value, not a replacement for it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!IJfM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!IJfM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 424w, https://substackcdn.com/image/fetch/$s_!IJfM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 848w, https://substackcdn.com/image/fetch/$s_!IJfM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 1272w, https://substackcdn.com/image/fetch/$s_!IJfM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!IJfM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png" width="1027" height="721" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:721,&quot;width&quot;:1027,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:69437,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771955?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.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_!IJfM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 424w, https://substackcdn.com/image/fetch/$s_!IJfM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 848w, https://substackcdn.com/image/fetch/$s_!IJfM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 1272w, https://substackcdn.com/image/fetch/$s_!IJfM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F59c02fe2-2a85-42fc-a1a9-21c4668d6c6c_1027x721.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I&#8217;ve seen products get this backwards. They build the admin panel first, the reporting first, because that&#8217;s what the buyer asks for. In Norman&#8217;s terms, they collapse the Gulf of Evaluation for the buyer at the expense of widening the Gulf of Execution for the user. The admin gets beautiful dashboards. The user gets a worse product.</p><p>Don&#8217;t let the buyer&#8217;s requirements cannibalize the user&#8217;s experience.</p><h2><strong>Where We Are Now</strong></h2><p>We&#8217;re eight months past that first &#8220;can I buy ten seats?&#8221; email. We&#8217;ve gone from a flat member list to nested enterprise hierarchies, domain discovery, multi-team membership, bulk onboarding, and engagement analytics that give managers what they need without exposing what they shouldn&#8217;t see.</p><p>When an individual user opens ExecReps and starts practicing, it still feels like the same product. Intimate. Safe. Focused on them.</p><p>I&#8217;m not sure if we&#8217;ve gotten it perfectly right. Every week I talk to a team admin who wants more visibility and a team member who wants more privacy. I think that tension is the point. The moment you resolve it fully in either direction, you&#8217;ve built something that serves half your users at the expense of the other.</p><p>The best team products hold that tension. They don&#8217;t resolve it. They design around it.</p>]]></content:encoded></item><item><title><![CDATA[We Built Netflix-Style Recommendations Without a Single LLM Call]]></title><description><![CDATA[A founder's public story of building ExecReps.ai]]></description><link>https://www.productcoalition.com/p/we-built-netflix-style-recommendations</link><guid isPermaLink="false">https://www.productcoalition.com/p/we-built-netflix-style-recommendations</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 19 Apr 2026 14:28:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!qWZc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>It was all there. I remember the screen, the cursor blinking, a beautifully crafted system prompt sitting in my editor. Ready to pipe user profiles into GPT&#8211;4. Ready to get back personalised content recommendations. Token costs calculated, latency projections modeled, two days to ship.</p><p>Then I hit delete.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>That single action, hitting delete, was one of the best product decisions I&#8217;ve made on ExecReps. Maybe it&#8217;s also the most contrarian thing I&#8217;ll write in this entire series.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!C_lo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!C_lo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 424w, https://substackcdn.com/image/fetch/$s_!C_lo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 848w, https://substackcdn.com/image/fetch/$s_!C_lo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 1272w, https://substackcdn.com/image/fetch/$s_!C_lo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!C_lo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png" width="1275" height="250" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:250,&quot;width&quot;:1275,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:133086,&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.productcoalition.com/i/191771582?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.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_!C_lo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 424w, https://substackcdn.com/image/fetch/$s_!C_lo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 848w, https://substackcdn.com/image/fetch/$s_!C_lo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 1272w, https://substackcdn.com/image/fetch/$s_!C_lo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feae9abf1-a59a-432c-b331-b612e4de350e_1275x250.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><h2><strong>The Seduction of the Easy Answer</strong></h2><p>Nobody talks about this in product right now. LLMs have become the new &#8216;just throw it in a database.&#8217; Every feature. Every recommendation. Every personalisation decision. The default instinct in 2026 is to ask a model. I get it, I&#8217;ve done it too. ExecReps uses GPT&#8211;4 for assessment, and it&#8217;s brilliant there.</p><p>But recommendations are a different beast.</p><p>When we started planning personalisation, that moment a user logs in and sees curated practice scenarios instead of a generic wall of content, the temptation was overwhelming. Embed the user&#8217;s profile. Embed the content. Cosine similarity. Done. Ship it. Put &#8216;AI-powered recommendations&#8217; on the marketing site.</p><p>Except I kept hitting one problem I recognized from Don Norman&#8217;s work. I couldn&#8217;t explain <em>why</em> the model would recommend what it recommends. Norman calls this the Gulf of Evaluation, the gap between what the system did and why it did it. I wonder if this is the biggest long-term trust issue with LLMs. When your user can&#8217;t bridge that gulf, you&#8217;ve built a black box. They&#8217;ll eventually stop trusting it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qWZc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qWZc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 424w, https://substackcdn.com/image/fetch/$s_!qWZc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 848w, https://substackcdn.com/image/fetch/$s_!qWZc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 1272w, https://substackcdn.com/image/fetch/$s_!qWZc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qWZc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png" width="424" height="373" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b38338b6-7986-4395-a003-366fa0fbe83d_424x373.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:373,&quot;width&quot;:424,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:43687,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771582?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.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_!qWZc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 424w, https://substackcdn.com/image/fetch/$s_!qWZc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 848w, https://substackcdn.com/image/fetch/$s_!qWZc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 1272w, https://substackcdn.com/image/fetch/$s_!qWZc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb38338b6-7986-4395-a003-366fa0fbe83d_424x373.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The Explainability Problem Nobody&#8217;s Solving</strong></h2><p>In EdTech, and executive coaching is EdTech even if we don&#8217;t always dress it that way, recommendations aren&#8217;t like movie suggestions. If Netflix recommends a mediocre rom-com, nobody gets hurt. You scroll on.</p><p>If ExecReps recommends the wrong practice scenario to someone preparing for a board presentation next Tuesday, and they spend their limited practice time on a scenario that doesn&#8217;t stretch the right muscles? That&#8217;s someone&#8217;s career development time wasted. I was talking to a product leader last week, and he mentioned how frustrating it is when &#8216;AI&#8217; gives him generic suggestions. He just wants to know <em>why</em>. So when they ask &#8216;why did the platform have me practice <em>this</em>?&#8217;, &#8216;well, the embedding similarity was high&#8217; isn&#8217;t an answer.</p><p>Any product team that&#8217;s applied Nielsen&#8217;s Heuristics knows this tension. His sixth heuristic, Recognition over Recall, says users should never have to <em>guess</em> why the system made a decision. They should <em>see</em> the reasoning. With an LLM, the honest answer was we couldn&#8217;t show it. With math, we could.</p><p>Nir Eyal&#8217;s Hook Model shaped our thinking too. The Hook cycles through Trigger &#8594; Action &#8594; Variable Reward &#8594; Investment. In a coaching context, the variable reward needs to feel <em>earned and understood</em>, not random. If users can&#8217;t connect the recommendation to their own growth, the reward loop breaks. The thing I keep coming back to is this. We needed variability in the content surface, yes, but not opacity in the logic underneath.</p><h2><strong>Five Factors, Zero Magic</strong></h2><p>So we built what I now think of as the honest recommendation engine. Five scoring factors. Each weighted. Each grounded in learning science. And each, I&#8217;d later realize, maps to established behavioral frameworks that any product team would recognize:</p><p><strong>1. Content Relevance.</strong> Does this scenario match what you need to practice? A structured mapping between your stated goals, your role, your industry, and the content metadata we&#8217;ve tagged on every scenario.</p><p><strong>2. Difficulty Match.</strong> Straight from Vygotsky&#8217;s Zone of Proximal Development, which anyone who&#8217;s studied Csikszentmihalyi&#8217;s Flow theory will recognize. Optimal challenge sits just beyond current ability. Daniel Pink calls this the Mastery component of his Drive framework, the intrinsic pull toward getting better at something that matters. The engine doesn&#8217;t just serve content. It serves the <em>right difficulty</em> to keep users in that Flow channel.</p><p><strong>3. Skill Gaps.</strong> Where are you weakest relative to where you need to be? If your scores show strong Command but shaky Eloquence, the system pushes you toward scenarios demanding clarity and articulation. The Kano Model would call this &#8216;must-be&#8217; quality. Users <em>expect</em> a coaching platform to know where they need work. Not a delighter. Table stakes.</p><p><strong>4. Recency.</strong> When did you last practice a particular skill area? Spaced repetition works. Kahneman and Tversky&#8217;s research on memory availability tells us the same thing from a different angle. Recently practiced skills feel more accessible than they are, creating an illusion of competence the system needs to counteract.</p><p><strong>5. Diversity.</strong> This one&#8217;s mine, not from any textbook. I kept noticing in user testing that people got stuck in loops, practicing presentations over and over because that&#8217;s what felt comfortable. From a Hook Model perspective, this is where variable reward design becomes critical. Eyal is explicit: predictable rewards lose power. The diversity factor nudges you into unfamiliar territory. Difficult conversations, upward feedback, client escalations. The things you <em>avoid</em> are often the things you need 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_!rIgV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!rIgV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 424w, https://substackcdn.com/image/fetch/$s_!rIgV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 848w, https://substackcdn.com/image/fetch/$s_!rIgV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 1272w, https://substackcdn.com/image/fetch/$s_!rIgV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!rIgV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png" width="1201" height="1047" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1047,&quot;width&quot;:1201,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:189026,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771582?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.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_!rIgV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 424w, https://substackcdn.com/image/fetch/$s_!rIgV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 848w, https://substackcdn.com/image/fetch/$s_!rIgV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 1272w, https://substackcdn.com/image/fetch/$s_!rIgV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96fa00b1-e6ed-46b3-ad5a-799994ae66e8_1201x1047.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>Each factor produces a normalized score. The weighted combination gives us a final ranking. No black box. Every recommendation traces back to defensible reasoning. &#8216;We recommended this because you haven&#8217;t practiced delivery skills in 12 days, this scenario is one level above your last difficulty rating, and it targets the dimension where your gap is widest.&#8217;</p><p>Norman would call that bridging the Gulf of Evaluation. Nielsen would call it Visibility of System Status. I just call it treating adults like adults.</p><h2><strong>141 Skills Walk Into a Bar</strong></h2><p>Let me be honest about a mistake here. It&#8217;s one that any PM who&#8217;s read Norman&#8217;s work on conceptual models should have seen coming.</p><p>When we first built skill tracking, I let users self-report their target skills. Free text. &#8216;What skills do you want to develop?&#8217; Very user-friendly. Very product-manager-who-reads-too-many-UX-books, me included.</p><p>We ended up with 141 unique skills in the database. Think &#8216;Executive presence.&#8217; Then &#8216;Executive communication.&#8217; Then &#8216;Presence in meetings.&#8217; Then &#8216;Being more present in executive meetings.&#8217; Four users, four entries, functionally the same thing.</p><p>The recommendation engine couldn&#8217;t work on top of that. In Norman&#8217;s terms, we had a catastrophic conceptual model mismatch. Every user had built a different mental model of what they were working on, and the system had no shared language to operate from. You can&#8217;t do gap analysis when the gap dimensions are fuzzy, overlapping, and user-generated.</p><p>So we did something painful. We threw all 141 away and started from psychometric research. Validated communication competency frameworks. Published, peer-reviewed dimensions of what &#8216;communication skill&#8217; means when you measure it rigorously.</p><p>We landed on eight dimensions. Eight.</p><p>That collapse, 141 to 8, was one of the hardest product decisions I&#8217;ve made. In Self-Determination Theory terms (Deci &amp; Ryan), it felt like violating the Autonomy principle. It felt like telling users &#8216;we know better than you what you&#8217;re working on.&#8217; The psychometric evidence was overwhelming though. When you let people self-categorize communication skills, they create endless synonyms and miss critical dimensions entirely. Almost nobody listed &#8216;consistency&#8217; as a target, for example. I&#8217;m not sure if this is a universal human trait or specific to communication skills, but it&#8217;s a pattern I&#8217;ve seen often. Consistency, maintaining quality under pressure, across contexts, is one of the strongest predictors of communication effectiveness in the literature.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FyUQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FyUQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 424w, https://substackcdn.com/image/fetch/$s_!FyUQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 848w, https://substackcdn.com/image/fetch/$s_!FyUQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 1272w, https://substackcdn.com/image/fetch/$s_!FyUQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FyUQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png" width="1217" height="822" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f78da89-4899-4974-adc3-16967cffe722_1217x822.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:822,&quot;width&quot;:1217,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:165577,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771582?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.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_!FyUQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 424w, https://substackcdn.com/image/fetch/$s_!FyUQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 848w, https://substackcdn.com/image/fetch/$s_!FyUQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 1272w, https://substackcdn.com/image/fetch/$s_!FyUQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f78da89-4899-4974-adc3-16967cffe722_1217x822.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>User-generated taxonomies feel democratic. Validated taxonomies work. The Kano Model has a concept for this. Users will <em>say</em> they want freeform input, but their satisfaction doesn&#8217;t improve from getting it. What improves satisfaction is getting recommendations that work.</p><h2><strong>Solving Cold Start Without Asking Boring Questions</strong></h2><p>The classic cold start problem. New user, no data, and you need good recommendations immediately. Most platforms solve this with a questionnaire. &#8216;Rate your interest in these 15 topics.&#8217;</p><p>BJ Fogg&#8217;s B=MAP model told us that was wrong. Behavior equals Motivation plus Ability plus Prompt. A new user arriving from their manager&#8217;s email has moderate motivation at best. A fifteen-question onboarding form tanks their Ability. Too much time, too much mental effort, too much friction. Fogg is clear: when motivation is low, make the action trivially easy. A questionnaire is the opposite of easy.</p><p>We built two things instead.</p><p>First: <strong>industry/role/seniority profiles.</strong> Before any user tells us anything personal, we know statistical priors. A VP of Engineering at a Series B startup has different communication challenges than a Marketing Director at a Fortune 500. We built baseline profiles from research. What skills matter at each seniority level, what scenarios each role encounters, what difficulty level fits each experience bracket.</p><p>Second, and this is the one I&#8217;m proudest of, the <strong>Challenge Picker and Confidence Slider.</strong></p><p>Instead of asking &#8216;what do you want to improve?&#8217; we show three real scenarios and let users pick which feels most relevant. Steve Krug would call this &#8216;Don&#8217;t Make Me Think.&#8217; Recognition, not recall. Show options, let them point.</p><p>Then, before their first practice: a Confidence Slider. &#8216;How confident do you feel about this scenario?&#8217; Zero to ten. Two seconds.</p><p>That slider is pure signal. It&#8217;s where Kahneman and Tversky&#8217;s work on cognitive bias becomes directly useful in product design. Someone who rates themselves 8/10 confidence and delivers a 550 EPS score has a calibration problem, what Kahneman calls overconfidence bias. Someone who rates 3/10 and delivers the same 550 is underestimating themselves. The recommendation engine treats them completely differently, and it should. The gap between self-assessment and performance is one of the richest signals any coaching product can capture.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!A4oS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!A4oS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 424w, https://substackcdn.com/image/fetch/$s_!A4oS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 848w, https://substackcdn.com/image/fetch/$s_!A4oS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 1272w, https://substackcdn.com/image/fetch/$s_!A4oS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!A4oS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png" width="599" height="605" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:605,&quot;width&quot;:599,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:55756,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771582?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.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_!A4oS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 424w, https://substackcdn.com/image/fetch/$s_!A4oS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 848w, https://substackcdn.com/image/fetch/$s_!A4oS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 1272w, https://substackcdn.com/image/fetch/$s_!A4oS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8ef94daa-d4e8-41f9-aef6-9f450f7c3fde_599x605.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>All of this runs without a single API call to any language model. Zero tokens. Zero latency. Zero risk of prompt injection or model drift affecting what learning path someone follows.</p><h2><strong>The Quiet Confidence of Boring Technology</strong></h2><p>I&#8217;m not anti-AI. ExecReps runs on AI, yes. Our assessment engine is genuinely powerful and would have been impossible three years ago. AI was the wrong tool for recommendations though, because <strong>the recommendation problem was well-defined enough to solve with math.</strong></p><p>Here&#8217;s my rough heuristic, for what it&#8217;s worth:</p><p><strong>Use AI when</strong>: the input is unstructured, the output needs to be generative, and you can&#8217;t write rules for what &#8216;good&#8217; looks like. Assessment of free-form speech? That&#8217;s AI.</p><p><strong>Use algorithms when</strong>: the input is structured, the output is a ranking, and you <em>can</em> define &#8216;good&#8217; with research. Matching users to content? That&#8217;s math.</p><p><strong>Use neither when</strong>: the problem is a UX problem disguised as a technical one.</p><p>There&#8217;s a confidence that comes from building something you can fully explain. When a user asks &#8216;why did you recommend this?&#8217; and you can say &#8216;because your skill gap in Eloquence is 23% wider than your gap in Command, you haven&#8217;t practiced client-facing scenarios in 9 days, and this sits one difficulty tier above your last successful attempt&#8217;, that&#8217;s a different conversation than &#8216;our AI thought you&#8217;d like it.&#8217;</p><p>In executive coaching, where people are developing skills that affect their careers, their livelihoods, their sense of professional identity, they deserve the transparent answer. Someone making decisions about their own development should understand the reasoning behind the recommendations shaping that development.</p><p>Executive presence should not be a privilege. Neither should understanding why your learning platform steers you in a particular direction.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HRXS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HRXS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!HRXS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!HRXS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!HRXS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HRXS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/aea18a29-754d-49cf-a970-eb447de718c5_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Technology Leadership: Responding to Board Pressure to Replace Custom AI icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Technology Leadership: Responding to Board Pressure to Replace Custom AI icon" title="Technology Leadership: Responding to Board Pressure to Replace Custom AI icon" srcset="https://substackcdn.com/image/fetch/$s_!HRXS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!HRXS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!HRXS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!HRXS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faea18a29-754d-49cf-a970-eb447de718c5_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It&#8217;s not the flashiest thing we&#8217;ve built, I know. &#8216;Startup uses math instead of AI&#8217; isn&#8217;t exactly clickbait. Still, when I look at our recommendation accuracy, users completing recommended scenarios at a significantly higher rate than self-selected ones, I think about that moment with the GPT&#8211;4 prompt written and ready to ship.</p><p>I&#8217;d delete that prompt again every time.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[I Built a Fitness Tracker for How You Speak]]></title><description><![CDATA[A founder's story of building ExecReps.ai]]></description><link>https://www.productcoalition.com/p/i-built-a-fitness-tracker-for-how</link><guid isPermaLink="false">https://www.productcoalition.com/p/i-built-a-fitness-tracker-for-how</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 12 Apr 2026 16:15:43 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!9O4q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.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_!9O4q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9O4q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png 424w, https://substackcdn.com/image/fetch/$s_!9O4q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png 848w, https://substackcdn.com/image/fetch/$s_!9O4q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png 1272w, https://substackcdn.com/image/fetch/$s_!9O4q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9O4q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png" width="1188" height="794" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:794,&quot;width&quot;:1188,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:139729,&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.productcoalition.com/i/191770279?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.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_!9O4q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png 424w, https://substackcdn.com/image/fetch/$s_!9O4q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png 848w, https://substackcdn.com/image/fetch/$s_!9O4q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.png 1272w, https://substackcdn.com/image/fetch/$s_!9O4q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F052ea97f-2ac7-4e91-b0d9-bf00a974aa05_1188x794.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></p><p>I had one of those mornings recently. You know the kind. Staring at a screen, coffee going cold, and the data just&#8230; mocks you. Not the company, not the product, but the dashboard itself made me want to quit.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>We&#8217;d spent weeks building acoustic voice analysis into ExecReps. Pace, filler words, clarity, confidence. Now, users could see <em>everything</em>.</p><p>Their content scores, broken out across structure, persuasion, and relevance. Their delivery scores, measured across four vocal dimensions we called Command, Eloquence, Engagement, and Consistency. Eight archetype classifications. Historical data on every dimension. Charts for days.</p><p>It was, objectively, impressive engineering. It was also terrible product design.</p><p>I knew this because I watched myself use it. I&#8217;d finish a practice session, get my results, and then spend two minutes trying to figure out whether I&#8217;d gotten <em>better</em>. Was my Eloquence going up, but my Command going down? Did the content improvement offset the delivery dip? Was a 620 in Engagement good? Compared to what?</p><p>This is the bit I keep getting stuck on with some of the data visualization trends. We collect so much, but what do we <em>do</em>with it?</p><p>Don Norman calls this the Gulf of Evaluation: the gap between what a system shows you and your ability to figure out what it means. Our dashboard had created a canyon-sized gulf. Tons of data, zero answers. If I, the person who built this thing, couldn&#8217;t quickly answer &#8216;am I improving?&#8217;, no user stood a chance.</p><h2><strong>The Data Trap</strong></h2><p>Engineers and PMs love data. Users love answers.</p><p>I&#8217;ve learned that the hard way, multiple times, across multiple companies.</p><p>There&#8217;s a seductive logic to giving users more information. More data means more transparency, more trust, more engagement. It&#8217;s a clean little story that falls apart the moment a real human opens your app.</p><p>Barry Schwartz&#8217;s Paradox of Choice shows more options create more anxiety, not more satisfaction. Nielsen&#8217;s eighth usability heuristic, aesthetic and minimalist design, exists because every extra element on screen competes for cognitive bandwidth. Show someone eight metrics and you haven&#8217;t given them eight insights. You&#8217;ve given them decision paralysis wearing a dashboard costume.</p><p>The mistake isn&#8217;t in collecting the data. It&#8217;s in thinking the data <em>is</em> the product.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9ges!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9ges!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!9ges!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!9ges!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!9ges!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9ges!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;AI Product Management: Designing Training Data Collection Process for Content Generation Model icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Product Management: Designing Training Data Collection Process for Content Generation Model icon" title="AI Product Management: Designing Training Data Collection Process for Content Generation Model icon" srcset="https://substackcdn.com/image/fetch/$s_!9ges!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!9ges!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!9ges!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!9ges!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc6f80610-9451-4033-a2a4-5f16dedb1f2e_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>What Fitbit Already Figured Out</strong></h2><p>The breakthrough came from a conversation I had with a friend who&#8217;d just gotten a Garmin watch. She was showing me her stats: heart rate variability, VO2 max, sleep stages, body battery. I asked her what her resting heart rate was.</p><p>She had no idea.</p><p>What she <em>did</em> know was that her &#8216;body battery&#8217; was at 73 that morning, which was higher than last week. Her training status said &#8216;Productive&#8217;. That&#8217;s all she needed.</p><p>In the Kano Model, Garmin&#8217;s raw biometric data is table-stakes quality: expected but not exciting. The &#8216;body battery&#8217; synthesis is the delighter. Same sensors, but the experience shifts from &#8216;here&#8217;s your data&#8217; to &#8216;here&#8217;s your answer&#8217;.</p><p>Fitbit figured this out years ago. It wasn&#8217;t &#8216;here are your steps, your distance, your calories, your active minutes&#8217;. It was: you hit your goal today. You&#8217;re on a streak. You&#8217;re improving. The raw data lives behind a tap for the nerds who want it. The <em>product</em> is the answer.</p><p>We needed our own version of that. I wonder if this lesson applies to every &#8216;pro&#8217; tool. Do finance professionals want every row of a spreadsheet, or just the insights from it? I&#8217;m not sure.</p><h2><strong>Building the Executive Performance Score</strong></h2><p>So in late November, we built what we call the Executive Performance Score. The EPS.</p><p>One number. 400 to 1,000 scale. It tells you how effective you are as a communicator. Full stop.</p><p>Under the hood, EPS combines two systems we&#8217;d already built. Think of it like this:</p><p><strong>Content quality.</strong> Our GPT&#8211;4 analysis layer evaluates <em>what</em> you say. Structure, clarity, persuasion, relevance, depth of thinking. This is the stuff traditional coaching often focuses on.</p><p><strong>Delivery quality.</strong> Our acoustic analysis layer evaluates <em>how</em> you say it. Command, Eloquence, Engagement, and Consistency. This is the stuff that usually requires a live coach or, more often, never gets measured at all.</p><p>In Norman&#8217;s terms, we were creating a new conceptual model. Instead of &#8216;I have eight separate scores I need to track&#8217;, the mental model becomes &#8216;I have one number that goes up when I get better&#8217;. One number. Two systems. A graspable picture.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!m51k!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!m51k!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!m51k!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!m51k!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!m51k!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!m51k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;AI Product Management: Choosing between Personalization Algorithm Improvements vs New Recommendation Surfaces icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Product Management: Choosing between Personalization Algorithm Improvements vs New Recommendation Surfaces icon" title="AI Product Management: Choosing between Personalization Algorithm Improvements vs New Recommendation Surfaces icon" srcset="https://substackcdn.com/image/fetch/$s_!m51k!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!m51k!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!m51k!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!m51k!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0dba7adc-df2a-4fba-ab81-2074f2bc6eed_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The 60/40 Fight</strong></h2><p>This is where it got contentious. If EPS combines content and delivery, what&#8217;s the weighting?</p><p>My instinct was 50/50. Clean. Fair. Democratic.</p><p>But content and delivery don&#8217;t matter equally. Pretending they do is the kind of elegant-sounding product decision that makes your product worse.</p><p>We went back and forth on this for longer than I&#8217;d like to admit. The arguments for 50/50 were aesthetic. The arguments against were practical.</p><p>First, content has a higher ceiling of differentiation. Two people can deliver a message with nearly identical vocal quality but wildly different levels of insight and persuasion. Academic communication research suggests content predicts audience perception of competence more strongly than delivery alone.</p><p>Second, we&#8217;re building for professional contexts. In a board meeting, a pitch, a difficult conversation, <em>what</em> you say carries more weight than <em>how</em> you say it.</p><p>Third, and this is the one that settled it, a 50/50 split created a perverse incentive. Kahneman and Tversky&#8217;s work on framing effects applies directly. How you frame a metric changes what people optimize for. A 50/50 split would tell users with strong voices but weak content that they were &#8216;good&#8217; when they were just <em>pleasant-sounding</em>. That&#8217;s not what we&#8217;re building. We&#8217;re not a voice beautification tool.</p><p>So we went 60/40. Content gets 60%, delivery gets 40%.</p><p>It&#8217;s not a perfect split. It does create the right incentive structure: if you want a high EPS, you need to think well and communicate substantively. A beautiful voice won&#8217;t carry you past 700.</p><p>The product lesson is that &#8216;weights are product decisions, not math decisions&#8217;. Every composite metric encodes values. Spotify&#8217;s Discover Weekly weights novelty against familiarity. Google&#8217;s search algorithm weights freshness against authority. The weights aren&#8217;t neutral, they&#8217;re your product&#8217;s opinion about what matters. Own that opinion explicitly, or you&#8217;ll end up with a metric that doesn&#8217;t drive the behavior you want.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dcpv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dcpv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!Dcpv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!Dcpv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!Dcpv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dcpv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5b035123-df64-4124-a70c-429171735a68_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Executive Accountability: Presenting Findings to Board on Toxic Behavior icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Executive Accountability: Presenting Findings to Board on Toxic Behavior icon" title="Executive Accountability: Presenting Findings to Board on Toxic Behavior icon" srcset="https://substackcdn.com/image/fetch/$s_!Dcpv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!Dcpv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!Dcpv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!Dcpv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5b035123-df64-4124-a70c-429171735a68_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The 400&#8211;1,000 Scale (And Why Not 1&#8211;100)</strong></h2><p>Small decision, but it mattered more than expected: the scale.</p><p>Early versions used 1 to 100. It felt intuitive. Everyone understands percentages. It created two problems though.</p><p>First, nobody wants to be a 43. This is Kahneman and Tversky&#8217;s anchoring bias in action. Decades of school grades have anchored everyone to read anything below 70 as &#8216;bad&#8217;. A score of 52 out of 100 <em>is</em> above the mathematical median, but it <em>feels</em> like failure. The anchor is stronger than any disclaimer you put next to it.</p><p>Loss aversion tells you why this kills a self-improvement product. If users feel they&#8217;re &#8216;failing&#8217; on their first session, the emotional cost of continuing outweighs the potential gain. They don&#8217;t come back. You&#8217;ve lost them to a technically accurate but emotionally devastating number.</p><p>We borrowed the 400&#8211;1,000 scale from standardized testing (SAT, GRE, GMAT). It&#8217;s population-normalized, so a 600 means you&#8217;re at the median, not &#8216;failing&#8217;. A 580 doesn&#8217;t trigger the same shame response as a 58.</p><p>Same underlying data, different emotional frame. That&#8217;s product design. I wonder if there&#8217;s a limit to how much you can &#8216;gamify&#8217; negative feedback. Or if all products should just avoid grading entirely.</p><h2><strong>The Backfill Decision</strong></h2><p>This is the part I&#8217;m most proud of. It was almost the part we didn&#8217;t do.</p><p>When we launched EPS, every user had existing data. Practice sessions from weeks or months of using the platform. They didn&#8217;t have EPS, because EPS didn&#8217;t exist when they did those sessions.</p><p>The easy path: EPS starts now. Old sessions get old scoring. New sessions get EPS. A clean cutover.</p><p>But that meant users would open the dashboard and see&#8230; nothing. No trend line. No trajectory. Just a single data point. The whole promise of &#8216;am I getting better?&#8217; requires <em>comparison over time</em>. One data point isn&#8217;t a trajectory. It&#8217;s a dot.</p><p>So we went back and calculated EPS for every historical submission in the system. Every practice session, every scenario, every user. We applied the same 60/40 weighting, the same population normalization, the same scale. When users opened the new EPS dashboard for the first time, they didn&#8217;t see a blank slate. They saw their entire journey.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uIYf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uIYf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 424w, https://substackcdn.com/image/fetch/$s_!uIYf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 848w, https://substackcdn.com/image/fetch/$s_!uIYf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 1272w, https://substackcdn.com/image/fetch/$s_!uIYf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uIYf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png" width="562" height="428" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:428,&quot;width&quot;:562,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:39893,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191770279?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.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_!uIYf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 424w, https://substackcdn.com/image/fetch/$s_!uIYf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 848w, https://substackcdn.com/image/fetch/$s_!uIYf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 1272w, https://substackcdn.com/image/fetch/$s_!uIYf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9e9d84ea-e15c-43be-abdb-eaf050179fce_562x428.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This matters more than it sounds like it should. Multiple well-established frameworks explain why.</p><p>Teresa Amabile&#8217;s progress principle research at Harvard shows that the single strongest driver of motivation at work is the sense of making progress on meaningful work. Not recognition, not incentives. <em>Progress</em>. Deci and Ryan&#8217;s Self-Determination Theory identifies competence, the feeling that you&#8217;re getting better, as one of three fundamental human needs. Daniel Pink&#8217;s mastery research in <em>Drive</em> makes the same case. The trajectory line directly feeds the deepest drivers of human motivation.</p><p>From a behavioral design perspective, Nir Eyal&#8217;s Hook Model would call the backfill data &#8216;stored value&#8217;, the Investment phase of the habit loop. Users who see their history have something invested in the system. That investment loads the next trigger: &#8216;I wonder if my next session will push me past 700.&#8217; Without the backfill, zero stored value. With it, they start already hooked.</p><p>When users opened ExecReps and saw a line going up, even slightly, something clicked. I could see it in the engagement data. Session frequency increased. Users who&#8217;d been doing one practice a week started doing two or three. They weren&#8217;t responding to a new feature. They were responding to <em>evidence that they were getting better</em>.</p><p>BJ Fogg&#8217;s B=MAP model explains the mechanism: Behavior = Motivation &#215; Ability &#215; Prompt. The backfill didn&#8217;t change ability or the prompt. It changed <em>motivation</em>. Seeing a rising trajectory makes the next session feel not just possible, but inevitable.</p><p>The engineering cost was maybe two days. The impact on retention was disproportionate. If you&#8217;re building any kind of self-improvement product, I&#8217;d argue the backfill <em>is</em> the feature. Not the score itself. The score is just a number. The trajectory is the product.</p><h2><strong>Measure What Matters, Show What Motivates</strong></h2><p>We ended up with a design philosophy we still use: &#8216;measure what matters, show what motivates.&#8217;</p><p>We still collect all the granular data. Every acoustic dimension, every content sub-score, every archetype shift. That data lives one tap away. Progressive disclosure in Nielsen&#8217;s terms. Or what Dan Saffer&#8217;s microinteraction patterns might call a &#8216;long tap to reveal&#8217; secondary layer. Some users dig into it and love it.</p><p>The <em>product surface</em>, the thing you see first, is one number, one trend line, and one answer: you&#8217;re getting better.</p><p>This philosophy cuts against every instinct a data-driven PM has. We want to show our work. We want credit for the engineering. All of that is ego, not product sense.</p><p>The best products are like the best coaches. They take in a huge amount of information, synthesize it, and tell you the one thing you need to hear right now. That&#8217;s what EPS became. Not just a metric, a design principle. Every feature we&#8217;ve built since, I ask: are we showing what motivates, or are we showing what we measured?</p><h2><strong>The Uncomfortable Truth About Metrics</strong></h2><p>I&#8217;ll end with something that still makes me slightly uncomfortable.</p><p>EPS is an opinion. It&#8217;s our opinion about what makes effective communication, encoded as math. The 60/40 split is a product decision. The population normalization is a modeling choice. The scale is a psychological design. None of it is &#8216;objective&#8217; in the way users might assume when they see a number with decimal precision.</p><p>Every metric in every product is like this. Your credit score is an opinion. Your Uber rating is an opinion. Useful approximations dressed up as measurements.</p><p>I think founders and PMs have an obligation to be honest about this. Cialdini&#8217;s research on commitment and consistency shows that once people anchor their identity to a number (&#8216;I&#8217;m a 720&#8217;), they&#8217;ll work to stay consistent with that identity. That&#8217;s powerful. The behavior your metric incentivizes should be the behavior you want. Get the weights wrong, and you build a precise system that makes users worse at the thing they&#8217;re trying to improve.</p><p>We spent more time on the <em>values</em> behind EPS than on the engineering. I think that&#8217;s exactly right.</p><p>It reminds me of a conversation I had with one of our Product Coalition podcast guests, Marty Cagan, who often talks about how product strategy <em>is</em> value decisions. Metrics are just a manifestation of those values.</p><p>Because that&#8217;s the point. Not the number. Not the dashboard. It&#8217;s the person on the other side of the screen, trying to close the gap between where they are and where they want to be. They&#8217;re trusting us to tell them whether it&#8217;s working.</p><p>If this idea resonates with you, and you&#8217;re curious about how a tool like ExecReps could help your team communicate with greater impact, you can learn more about it on our website. It&#8217;s been a fascinating journey building it in public, and I&#8217;m genuinely excited about what we&#8217;re helping people achieve.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Streaks, Nudges, and the Behavioral Science of Showing Up]]></title><description><![CDATA[A founder's public story of building ExecReps.ai]]></description><link>https://www.productcoalition.com/p/streaks-nudges-and-the-behavioral</link><guid isPermaLink="false">https://www.productcoalition.com/p/streaks-nudges-and-the-behavioral</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 12 Apr 2026 14:24:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!uMU1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The Slack message that started a three-week internal debate was six words long.</p><p>&#8220;Should we add streaks?&#8221; Our designer sent it.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>I typed &#8220;yes&#8221; immediately.</p><p>Then I deleted it.</p><p>Then I typed a longer answer. Deleted that too.</p><p>I stared at the cursor for a solid minute. Behind those six words was one of the most consequential product decisions we&#8217;d make. Not technically. Streaks are trivial to build. Philosophically, though, it was huge. Because the answer would define whether ExecReps helps people build a practice, or just guilt-trips them into opening an app.</p><p>Very different things, those two.</p><h2><strong>The Duolingo Problem</strong></h2><p>Let me back up a little. We&#8217;d just shipped v2.5, our personalized experience release. We had role-based navigation. Smart empty states. Progressive disclosure that showed people only what they needed. Don Norman would call that reducing the &#8220;Gulf of Execution,&#8221; narrowing the gap between intent and interface.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4Jrj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4Jrj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 424w, https://substackcdn.com/image/fetch/$s_!4Jrj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 848w, https://substackcdn.com/image/fetch/$s_!4Jrj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 1272w, https://substackcdn.com/image/fetch/$s_!4Jrj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4Jrj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png" width="1205" height="202" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:202,&quot;width&quot;:1205,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27881,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.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_!4Jrj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 424w, https://substackcdn.com/image/fetch/$s_!4Jrj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 848w, https://substackcdn.com/image/fetch/$s_!4Jrj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 1272w, https://substackcdn.com/image/fetch/$s_!4Jrj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3becdd20-621d-475f-997b-b3ab01a9cc10_1205x202.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>But we had a retention problem. People who practiced three times stuck around. The challenge was getting people to practice three times in the first place. Our activation curve looked like a cliff with a plateau. You either fell off in the first week or stayed for months.</p><p>When we ran our engagement features through Nir Eyal&#8217;s Hook Model, we scored about 4 out of 10. We had a decent trigger (email invite) and a reasonable action (do a workout). Our Variable Reward was flat, though, and our Investment phase was nonexistent. Users completed a workout and&#8230; nothing loaded the next trigger. No real reason to come back tomorrow. Any product team using the Hook Model would recognize that open-ended loop as the problem.</p><p>So, the conversation turned to engagement mechanics. And someone said &#8220;streaks.&#8221;</p><p>If you&#8217;ve ever uninstalled Duolingo, you know why that word made me pause. Duolingo&#8217;s streak system is a masterclass in behavioral design. And, I think, an object lesson in crossing the line from helpful to hostile. The sad owl. The passive-aggressive notifications. The sheer guilt of it all. That thing where you feel worse about <em>breaking</em> a streak than you ever felt good about <em>maintaining</em> one.</p><p>I&#8217;ve talked to people who kept their Duolingo streak alive for 300 days without learning a single new word. The metric had completely decoupled from the outcome. In Kano Model terms, what should be a &#8216;delighter&#8217; &#8211; a sense of momentum &#8211; had degraded into a &#8216;must-be&#8217; obligation that only generated dissatisfaction when broken.</p><p>That isn&#8217;t retention. That&#8217;s a hostage situation. A podcast guest told me something similar about fitness apps a few months back. The moment the streak becomes the point, you&#8217;ve lost the plot on what the product was supposed to do.</p><h2><strong>BJ Fogg Changed My Mind</strong></h2><p>I almost killed the streaks idea entirely. Then I re-read BJ Fogg&#8217;s <em>Tiny Habits</em>, and his B=MAP model reframed everything.</p><p>Fogg&#8217;s framework is pretty standard product science now. Behavior = Motivation &#215; Ability &#215; Prompt, all converging at the same moment. Miss any one, nothing happens. The mistake most products make is trying to <em>increase motivation</em>. More notifications, more badges, more guilt. Fogg argues you should instead <em>decrease the effort required</em>. Make the behavior so easy that even low motivation is enough.</p><p>That distinction changed everything. The question wasn&#8217;t &#8220;how do we motivate people to practice?&#8221; It was &#8220;how do we make practicing the path of least resistance?&#8221;</p><p>We spent two weeks mapping the behavioral science before writing a single line of code.</p><p><strong>BJ Fogg&#8217;s B=MAP.</strong> Design for the low-motivation moment. Not eager Monday morning, but exhausted Thursday afternoon. If the streak system only works when people are fired up, it&#8217;s not a system. It&#8217;s a fair-weather friend.</p><p><strong>Kahneman &amp; Tversky&#8217;s Prospect Theory.</strong> People feel losses roughly twice as intensely as equivalent gains. The engine behind every streak system ever built. We&#8217;d use loss aversion, but carefully, with an escape valve.</p><p><strong>Nir Eyal&#8217;s Hook Model.</strong> Trigger &#8594; Action &#8594; Variable Reward &#8594; Investment. Our 4/10 audit exposed the missing Investment phase. Our morning nudge system needed to close that loop.</p><p><strong>Deci &amp; Ryan&#8217;s Self-Determination Theory.</strong> Intrinsic motivation requires autonomy, competence, and relatedness. Daniel Pink popularized this as Drive&#8217;s AMP framework: Autonomy, Mastery, Purpose. This became our ethical guardrail. Any engagement system that undermines autonomy will eventually backfire.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uMU1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uMU1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!uMU1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!uMU1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!uMU1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uMU1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Product Strategy: Balancing Model Accuracy Improvements with User Experience Features icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product Strategy: Balancing Model Accuracy Improvements with User Experience Features icon" title="Product Strategy: Balancing Model Accuracy Improvements with User Experience Features icon" srcset="https://substackcdn.com/image/fetch/$s_!uMU1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!uMU1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!uMU1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!uMU1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2dad96ca-7494-446a-973d-937c1c6370ab_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>What We Built (And What We Didn&#8217;t)</strong></h2><h3><strong>Streaks, But With an Exit Ramp</strong></h3><p>Yes, we built streaks. But with one critical difference. <strong>We designed the break as carefully as the streak itself.</strong></p><p>When you practice, your streak increments. You see a small visual celebration. Dan Saffer calls this a &#8216;signature moment&#8217; in his microinteractions framework. Not confetti cannons, just enough feedback to trigger Fogg&#8217;s &#8220;celebration&#8221; mechanism. The key is immediacy. Celebration fires within 200ms of completion. Delayed celebration doesn&#8217;t wire the habit. Hit milestones (7 days, 30 days, 100 days) and the feedback gets richer. It&#8217;s a progressive loop where the microinteraction evolves as your behavior matures.</p><p>The part I&#8217;m quite proud of? Streak freezes. Miss a day, spend a &#8216;freeze credit&#8217; to keep your streak alive. You earn these by practicing consistently. It&#8217;s Kahneman&#8217;s loss aversion working <em>for</em> you instead of <em>against</em> you. You&#8217;re spending a resource you banked through good behavior. Cialdini&#8217;s Commitment &amp; Consistency principle is baked in. The freeze credits are earned through past commitment, making the current streak feel like something you&#8217;ve invested in, not something imposed on you.</p><p>If your streak does break? We don&#8217;t show a sad owl. We show your best streak as a personal record. &#8220;Your best: 23 days. Let&#8217;s start a new one.&#8221; The streak <em>dies quietly</em>. No funeral. No guilt. Just a clean slate.</p><p>Someone on the team argued a broken streak should <em>feel</em> like something. They thought mild pain of loss is what makes streaks work. They weren&#8217;t wrong about the psychology. But they were wrong about the ethics. Our users are professionals trying to get better at communication. If they miss a day because their kid got sick, the <em>last</em> thing they need is an app eroding their confidence. That&#8217;s a direct violation of SDT&#8217;s autonomy principle. Once autonomy is undermined, Deci &amp; Ryan&#8217;s research shows intrinsic motivation doesn&#8217;t just dip. It collapses.</p><h3><strong>Morning Nudges, Timed to the B=MAP Window</strong></h3><p>Our nudge system sends a morning email, not a push notification. That&#8217;s deliberate. It&#8217;s timed based on engagement patterns. Content varies. It could be a prompt related to something you&#8217;re working on, a micro-insight from your last session, or simply &#8220;Your 3-minute warm-up is ready.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Pc7J!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Pc7J!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 424w, https://substackcdn.com/image/fetch/$s_!Pc7J!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 848w, https://substackcdn.com/image/fetch/$s_!Pc7J!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 1272w, https://substackcdn.com/image/fetch/$s_!Pc7J!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Pc7J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png" width="799" height="365" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:365,&quot;width&quot;:799,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:47404,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191771214?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.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_!Pc7J!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 424w, https://substackcdn.com/image/fetch/$s_!Pc7J!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 848w, https://substackcdn.com/image/fetch/$s_!Pc7J!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 1272w, https://substackcdn.com/image/fetch/$s_!Pc7J!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28e75dc5-98a3-46b6-9aac-8184c627b8b6_799x365.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The timing isn&#8217;t random. We anchored nudges to what Fogg calls &#8216;anchor moments&#8217;. That&#8217;s the Tiny Habits recipe: &#8220;After I [existing behavior], I will [new behavior].&#8221; Most professionals have a cortisol spike in their first waking hour. Alert, but not yet consumed by chaos. That&#8217;s when B=MAP converges. Motivation is fresh, ability is high, and the email <em>is</em> the prompt.</p><p>The variable reward, straight from Eyal&#8217;s Hook Model, comes from the content. You don&#8217;t know what the nudge will contain. It might surface a skill gap you hadn&#8217;t considered, or a scenario relevant to a meeting that afternoon. Variable rewards of the &#8220;hunt&#8221; type create curiosity. Curiosity beats obligation every time.</p><p>Every nudge has a one-click opt-out. Not buried in settings. Right there in the email. Nielsen&#8217;s Heuristic #3, &#8220;User control and freedom,&#8221; in practice. The moment a nudge feels like spam, trust is gone permanently.</p><h3><strong>Re-engagement, An Invitation Not an Intervention</strong></h3><p>For users who go quiet: one email after two weeks. &#8220;Here&#8217;s something new since you&#8217;ve been away. No pressure.&#8221; One email. Not a drip campaign. If they don&#8217;t come back, we leave them alone. That&#8217;s Pink&#8217;s Autonomy principle in action. And it matters more than juicing a metric.</p><h2><strong>The &#8220;What We Don&#8217;t Build&#8221; List</strong></h2><p>Every product team has a roadmap. Very few have a formal anti-roadmap. We started one during v2.6 planning, and it&#8217;s become one of our most valuable documents.</p><p><strong>No leaderboards.</strong> Communication skills aren&#8217;t a competition. Ranking people against each other undermines what Deci &amp; Ryan call &#8216;relatedness&#8217;. That&#8217;s the sense you&#8217;re part of a supportive group, not fighting for position.</p><p><strong>No public scores.</strong> Your EPS, streak, practice frequency. All private by default. Nielsen&#8217;s Heuristic #7: flexibility and efficiency of use means users control their own data.</p><p><strong>No shaming mechanics.</strong> No &#8220;you&#8217;re falling behind&#8221; messaging. We learned from our social proof analysis that showing &#8220;3 of 15 members practiced today&#8221; is negative social proof. Cialdini warns that framing the minority as the example normalizes inaction. We use absolute counts instead. &#8220;3 team members practiced today.&#8221; No denominator, no implied judgment.</p><p><strong>No engagement theater.</strong> No features that increase time-in-app without increasing value-to-user. Norman calls this a conceptual model violation. When the product&#8217;s goals diverge from the user&#8217;s, the relationship erodes.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lFYy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lFYy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!lFYy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!lFYy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!lFYy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lFYy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;AI Product Strategy: Positioning AI Code Generation Tool Against GitHub Copilot icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="AI Product Strategy: Positioning AI Code Generation Tool Against GitHub Copilot icon" title="AI Product Strategy: Positioning AI Code Generation Tool Against GitHub Copilot icon" srcset="https://substackcdn.com/image/fetch/$s_!lFYy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!lFYy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!lFYy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!lFYy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F25d68d79-cf5c-4d6a-b397-258152a269ae_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The Product Lesson: Easiest Beats Loudest</strong></h2><p>This is an insight I keep coming back to. It applies to virtually every product with a retention challenge.</p><p><strong>The best retention features don&#8217;t motivate people to do hard things. They make the right thing the easy thing.</strong></p><p>The B=MAP alternative to amplifying motivation: make the behavior so frictionless that even a bad day&#8217;s motivation is sufficient.</p><ul><li><p><strong>Shorter sessions, not longer ones.</strong> A three-minute warm-up is better than a thirty-minute workout you skip. That&#8217;s Fogg&#8217;s &#8220;Starter Step.&#8221; An entry point so small it feels absurd to say no.</p></li><li><p><strong>Fewer choices, not more.</strong> Progressive disclosure means one clear next step, not twenty options. Norman calls this &#8216;constraints&#8217;. Limiting action possibilities to guide behavior without instructions.</p></li><li><p><strong>Gentler nudges, not louder ones.</strong> A calm morning email beats five push notifications. Saffer&#8217;s microinteraction principle: triggers should match the emotional context, not overwhelm it.</p></li><li><p><strong>Graceful failure, not punishment.</strong> A quiet streak reset beats a guilt-trip notification.</p></li></ul><p>Our early v2.6 data is encouraging. Streak cohort users practice about 40% more frequently. More importantly, session quality metrics haven&#8217;t dropped. People aren&#8217;t checking a box to keep a number alive. They&#8217;re doing the work. Not sure yet whether that holds over six months, but it&#8217;s the right signal.</p><p>That&#8217;s the difference between a habit and an obligation.</p><h2><strong>The Uncomfortable Truth About Behavioral Design</strong></h2><p>Building this system forced me to confront something uncomfortable. Every behavioral design technique is morally neutral. Kahneman &amp; Tversky&#8217;s loss aversion can build a healthy practice or trap someone in a toxic loop. Eyal&#8217;s variable rewards can spark curiosity or create compulsive checking. Cialdini&#8217;s social proof can inspire action or manufacture peer pressure. The framework doesn&#8217;t care about your intentions.</p><p>I wonder if that&#8217;s the biggest design challenge we face today. Not building the features, but building the <em>ethics</em> around them.</p><p>We optimized for practice quality, not app opens. For skill growth, not session count. We built explicit escape valves, too. Freeze credits, quiet resets, one-click opt-outs. Because these tools were powerful enough to do real harm if deployed carelessly. I&#8217;m not sure we got every detail right, but the intent was right.</p><p>That three-week internal argument about streaks &#8211; the one that started with six words in Slack &#8211; was the most valuable product discussion we&#8217;ve had. The most important product decisions aren&#8217;t about what you build. They&#8217;re about why you build it. And what happens when it works exactly as designed.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!g4aB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!g4aB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!g4aB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!g4aB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!g4aB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!g4aB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Crisis Management: Addressing Board Concerns on CMO's Public Comments icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Crisis Management: Addressing Board Concerns on CMO's Public Comments icon" title="Crisis Management: Addressing Board Concerns on CMO's Public Comments icon" srcset="https://substackcdn.com/image/fetch/$s_!g4aB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!g4aB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!g4aB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!g4aB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa780b6fb-fd3f-4207-9f7c-62955335d9f2_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If you&#8217;re building engagement systems, write your own &#8220;what we don&#8217;t build&#8221; list before you write a single user story. You might be surprised how much clarity it provides. It sure did for us, and it&#8217;s why we built ExecReps the way we did.</p><p>And if you ever find yourself designing a sad owl, stop. Close your laptop. Go for a walk. You&#8217;ve lost the plot.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[You're Not a Bad Communicator. You're a Diplomat in a Room Full of Commanders.]]></title><description><![CDATA[It was 2 am in Lisbon, and I was staring at a spreadsheet of beta user feedback.]]></description><link>https://www.productcoalition.com/p/youre-not-a-bad-communicator-youre</link><guid isPermaLink="false">https://www.productcoalition.com/p/youre-not-a-bad-communicator-youre</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 05 Apr 2026 14:08:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!DwKU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>It was 2 am in Lisbon, and I was staring at a spreadsheet of beta user feedback. One response just stopped me cold.</p><p>The user, a senior PM at a mid-size SaaS company, had scored well on our platform. Her content was structured, her arguments logical, her delivery measured. By every objective metric we&#8217;d built, she was a strong communicator.</p><p>Her feedback, though, said: <em>&#8220;I guess I&#8217;m just not a natural speaker. My scores are fine but I still don&#8217;t feel like I know what I&#8217;m doing.&#8221;</em></p><p>Fine scores. No identity.</p><p>That&#8217;s when I realized we&#8217;d built a measuring stick when people wanted a mirror. The thing I kept coming back to was this idea of identity.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!c9qF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!c9qF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 424w, https://substackcdn.com/image/fetch/$s_!c9qF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 848w, https://substackcdn.com/image/fetch/$s_!c9qF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 1272w, https://substackcdn.com/image/fetch/$s_!c9qF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!c9qF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png" width="499" height="140" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:140,&quot;width&quot;:499,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:30306,&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.productcoalition.com/i/191769133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.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_!c9qF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 424w, https://substackcdn.com/image/fetch/$s_!c9qF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 848w, https://substackcdn.com/image/fetch/$s_!c9qF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 1272w, https://substackcdn.com/image/fetch/$s_!c9qF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5f630d3d-830b-44a2-b441-973ed775bea0_499x140.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><h2><strong>The Score Trap</strong></h2><p>Let me rewind. By November 2025, ExecReps had acoustic voice analysis working. V1.0 shipped with AssemblyAI-powered analysis of pace, filler words, clarity, confidence.</p><p>Users would record a practice response to a scenario like &#8216;Your CEO just asked you to explain why the roadmap is slipping, go,&#8217; and we&#8217;d break down both content quality and vocal delivery.</p><p>The scores were&#8230; fine. People used them. People improved. Something, though, was missing.</p><p>I&#8217;m not sure if it was the numbers themselves, or just how we were presenting them. I wonder if it&#8217;s just human nature to want more than a number.</p><p>I kept hearing the same questions: &#8220;What&#8217;s a good score?&#8221; &#8220;Am I normal?&#8221; &#8220;How do I compare?&#8221;</p><p>These aren&#8217;t questions about improvement. These are questions about <em>identity</em>. People weren&#8217;t asking &#8220;How do I get better?&#8221; They were asking &#8220;Who am I as a communicator?&#8221;</p><p>Anyone who&#8217;s read Deci and Ryan&#8217;s Self-Determination Theory would recognize the pattern. Scores satisfy competence (one of three basic psychological needs) but completely miss relatedness and autonomy.</p><p>A number tells you where you rank. It doesn&#8217;t tell you where you <em>belong</em>.</p><p>I&#8217;d spent fifteen years building products and somehow missed one of the most documented insights in motivation research. People don&#8217;t optimize for numbers. They optimize for a sense of self.</p><p>This reminds me of a conversation I had with a founder recently, talking about how a lot of fitness apps fail because they focus on calories burned, not on the feeling of being an &#8216;athlete.&#8217; It&#8217;s the same thing.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DwKU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DwKU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!DwKU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!DwKU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!DwKU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DwKU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Sales Engineer: Explaining AI-Powered Underwriting to a Traditional Insurance Buyer icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Sales Engineer: Explaining AI-Powered Underwriting to a Traditional Insurance Buyer icon" title="Sales Engineer: Explaining AI-Powered Underwriting to a Traditional Insurance Buyer icon" srcset="https://substackcdn.com/image/fetch/$s_!DwKU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!DwKU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!DwKU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!DwKU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F869936e9-62d6-4f52-85a9-65f1d69d5262_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The Research Rabbit Hole</strong></h2><p>Once I saw the problem, I couldn&#8217;t unsee it. So I did what any product person does when they sense an insight. I went deep into the research.</p><p>I started with the usual suspects. Big Five (OCEAN) is scientifically validated, but measures who you <em>are</em>, not how you <em>communicate</em>. DISC is closer, but too static. Myers-Briggs has too much pseudoscience baggage. Sixteen types is a nightmare for product design.</p><p>None of these were designed for <em>voice</em>. They were built for survey responses and check boxes.</p><p>We had actual recordings of people speaking under pressure, with measurable acoustic properties. So we built our own.</p><p>Four dimensions emerged:</p><p><strong>Command.</strong> How much authority and conviction comes through. Not volume. Certainty. Vocal steadiness, declarative phrasing, pacing that says &#8216;I know what I&#8217;m talking about.&#8217;</p><p><strong>Eloquence.</strong> The precision of expression. Vocabulary range, sentence structure, the ability to find exactly the right word instead of four approximate ones.</p><p><strong>Engagement.</strong> How much you pull people in. Vocal variety, storytelling instincts, tonal warmth. The difference between reading a report and making someone lean forward.</p><p><strong>Consistency.</strong> How stable your communication is across contexts. Some people are brilliant in a 1:1 and fall apart in front of a group. This dimension measures the gap.</p><p><strong>We called it the Voice Performance Score, VPS. We scaled it 400 to 1000, like the SATs.</strong></p><p>That familiar-scale choice comes straight from Nielsen&#8217;s Recognition over Recall heuristic. If your scoring system requires a user manual, you&#8217;ve already lost. The SAT scale gave people an instant mental model. No learning curve.</p><p>The VPS wasn&#8217;t the breakthrough, however. The archetypes were.</p><h2><strong>Eight Ways to Speak</strong></h2><p>What I saw at a company in education (as well as at &#8220;MyersBriggs&#8221;, &#8220;Working Genius&#8221; etc ), was this: when you give someone a category to belong to, they <em>engage</em> differently with your product.</p><p>At FYG we profiled students into career pathways. The moment a student could say &#8216;I&#8217;m a Builder&#8217; or &#8216;I&#8217;m an Advocate,&#8217; their engagement doubled. Not because the content changed. Because their relationship with the content changed.</p><p>If you know the Kano Model, this is the difference between a &#8216;must-be&#8217; feature and a &#8216;delighter.&#8217; Scores are must-be. You expect them in an analysis tool. Archetypes are a delighter.</p><p>Nobody asked for them. Once people had them, though, they became the reason people came back. Kano&#8217;s insight is that delighters create disproportionate satisfaction precisely because they&#8217;re unexpected.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1j4V!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1j4V!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 424w, https://substackcdn.com/image/fetch/$s_!1j4V!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 848w, https://substackcdn.com/image/fetch/$s_!1j4V!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 1272w, https://substackcdn.com/image/fetch/$s_!1j4V!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1j4V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png" width="463" height="105" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4c199dd-c841-4002-9731-5b8a069591be_463x105.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:105,&quot;width&quot;:463,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:17031,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191769133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.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_!1j4V!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 424w, https://substackcdn.com/image/fetch/$s_!1j4V!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 848w, https://substackcdn.com/image/fetch/$s_!1j4V!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 1272w, https://substackcdn.com/image/fetch/$s_!1j4V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4c199dd-c841-4002-9731-5b8a069591be_463x105.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>So we mapped the four VPS dimensions into eight communication archetypes:</p><p><strong>The Analyst.</strong> Clarity is their superpower. Blind spot: clarity without engagement can feel cold.</p><p><strong>The Commander.</strong> Walks into a room and people listen. Not loud, but certain. Blind spot: steamrolling without realizing it.</p><p><strong>The Diplomat.</strong> Reads the room better than anyone. Builds consensus. Blind spot: prioritizing harmony over directness.</p><p><strong>The Maverick.</strong> Brilliant in bursts. The off-the-cuff comment everyone remembers. Blind spot: inconsistency.</p><p><strong>The Mentor.</strong> Natural teachers who make complex things simple. Blind spot: over-explaining when the room just needs a decision.</p><p><strong>The Practitioner.</strong> Reliable, trusted, steady. Won&#8217;t dazzle you, but will never let you down. Blind spot: disappearing in Commander-dominated rooms.</p><p><strong>The Storyteller.</strong> Turns data into narrative, problems into quests. Blind spot: not every moment needs a story.</p><p><strong>The Visionary.</strong> The full package when they&#8217;re on. Paints futures people run toward. Blind spot: so compelling nobody challenges them.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5Ax9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5Ax9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!5Ax9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!5Ax9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!5Ax9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5Ax9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Data Analyst: Contributing in Team Meeting with Limited System Knowledge icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Data Analyst: Contributing in Team Meeting with Limited System Knowledge icon" title="Data Analyst: Contributing in Team Meeting with Limited System Knowledge icon" srcset="https://substackcdn.com/image/fetch/$s_!5Ax9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!5Ax9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!5Ax9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!5Ax9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F40b548e2-b6de-41b1-a9ad-ff4dd31da4be_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Choosing eight was a deliberate product decision. Four would have been too broad. People wouldn&#8217;t see themselves. Sixteen too granular. Too many edge cases where users fall between types.</p><p>This is what Don Norman calls building the right conceptual model: if the model is too simple, people distrust it. If it&#8217;s too complex, they can&#8217;t hold it in their heads. Eight sits in the cognitive sweet spot. I still wonder if there&#8217;s a &#8216;perfect&#8217; number, but eight just felt right, you know?</p><p>We debated whether archetypes should be fixed or fluid. Fixed archetypes are easier to build product around. Fluid archetypes are more scientifically honest. Your style <em>does</em> shift based on context.</p><p>We chose a middle path. Your archetype is your <em>dominant</em> style based on your body of work. We surface how your dimensional scores shift across scenarios.</p><p>So you might be a Diplomat overall, but skew Commander during board presentation practice. That nuance maps to Daniel Pink&#8217;s Autonomy principle from <em>Drive</em>. It gives users freedom to explore their communication range rather than boxing them in. The dominant archetype gives you identity. The dimensional shifts give you agency.</p><h2><strong>The LinkedIn Moment</strong></h2><p>We shipped archetypes on November 16th. Within the first week, something happened that I did not expect.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PwVT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PwVT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 424w, https://substackcdn.com/image/fetch/$s_!PwVT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 848w, https://substackcdn.com/image/fetch/$s_!PwVT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 1272w, https://substackcdn.com/image/fetch/$s_!PwVT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PwVT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png" width="494" height="112" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:112,&quot;width&quot;:494,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:19892,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191769133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.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_!PwVT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 424w, https://substackcdn.com/image/fetch/$s_!PwVT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 848w, https://substackcdn.com/image/fetch/$s_!PwVT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 1272w, https://substackcdn.com/image/fetch/$s_!PwVT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0d818909-e3bf-458e-a2fd-82e8dd14414a_494x112.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>People started sharing their archetype on LinkedIn. Not their score. Not their improvement percentage. Their <em>archetype</em>.</p><p>&#8220;Just found out I&#8217;m a Storyteller on ExecReps. Honestly tracks &#128514;&#8221;</p><p>&#8220;Apparently I&#8217;m a Commander. My team is not surprised.&#8221;</p><p>&#8220;Diplomat here. Which explains why I spend half my life translating between engineering and sales.&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SwbC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SwbC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 424w, https://substackcdn.com/image/fetch/$s_!SwbC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 848w, https://substackcdn.com/image/fetch/$s_!SwbC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 1272w, https://substackcdn.com/image/fetch/$s_!SwbC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SwbC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png" width="420" height="378" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:378,&quot;width&quot;:420,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:55025,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191769133?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.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_!SwbC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 424w, https://substackcdn.com/image/fetch/$s_!SwbC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 848w, https://substackcdn.com/image/fetch/$s_!SwbC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 1272w, https://substackcdn.com/image/fetch/$s_!SwbC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdd50bd26-2ca9-469c-a85d-5707e52fe179_420x378.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The product insight that hit me then, and that I hope lands for you too, is this: <strong>people share identity, not metrics.</strong></p><p>Nobody posts their credit score on LinkedIn. Nobody shares their Duolingo XP. They&#8217;ll share their Hogwarts house, their Enneagram number, and now, their communication archetype.</p><p>Through the lens of Nir Eyal&#8217;s Hook Model, we&#8217;d accidentally built a complete engagement loop: someone sees an archetype post on LinkedIn (external trigger). Curiosity drives them to try ExecReps (action). They discover their archetype, any of eight possibilities (variable reward, the &#8216;Hunt&#8217; type). They share it publicly, loading the next trigger for their network while creating a public identity commitment (investment).</p><p>We hadn&#8217;t designed this loop. Every piece was there, though. I wonder if we could have planned it, or if some of the best product moments just emerge like this, almost by accident.</p><p>And what made it powerful rather than gimmicky: the archetypes were grounded in real behavioral data. This wasn&#8217;t a quiz telling you what you already knew. It was acoustic analysis of how you speak under pressure.</p><p>Cialdini&#8217;s Authority principle explains why it stuck: the archetype carries weight because the <em>source</em> is rigorous. A personality quiz calling you creative is forgettable. A voice analysis confirming it is not.</p><h2><strong>The Diplomat Problem</strong></h2><p>The title of this post is about Diplomats, and I want to get specific.</p><p>When archetype results started rolling in, something interesting emerged. Diplomats were disproportionately likely to have previously described themselves as &#8220;bad communicators&#8221; in their onboarding surveys.</p><p>Read that again. The people most skilled at reading rooms, building consensus, and managing complex interpersonal dynamics&#8230; thought they were bad at communication.</p><p>Why? Because in most professional environments, &#8216;good communicator&#8217; is coded as &#8216;Commander.&#8217; Be decisive, be loud, be certain.</p><p>If your natural style is diplomatic. If you listen before speaking, build bridges instead of podiums, choose precision over volume, you&#8217;ve been told your whole career to &#8220;speak up more.&#8221;</p><p>Kahneman and Tversky&#8217;s work on framing effects explains this precisely. The professional world framed &#8216;communication skill&#8217; around a single archetype, and Diplomats measure the gap between their style and the dominant one. They interpret that gap as deficiency. It&#8217;s a framing problem masquerading as a skill problem.</p><p>This hit close to home. I still remember being told my Cockney accent, my natural speaking voice, disqualified me from a design job early in my career. The implicit message then was &#8216;the way you communicate doesn&#8217;t belong here.&#8217; It wasn&#8217;t about the <em>content</em> of what I said, but the <em>sound</em> of it. It was about identity, about belonging.</p><p>That&#8217;s the same message every Diplomat gets in a Commander-dominated culture. Every Mentor told they&#8217;re &#8216;too soft.&#8217; Every Analyst told they&#8217;re &#8216;too in the weeds.&#8217;</p><p>The archetypes reframed what &#8216;good communication&#8217; even means. There isn&#8217;t one model. There are at least eight.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HsvZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HsvZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!HsvZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!HsvZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!HsvZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HsvZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/df3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Chief Product Officer: Navigating Conflicting Product Priorities from Two Competing Board Members icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Chief Product Officer: Navigating Conflicting Product Priorities from Two Competing Board Members icon" title="Chief Product Officer: Navigating Conflicting Product Priorities from Two Competing Board Members icon" srcset="https://substackcdn.com/image/fetch/$s_!HsvZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!HsvZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!HsvZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!HsvZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf3e4b77-35a8-4548-a96e-5903440b1584_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Personas As Product</strong></h2><p>This is the product lesson I keep thinking about, because I believe it&#8217;s underappreciated:</p><p><strong>Personas aren&#8217;t just a marketing tool. They can be the product itself.</strong></p><p>What if the persona isn&#8217;t something you build <em>about</em> the user, it&#8217;s something you build <em>for</em> them?</p><p>Spotify Wrapped understood this. &#8216;I&#8217;m a top 1% listener of Japanese city pop&#8217; is more powerful than any feature Spotify has ever shipped.</p><p>When we built archetypes into ExecReps, three things changed, and they map to frameworks any product team would recognize.</p><p><strong>Retention jumped.</strong> Self-Determination Theory explains why: an identity satisfies all three psychological needs at once, competence (&#8216;I&#8217;m a strong Diplomat&#8217;), autonomy (&#8216;I choose to develop my style&#8217;), relatedness (&#8216;I belong to the Diplomat tribe&#8217;). That&#8217;s Pink&#8217;s Mastery drive, visible progress along a path you&#8217;ve claimed as your own.</p><p><strong>The product got easier to build.</strong> Archetypes gave us a design language. &#8216;You&#8217;re becoming a more commanding Diplomat&#8217; is infinitely more motivating than &#8216;Your Command score increased by 40 points.&#8217; Norman&#8217;s conceptual model principle: when the mental model is rich and intuitive, every communication taps into it.</p><p><strong>Word of mouth ignited.</strong> BJ Fogg&#8217;s B=MAP model explains the mechanics: Motivation was sky-high (identity validation), Ability was trivial (screenshot and post), and the Prompt was the archetype reveal itself. All three maxed at the moment of discovery. We&#8217;d accidentally engineered sharing behavior at the exact point where Fogg&#8217;s equation was maximally favorable.</p><p><strong>Two weeks later we shipped v1.3, the Executive Performance Score.</strong> Technically more sophisticated. Content weighted at 60%, delivery at 40%. Population-normalized. Objectively better.</p><p>Nobody shared their EPS on LinkedIn. They shared their archetype.</p><h2><strong>What I&#8217;d Tell Myself</strong></h2><p>If I could go back to early November 2025, deep in acoustic analysis, obsessing over signal processing, I&#8217;d tell myself: the most important feature you&#8217;re about to ship isn&#8217;t the most complex one. It&#8217;s the one that helps someone say &#8216;Oh, <em>that&#8217;s </em>who I am.&#8217;</p><p>Because the biggest barrier isn&#8217;t skill. It&#8217;s self-knowledge. Most people aren&#8217;t bad communicators. They&#8217;re communicating in environments that reward a style that isn&#8217;t theirs, and they&#8217;ve internalized that mismatch as a personal failing.</p><p>You&#8217;re not a bad communicator. You might just be a Diplomat in a room full of Commanders.</p><p>Once you know that, once you <em>see</em> it, you stop trying to be something you&#8217;re not, and start figuring out how to be the best version of what you already are.</p><p>This idea, this reframing, is at the core of what we&#8217;re trying to build with ExecReps. It&#8217;s about helping people find their voice, not just change it. I&#8217;m still learning how to articulate this, but it feels important.</p>]]></content:encoded></item><item><title><![CDATA[The Day The AI Heard Its First Voice]]></title><description><![CDATA[A solo founder's story of building ExecReps.ai]]></description><link>https://www.productcoalition.com/p/the-day-our-ai-heard-its-first-voice</link><guid isPermaLink="false">https://www.productcoalition.com/p/the-day-our-ai-heard-its-first-voice</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 29 Mar 2026 14:42:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!XpSD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Lisbon, headphones on. The air thick with that specific damp winter smell, maybe. I was listening to one of our early beta users.</p><p>She was a product director from a Series B startup. Smart as hell. Her answer to our practice prompt, a mock board presentation on quarterly growth, was structurally flawless. Perfect, even. Clear thesis, supporting data points, strong close.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>Our AI gave her a stellar score.</p><p>Then I played the audio.</p><p>She said &#8220;um&#8221; twenty-three times in ninety seconds. Her pace swung between racing through numbers at 210 words per minute and grinding to a near-halt when she hit anything she wasn&#8217;t sure about. Stretches where her voice got so quiet it almost disappeared.</p><p>None of that showed up in our assessment. For the first four months of building ExecReps, our AI couldn&#8217;t hear anyone. It could only read.</p><p>I keep coming back to that moment when someone asks about finding product-market fit. The thing that makes your product &#8216;real&#8217; isn&#8217;t always the thing you build first. Sometimes it&#8217;s the thing you were accidentally ignoring.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XpSD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XpSD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!XpSD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!XpSD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!XpSD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XpSD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Chief Product Officer: Managing Tension Between Founder-CEO Vision and Board's Market Expansion Pressure icon&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="Chief Product Officer: Managing Tension Between Founder-CEO Vision and Board's Market Expansion Pressure icon" title="Chief Product Officer: Managing Tension Between Founder-CEO Vision and Board's Market Expansion Pressure icon" srcset="https://substackcdn.com/image/fetch/$s_!XpSD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!XpSD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!XpSD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!XpSD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f13a8e1-38ec-4895-9c01-d6b641fc97d3_1456x816.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><h2><strong>The Text-Only Era</strong></h2><p>Let me back up. When we launched v0.1 in July 2025, the core loop was simple: you record yourself speaking, we transcribe it, GPT&#8211;4 evaluates the transcript, you get feedback. Record, Transcribe, Assess, Improve.</p><p>If you&#8217;ve read Nir Eyal&#8217;s Hook Model, you&#8217;ll recognise that structure. External trigger (the prompt), action (record yourself), variable reward (personalised AI feedback), investment (your practice history building over time). It worked.</p><p>GPT&#8211;4 is good at analysing structure, directness, and evidence. Users were coming back daily, practising pitch decks, preparing for all-hands, rehearsing difficult conversations. BJ Fogg&#8217;s B=MAP model would have given us decent marks: motivation was there (real presentations coming up), ability was easy (speak for two minutes, get instant feedback), and the prompt was the product itself.</p><p>I almost fell into a trap here. The product was working. Users were engaged. Growth was happening. Every instinct in my PM brain said &#8216;don&#8217;t touch it. Optimise what&#8217;s working.&#8217;</p><p>But something gnawed at me. We were building a communication coaching tool that only analysed <em>what</em> people said, not <em>how</em> they said it. We were a voice product that was functionally deaf.</p><p>This reminds me of a conversation I had with a guest on the Product Coalition podcast a while back, talking about the gap between perceived and actual performance. In Don Norman&#8217;s terms, we&#8217;d created a massive Gulf of Evaluation. Users would record themselves, get text-based feedback, and think &#8220;great, I&#8217;m improving.&#8221; They had no way to evaluate their actual delivery. That&#8217;s the part that mattered most for their career. The system was hiding their most critical signal from them.</p><h2><strong>The Origin Story Collision</strong></h2><p>I need to tell you why this bothered me more than it probably should have.</p><p>Years ago, I graduated from university in London with a design degree. Portfolio polished, creative director at a prestigious agency loved my work. Then the call came: &#8220;Jay, I have to be honest with you. Your work is great. Your attitude is great. But we can&#8217;t employ people who talk like you.&#8221;</p><p>My working-class Cockney accent. That was it.</p><p>Not what I said. <em>How I sounded.</em></p><p>I was building a product whose entire origin story was about the injustice of being judged by your delivery, and the product itself could only judge content. The irony was not lost on me.</p><p>Every time I reviewed a user submission and saw a clean transcript score next to audio that told a completely different story. Rushed pace, vocal fry, filler words stacking up. I felt the gap widen. Kahneman calls this WYSIATI: &#8216;What You See Is All There Is.&#8217; Our users were suffering from it. They&#8217;d look at their text-based score, see nothing flagged about delivery, and conclude their delivery was fine. The investor who later told us &#8220;I thought I sounded the same the whole way through&#8221;? That&#8217;s WYSIATI in action. If the system doesn&#8217;t show you a problem, your brain concludes no problem exists.</p><h2><strong>Going Acoustic</strong></h2><p>In September 2025, I started researching acoustic analysis providers. Building it ourselves lasted about a week. Training acoustic models from scratch is a rabbit hole that has swallowed entire startups. Build vs. buy was an easy call.</p><p>AssemblyAI became our answer: pace detection, filler word identification, pause analysis, and raw data we&#8217;d need for confidence and clarity metrics.</p><p>The hard part wasn&#8217;t the API calls. It was deciding what to <em>do</em> with the data. AssemblyAI gives you a firehose. Every millisecond of audio has extractable features. Which ones matter most? I&#8217;m still not sure we&#8217;ve found the perfect answer here, but we&#8217;re getting closer.</p><p>Nielsen&#8217;s heuristic of &#8220;recognition rather than recall&#8221; shaped our thinking here. We didn&#8217;t want to dump a wall of acoustic data on users. We needed to surface metrics they&#8217;d immediately <em>recognise</em> as relevant. Pace variation they could hear in their own head, filler words they&#8217;d felt themselves say. The data had to match their fuzzy memory of the recording, then sharpen it.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4N5h!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4N5h!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!4N5h!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!4N5h!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!4N5h!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4N5h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:350869,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191768135?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.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_!4N5h!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!4N5h!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!4N5h!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!4N5h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F627c352a-34e5-4758-bcd1-cd08417b6a83_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2><strong>The 80/20 Decision</strong></h2><p>This is the product decision I think about most from that period. I still wrestle with it sometimes.</p><p>We now had two signals: content quality and delivery quality. My first instinct was 50/50. That&#8217;s what every public speaking book tells you. Mehrabian&#8217;s &#8220;7&#8211;38&#8211;55 rule&#8221; even suggests delivery matters &#8216;more&#8217;.</p><p>Mehrabian&#8217;s research is about emotional communication, not professional presentations. When a product director presents quarterly numbers, the content matters more than her pacing. If the analysis is wrong, no amount of vocal confidence saves it.</p><p>We went with 80% content, 20% delivery. It felt conservative. Part of me wanted to weight delivery higher because <em>that was our differentiator</em>.</p><p>A product team that&#8217;s worked with the Kano Model would recognise the trap. Acoustic analysis was our &#8216;delighter,&#8217; the feature that surprises and differentiates. Content quality was our &#8216;must-be,&#8217; the foundational feature users expected to just work. Kano&#8217;s research is clear: over-invest in delighters at the expense of must-be quality and the whole product collapses.</p><p>The 80/20 split evolved to 60/40 by v1.3 as our delivery analysis matured. Starting conservative was right. You can always increase the weight of a signal as it improves. Decreasing it after users have relied on it is harder. That&#8217;s Kahneman and Tversky&#8217;s loss aversion at work. People feel losses roughly twice as intensely as equivalent gains. Telling a user &#8220;your delivery score now counts less&#8221; feels like taking something away. I wonder if we could have communicated that better, in retrospect.</p><h2><strong>The First Real Analysis</strong></h2><p>I remember the exact day we ran the first complete acoustic analysis. Early November 2025, right before v1.0 went live.</p><p>A beta user doing a practice investor pitch. Transcript score was strong: clear problem statement, solid market sizing. Under the old system, encouraging feedback, move on.</p><p>The acoustic analysis told a different story. His pace averaged 178 WPM, fine, but variance was extreme. Racing through market opportunity at 220+ WPM (nerves) and crawling during financials (uncertainty). He used &#8220;basically&#8221; seventeen times. Two pauses over four seconds. Not power pauses, but the kind where someone loses their thread.</p><p>When we showed him the combined assessment: here&#8217;s what you said (strong), here&#8217;s how you said it (needs work), here&#8217;s exactly where. He sent us a message I still have saved:</p><p>&#8220;I&#8217;ve given this pitch eleven times. This is the first time anyone told me I speed up when I&#8217;m excited and slow down when I&#8217;m unsure. I thought I sounded the same the whole way through.&#8221;</p><p>That message illuminated something about what Daniel Pink calls Mastery in his Drive framework. People can&#8217;t improve what they can&#8217;t see. The text-only version gave users mastery over &#8216;content.&#8217; Delivery mastery was invisible. They had no feedback signal, no progress to track, no way to know if they were getting better or just more comfortable with bad habits. Acoustic analysis opened an entire mastery dimension that had been locked.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sI7n!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sI7n!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!sI7n!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!sI7n!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!sI7n!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sI7n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Product Strategy: Defining 3-Year Vision for Email Client in Era of Slack and Async Communication icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Product Strategy: Defining 3-Year Vision for Email Client in Era of Slack and Async Communication icon" title="Product Strategy: Defining 3-Year Vision for Email Client in Era of Slack and Async Communication icon" srcset="https://substackcdn.com/image/fetch/$s_!sI7n!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!sI7n!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!sI7n!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!sI7n!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb49e533-2ab4-4dbb-8513-6cabb795b173_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>The Product Lesson: Finding Your 10x Moment</strong></h2><p>If you&#8217;re building a product, especially an AI product, there&#8217;s a concept I keep coming back to: the 10x moment. It&#8217;s the point where your product stops being &#8220;useful&#8221; and starts being &#8216;I can&#8217;t go back to not having this.&#8217;</p><p>Text-based feedback was useful. Valuable. Users came back.</p><p>Acoustic analysis made ExecReps &#8216;real.&#8217; It was the difference between a product that told you &#8216;what to say differently&#8217; and one that told you &#8216;how you sound when you say it.&#8217;</p><p>In Hook Model terms, acoustic analysis transformed our variable reward. Text-only feedback was becoming predictable. After a few sessions, users could roughly guess their content score. Eyal is explicit: predictable rewards lose their pull. Acoustic analysis reintroduced variability. Every recording surfaced something unexpected. &#8216;I didn&#8217;t know I did that&#8217; is the most powerful variable reward a coaching product can deliver.</p><p>I&#8217;ve learned this about 10x moments: they&#8217;re usually hiding in the thing your product should do but doesn&#8217;t yet. They feel obvious in retrospect. &#8216;Of course a voice coaching tool should analyse the voice.&#8217; When you&#8217;re in the weeds of building, though, the temptation to optimise what exists instead of building what&#8217;s missing is enormous.</p><p>The framework I use now is simple: &#8220;What is the most obvious thing our product should do that it currently can&#8217;t?&#8221; Not the clever thing. The &#8216;obvious&#8217; thing. The thing a non-technical friend would ask about at dinner. &#8216;Wait, your voice coaching app doesn&#8217;t listen to people&#8217;s voices?&#8217;</p><p>That&#8217;s where your 10x moment lives.</p><h2><strong>What Acoustic Analysis Taught Me About the Mission</strong></h2><p>When communication coaching was something only Fortune 500 executives could access at $500&#8211;$1,000 an hour, those coaches were listening. They caught the pace changes, the filler words, the confidence drops. Human ears doing acoustic analysis with years of experience.</p><p>Every product that had tried to democratise this before us stopped at text. Grammar checkers, script analysers, AI writing assistants: all content, no delivery. None could hear you.</p><p>By going acoustic, we closed the gap between what a $1,000/hour coach provides and what everyone else has access to. That&#8217;s the mission we started with at Product Coalition, in a way: making product management knowledge accessible. This feels like a natural extension of that.</p><p>Executive presence isn&#8217;t about talking points. Anyone with ChatGPT can generate those. It&#8217;s pace and pause and conviction and clarity. It&#8217;s what got me rejected from that design agency. Deci and Ryan&#8217;s Self-Determination Theory says people need competence feedback to stay intrinsically motivated. Our text-only product gave users an incomplete competence signal, half the picture. Acoustic analysis completed it. When people feel competent, they don&#8217;t need external pressure to practise. They come back because they &#8216;want&#8217; to.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bW2g!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bW2g!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!bW2g!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!bW2g!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!bW2g!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bW2g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Finance Manager: Addressing Direct Report's Surprise at Reporting to Someone Returning from 2-Year Break icon&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Finance Manager: Addressing Direct Report's Surprise at Reporting to Someone Returning from 2-Year Break icon" title="Finance Manager: Addressing Direct Report's Surprise at Reporting to Someone Returning from 2-Year Break icon" srcset="https://substackcdn.com/image/fetch/$s_!bW2g!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!bW2g!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!bW2g!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!bW2g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ec9b85f-8fa9-4434-a9cd-f19069f62cb8_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>What Came Next</strong></h2><p>Shipping v1.0 with acoustic analysis in November 2025 was just the beginning. Once we could hear, we needed to understand. The Voice Performance Score in v1.2 broke delivery into Command, Eloquence, Engagement, and Consistency. Then v1.3&#8217;s Executive Performance Score unified content and delivery into a single metric tracking progress over time.</p><p>Each was its own battle. All downstream of the same decision: stop being deaf, start listening.</p><p>Four months of a product that could only read. One afternoon hearing a user who didn&#8217;t know she said &#8220;um&#8221; forty-three times. And a bet that the obvious missing piece was worth the engineering investment.</p><p>Because the metrics were fine. The product was still incomplete.</p><p>That dissonance, between what the data says and what your gut knows. If you&#8217;re building something that matters, learn to listen to it. Pun fully intended.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA["We Can't Employ People Who Talk Like You"]]></title><description><![CDATA[A solo founder's public story of starting and building ExecReps.ai]]></description><link>https://www.productcoalition.com/p/we-cant-employ-people-who-talk-like</link><guid isPermaLink="false">https://www.productcoalition.com/p/we-cant-employ-people-who-talk-like</guid><dc:creator><![CDATA[Jay Stansell]]></dc:creator><pubDate>Sun, 22 Mar 2026 15:41:27 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!RDUh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I remember exactly where I was standing when I got the call.</p><p>I had just graduated from university in London. Design degree. A portfolio I was proud of. I&#8217;d interviewed at a design agency I&#8217;d been obsessing over for months. The kind of place with exposed brick and people who used &#8216;kerning&#8217; as a verb. The creative director had spent forty-five minutes going through my work. He loved it, laughed at my jokes, and shook my hand, saying he&#8217;d be in touch.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>He was.</p><p>&#8220;Jay, I have to be honest with you. Your work is great. Your attitude is great. But we can&#8217;t employ people who talk like you.&#8221;</p><p>People who talk like you.</p><p>I&#8217;m from East London. Cockney. Not the charming Guy Ritchie kind. The actual kind, where &#8220;th&#8221; becomes &#8220;f&#8221; and sentences end before they technically should. The kind that, apparently, disqualifies you from working at a place where your job is to <em>design things with your hands</em>.</p><p>I didn&#8217;t argue. I didn&#8217;t feel angry, not at first. I felt something worse. I felt like he was probably right. That&#8217;s what rejection based on how you sound does. It doesn&#8217;t just close a door. It makes you believe the door was never meant for you.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RDUh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RDUh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!RDUh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!RDUh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!RDUh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RDUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:255204,&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.productcoalition.com/i/191766402?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.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_!RDUh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!RDUh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!RDUh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!RDUh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8895807-b4c9-43f7-9213-f1be1745ebde_1456x816.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><h2><strong>The Hidden Filter</strong></h2><p>Something nobody tells you about professional life is that there&#8217;s a filter sitting underneath every other filter. It&#8217;s not on any job description. No recruiter will mention it. It&#8217;s there in every meeting room, every pitch, every interview, every promotion committee.</p><p>It&#8217;s how you sound.</p><p>Not what you say. How you say it. Your accent, your cadence, your filler words, whether you uptalk or downspeak, whether your voice carries the invisible markers of a particular postcode or tax bracket.</p><p>I remember reading Daniel Kahneman&#8217;s <em>Thinking, Fast and Slow</em> and it felt like someone was explaining my own life back to me. He and Tversky showed that humans make snap judgments, what he called System 1 thinking, based on surface signals, then rationalize them after the fact. That creative director didn&#8217;t spend forty-five minutes evaluating my portfolio and then make a reasoned assessment. He made a gut decision in the first thirty seconds of hearing me speak. Everything after was confirmation bias in a nice chair.</p><p>Any product team that&#8217;s studied cognitive biases would recognize the pattern. We just usually apply those insights to button colors. Not to someone&#8217;s career. I sometimes wonder if that&#8217;s the biggest blind spot in all of product management.</p><p>I spent the next twenty years building a career despite that phone call. I led product teams, founded companies, and grew Product Coalition to over a million readers. I sat on the Harvard Business Review Advisory Council. I built Find Your Grind into a $20M EdTech company.</p><p>At every single stage, I watched the same pattern repeat. Not just for me. For everyone.</p><p>The engineer who has brilliant ideas but gets talked over because she pauses too long between thoughts. The sales leader who loses deals not because his product is worse but because his delivery doesn&#8217;t carry what someone like Cialdini would call &#8216;authority signals&#8217;. These are the vocal patterns and confidence markers that make listeners trust the speaker before they&#8217;ve processed the content. <strong>The first-generation professional who has all the skills but none of the communication patterns that come from growing up around boardroom tables.</strong></p><p>Communication coaching exists. It&#8217;s just not for them. It&#8217;s for Fortune 500 CEOs who pay $500 to $1,000 an hour. Everyone else gets a line in their performance review that says &#8220;needs to work on executive presence,&#8221; with precisely zero guidance on what that means or how to do it.</p><h2><strong>The Realization That Broke It Open</strong></h2><p>Sometime in early 2025, I was watching the AI space consume everything. Writing emails. Polishing documents. Drafting presentations. Generating images. Building code. Every piece of professional output was getting an AI layer.</p><p>Except one.</p><p>Your voice. The way you speak, persuade, inspire, connect was completely untouched. No infrastructure. No tools. Nothing.</p><p>Then I realized something I haven&#8217;t been able to un-think since: <strong>your voice is your last IP.</strong></p><p>In a world where AI can write anything, design anything, code anything, the one thing that&#8217;s still authentically, irreducibly <em>you</em> is how you communicate when you open your mouth. It&#8217;s about autonomy, that fundamental human need to express your authentic self. Your presence in a room. Your ability to land a point, hold a silence, turn a hostile question into a moment of connection. That&#8217;s not something you outsource to a language model.</p><p>Yet there&#8217;s nothing helping people develop it at scale.</p><blockquote><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7yNM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7yNM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!7yNM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!7yNM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!7yNM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7yNM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:388027,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191766402?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.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_!7yNM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!7yNM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!7yNM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!7yNM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc66b6963-d82f-4efb-83e7-2207b366b3f8_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div></blockquote><h2><strong>Building the Thing</strong></h2><p>I started building ExecReps in the spring of 2025. The concept was deceptively simple. AI-powered practice for high-stakes conversations. You speak. It listens. It gives you feedback on pace, clarity, filler words, confidence, structure. An Executive Performance Score to track improvement over time.</p><p>Not &#8220;speak like a TED Talk.&#8221; Not &#8220;sound more corporate.&#8221;</p><p>Not &#8220;lose your accent.&#8221;</p><p>That last part matters to me more than any feature we&#8217;ve ever shipped.</p><p>If you&#8217;ve worked in product, you know BJ Fogg&#8217;s model. Behavior happens when Motivation, Ability, and a Prompt converge. My entire v0.1 was designed around one question from that framework: <em>what&#8217;s the simplest possible action at the moment someone is motivated to improve?</em></p><p>Press record. Speak for three minutes. Get feedback.</p><p>No onboarding carousel with seven screens. Just a microphone, an AI, and the lowest possible Ability threshold Fogg would accept.</p><p>On July 7th, 2025, I shipped v0.1. Google OAuth. Stripe. Voice recording, transcription, GPT&#8211;4 assessment, admin dashboard, support chat. It was all duct tape and ambition.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Q5ll!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Q5ll!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!Q5ll!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!Q5ll!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!Q5ll!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Q5ll!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:485880,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191766402?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.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_!Q5ll!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!Q5ll!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!Q5ll!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!Q5ll!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F893b30fd-812f-4500-a26d-bf2879fe8b72_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>That first version could do exactly one thing well: listen to you speak and tell you what you could do better. No archetypes. No voice performance scoring. No team analytics. Anyone who&#8217;s used the Kano Model would recognize what we shipped. The must-have quality, nothing more. The basic expectation that has to work before delighters matter.</p><p>It was enough.</p><p>It was enough because it proved the one thing I needed to prove. That people would open a browser, press record, speak into the void, and care about what came back. It was a test of Nir Eyal&#8217;s Hook Model. I needed to know if the basic loop would close. Would an external trigger (an email invite) lead to an action (recording a workout), produce a variable reward (personalized feedback that surprised them), and create enough investment (seeing their score, wanting to improve it) that they&#8217;d come back without being asked?</p><p>That first version was a test of whether the hook existed at all.</p><h2><strong>The Product Lesson: Founder-Market Fit Is Not a Buzzword</strong></h2><p>I want to talk to the product managers reading this, because this is the part that took me fifteen years to understand.</p><p>We talk a lot about product-market fit. Important questions. There&#8217;s something that comes before all of it, though. The thing that determines whether a product has a soul or just a roadmap.</p><p>Founder-market fit.</p><p>Not &#8220;I spotted a market opportunity.&#8221; Not &#8220;I read a McKinsey report that said the executive coaching market is worth $15 billion.&#8221; I mean: has this problem left a mark on you?</p><p>Daniel Pink&#8217;s book <em>Drive</em> breaks this down perfectly. Extrinsic motivation, like money or market opportunity, fades the moment things get hard. Intrinsic motivation is built on Autonomy, Mastery, and Purpose. The founders who survive aren&#8217;t optimizing for TAM. They&#8217;re driven by Purpose, a problem they can&#8217;t stop thinking about because it happened to <em>them</em>.</p><p>That phone call in London wasn&#8217;t market research. It was a scar. Scars make better products than spreadsheets.</p><p>The first reason this matters is survival. Every product hits a trough where nothing is working. Users aren&#8217;t growing. The feature you shipped didn&#8217;t move the needle. Pink&#8217;s research is unambiguous. Purpose-driven motivation outlasts reward-driven motivation under sustained difficulty. If your motivation is &#8220;the market opportunity is large,&#8221; you will quit during the trough. If your motivation is &#8220;I got a phone call that told me I wasn&#8217;t good enough because of how I sound, and I know millions of others got the same call,&#8221; you will not quit.</p><p>It also calibrates your intuition. When you are the user, you make a thousand micro-decisions correctly without needing data. Kahneman&#8217;s work on expert intuition shows it develops in environments with clear feedback loops and repeated practice. This is exactly what founders get when building for their own problem. You know which feedback to give first because you know what would have helped <em>you</em>.</p><p>Finally, your story becomes your moat. In a market that&#8217;s about to get crowded, and the AI communication space will get crowded, the company with the founder who lived the problem will always sound different from the company that identified an opportunity. Users can tell.</p><p>When I tell people what ExecReps does, I don&#8217;t start with features. I start with a phone call from a creative director who liked my work but not my voice. Every single time, something shifts in the conversation. They&#8217;ve had their version of that call too.</p><h2><strong>The Uncomfortable Part</strong></h2><p>I want to be honest about something. This is a building-in-public series, and I&#8217;d rather be uncomfortably honest than comfortably polished.</p><p>When I shipped v0.1, I wasn&#8217;t sure it would work. Not the product. The <em>idea</em>. Previous voice coaching products had failed because they misjudged the Ability variable in Fogg&#8217;s equation. They asked users to do too much. Record a full presentation. Complete a 30-minute module. Invite colleagues to listen. The Motivation was there. The Prompt was there. Yet the Ability gap killed them.</p><p>My bet was that a three-minute solo workout with instant AI feedback was below the threshold where behavior happens. Not &#8220;I should do this&#8221; but &#8220;this is easy enough that I just did it.&#8221;</p><p>I didn&#8217;t know it would be different. I just knew I had to try. I&#8217;m still not sure we have the balance exactly right. I wonder whether we&#8217;re asking for too much, or even too little. We&#8217;re constantly tuning it.</p><p>There&#8217;s a version of my career where I keep running Product Coalition, keep advising startups, keep writing articles about product management frameworks. It&#8217;s a good career. Comfortable. Respected.</p><p>But there&#8217;s that phone call.</p><p>Every time I hear about a talented person who can&#8217;t get past the invisible communication filter, who gets the performance review that says &#8220;needs more executive presence&#8221; with no tools to develop it, I hear that creative director&#8217;s voice again. <em>We can&#8217;t employ people who talk like you.</em></p><p>Fifteen years of building products taught me that the best time to start is before you&#8217;re ready. So on July 7th, 2025, I pressed deploy on something that was emphatically not ready. A foundation. A starting line. Voice recording, transcription, AI feedback, and a deeply personal bet that this problem was worth solving at scale.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7OE5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7OE5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!7OE5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!7OE5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!7OE5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7OE5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a3652aa2-85de-4bff-9156-15810b211739_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:331375,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.productcoalition.com/i/191766402?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.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_!7OE5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!7OE5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!7OE5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!7OE5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa3652aa2-85de-4bff-9156-15810b211739_1456x816.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>What Comes Next</strong></h2><p>So this is the first post in a series. I&#8217;m not sure what the cadence will be, or even what the second post will cover. Maybe the tech stack. Maybe our first ten customers. The point is to do it in the open. I&#8217;ve spent years writing about how other people build products at Product Coalition. It feels right to turn the lens on myself.</p><p>I wanted to start here, at the very beginning, because the origin matters. It&#8217;s the thing I come back to.</p><p>It&#8217;s my simple filter for every hard decision. Does this feature serve the person who got that phone call? Does it make executive-level communication development accessible to someone who can&#8217;t afford $1,000 an hour? Does it help someone&#8217;s talent get <em>heard</em> rather than filtered?</p><p>If yes, we build it. If no, we don&#8217;t.</p><p>Twenty years between a phone call and a deploy button. Let&#8217;s see what happens next.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.productcoalition.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">Product Coalition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item></channel></rss>