<?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[Let People Work]]></title><description><![CDATA[We write about things we see, experiment with, or measure, in our work in the Agile Software Development space.]]></description><link>https://blog.letpeople.work</link><image><url>https://substackcdn.com/image/fetch/$s_!JHsL!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png</url><title>Let People Work</title><link>https://blog.letpeople.work</link></image><generator>Substack</generator><lastBuildDate>Sun, 17 May 2026 04:45:09 GMT</lastBuildDate><atom:link href="https://blog.letpeople.work/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Let People Work]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[letpeoplework@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[letpeoplework@substack.com]]></itunes:email><itunes:name><![CDATA[Benjamin Huser-Berta]]></itunes:name></itunes:owner><itunes:author><![CDATA[Benjamin Huser-Berta]]></itunes:author><googleplay:owner><![CDATA[letpeoplework@substack.com]]></googleplay:owner><googleplay:email><![CDATA[letpeoplework@substack.com]]></googleplay:email><googleplay:author><![CDATA[Benjamin Huser-Berta]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Dear Stakeholder: Here’s Why I’m Giving You a Range Instead of a Date]]></title><description><![CDATA[I love writing down my thoughts in form of a letter.]]></description><link>https://blog.letpeople.work/p/dear-stakeholder-heres-why-im-giving</link><guid isPermaLink="false">https://blog.letpeople.work/p/dear-stakeholder-heres-why-im-giving</guid><dc:creator><![CDATA[Peter]]></dc:creator><pubDate>Fri, 13 Mar 2026 16:28:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!EN-r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I love writing down my thoughts in form of a letter. When I went through my Certified Agile Leadership course I remember that we had to create an artifact and I wrote a letter to my own Ego, one of the most intimate things I have ever written. <br><br>So this time it is not as personal and yet I wanted to address the stakeholder.<br>Not as a manifesto, not as a lecture, but as an honest letter. <br>Because I&#8217;ve had this conversation dozens of times now, and I think it deserves to be written down.</p><p>If you&#8217;re a stakeholder, a product manager, a department head, a CEO, someone who needs to know when something will be delivered, this is for you. And I mean that genuinely: <em>for</em> you, not <em>at</em> you.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EN-r!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EN-r!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 424w, https://substackcdn.com/image/fetch/$s_!EN-r!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 848w, https://substackcdn.com/image/fetch/$s_!EN-r!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!EN-r!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EN-r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg" width="421" height="296.805" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:846,&quot;width&quot;:1200,&quot;resizeWidth&quot;:421,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Making a Feather Quill Pen &#8211; Medieval Journey&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="Making a Feather Quill Pen &#8211; Medieval Journey" title="Making a Feather Quill Pen &#8211; Medieval Journey" srcset="https://substackcdn.com/image/fetch/$s_!EN-r!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 424w, https://substackcdn.com/image/fetch/$s_!EN-r!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 848w, https://substackcdn.com/image/fetch/$s_!EN-r!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!EN-r!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9a506d4-d22a-426f-8be1-5d1fb3259fcc_1200x846.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p><em>Dear Stakeholder,</em></p><p>I owe you an apology.</p><p>Not for what I&#8217;m about to tell you, but for what I&#8217;ve been telling you for years. What we&#8217;ve all been telling you. What this entire industry has been telling you.</p><p>We&#8217;ve been lying to you. Not maliciously. Not even consciously, most of the time. But lying nonetheless.</p><p>Here&#8217;s what we&#8217;ve been doing. You ask us when something will be done. We go into a room. We talk about it for an hour or two, sometimes longer, it might even take us weeks.<br>Someone says &#8220;feels like a 5.&#8221; <br>Someone else says &#8220;I&#8217;d say 8.&#8221; <br>We discuss, we negotiate, we converge on a number. <br>Then we add those numbers up, do some math with a thing called velocity or capacity planning, and out comes a date.</p><p><em>June 12th.</em></p><p>It goes on the roadmap. It goes in the board deck. It goes in the quarterly plan. <br>Other teams plan their work around it. <br>Marketing schedules a launch. <br>Sales starts making promises. <br>An entire chain of commitments is built on top of that date.</p><p>And here&#8217;s what that date actually is: it&#8217;s the output of a group of people guessing, influenced by whoever spoke first, anchored to whatever number was mentioned earliest, shaped by optimism, and pressured by the unspoken knowledge that saying &#8220;we don&#8217;t really know&#8221; is not an acceptable answer in that room. <br>Being completely honest with you, it is build on a lot of half-truths and lies.</p><p>That&#8217;s what we built the plan on. That&#8217;s what <em>you</em> built your plan on. <br>And I&#8217;m sorry, because I was in that room, and I didn&#8217;t say anything either.</p><p>Do you still remember the last time a date we gave you actually held? <br>I&#8217;m asking honestly. Because when I think back, I struggle to find one. <br>And I&#8217;ve been doing this for a long time.</p><p>June 12th comes and goes. It&#8217;s not done. </p><p>There&#8217;s a perfectly reasonable explanation, there always is. <br>A dependency we didn&#8217;t see. A technical complexity that only became visible once we started. Someone was sick for two weeks. Public Holidays come out of nowhere. The Summer was unexpectedly nice. Another team didn&#8217;t deliver what we needed when we needed it. All true. All legitimate. All completely predictable in hindsight, because these things always happen. They happen on every project, every time. And yet, every time, the estimate is made as if this time they won&#8217;t.</p><p>The new date is June 26th. Then July 10th. Then &#8220;end of July.&#8221; Then Q3.</p><p>I&#8217;ve watched this cycle play out dozens of times. In different companies, different industries, different team sizes. The details change. The pattern doesn&#8217;t. And for the longest time, I thought the answer was to get better at estimating. Better techniques, more buffer, better workshops, better spreadsheets. <br>If we just tried harder, the dates would hold.</p><p>They didn&#8217;t.</p><p>And here&#8217;s the part that took me too long to accept: the date was never real. <br>It was never based on evidence of what was likely to happen. <br>It was based on a story about what we hoped would happen. And we told that story with such confidence, with specific dates, with decimal points, with colour-coded Gantt charts, that it felt like a fact. <br>But confidence is not the same as accuracy. And a plan built on unreliable dates is not a plan. It&#8217;s a shared fiction that everyone agrees not to question until reality makes it impossible to ignore and that is usually when it is too late.</p><p>I know that&#8217;s hard to hear. It was hard for me to accept, too. Because it means that all those roadmaps, all those quarterly plans, all those commitments we made with such certainty, they were built on sand. And we all knew it, somewhere, but nobody wanted to be the person to say it out loud.</p><p>So here I am, saying it out loud.</p><p>The way we&#8217;ve been predicting delivery doesn&#8217;t work. It has never worked. <br>And I don&#8217;t think trying harder at the same approach will change that, because the problem isn&#8217;t effort or skill. It&#8217;s that human beings are simply not built for this kind of prediction. We&#8217;re too optimistic. We anchor on the first number we hear. And here&#8217;s the part that really got to me when I first understood it: we&#8217;re inconsistent. The same team, given the same work, on a different day, in a different mood, would give you a completely different estimate. And no amount of planning will fix this.</p><p>Your roadmap isn&#8217;t just optimistically wrong. It&#8217;s randomly wrong. And nobody has been telling you that.</p><p>But I&#8217;m telling you now. And I&#8217;m also telling you that there&#8217;s something else we can try.</p><p>I&#8217;m not going to give you a date anymore. I&#8217;m going to give you something like:</p><p><em>&#8220;There&#8217;s an 85% chance we&#8217;ll be done by June 20th. There&#8217;s a 50% chance we&#8217;ll be done by June 6th.&#8221;</em></p><p>I know. It&#8217;s not what you&#8217;re used to. It doesn&#8217;t fit neatly into a Gantt chart. Your board might look at you funny the first time you present it this way. I get it. I really do.</p><p>But let me tell you what you&#8217;re actually getting.</p><p>You&#8217;re getting an honest answer. One that doesn&#8217;t pretend certainty where there is none. One that shows you the range of what&#8217;s likely and lets you decide how much risk to take. If you need to commit to something externally, use the 85% date and sleep well. If you&#8217;re planning internally and can absorb some uncertainty, the 50% date gives you an earlier target. That&#8217;s not less information. That&#8217;s more. That something that helps you make better decisions.</p><p>These numbers don&#8217;t come from a meeting where people raised their hands and guessed. <br>They come from our organization&#8217;s actual historical data. <br>How many things we really complete per week. <br>We run thousands of simulated scenarios based on that, and the result is a probability distribution. It&#8217;s not a crystal ball. But it&#8217;s dramatically more reliable than what we&#8217;ve been doing.</p><p>And something changes in the conversations, too. <br>Instead of &#8220;are we on track?&#8221; which, let&#8217;s be honest, is a yes-or-no trap that nobody wants to answer honestly, the conversation becomes: &#8220;how has the probability changed since last week, and what&#8217;s driving it?&#8221; <br>That&#8217;s a question that leads somewhere. That&#8217;s a question that actually helps both of us.</p><p>I&#8217;m not asking you to lower your expectations. <br>I&#8217;m asking you to raise them, for the quality of information you accept. Because you&#8217;ve been settling for false precision dressed up as certainty, and you deserve better than that.</p><p>A single date is the delivery prediction equivalent of &#8220;trust me.&#8221; <br>A range with probabilities is the equivalent of showing our work. <br>I think you deserve the latter. I think we both do.</p><p>So the next time I give you a range instead of a date, know that it&#8217;s not because I don&#8217;t have an answer. <br>It&#8217;s because I finally have a better one. <br>And I respect you too much to keep giving you the old one.</p><p>Let&#8217;s try this. That&#8217;s all I&#8217;m asking. Let&#8217;s try.</p><p>With respect and transparency,</p><p>Peter</p><p>P.S. Did you know that an 85% confidence level means there&#8217;s still a 15% chance we won&#8217;t make it? <br>I know that sounds uncomfortable. <br>But isn&#8217;t it better to know that upfront than to find out on the day it was supposed to be done?</p><div><hr></div><h2>Why I Wrote This</h2><p>If you&#8217;ve read this far, you&#8217;re probably either a stakeholder who recognized something uncomfortable in those paragraphs, or someone who&#8217;s been trying to have this conversation for a long time. Or you just waited for something insane to happen in this letter.</p><p>For the stakeholders: I&#8217;ve worked with many of you, and the vast majority don&#8217;t actually want a false date. <br>You want confidence. <br>You want to know if something is at risk early enough to do something about it. Probabilistic forecasting gives you exactly that, but it requires letting go of the illusion that a single date ever provided it.</p><p>For the delivery people: I know this conversation takes courage. It&#8217;s scary to say &#8220;I&#8217;m going to give you a range&#8221; when everyone else in the organization is giving dates. <br>But in my experience, once stakeholders see how much more useful probability-based information is, once they experience a quarter where they weren&#8217;t blindsided, they don&#8217;t want to go back.</p><p>The hard part isn&#8217;t the math. The hard part is the first conversation. <br>This letter is my attempt to make that a little easier.</p><p>At LetPeopleWork, this is what we do. <br>With Lighthouse, our open-source forecasting tool, we make these forecasts possible from your Jira or Azure DevOps data. But the tool is the easy bit. <br>The harder part is the human part. The conversation part. The part where someone has to look a stakeholder in the eye and say: &#8220;The way we&#8217;ve been doing this doesn&#8217;t work. Here&#8217;s something better.&#8221;</p><p>If you want to try this in your own organization, feel free to share this letter. <br>Print it out. Put it on someone&#8217;s desk. Start the conversation.</p><p>And if you want help with what comes after that conversation, we&#8217;d love to hear from you.</p><div><hr></div><p><em>Peter Zylka-Greger is co-founder of LetPeopleWork GmbH and the co-creator of Lighthouse, an open-source Monte Carlo forecasting tool for agile teams. He writes about flow metrics, organizational development, and the human side of delivery at <a href="https://letpeople.work">letpeople.work</a>.</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Low WIP, Small Features, High Freedom]]></title><description><![CDATA[How we use Flow Metrics to ship and learn fast]]></description><link>https://blog.letpeople.work/p/low-wip-small-features-high-freedom</link><guid isPermaLink="false">https://blog.letpeople.work/p/low-wip-small-features-high-freedom</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Sun, 08 Mar 2026 07:39:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!FRKR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>In early February, we released a new version of Lighthouse with the &#8220;<a href="https://docs.lighthouse.letpeople.work/teams/detail.html#forecast-backtesting">MCS Backtesting</a>&#8221; feature. We did not anticipate this feature to be noticed much; in fact, we only did it because we built it as part of a workshop to demo how we implement features (but that&#8217;s for another blog post). However, after we released it, we got a spike in users, and with that, a lot of feedback.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!FRKR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!FRKR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 424w, https://substackcdn.com/image/fetch/$s_!FRKR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 848w, https://substackcdn.com/image/fetch/$s_!FRKR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 1272w, https://substackcdn.com/image/fetch/$s_!FRKR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!FRKR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png" width="1192" height="793" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:793,&quot;width&quot;:1192,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:94712,&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://blog.letpeople.work/i/187396185?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.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_!FRKR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 424w, https://substackcdn.com/image/fetch/$s_!FRKR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 848w, https://substackcdn.com/image/fetch/$s_!FRKR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 1272w, https://substackcdn.com/image/fetch/$s_!FRKR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bd4ca4-e597-4388-a8bb-ea552372d2c4_1192x793.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Forecast Backtesting - The Feature that was an unexpected hit</figcaption></figure></div><p>Using this event as an example, we&#8217;d like to share in this post how we use Flow Metrics for this part of our Product Management for <a href="https://letpeople.work/lighthouse">Lighthouse</a>. We realized that our way of working allows us not only to try out risk-free experiments, but also to react quickly to new developments like a sudden inflow of feedback from new users.</p><h1>About Value</h1><p>When we formulate new Features, we try to focus on what problem this will solve. Then we add one or multiple work items below that, which are more concrete steps to achieve this functionality that should solve the problem. Every Feature is assumed to be releasable on its own and to add value for our customers and users. We <em>hope</em> that those Features bring value; however, we can only know this once we have released them and they are in our users&#8217; hands.</p><div class="pullquote"><p>Flow is the movement of potential value through a system<br>- <a href="https://kanbanguides.org/the-kanban-guide/">The Kanban Guide</a></p></div><p>Thus, we need to slice a feature as thin as we can. There is no point in spending multiple weeks on something, only to find out it was not what anyone needed. No feature adds value until proven otherwise.</p><blockquote><p>The MCS Backtesting feature was no different; we had no idea if people would care about this. But it was small enough that finding out was worth the risk.</p></blockquote><h1>Impact, Confidence, and Ease</h1><p>When we look at a new feature, we evaluate it through three lenses: Impact, Confidence, and Ease. Rather than debating endlessly or going with the loudest voice in the room, this gives us a structured way to prioritize.</p><p><em>If you want to dive deeper into this approach, <a href="https://itamargilad.com/ice-scores/">Itamar Gilad's writing on ICE scores</a> is a great starting point</em></p><p>The good thing about slicing our features into small pieces is that we usually do not have to spend much time arguing about the impact and the confidence, because they are rather easy to implement. </p><div id="youtube2-2slCh9_v57w" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;2slCh9_v57w&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/2slCh9_v57w?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>We can take risks with features we are very unsure about, because they are all easy to implement. Sometimes things will not resonate with the user base as we&#8217;d hoped. Sometimes we do something and are highly surprised by the success. If it weren&#8217;t for the high &#8220;Ease&#8221; score, we most likely would never have worked on it. And in turn, we&#8217;d never have learned that they are valuable.</p><blockquote><p>MCS Backtesting scored low on Confidence, we genuinely weren't sure anyone would notice it. But the Ease was high, so we shipped it anyway. That's exactly the kind of bet this approach allows you to make.</p></blockquote><p>So what makes a Feature easy for us? Size matters!</p><h1>Feature Size</h1><p>It&#8217;s rather simple; a small feature is an easy feature. We measure the size of our feature by its work item count. No estimate, no effort, simply the count of work items for a Feature. Below you can see how our features are sized:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y3jJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y3jJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 424w, https://substackcdn.com/image/fetch/$s_!y3jJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 848w, https://substackcdn.com/image/fetch/$s_!y3jJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 1272w, https://substackcdn.com/image/fetch/$s_!y3jJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y3jJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png" width="880" height="516" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:516,&quot;width&quot;:880,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:47411,&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://blog.letpeople.work/i/187396185?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.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_!y3jJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 424w, https://substackcdn.com/image/fetch/$s_!y3jJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 848w, https://substackcdn.com/image/fetch/$s_!y3jJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 1272w, https://substackcdn.com/image/fetch/$s_!y3jJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fee90cccf-8327-4180-8ac6-ad78982a26fe_880x516.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Feature Sizes over the last 90 Days</figcaption></figure></div><p>You can see that:</p><ul><li><p>50% of our Features contain 5 or fewer Child Items</p></li><li><p>85% of our Features contain 7 or fewer Child Items</p></li><li><p>Only one Feature is much larger, with 16 Child Items</p></li></ul><p>This is a testament of our effort to aggressively slice our Features to the smallest possible thing that still delivers value. As we mentioned above, this is important because we want to get feedback as fast as possible. We can always do more, but we often shouldn&#8217;t. Having such small Features allows us to start and finish our Features, including releasing them, in most cases within a week. </p><div class="pullquote"><p>We can always do more, but we often shouldn&#8217;t</p></div><p>If we look at the Cycle Time of our Features, we can see that 85% of all our Epics are closed within 10 days after we started. 70% are done within 7 days of starting. This means if we start today, we have the Feature not only done, but also tested, documented, and released within a week.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qDRr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qDRr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 424w, https://substackcdn.com/image/fetch/$s_!qDRr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 848w, https://substackcdn.com/image/fetch/$s_!qDRr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 1272w, https://substackcdn.com/image/fetch/$s_!qDRr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qDRr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png" width="879" height="516" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:516,&quot;width&quot;:879,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:54623,&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://blog.letpeople.work/i/187396185?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.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_!qDRr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 424w, https://substackcdn.com/image/fetch/$s_!qDRr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 848w, https://substackcdn.com/image/fetch/$s_!qDRr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 1272w, https://substackcdn.com/image/fetch/$s_!qDRr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F98958e40-64c9-4e90-9b98-c9fb3b398bb8_879x516.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Epic Cycle Time over the last 90 Days</figcaption></figure></div><blockquote><p>MCS Backtesting was one of those sub-5-item features, that we started and shipped within two days.</p></blockquote><h1>The Power of Moving Quickly and Easily</h1><p>Being able to release Features quickly is one thing. However, we want to gather feedback and adjust our approach based on this. For this, we must ensure that we can react quickly and easily as soon as we get this feedback, which can happen at any point in time.</p><p>In our &#8220;MCS Backtesting&#8221; example, we were surprised by the number of new users this feature has brought into Lighthouse. And with those new users, we got:</p><ul><li><p>Questions about how certain things work - which were signals for us that the UX can be improved for easier onboarding</p></li><li><p>Feedback on existing functionality</p></li><li><p>Bug Reports, as our tool was used in new environments</p></li></ul><div class="pullquote"><p>We can&#8217;t afford the luxury of having a high WIP</p></div><p>In many organizations, their WIP is abundant. We&#8217;re just a two-person company. We can&#8217;t afford the luxury of having a high WIP. We release a new version with new features roughly every week. We must be able to react to things we learn.</p><p>And we do this simply by:</p><ol><li><p>Aggressively controlling WIP</p></li><li><p>Reduce Cycle Time to the minimum</p></li></ol><p>To many people&#8217;s surprise, our WIP at the end of a day is often&#8230;zero (nada, niente, 0):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eoJA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eoJA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 424w, https://substackcdn.com/image/fetch/$s_!eoJA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 848w, https://substackcdn.com/image/fetch/$s_!eoJA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 1272w, https://substackcdn.com/image/fetch/$s_!eoJA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eoJA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png" width="880" height="457" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:457,&quot;width&quot;:880,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:49470,&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://blog.letpeople.work/i/187396185?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.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_!eoJA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 424w, https://substackcdn.com/image/fetch/$s_!eoJA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 848w, https://substackcdn.com/image/fetch/$s_!eoJA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 1272w, https://substackcdn.com/image/fetch/$s_!eoJA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F16bf4678-4317-4d3b-96a3-26fdaf3e4c88_880x457.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Our WIP at the end of the day for the last 30 Days</figcaption></figure></div><p>As you can see from the above chart, in the last 30 days, there were only three days where something <em>rolled over</em> to a new day. If we start something, the goal is always to finish it on the same day. Because who knows what tomorrow will bring - maybe someone discovered a bug that needs fixing urgently, or we get some feedback we can address right away. Having things in progress will block us from reacting to those things.</p><blockquote><p>When the MCS Backtesting feedback started rolling in, we were ready to act on it. Not because we planned for it (we obviously didn&#8217;t), but because we had nothing else blocking the pipeline.</p></blockquote><p>The result of this is a low Cycle Time. From the 57 Stories we closed in this period, only three took longer than a single day (they were closed in two days). So we practically closed everything within the day we started:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Sw7O!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Sw7O!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 424w, https://substackcdn.com/image/fetch/$s_!Sw7O!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 848w, https://substackcdn.com/image/fetch/$s_!Sw7O!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 1272w, https://substackcdn.com/image/fetch/$s_!Sw7O!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Sw7O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png" width="440" height="200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:200,&quot;width&quot;:440,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:17281,&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://blog.letpeople.work/i/187396185?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.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_!Sw7O!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 424w, https://substackcdn.com/image/fetch/$s_!Sw7O!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 848w, https://substackcdn.com/image/fetch/$s_!Sw7O!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 1272w, https://substackcdn.com/image/fetch/$s_!Sw7O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fddabfadc-48ac-4077-b248-6a3ddd2ecb78_440x200.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Cycle Time Percentiles for our Stories</figcaption></figure></div><p>This is not happening by accident, but it also drives our decision-making. We also make Stories as small as possible, and we try whenever possible not start something where we know we can&#8217;t close it on the same day.</p><p>It&#8217;s important to mention that proper engineering practices are the fundamental building block: Practicing proper Continuous Integration and Continuous Delivery (see <a href="https://minimumcd.org/">https://minimumcd.org/</a> for details), keeping the code clean, and having automated tests for most parts of the application will allow you to develop at speed.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;5525681c-7ad9-4028-81bf-740ed5192d56&quot;,&quot;caption&quot;:&quot;When I started Lighthouse, it was a personal project. Yet, one of the first things I did was to add a CI Pipeline and write tests. Most of the backend was created using TDD, so it&#8217;s safe to say that tests were on our minds from the get-go.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Do We Test Lighthouse?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:&quot;I&#8217;m Benjamin (but you can call me Benji). I&#8217;m a Software Engineer, Professional Kanban Trainer, and Scrum Master.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-02-10T12:06:06.822Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/how-do-we-test-lighthouse&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:156169374,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:3406394,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/$s_!JHsL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>By reducing our Cycle Time and aggressively controlling WIP (see below), combined with the thin feature slices, the &#8220;Ease&#8221; of most of our features is high. Running an experiment is easy and fast. The cost of <em>failure</em> is low. The ability to pivot is high.<br>Low WIP = Total freedom to pivot. Or how someone once put it: <em>Agile as fuck!</em></p><h1>Conclusion</h1><p>The MCS Backtesting feature is a perfect example of all of this coming together. We built it as a workshop demo, kept it small, shipped it in a week, and woke up to a wave of new users and feedback we hadn't anticipated. Because our WIP was low and our pipeline was clear, we could respond to that feedback almost immediately. No half-finished work blocking the way.<br><br>That's the real power of Flow Metrics in product management. It's not just about going fast; it's about staying free to respond to what you learn. Low WIP, short cycle times, and thin feature slices don't just reduce waste. They give you the ability to be genuinely surprised by your users, and actually do something about it.</p><div><hr></div><p>If you're curious how this could work for your team, check out <a href="https://letpeople.work">Lighthouse, our Services, or reach out</a> if you'd like to explore consulting or a workshop.</p>]]></content:encoded></item><item><title><![CDATA[The Hidden Cost of Noise in Your Delivery Predictions]]></title><description><![CDATA[I&#8217;ve been meaning to write about Daniel Kahneman&#8217;s work for a while now.]]></description><link>https://blog.letpeople.work/p/the-hidden-cost-of-noise-in-your</link><guid isPermaLink="false">https://blog.letpeople.work/p/the-hidden-cost-of-noise-in-your</guid><dc:creator><![CDATA[Peter]]></dc:creator><pubDate>Thu, 05 Mar 2026 15:55:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JHsL!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I&#8217;ve been meaning to write about Daniel Kahneman&#8217;s work for a while now. I have read his book &#8220;Noise&#8221; probably for the first time around 2023 but only now more of it makes sense because there is something I pretty much observe in every organization I&#8217;ve worked with that maps almost perfectly to what Kahneman describes. </p><p>And once you see it, you can&#8217;t unsee it.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>Let me try to put into words what I mean and only really got to understand since I jumped into the topic of Predictability through my work at LetPeopleWork</p><h2>The Experiment I Wish I Had Run Earlier</h2><p>A few years ago, I was working with multiple teams in the same organization. They were all using Jira, all working in similar domains, and all being asked the same question by their stakeholders: <em>When will this be done?</em></p><p>One day, something happened that I didn&#8217;t plan but that turned out to be quite eye-opening. <br>Two teams were independently asked to estimate a set of features that were similar in nature. They didn&#8217;t coordinate, they didn&#8217;t see each other&#8217;s numbers. <br>And yet, if estimation was a reliable tool, you&#8217;d expect the results to be somewhat close, right?</p><p>They weren&#8217;t. Not even remotely. (Welcome humanity&#8230;)</p><p>At first, I attributed this to different levels of experience, different contexts &#8212; the usual explanations. <br>But when thinking about Kahneman&#8217;s <em>Noise</em>, I realized I had been looking at the wrong thing entirely. The problem wasn&#8217;t that the teams were bad at estimating. The problem was something more fundamental.</p><h2>Bias vs. Noise &#8212; And Why It Matters</h2><p>Most of us working in organizations are familiar with bias. <br>If you&#8217;ve ever used Story Points, Planning Poker or really any kind of estimation, you&#8217;ve probably experienced it: teams tend to be optimistic. <br>They estimate based on best-case scenarios. Kahneman and Tversky called this the <em>planning fallacy</em>, and it has been studied extensively. It&#8217;s the idea that we systematically underestimate how long things take.</p><p>This is bias. It&#8217;s predictable. It goes in one direction. And with enough awareness, you can at least try to account for it.</p><p>But here&#8217;s the thing that most conversations about estimation miss entirely: <strong>noise</strong>.</p><p>Noise, in Kahneman&#8217;s framework, is the <em>variability</em> in judgments that should ideally be the same. It&#8217;s not about being wrong in a consistent direction, it&#8217;s about being inconsistent. The same person, the same team, the same type of work, give them the same item on a different day, in a different mood, and you get a different answer. Ask a different team altogether and you get yet another answer.</p><p>And this isn&#8217;t a minor effect. In his research, Kahneman found that noise in professional judgments was often <em>larger</em> than bias. Let that sink in for a moment.</p><h2>What This Means for Your Roadmap</h2><p>Here&#8217;s why this matters for anyone who builds or depends on a roadmap:</p><p>If your delivery predictions are <strong>biased</strong>, your roadmap is consistently optimistic. You&#8217;ll be late, but at least you&#8217;ll be late in a somewhat predictable way. You can learn to add buffers, account for the optimism, and manage expectations.</p><p>But if your predictions are <strong>noisy</strong> and trust me they are, then your roadmap is essentially random. <br>Not just wrong, but unpredictably wrong. Some things will come in faster than expected, others much later, and you won&#8217;t be able to tell which is which upfront. The confidence you have in the plan is an illusion.</p><p>I&#8217;ve seen this play out many times. A team estimates a feature as &#8220;about 3 sprints.&#8221; Three sprints pass. It&#8217;s <strong>not</strong> done. Someone asks what happened. A very reasonable explanation is provided. But the truth is: the original estimate was never based on data in the first place. It was a gut feeling, shaped by whoever spoke first in the room (hello, anchoring bias), the team&#8217;s mood that day, even something as random as the weather and team members being happy about it finally being sunny (writing this blog in grey Swiss winter) or how complex the last feature they worked on was.</p><p>That&#8217;s not a plan. That&#8217;s a coin flip dressed up as a professional judgment (decided to not prompt AI to create a coin dressed up image here - thank me privately). </p><h2>Try This With Your Own Teams</h2><p>Here&#8217;s something you can try yourself and I&#8217;d genuinely encourage you to do it.</p><p>Take a set of, say, 10 completed epics or features. Ones that are already done, so you have the actual data on how long they took.</p><p>Now, ask two or three people independently without showing them the actual data to estimate how long each of these items &#8220;should have taken.&#8221; <br>They know the items, they know the complexity, they were probably involved. <br>Just ask them to give you their best guess.</p><p>Then compare three things:</p><ol><li><p><strong>The variance between the estimators</strong>: how different are their numbers from each other? That&#8217;s noise.</p></li><li><p><strong>The average of their estimates vs. the actual</strong>: how far off are they on average? That&#8217;s bias.</p></li><li><p><strong>What your historical data actually says</strong>: throughput, cycle time, and what a Monte Carlo simulation would have predicted.</p></li></ol><p>In my experience, the results are quite humbling. The gap between what people think happened and what actually happened is significant. And the differences between the estimator people who worked on the same stuff, in the same team, in the same context is often surprising.</p><p>This isn&#8217;t to embarrass anyone. Quite the opposite. It&#8217;s to show that estimation isn&#8217;t a skill problem, it&#8217;s a human cognition problem. <br>We&#8217;re simply not built for this kind of prediction. <br>Kahneman spent a lifetime proving that, and he won a Nobel Prize for it.</p><h2>The Outside View</h2><p>One of Kahneman&#8217;s most powerful concepts is the distinction between the <em>inside view</em> and the <em>outside view</em>.</p><p>The inside view is when you look at the specifics of your current situation: <br>the team composition, the technical complexity, the dependencies and try to reason from there. This is what most estimation sessions do.</p><p>The outside view is when you step back and ask: <br><em>How long did similar things actually take in the past?</em> <br>Not in theory, not in a best-case scenario, but in reality. <br>What does the data say?</p><p>Kahneman advocated strongly for what he called <em>reference class forecasting</em>: <br>making predictions based on the outcomes of similar past situations rather than analyzing the specifics of the current one.</p><p>And this is where it gets interesting for me, because that&#8217;s exactly what Monte Carlo forecasting does. <br>You take your team&#8217;s historical throughput data: how many items they actually complete per time period and simulate thousands of possible outcomes. <br>No estimates required. No anchoring. No noise. Just data and probability.</p><p>It&#8217;s the outside view, automated.<br><br><em>Now, a small but important disclaimer: <br>Reference Class Forecasting and Monte Carlo simulations are not the same thing. Kahneman's Reference Class Forecasting is about looking at outcomes of a comparable group of past projects or situations, often from outside your own organization to ground your expectations. <br>Monte Carlo simulation is a statistical technique that uses your own team's historical throughput data to run thousands of random scenarios and produce a probability distribution. The connection is in the mindset: both reject the inside view in favor of actual data. <br>But Monte Carlo, as we use it, builds the reference class from your own history rather than from external comparisons. It's not a perfect mapping but the underlying principle is the same: stop reasoning from the specifics of this one situation and start learning from what actually happened before.<br>For more details it might be worth checking out: https://blog.mikebowler.ca/2024/04/10/forecasting-projects/</em></p><h2>Where Lighthouse Comes In</h2><p>I&#8217;ll be transparent here this is where Lighthouse, the tool we&#8217;ve built at LetPeopleWork, plays a direct role. Lighthouse takes your historical data from Jira, Azure DevOps, or other systems and runs Monte Carlo simulations automatically. It doesn&#8217;t ask your team how they feel about a feature (and also does not check the weather forecast)<br>It looks at what actually happened and tells you what&#8217;s likely to happen next.</p><p>Is it perfect? No. No forecast is. <br>But it removes two things that cause the most damage: the noise in human judgment and the bias that comes from our inability to take the outside view naturally.</p><p>Instead of asking &#8220;How long will this take?&#8221; and getting a different answer depending on who you ask and what day it is, you get a probability distribution. <br><em>There&#8217;s an 85% chance we&#8217;ll be done by this date. <br>There&#8217;s a 50% chance we&#8217;ll be done by that date.</em> <br>That&#8217;s a fundamentally different kind of conversation.</p><p>And in my experience, it leads to fundamentally better decisions.</p><h2>It&#8217;s Not About the Tool</h2><p>Let me be clear about something, because this is important to me: reading Kahneman&#8217;s work has not just changed how I think about forecasting. It has changed how I think about decision-making in organizations altogether and to be quite honest, it is still very much messy and there is lots of untapped potential within companies.</p><p>The moment you realize how much noise exists in professional judgment, in hiring decisions, in performance reviews, in strategic planning, in sprint planning, you start to question a lot of things you took for granted. And that&#8217;s uncomfortable. And without some help from my co-founder Benji,  I would have not gotten to the place where I am now and looking at data when giving an estimate.</p><p>But I think it&#8217;s also an opportunity. Because once you acknowledge that human judgment is noisy, you can start building systems that help. Not systems that replace human thinking, but systems that inform it. Systems that give professionals the data they need to make good decisions rather than relying on gut feelings alone.</p><p>Jim Benson once wrote something that stuck with me: <br>&#8220;Give professionals information they need to be professionals.&#8221; <br>That&#8217;s what flow metrics and probabilistic forecasting are about. Not replacing expertise. Making it better.</p><h2>What I&#8217;d Suggest</h2><p>If any of this resonates with you, here&#8217;s what I&#8217;d recommend:</p><p>Read <em>Noise</em> by Kahneman. It&#8217;s not as famous as <em>Thinking, Fast and Slow</em>, but it&#8217;s arguably more practical. The chapter on noise audits alone is worth the time.</p><p>Then run the experiment I described above with your own teams. See the noise for yourself. You don&#8217;t need any special tools for that, just a spreadsheet and some honest conversations.</p><p>And if you want to go further, try replacing your next round of estimates with a data-driven forecast. See how it feels to have a conversation based on probabilities rather than gut feelings.</p><p>You might find, as I did, that it fundamentally changes the quality of those conversations. <br>Less theater, more clarity. <br>Less arguing about whether something is a 5 or an 8, and more focus on what actually matters: delivering value.</p><p>If this sounds appealing to you, give it a try. And let me know how it goes.</p><div><hr></div><p><em>Hi, I&#8217;m Peter, co-founder of LetPeopleWork GmbH and its flagship product Lighthouse, an open-source Monte Carlo forecasting tool for agile teams. I write about flow metrics, organizational development, and the human side of delivery at <a href="https://letpeople.work">letpeople.work</a>.</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[How Lighthouse changed the way I work]]></title><description><![CDATA[A daily routine I didn't plan &#8212; and now can't imagine working without]]></description><link>https://blog.letpeople.work/p/how-lighthouse-changed-the-way-i</link><guid isPermaLink="false">https://blog.letpeople.work/p/how-lighthouse-changed-the-way-i</guid><dc:creator><![CDATA[Peter]]></dc:creator><pubDate>Mon, 23 Feb 2026 15:24:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!z1NL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>I&#8217;ll be honest with you: I didn&#8217;t set out to build a daily habit around Lighthouse. It just sort of happened.</p><p>What started as occasional check-ins turned into the first thing I do every morning. Open Lighthouse, click through the teams, see what&#8217;s going on. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>No agenda, no checklist, just looking. And yet, this simple routine has fundamentally changed how I work with teams and stakeholders.</p><p>In this post, I&#8217;d like to walk you through what that actually looks like in practice. Not the theory, not the marketing pitch but rather how I use the tool in my daily work and why it has become indispensable to me.</p><div><hr></div><h2>The Morning Routine</h2><p>My day starts with Lighthouse open in the browser. I browse through teams and not because someone asked me to, but because it gives me a feel for what&#8217;s happening across the system.</p><p>I look at work in progress. I check cycle times. I look at the started versus closed work items to see how a team is currently doing. Is it closing more than it&#8217;s starting? Or is it the other way around?</p><p>These are all pointers I can give to the people I work with. Not answers, but pointers.</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_!z1NL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!z1NL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png 424w, https://substackcdn.com/image/fetch/$s_!z1NL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png 848w, https://substackcdn.com/image/fetch/$s_!z1NL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png 1272w, https://substackcdn.com/image/fetch/$s_!z1NL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!z1NL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png" width="1456" height="882" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:882,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:123631,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.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_!z1NL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png 424w, https://substackcdn.com/image/fetch/$s_!z1NL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png 848w, https://substackcdn.com/image/fetch/$s_!z1NL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.png 1272w, https://substackcdn.com/image/fetch/$s_!z1NL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2dbfc08-912f-4999-a412-21e3034ec5e5_1607x973.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></blockquote><p>And then of course I&#8217;m always on the lookout: Is there anything in the system I can see that the team might not have noticed yet? Something worth a conversation?</p><p>This part of the routine operates on what I&#8217;d call Flight Level 1, the operational level. What is going on inside a specific team, right now?</p><p>For example, at the moment I&#8217;m looking at a team where the work in progress was drastically reduced, which I think is a very good thing in this case.</p><div><hr></div><h2>Zooming Out: Initiatives and Aging</h2><p>But I don&#8217;t stay at the team level. I might zoom out and look at specific deliveries on an initiative level and with that move more into a Flight Level 2 perspective.</p><p>First, I look at the initiatives themselves. <br>Which ones are aging? <br>How much are they aging? <br>Similarly to the team level: how many initiatives are we starting versus how many are we closing? And obviously, how many do we have in progress at the same time?</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_!sybT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sybT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png 424w, https://substackcdn.com/image/fetch/$s_!sybT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png 848w, https://substackcdn.com/image/fetch/$s_!sybT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png 1272w, https://substackcdn.com/image/fetch/$s_!sybT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sybT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png" width="1456" height="533" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:533,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:102615,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.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_!sybT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png 424w, https://substackcdn.com/image/fetch/$s_!sybT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png 848w, https://substackcdn.com/image/fetch/$s_!sybT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.png 1272w, https://substackcdn.com/image/fetch/$s_!sybT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F95f155be-40f5-4df1-95f6-8a3e25a73fa8_1587x581.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></blockquote><p>Lighthouse also gives you a very good indication with the total work item age, which can be an indicator for how stable our system is.</p><p>And then I go into the details. Depending on the service level expectation, I might filter for the initiatives that are close to it or the ones that are already above it. <br>Is there anything we can do? Is there any support that could be needed?</p><p>The intent is always the same: start finishing, stop starting. Which sounds so easy but is incredibly hard to achieve depending on the complexity of your system and organization.</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_!g8sf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!g8sf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png 424w, https://substackcdn.com/image/fetch/$s_!g8sf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png 848w, https://substackcdn.com/image/fetch/$s_!g8sf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png 1272w, https://substackcdn.com/image/fetch/$s_!g8sf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!g8sf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png" width="787" height="566" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:566,&quot;width&quot;:787,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:44939,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.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_!g8sf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png 424w, https://substackcdn.com/image/fetch/$s_!g8sf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png 848w, https://substackcdn.com/image/fetch/$s_!g8sf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.png 1272w, https://substackcdn.com/image/fetch/$s_!g8sf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5664f1cc-8109-4a9d-a09c-2e4ad2827c4c_787x566.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></blockquote><div><hr></div><h2>Forecasting: From Gut Feeling to Probability</h2><p>Another thing I use Lighthouse for and this might be the part that changed my work the most is specific forecasts.</p><p>A product owner asks me: &#8220;Can you help to forecast when this feature will be done?&#8221; Instead of guessing or pulling a date out of thin air or asking some silly questions, I open Lighthouse and look at the forecast. I might play around with it a little. Check the team&#8217;s metrics. If more teams are involved, I look at those too. <br>The question I always like ask myself: does this make sense?</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_!n8DE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!n8DE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png 424w, https://substackcdn.com/image/fetch/$s_!n8DE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png 848w, https://substackcdn.com/image/fetch/$s_!n8DE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png 1272w, https://substackcdn.com/image/fetch/$s_!n8DE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!n8DE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png" width="1456" height="443" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:443,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:52141,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.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_!n8DE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png 424w, https://substackcdn.com/image/fetch/$s_!n8DE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png 848w, https://substackcdn.com/image/fetch/$s_!n8DE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.png 1272w, https://substackcdn.com/image/fetch/$s_!n8DE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0c887856-1f9f-448e-b7e0-b28a2bcf47fd_1589x484.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></blockquote><p>But it goes further than individual features. It might be something for a release where I know a date is planned. Maybe the release even has dependencies, some companies use gates. <br>With Lighthouse, I can set up a delivery, set the delivery date, and Lighthouse will give me a forecast of the probability of all that is planned actually happening. It tells me whether my date is something we could actually reach or something that might be a bit difficult to reach.</p><p>This is just data. What we do with it is up to us.</p><p>But here&#8217;s where it gets really valuable: I go through the list and see which epics, features, whatever you call them in your context have a very low probability of being completed until that date. And I see this <em>early</em>. Not on the due date itself but weeks before.</p><p>This sparks useful conversations with the responsible people. What does it mean for us? Do we need to reduce scope? Can we remove the epic? Are there dependencies? Are there other things we can deprioritize?</p><blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Lx2x!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Lx2x!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 424w, https://substackcdn.com/image/fetch/$s_!Lx2x!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 848w, https://substackcdn.com/image/fetch/$s_!Lx2x!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 1272w, https://substackcdn.com/image/fetch/$s_!Lx2x!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Lx2x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png" width="1456" height="342" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:342,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:83436,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.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_!Lx2x!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 424w, https://substackcdn.com/image/fetch/$s_!Lx2x!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 848w, https://substackcdn.com/image/fetch/$s_!Lx2x!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 1272w, https://substackcdn.com/image/fetch/$s_!Lx2x!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5a041e30-1647-48fd-8fb7-32692479659e_1997x469.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div></blockquote><p>The idea is to have the first conversations weeks before the due date when there actually is still time to discuss, converge, and actually do something about it. <br>Rather than finding out on date X that we missed it and say &#8220;Bad Luck - will for sure work out next time&#8221;</p><p>And the nice thing is: there is nothing you have to do manually. Lighthouse updates these forecasts on a regular basis. Even if you just sit down every Monday and check how things are progressing, whether anything changed, there is nothing you have to do except clicking into the right window.</p><p>That takes a lot of complexity out of it. I don&#8217;t have to sit down and calculate anything myself which apparently is a fear for a lot of people hearing about Monte Carlo Simulations.</p><div><hr></div><h2>The Power of Specifics</h2><p>Of course, it also works the other way around. If there is a need for a very specific forecast say, we have one epic and we know we need to finish it by the 8th of March &#8212; Lighthouse can tell me how probable that is.</p><p>I go into the tool and ask: <br>How probable is it that we will finish 25 items until the 8th of March? Lighthouse tells me the likelihood is less than 7%. Which is not a lot.</p><p>But it doesn&#8217;t stop there. It also tells me: based on what we have at the moment, the 85th percentile suggests the 23th of March. And on the other hand, if the 8th of March is the date that isn&#8217;t movable, it tells me how many items I can realistically expect:<br>5,8,11 or 14 depending on my risk appetite.</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_!u6KW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!u6KW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png 424w, https://substackcdn.com/image/fetch/$s_!u6KW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png 848w, https://substackcdn.com/image/fetch/$s_!u6KW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png 1272w, https://substackcdn.com/image/fetch/$s_!u6KW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!u6KW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png" width="1456" height="452" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:452,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:53625,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.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_!u6KW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png 424w, https://substackcdn.com/image/fetch/$s_!u6KW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png 848w, https://substackcdn.com/image/fetch/$s_!u6KW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.png 1272w, https://substackcdn.com/image/fetch/$s_!u6KW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3696a7-fce9-436c-aeb2-4771121a88b1_1593x495.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><p>That&#8217;s a conversation I can have with a stakeholder. Not &#8220;we&#8217;ll try our best&#8221; but &#8220;here is what the data says, and here are our options.&#8221;</p><div><hr></div><h2>Building Trust: Forecast Backtesting</h2><p>One of the great things we&#8217;ve introduced recently is forecast backtesting. </p><p>And to me, this is really a feature that I like to use to give people confidence.</p><p>Because still, my experience is that forecasting feels spooky and sci-fi to a lot of people. It&#8217;s just not what we&#8217;re used to. So a feature that lets you prove the forecast is trustworthy? That&#8217;s incredibly valuable and hopefully gives organizations trust in this.</p><p>For example, I ran a backtest recently for a two-week time period in October. The 85th percentile said 12 work items would be finished. The actual throughput was 16 work items. That gives me confidence, it&#8217;s not completely off. And I can also play around with the historical windows. Change it to 14 days and suddenly we&#8217;re very close to the 70th percentile, which was 16 items.</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_!kR5T!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kR5T!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png 424w, https://substackcdn.com/image/fetch/$s_!kR5T!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png 848w, https://substackcdn.com/image/fetch/$s_!kR5T!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png 1272w, https://substackcdn.com/image/fetch/$s_!kR5T!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kR5T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png" width="1456" height="709" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:709,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:68071,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.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_!kR5T!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png 424w, https://substackcdn.com/image/fetch/$s_!kR5T!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png 848w, https://substackcdn.com/image/fetch/$s_!kR5T!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.png 1272w, https://substackcdn.com/image/fetch/$s_!kR5T!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F549b8d61-cce4-4c43-b776-1c1f01526cb1_1596x777.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><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tL-W!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tL-W!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png 424w, https://substackcdn.com/image/fetch/$s_!tL-W!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png 848w, https://substackcdn.com/image/fetch/$s_!tL-W!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png 1272w, https://substackcdn.com/image/fetch/$s_!tL-W!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tL-W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png" width="1456" height="730" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:730,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:67621,&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://blog.letpeople.work/i/188130157?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.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_!tL-W!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png 424w, https://substackcdn.com/image/fetch/$s_!tL-W!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png 848w, https://substackcdn.com/image/fetch/$s_!tL-W!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.png 1272w, https://substackcdn.com/image/fetch/$s_!tL-W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F71a95ad9-1a21-4edc-a29d-c6786203d67a_1583x794.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><p>This proved to be very fruitful for building trust with the people I work with. It turns the abstract into something tangible and verifiable.</p><div><hr></div><h2>Monthly Reports and the Role of Data</h2><p>I&#8217;ve also started using Lighthouse for monthly reports and not in a sense where I do a reporting and people are scared of me sending the report, but rather I go through the data and compile suggestions, observations on what can be done, where patterns are emerging, where something might need attention.</p><p>But here&#8217;s the thing I always emphasize: Lighthouse provides you the data. The context, the real, messy, human context lives in the teams and the people working with it. They will always have more information than any dashboard can show.</p><p>I like to say: the data is a pointer. A pointer to ask: Is this accurate? Does it reflect the way we work at the moment? Is there anything we can do?</p><p>And if we do change something, the data comes back and says: yes, it worked. Because we can see something moving.</p><div><hr></div><h2>Why This Matters: Evidence Over Gut Feeling</h2><p>What I&#8217;ve experienced with teams is that they get genuinely enthusiastic whenever they see a change they made reflected in the data. It&#8217;s like a booster.</p><p>A lot of times when we change something in teams or on an organizational level, let&#8217;s not ignore the other flight levels here we trust our gut and say &#8220;yeah, it feels better.&#8221; And that&#8217;s a nice indicator. But I think it&#8217;s a lot stronger when we actually have evidence. When we can see that we&#8217;re moving more things through the system. When we can see that cycle time came down because we did something specific.</p><p>Same on a Flight Level 2 when starting to right-size initiatives and you can see that cycle time is actually going down, thats a big booster on a different level. <br>We get feedback quicker, features out to customers faster, and therefore learn sooner.</p><p>This is something that is very motivating. We all know that change is difficult and tiring. But having something solid, actual proof that what you did made a difference? That keeps people going.</p><div><hr></div><h2>The Short Version</h2><p>If I had to summarize it: there is not a single day where I&#8217;m not using Lighthouse. There is always something to find. Whether it&#8217;s a team whose WIP just dropped, an initiative that&#8217;s aging beyond its service level, a forecast that needs updating, or a backtest that helps me build trust with a stakeholder.</p><p>You don&#8217;t need a lot of data. Installation is easy.</p><p>It&#8217;s a tool that changed how I have conversations. Not because it gives me answers, but because it gives me the right questions.</p><p>And in my experience, that&#8217;s worth more.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[How to Build Realistic Roadmaps as a Product Owner]]></title><description><![CDATA[&#8220;How do you create realistic roadmaps?&#8221;]]></description><link>https://blog.letpeople.work/p/how-to-build-realistic-roadmaps-as</link><guid isPermaLink="false">https://blog.letpeople.work/p/how-to-build-realistic-roadmaps-as</guid><dc:creator><![CDATA[Lorenzo Santoro]]></dc:creator><pubDate>Mon, 15 Dec 2025 21:24:50 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8e3a29e8-86b6-4c2e-b5a2-89ffc863bff5_1096x1100.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Every now and then I get asked: &#8220;<em>How do you create realistic roadmaps?</em>&#8221;</p><p>Meaning: <strong>roadmaps that the team can actually deliver in the time available.</strong></p><p>In my environment, budget is allocated on a yearly basis. That means my roadmap must realistically cover at least one year. You can&#8217;t rely on wishful thinking, oversized ambitions, or inflated capacity assumptions. You need something grounded, data-driven, and operationally realistic.</p><p>Over the years, I&#8217;ve refined a workflow that reliably gets me to a roadmap the team can commit to. It&#8217;s a mix of probabilistic forecasting, lean decision-making, and practical collaboration with the people who will actually deliver the work.</p><p>If you struggle with unrealistic roadmaps, slipping commitments, or annual budget pressures, I hope this workflow helps bring clarity, predictability, and sanity back into your planning process.</p><p><strong>1. Start With a Prioritized List of Epics</strong></p><p>Before thinking about time or capacity, start with <em><strong>outcomes</strong></em>.</p><p>What do we want to achieve this year? What matters most for our customers and for the business?</p><p>This results in a <em>prioritised list of epics</em>, ranked by value and impact.</p><p>The roadmap will only ever be as good as this list.</p><p><strong>2. Establish a Realistic User Story Capacity</strong></p><p>Next, I need to know <em>how much work the team can realistically deliver in one year</em>.</p><p>I use Monte Carlo simulation to answer a simple question: &#8220;<em>How many user stories can the team complete in a year with 85% confidence?</em>&#8221;</p><p>Example: The simulation tells us the team should be able to complete <em>230 user stories or more with 85% confidence</em>.</p><p><em>That</em> number is now my upper bound for planning.</p><p>3. Decide How Much Capacity Goes to Feature Development</p><p>Not all capacity goes into new features. The real world also includes:</p><ul><li><p>Bugs</p></li><li><p>Technical debt</p></li><li><p>&#8230;</p></li></ul><p>So I consciously decide <em>how much of the yearly capacity I want to allocate to feature development</em>.</p><p>Example: even if the team can do ~230 stories, I might allocate only 200 to planned features.</p><p><em>The rest is buffer &#8212; for reality.</em></p><p>This prevents overcommitting, protects the team, and keeps the roadmap sane.</p><p><strong>4. Create a Quick High-Level Plan</strong></p><p>At this point, as a team, we haven&#8217;t reviewed epics deeply yet. I don&#8217;t want to waste the team&#8217;s time on detailed estimations before I know <em>which</em> work is likely to make the cut.</p><p>So I use historical data to create a quick sizing rule of thumb: <em>85% of the epics we&#8217;ve delivered in the past required 30 user stories or less.</em></p><p>Therefore, as a placeholder, I <em>temporarily</em> assume <em>30 stories per epic</em>.</p><p>Using our example:</p><ul><li><p>Capacity for features = <em>200 stories</em></p></li><li><p>Average epic placeholder size = <em>30 stories</em></p></li><li><p>High-level capacity = <em>~6 epics</em></p></li></ul><p>Those 6 become the <em>initial high-level plan</em>.<br>This step is extremely lightweight &#8212; and that&#8217;s <em>intentional</em>.</p><p><strong>5. Review Only the Selected Epics With the Core Team</strong></p><p>Now that I know which epics <em>might</em> fit, it&#8217;s time to review them together with key players: architect, lead developers, lead tester, cybersecurity expert, &#8230;</p><p>This review takes time, so we make sure to apply it <em>only</em> to the most important items, those likely to make the cut!</p><p><em>This is where depth meets focus</em>.</p><p><strong>6. T-Shirt Sizing and Risk Assessment</strong></p><p>In the review, the team assigns:</p><ul><li><p>A <em>T-shirt size</em> (XS/S/M/L/XL)</p></li><li><p>A <em>risk level</em> (low / medium / high)</p></li></ul><p>T-shirt sizes are then translated into the number of expected user stories, but with a twist. Instead of arbitrary numbers, <em>k-means clustering algorithm</em> on historical epic sizes is used to to determine how many user stories should be used for each T-shirt size. E.g. T-shirt size M typically means 18 stories</p><p>This keeps estimates consistent with our actual delivery patterns.</p><p><strong>7. Replace the Placeholder Epic Sizes With Human Estimates</strong></p><p>Once the review is done, the high-level plan becomes more accurate: instead of &#8220;<em>every epic is 30 stories</em>&#8221;, we now have epic-specific estimates grounded in historical data and expert judgment.</p><p>This hybrid approach keeps estimation cost low while ensuring quality where it matters.</p><p><strong>8. Refine the Plan Based on Updated Estimates</strong></p><p>We can now re-check the plan against the capacity.</p><p>Two scenarios:</p><ul><li><p>The epics do not fit the <em>&#8220;200 user story capacity&#8221;</em>:<em> </em>I remove the lowest-priority items until the scope fits.</p></li><li><p>The epics fit, with room left over: review few more items (step 5).</p></li></ul><p>This is the stage where realism strengthens.</p><p><strong>9. Replace T-Shirt Estimates With Actual User Stories</strong></p><p>As we break epics down into user stories (just-in-time refinement):</p><ul><li><p>the T-shirt estimates are replaced with the actual story counts.</p></li><li><p>The forecast updates automatically (point 10)</p></li></ul><p>This makes the roadmap both <em>adaptive</em> and <em>transparent</em>.</p><p><strong>10. Continuous Forecasting</strong></p><p>At any point in time, the Monte Carlo simulation provides a continuously updated, data-driven answer to a simple question: <em>&#8220;When will we finish the planned scope?&#8221;</em></p><p>That planned scope is not a single, fixed thing. It is composed of two parts:</p><ul><li><p>Epics that have already been analysed, where we have a reasonable understanding of how many user stories are required.</p></li><li><p>Epics that have not yet been analysed, where the work is still represented by forecasted user stories derived from historical data.</p></li></ul><p>At any moment, the roadmap can be understood as a mix of <em>actual user stories and forecasted user stories.</em></p><p>Early in the journey, uncertainty dominates. Most of the scope exists as forecast rather than concrete work: classic <em>fog of war</em>. But as execution progresses, epics are refined just in time, forecasted user stories are replaced by real ones, and uncertainty steadily decreases.</p><p>What starts as a range of possibilities gradually collapses into reality.</p><p>The forecast evolves with the work, not despite it, allowing the roadmap to remain both realistic and responsive throughout execution.</p><p><strong>Why should you try this approach?</strong></p><p><strong>1. Fast initial planning</strong></p><p>You can produce an initial plan in hours, not weeks.</p><p><strong>2. Just-in-time work</strong></p><p>The team invests effort only into the epics that really matter. Waste minimised. Lean, for real.</p><p><strong>3. Human input + Data synergy</strong></p><p><strong>T</strong>he final plan is:</p><ul><li><p>based on team judgment</p></li><li><p>backed by historical performance</p></li><li><p>reinforced by statistical forecasting</p></li></ul><p>Teams commit much more easily to plans they helped shape.</p><p><strong>4. Avoiding the trap of estimating everything</strong></p><p>Estimating everything is waste. Because half of them will never happen. Or they&#8217;ll mutate by the time we get to them.</p><p><strong>In Conclusion</strong></p><p>There are many ways to plan and track a team&#8217;s work.</p><p>This one is mine, but only until I find a better one.</p><p>There are also many tools that can support this way of working. <br>The one I use is <a href="https://letpeople.work/lighthouse">Lighthouse</a>.</p><p></p>]]></content:encoded></item><item><title><![CDATA[Overcommitment as the Default]]></title><description><![CDATA[How psychology, culture, and systems make &#8220;yes&#8221; easier than &#8220;no&#8221;]]></description><link>https://blog.letpeople.work/p/overcommitment-as-the-default</link><guid isPermaLink="false">https://blog.letpeople.work/p/overcommitment-as-the-default</guid><dc:creator><![CDATA[Peter]]></dc:creator><pubDate>Sun, 24 Aug 2025 13:50:17 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" width="6240" height="3332" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:3332,&quot;width&quot;:6240,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;a truck with a load of bags on the back of it&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="a truck with a load of bags on the back of it" title="a truck with a load of bags on the back of it" srcset="https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1717616171263-de4808015831?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHw0fHxvdmVybG9hZHxlbnwwfHx8fDE3NTYwNDM0NjF8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="https://unsplash.com/@hdbernd">Bernd &#128247; Dittrich</a> on <a href="https://unsplash.com">Unsplash</a></figcaption></figure></div><p>Stephanie Leue described a dynamic I&#8217;ve seen many times:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EB7p!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EB7p!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 424w, https://substackcdn.com/image/fetch/$s_!EB7p!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 848w, https://substackcdn.com/image/fetch/$s_!EB7p!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 1272w, https://substackcdn.com/image/fetch/$s_!EB7p!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EB7p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png" width="900" height="438" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:438,&quot;width&quot;:900,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:126479,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.letpeople.work/i/171801353?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.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_!EB7p!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 424w, https://substackcdn.com/image/fetch/$s_!EB7p!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 848w, https://substackcdn.com/image/fetch/$s_!EB7p!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 1272w, https://substackcdn.com/image/fetch/$s_!EB7p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F299dad02-9c4c-4a4c-b9fe-a82aa4574abc_900x438.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This sparked a lot of thoughts and I immediately went into writing about this.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>The result is that overcommitment becomes normalized.</p><p>This doesn&#8217;t happen because people don&#8217;t care.</p><p>It happens because three forces converge: psychology, culture, and systems.</p><div><hr></div><h2>1. Psychology</h2><p>Several human tendencies make overcommitment feel natural:</p><ul><li><p><strong>Fear of rejection and conflict</strong>. Saying yes avoids discomfort in the moment, even if it creates bigger problems later. But the later part takes the burden away from us and we can still hope for that wonder to happen.</p></li><li><p><strong>Optimism bias</strong>. We underestimate complexity and overestimate capacity. A project that &#8220;should only take a month&#8221; often drags on for months or even years. But the next time we estimate, it definitely will be different (Spoiler: It won&#8217;t)</p></li><li><p><strong>Escalation of commitment</strong>. Once effort is invested, stopping feels like failure. We double down. And we think back on all the conversations we would need to have to reverse it.</p></li><li><p><strong>Short-term relief</strong>. Agreeing resolves tension now, while declining creates immediate friction people prefer to avoid, especially if they are overloaded already.</p></li></ul><p>Each of these biases creates drag. Together they form a gravitational pull toward commitments we cannot realistically keep.</p><div><hr></div><h2>2. Culture</h2><p>The surrounding culture determines whether these tendencies get amplified or balanced:</p><ul><li><p><strong>Output over outcomes</strong>. When success is measured by volume of delivery, more is always seen as better&#8212;even when it creates little value.</p></li><li><p><strong>Roadmaps as contracts</strong>. Tentative plans harden into promises the moment they&#8217;re shared. Changing them later feels politically dangerous and we are being told from early childhood that we should avoid anything that is dangerous.</p></li><li><p><strong>Lack of psychological safety</strong>. In many environments, raising concerns is not rewarded. People learn that silence is safer than dissent. And this does not even need to be rational and based on the organization they now work in but rather something they bring along from their past.</p></li></ul><p>In such cultures, overcommitment isn&#8217;t a mistake. It&#8217;s a survival tactic.</p><div><hr></div><h2>3. Systems</h2><p>The structure of work itself reinforces the default of yes:</p><ul><li><p><strong>Incentives misaligned with value.</strong> Funding and recognition are often tied to the size of an initiative. The bigger the budget or headcount, the more important the work appears. This encourages teams to inflate scope to secure resources, rather than narrowing focus to deliver real value.</p></li><li><p><strong>High work in progress.</strong> Starting more feels productive, but excessive WIP slows everything, hides bottlenecks, and erodes trust in delivery. At the same time it creates the illusion that we are actually working on all these things (Try Henrik Kniberg&#8217;s name-game to see that you are actually not working on all these things)</p></li><li><p><strong>Leadership unable to say no.</strong> Customer escalations, competitive moves, or stakeholder demands often get accepted without trade-offs. Teams learn resistance rarely changes anything.</p></li></ul><p>When the system rewards saying yes, individuals adapt accordingly.</p><div><hr></div><h2>The Cost</h2><p>Overcommitment is like starting a race with weights strapped to your ankles. (Just had to think about a race as the Ironman Switzerland is going on outside my window)</p><p><br>You&#8217;re moving, you&#8217;re expending energy, but the drag is built in from the beginning.<br>The harder you push, the heavier it feels.</p><p>The costs pile up:</p><ul><li><p>Focus is scattered.</p></li><li><p>Delivery slows instead of speeds up.</p></li><li><p>Technical debt and rework accumulate.</p></li><li><p>Burnout becomes normalized.</p></li><li><p>Trust between teams and leadership steadily erodes.</p></li></ul><p>In time, people stop believing promises at all. Both leaders and teams lose confidence in each other.</p><div><hr></div><h2>What Can Be Done</h2><p>The antidote is not to demand more discipline or tougher commitments.<br>It is to change the conditions so that saying no is safer and smarter than saying yes.</p><p>Some practical shifts:</p><ol><li><p><strong>Measure outcomes, not just output.</strong><br>Value should be tracked by problems solved and impact delivered, not by volume of features shipped.</p></li><li><p><strong>Keep plans adaptable.</strong><br>Treat roadmaps as hypotheses that evolve with new evidence. Avoid locking in promises that cannot survive contact with reality.</p></li><li><p><strong>Make it safe to push back.</strong><br>Leaders can model this by showing vulnerability, asking for feedback, and treating dissent as ownership.</p></li><li><p><strong>Limit WIP and finish what is started.</strong><br>Reduce parallel commitments so work flows faster, bottlenecks surface earlier, and predictability improves.</p></li><li><p><strong>Model saying no at the top.</strong><br>If leaders cannot decline requests or defer work, teams will not feel safe doing so either.</p></li><li><p><strong>Create evidence that supports pushback.</strong><br>This is where tools like <strong>Lighthouse</strong> come in. By showing probabilistic forecasts, cycle times, and WIP trends, teams can point to data instead of opinions. Pushback becomes less about courage and more about evidence. When delivery ranges are visible, the myth of &#8220;we can do it all&#8221; is harder to sustain.</p></li><li><p><strong>Reward learning and finishing.</strong><br>Celebrate outcomes achieved, insights gained, and improvements made to the system. Over time, this builds a new norm where sustainable focus replaces constant overload.</p></li></ol><p>When these conditions are in place, the gravitational pull shifts.<br>Overcommitment stops being the default.<br>Pushing back becomes the responsible, expected thing to do.</p><div><hr></div><h2>The Open Question</h2><p>Pushing back will always require some courage. But courage alone is not enough.<br>It needs the right environment, supportive systems, and leaders who invite it.</p><p>So the real question is:<br><strong>How do we create organizations where effective pushback is encouraged before overcommitment becomes the norm?</strong></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://blog.letpeople.work/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Let People Work! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[What Breakfast at a Diner Taught Us About Flow, Kanban, and Service Level Expectations]]></title><description><![CDATA[Once a year, my lovely wife, Costanza, and I enjoy switching off for some weeks, crossing the pond and hiking the US National Parks.]]></description><link>https://blog.letpeople.work/p/what-breakfast-at-a-diner-taught</link><guid isPermaLink="false">https://blog.letpeople.work/p/what-breakfast-at-a-diner-taught</guid><dc:creator><![CDATA[Lorenzo Santoro]]></dc:creator><pubDate>Wed, 09 Jul 2025 19:07:43 GMT</pubDate><enclosure url="https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Once a year, my lovely wife, Costanza, and I enjoy switching off for some weeks, crossing the pond and hiking the US National Parks. Costanza works as a production engineer, driving productivity improvements on the shop floor - she leans heavily on lean practices (pun intended). I lead an R&amp;D team building software products, with a strong focus on Kanban and sustainable delivery. As I am a far better photographer* than writer (proof here :), with some help from ChatGPT, I wanted to share an interesting conversation we had on a very early morning.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" width="5472" height="3648" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:3648,&quot;width&quot;:5472,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;pancakes on palte&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="pancakes on palte" title="pancakes on palte" srcset="https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1541288097308-7b8e3f58c4c6?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHxwYW5jYWtlfGVufDB8fHx8MTc1MTgyNDEwN3ww&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="true">Luke Pennystan</a> on <a href="https://unsplash.com">Unsplash</a></figcaption></figure></div><h1>Pancakes</h1><p>This morning, Costanza and I found ourselves deep in a discussion about flow. Not at work, not in a meeting room &#8212; but while waiting for pancakes and omelettes at the Jackson Lake Lodge diner.</p><p>We had woken up at 4:00 AM to photograph Mormon Row at sunrise (yes, totally worth it), and by 7:00 AM, we were back indoors, shivering slightly, sipping coffee, and waiting for breakfast. The moment felt still&#8212;until our shared obsession with continuous improvement kicked in.</p><p>So naturally, we started mapping out the diner&#8217;s operations through the lens of flow.</p><p>The diner offered both takeaway and sit-in service, and that sparked a string of questions:</p><p>&#9;&#8226;&#9;Should takeaway orders be prioritized over dine-in ones?</p><p>&#9;&#8226;&#9;Should there be two separate flows (and teams) for these order types?</p><p>&#9;&#8226;&#9;Or should the focus be on minimizing order cycle time, without distinguishing between order classes?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HsrL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HsrL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HsrL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HsrL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HsrL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HsrL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg" width="1456" height="537" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:537,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:831847,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.letpeople.work/i/167660134?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HsrL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 424w, https://substackcdn.com/image/fetch/$s_!HsrL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 848w, https://substackcdn.com/image/fetch/$s_!HsrL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!HsrL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F50c2489d-4a0e-4e56-9e24-f4d1bd951986_2048x756.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Mormon Row at Sunrise - <a href="https://thedistantview.myportfolio.com/albums">Picture from Lorenzo Santoro</a>*</figcaption></figure></div><h1>Translating Breakfast into Kanban Terms</h1><p>As we sipped our coffee, we couldn&#8217;t help but think in Kanban terms: expedite lanes, classes of service, cycle time, throughput.</p><p>From a pure flow perspective, reducing cycle time sounds like the universal goal. But, of course, any business has constraints: staffing, cost, space, and the ever-present need to be profitable. You can&#8217;t just throw more people at the problem.</p><p>That&#8217;s when the key question hit us &#8212; the one that underpins any flow discussion, whether in manufacturing or software:</p><p>What are the service level expectations required by the business?</p><h1>The Role of Perceived Wait Time</h1><p>From a business standpoint, you don&#8217;t necessarily need to serve orders as fast as technically possible. You need to serve them fast enough that the customer experience remains positive.</p><p>But &#8220;fast enough&#8221; is a slippery concept &#8212; it depends heavily on context and customer expectations. When I&#8217;m seated, coffee in hand, and engaged in a good conversation, my tolerance for waiting is quite high. I&#8217;m not watching the clock. But if I were a takeaway customer, standing near the counter, glancing at my phone, every minute would feel like five.</p><p>So here&#8217;s the insight we landed on before the omelette arrived:</p><p>Customer expectations aren&#8217;t uniform. And your flow should be designed around meeting different service level expectations, not blindly optimizing speed across the board.</p><p>For example:</p><p>&#9;&#8226;&#9;Takeaway customers might expect their order in under 5 minutes &#8212; with a goal to hit that for 75% of cases.</p><p>&#9;&#8226;&#9;Sit-in customers might be perfectly happy if their food arrives within 15 minutes &#8212; let&#8217;s say 85% of the time.</p><p>This nuanced thinking helps shift the conversation from &#8220;how fast can we deliver?&#8221; to &#8220;how do we deliver fast enough, sustainably, and where it matters?&#8221;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw"><img src="https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080" width="5905" height="3937" data-attrs="{&quot;src&quot;:&quot;https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:3937,&quot;width&quot;:5905,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;a purple light in a dark room&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpg&quot;,&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="a purple light in a dark room" title="a purple light in a dark room" srcset="https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 424w, https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 848w, https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1272w, https://images.unsplash.com/photo-1659088981163-7823b8d74fac?crop=entropy&amp;cs=tinysrgb&amp;fit=max&amp;fm=jpg&amp;ixid=M3wzMDAzMzh8MHwxfHNlYXJjaHwyfHx0YWtlJTIwYXdheXxlbnwwfHx8fDE3NTE4MjQxNTB8MA&amp;ixlib=rb-4.1.0&amp;q=80&amp;w=1080 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Photo by <a href="true">Ambitious Studio* | Rick Barrett</a> on <a href="https://unsplash.com">Unsplash</a></figcaption></figure></div><h1>Wrapping Up (Before the Pancakes Get Cold)</h1><p>This wasn&#8217;t a business meeting. Just two friends &#8212; one from engineering, the other from software &#8212; talking flow over breakfast. But the lesson is real:</p><p>Whether you&#8217;re running a diner, a factory, or a product development team, flow optimization doesn&#8217;t exist in a vacuum. It should always be grounded in customer experience and service level expectations.</p><p>Now, if you&#8217;ll excuse us, our omelettes just arrived &#8212; and even continuous improvement takes a pause for pancakes.</p><div><hr></div><p><em>*If you are interested in Lorenzo&#8217;s pictures, you can check some of them out at <a href="https://thedistantview.myportfolio.com/albums">https://thedistantview.myportfolio.com/albums</a></em></p>]]></content:encoded></item><item><title><![CDATA[Using AI to Develop a Software Product]]></title><description><![CDATA[An Experience Report]]></description><link>https://blog.letpeople.work/p/using-ai-to-develop-a-software-product</link><guid isPermaLink="false">https://blog.letpeople.work/p/using-ai-to-develop-a-software-product</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Tue, 10 Jun 2025 14:11:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>For more than a year, we&#8217;ve been continuously working on our forecasting and Flow Metrics tool, <a href="https://letpeople.work/#lighthouse">Lighthouse</a>. Recently, we&#8217;ve made a bigger update, reworking the UI. This would not have been possible without the use of AI tools.</em></p><p><em>In this post, I&#8217;d like to share my perspective on the usage of AI for developing a software product. I&#8217;ll share my actual experience with it, rather than making bold claims.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Yk4_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Yk4_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Yk4_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Yk4_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Yk4_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Yk4_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg" width="617" height="199" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:199,&quot;width&quot;:617,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:48352,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://blog.letpeople.work/i/162034862?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Yk4_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Yk4_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Yk4_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Yk4_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff7b3bc77-2d90-4111-966e-33464193f314_617x199.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a><figcaption class="image-caption">The prompt that caused the modernization of the Lighthouse UI</figcaption></figure></div><h1>Who is this for?</h1><p>If you check out LinkedIn (among other places), it&#8217;s nearly impossible to not read about all the things AI will change, who it will be putting out of a job, and more&#8230;</p><p>It feels like suddenly everyone is an AI expert, Vibe Code Coach, or Prompt specialist.</p><div class="pullquote"><p>Agile is dead! Buy my AI course!</p></div><p>I&#8217;m not opposed to embracing new technologies. It&#8217;s what agility is also about. The integration of AI will certainly change how we work (hopefully for the better). With this post, I want to give an insight into how AI can be used for developing a software product.</p><p>If you are not developing yourself, this may give you a good idea of what&#8217;s possible nowadays. If you do develop, maybe it will encourage you to give it a try as well.</p><p>There may be better tools and better approaches to what I did. I don&#8217;t claim you should do the same. My goal is to share my experience, not to sell you a specific method.</p><h1>My Background</h1><p>While I&#8217;ve studied Software Engineering, and was working the first years of my career very closely in this domain, I&#8217;ve been focused more on the people and processes in the last years. Writing code was not part of my daily professional life anymore.</p><p>While I know some things about a Frontend, I&#8217;ve always liked the Backend and automation work way more. Frontends were a &#8220;necessary evil&#8221; more than something I liked to do.</p><p>Needless to say, this showed in the first version of Lighthouse:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GO2Y!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GO2Y!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 424w, https://substackcdn.com/image/fetch/$s_!GO2Y!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 848w, https://substackcdn.com/image/fetch/$s_!GO2Y!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 1272w, https://substackcdn.com/image/fetch/$s_!GO2Y!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GO2Y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp" width="1280" height="1027" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1027,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:60956,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.letpeople.work/i/162034862?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!GO2Y!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 424w, https://substackcdn.com/image/fetch/$s_!GO2Y!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 848w, https://substackcdn.com/image/fetch/$s_!GO2Y!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 1272w, https://substackcdn.com/image/fetch/$s_!GO2Y!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32829b81-8681-4369-a307-fdd5ada7499b_1280x1027.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lighthouse UI - Early 2024</figcaption></figure></div><h2>A Backend Developer in a React World</h2><p>It was clear to me that this was not something we should leave as is. So, after having it on my to-do list for years, I finally had enough motivation to dive into learning React.</p><p>As much of a culture shock as New York was for Sting, React felt very strange to me initially.</p><div id="youtube2-d27gTrPPAyk" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;d27gTrPPAyk&quot;,&quot;startTime&quot;:null,&quot;endTime&quot;:null}" data-component-name="Youtube2ToDOM"><div class="youtube-inner"><iframe src="https://www.youtube-nocookie.com/embed/d27gTrPPAyk?rel=0&amp;autoplay=0&amp;showinfo=0&amp;enablejsapi=0" frameborder="0" loading="lazy" gesture="media" allow="autoplay; fullscreen" allowautoplay="true" allowfullscreen="true" width="728" height="409"></iframe></div></div><p>I started out learning the &#8220;old school&#8221; way:</p><ul><li><p>Watching Tutorial</p></li><li><p>Doing online courses</p></li><li><p>Browsing the web for specific help</p></li></ul><p>I&#8217;d like to think that it was very useful for me to learn the basics like this:</p><ul><li><p>What is a component?</p></li><li><p>How should I structure my app?</p></li><li><p>How can I write tests?</p></li><li><p>What&#8217;s a state, and what are props again?</p></li></ul><p>But I also realized that with such an established technology, Large Language Models (LLMs) such as ChatGPT are very helpful.</p><p>The following is a preview of how Lighthouse looked in one of the first iterations where we switched to the new React-based frontend:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ur1D!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ur1D!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 424w, https://substackcdn.com/image/fetch/$s_!Ur1D!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 848w, https://substackcdn.com/image/fetch/$s_!Ur1D!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 1272w, https://substackcdn.com/image/fetch/$s_!Ur1D!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ur1D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp" width="1265" height="906" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:906,&quot;width&quot;:1265,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:48042,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.letpeople.work/i/162034862?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ur1D!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 424w, https://substackcdn.com/image/fetch/$s_!Ur1D!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 848w, https://substackcdn.com/image/fetch/$s_!Ur1D!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 1272w, https://substackcdn.com/image/fetch/$s_!Ur1D!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe917a377-8f82-4875-ba55-a561268ac3af_1265x906.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lighthouse UI - Middle of 2024</figcaption></figure></div><p>At this point, I was mainly using ChatGPT to help me with specific problems or errors. This was way faster than having to sift through 20 search results from Google or asking a question on Stack Overflow (with the added benefit that ChatGPT was not complaining about how I wrote my question&#8230;).</p><p>And while it was helpful, it didn&#8217;t feel so nice yet. You always had to context-switch between a browser window and the Integrated Development Environment (IDE).</p><h1>IDE Integration</h1><p>That&#8217;s when I realized that there is a quite nice integration into VS Code for GitHub Copilot. This extension would allow you to chat and ask questions, where it&#8217;s directly having the context of your current file (or other files you&#8217;re referencing). And not only can you ask questions, but it is also possible that the LLM would directly make changes in your files.</p><p>This integration felt much more natural, removing context-switching, making it as easy to use as, for example, built-in refactoring tools your IDE is offering.</p><p>This was not just speeding up general development; it also allowed me to apply AI for more specific tasks where I needed more context. I used this extensively to improve the testability of my components, refactoring them and increasing the test coverage. This was hard to do without having the context, as it potentially affects many files in the project.</p><p>It also helped build up end-to-end testing using Playwright. I&#8217;ve never used Playwright before, but similar to React, the LLMs helped me get up to speed very quick, and it was one of the smoothest experiences I've had learning a new technology.</p><div><hr></div><p><em>Curious in how we test Lighthouse? Read the dedicated Post about this!</em></p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;fa1db4ef-c5cb-421a-8f64-d67a5af953f9&quot;,&quot;caption&quot;:&quot;When I started Lighthouse, it was a personal project. Yet, one of the first things I did was to add a CI Pipeline and write tests. Most of the backend was created using TDD, so it&#8217;s safe to say that tests were on our minds from the get-go.&quot;,&quot;cta&quot;:&quot;Read full story&quot;,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Do We Test Lighthouse?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:&quot;I&#8217;m Benjamin (but you can call me Benji). I&#8217;m a Software Engineer, Professional Kanban Trainer, and Scrum Master.&quot;,&quot;photo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-02-10T12:06:06.822Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/how-do-we-test-lighthouse&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:156169374,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div><hr></div><p>This was nice, and I was happy. Things were working smoothly. I didn&#8217;t think there was much to improve. And then Agent Mode happened&#8230;</p><h1>Agent Mode</h1><p>In early 2025, Microsoft released an update to GitHub Copilot and its VS Code integration, so that now &#8220;Agent Mode&#8221; is supported. Instead of &#8220;just&#8221; asking questions or doing &#8220;simple edits&#8221;, Copilot was able to act as an agent, figuring stuff out on its own, looking for more context, and iterating on its own changes (for example, if tests are failing).</p><p>The demos were impressive, and my first testing also revealed that it seems to hold up on its promise. Far from perfect, but very capable, and it sped up development even more. It felt like it was supercharging my development efforts.</p><p>It&#8217;s been a year since I got my hands dirty with React, and I was doing ok. That said, I don&#8217;t see how I ever spend lots of time to make something really &#8220;nice&#8221;. It&#8217;s just not that interesting to me. But I thought, why not let the Agent mode of Copilot have a go at it? Out of curiosity, I threw the following prompt at it and let it work:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-J9z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-J9z!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 424w, https://substackcdn.com/image/fetch/$s_!-J9z!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 848w, https://substackcdn.com/image/fetch/$s_!-J9z!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 1272w, https://substackcdn.com/image/fetch/$s_!-J9z!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-J9z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp" width="617" height="199" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:199,&quot;width&quot;:617,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:15264,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.letpeople.work/i/162034862?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-J9z!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 424w, https://substackcdn.com/image/fetch/$s_!-J9z!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 848w, https://substackcdn.com/image/fetch/$s_!-J9z!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 1272w, https://substackcdn.com/image/fetch/$s_!-J9z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9adf96c6-fee0-4772-b55d-0776dabb38d5_617x199.webp 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Hey Copilot: Make UI nice - pretty please</figcaption></figure></div><p>Copilot was at it for about 60-90 minutes. While some things weren&#8217;t working yet, it managed to change the full application and implement my requests. The new UI looked like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!D60E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!D60E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 424w, https://substackcdn.com/image/fetch/$s_!D60E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 848w, https://substackcdn.com/image/fetch/$s_!D60E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 1272w, https://substackcdn.com/image/fetch/$s_!D60E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!D60E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png" width="1456" height="730" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:730,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:157967,&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://blog.letpeople.work/i/162034862?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.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_!D60E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 424w, https://substackcdn.com/image/fetch/$s_!D60E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 848w, https://substackcdn.com/image/fetch/$s_!D60E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 1272w, https://substackcdn.com/image/fetch/$s_!D60E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F481bbd85-99c2-4aef-851b-3f2e32daa437_1777x891.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lighthouse UI - Spring 2025</figcaption></figure></div><p>It took me about a day to clean everything up, make sure all tests were working again, and have everything deployed. One day, to fully rework the UI. For me, the person who does not really care about UIs. We could try to estimate how long this would have taken me to implement without the agent mode, but realistically, it would simply never have happened.</p><p>While ChatGPT and the &#8220;regular&#8221; Ask and Edit modes of Copilot helped me speed up, Agent mode made things possible that I would not have thought I could do:</p><div class="pullquote"><p>I got 99 problems, the UI ain&#8217;t one of them!</p></div><h2>Vibe Coding?</h2><p>You may wonder, so is using this Agent mode what people call <em>Vibe Coding</em>? In my understanding, it&#8217;s a clear <strong>no</strong>.</p><p>I still try to look at the code, understand what&#8217;s going on, and sometimes manually adjust it. I don&#8217;t trust the output, and it&#8217;s my responsibility as a developer to make sure whatever I commit into version control is of good quality.</p><p>Following is the &#8220;definition&#8221; of vibe coding from Andrej Karpathy, who first mentioned the term on Twitter beginning of 2025:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PWxG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PWxG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 424w, https://substackcdn.com/image/fetch/$s_!PWxG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 848w, https://substackcdn.com/image/fetch/$s_!PWxG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 1272w, https://substackcdn.com/image/fetch/$s_!PWxG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PWxG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp" width="720" height="631" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:631,&quot;width&quot;:720,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:73966,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://blog.letpeople.work/i/162034862?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PWxG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 424w, https://substackcdn.com/image/fetch/$s_!PWxG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 848w, https://substackcdn.com/image/fetch/$s_!PWxG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 1272w, https://substackcdn.com/image/fetch/$s_!PWxG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe9f54401-0b5a-45b9-a1c1-9024613b9f5e_720x631.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The first known occurrence of the term &#8220;Vibe Coding&#8221;</figcaption></figure></div><p>So as long as you still inspect the code, you&#8217;re not &#8220;vibing&#8221;. AI-assisted coding, even if it&#8217;s doing the bulk of writing the code, is <strong>not</strong> vibe coding, if you&#8217;re still checking it out yourself, and potentially fixing some problems based on the resulting code.</p><p>Why do I care about that? I&#8217;ve seen the term being used extensively online (especially LinkedIn), where I had the feeling that many people don&#8217;t fully understand what it means. So I thought it&#8217;s good to clarify this.</p><p>This doesn&#8217;t mean that you can&#8217;t build something in a &#8220;Vibe Coding&#8221; mode. But for now, at least personally, I wouldn&#8217;t trust this enough to build a product, unless it&#8217;s something quite simple.</p><h1>Conclusion</h1><p>Is AI extremely helpful in building software? Yes! Can I build my software faster than before? Yes! Is it allowing me to build things that would not have been possible without it? Also yes!</p><p>You can see, I&#8217;m quite a big fan. Looking at <a href="https://docs.lighthouse.letpeople.work">Lighthouse </a>as a case study, you can see how this can change a product. All of it <em>could</em> have been possible without AI, but realistically, I needed help from outside. Using LLMs and agents integrated with your IDE is upgrading your skill as an individual developer, allowing you to go faster and further!</p><p>I&#8217;m convinced the role of software engineers is going to change (if it hasn&#8217;t already). For me, embracing those new tools has been a game-changer. And while it&#8217;s not producing results that are always up to my quality standards, it has allowed me to become a &#8220;one-person development team&#8221;, covering all skills needed to develop a product. That&#8217;s pretty cool!</p>]]></content:encoded></item><item><title><![CDATA[How Lighthouse Forecasts]]></title><description><![CDATA[This post will give you an overview of Monte Carlo Simulations (MCS) and how they are applied in Lighthouse.]]></description><link>https://blog.letpeople.work/p/how-lighthouse-forecasts</link><guid isPermaLink="false">https://blog.letpeople.work/p/how-lighthouse-forecasts</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Wed, 19 Feb 2025 19:13:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!p1kl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This post is an excerpt from the <a href="https://docs.lighthouse.letpeople.work/">Lighthouse Documentation</a> and shows how Lighthouse uses Monte Carlo Simulations to forecast. It helps to explain how certain things work as they do in the tool.</p><p>While you don't have to understand the details of what's going on to use Lighthouse, we recommend eventually going through it. There are things that help predictability in general that become more clear when you understand how MCS works, while Lighthouse is based on certain assumptions that will impact the results.</p><p><em>Note that this is the state as of February 2025 - the most up-to-date way Lighthouse is forecasting can always be found <a href="https://docs.lighthouse.letpeople.work">in the docs </a>itself, as this post may be outdated.</em></p><div class="pullquote"><p><a href="https://letpeople.work#lighthouse">Lighthouse</a> is the flagship product of <a href="https://letpeople.work">Let People Work</a>. It allows you to forecast completion dates with confidence and supports a wide range of scenarios, including projects with multiple teams and handling features that are not broken down yet.</p><p>It&#8217;s free to use, is open-source, and doesn&#8217;t need any cloud connection.<br>Join our <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Slack Community </a>to learn from other users and become part of the development.</p></div><h1>Monte Carlo Simulations Explained</h1><p>A forecast using Monte Carlo Simulation will simulate a period using a historical Throughput. You can use it to forecast how many items you can manage to close in a specific amount of time, or how long it will take to get x items done.</p><p>Monte Carlo Simulations assume that your future will look like your past. This is great because in the past you most likely had sick days, holidays, people leaving the team, people joining the team, etc., so you don&#8217;t need to do special &#8220;Capacity Planning&#8221; or anything of those sorts.</p><blockquote><p>Note that this also means that if your future will not be very similar to your past, MCS is maybe not the right approach (but after a couple of weeks you will have the new data to get started with).</p></blockquote><p>Be aware that this is not magic, and you assume that &#8220;your future looks like your past&#8221;. Meaning that it highly depends on the input in the form of Throughput we feed it with.</p><p>We recommend that you dive deeper into MCS by reading our blog post <a href="https://blog.letpeople.work/p/an-introduction-and-step-by-step-guide-to-monte-carlo-simulations">An Introduction and Step-by-Step Guide to Monte Carlo Simulations</a> and follow along the exercise in a spreadsheet.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;30d5f185-807a-4cfc-a089-d1fe2b2a1a53&quot;,&quot;caption&quot;:&quot;Since we started using Monte Carlo Simulations for forecasting instead of estimations with teams we work with, we&#8217;ve gotten several questions about how it works and more importantly what data is needed to run them.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;An Introduction and Step-by-Step Guide to Monte Carlo Simulations&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-08-16T09:28:00.000Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/574cb9c7-0604-440b-b584-15f4b595fe30_720x488.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/an-introduction-and-step-by-step-guide-to-monte-carlo-simulations&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152320302,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h1>About Predictability</h1><p>Now that you know how MCS works, and before we dive into the details of <a href="https://docs.lighthouse.letpeople.work/concepts/howlighthouseforecasts.html#how-lighthouse-forecasts">Lighthouse</a>, let&#8217;s briefly explore <em>Predictability</em> in the context of MCS.</p><blockquote><p>You are more predictable the <em>closer</em> your forecasts are <em>together</em>. Meaning if there is only a small gap between your percentiles (for example 50/70/85/95%), you would be more predictable.</p></blockquote><p>Let&#8217;s look at an example with two teams for this and forecast how many items we can get done in the next 14 days.</p><pre><code><code>==== Forecast Team A ====
*How many Items can be done in 14 days?*

95% Chance: 3 items or more

85% Chance: 5 items or more

70% Chance: 12 items or more

50% Chance: 27 items or more </code></code></pre><pre><code><code>==== Forecast Team B ====  

*How many Items can be done in 14 days?*

95% Chance: 9 items or more

85% Chance: 12 items or more

70% Chance: 14 items or more

50% Chance: 19 items or more </code></code></pre><p>According to our definition, <em>Team B</em> is more predictable. <em>Team A</em> might have a higher <em>upside</em>, but the chance of that happening is not that high. The 70% chance is very similar for both teams, but if you want a higher probability, it drops very low with <em>Team A</em>. If you need to get 9 items done in 14 days, you would trust <em>Team B</em> more to get the job done as they are more predictable.</p><blockquote><p>Predictability does not equal <em>speed</em>. If you get one item done consistently every week, you are very predictable. You might also be slow, but those are two different things. We recommend first focusing on predictability, and once you are happy with it, focus on what you can do to improve speed.</p></blockquote><h2>Improving Predictability</h2><p>If you want to improve predictability, you should focus on <em>Flow</em>. Flow Metrics are a great indicator and starting point to do so. Keep your <em>Work Item Age</em> low, act on things that start to get older, and the rest will fall in place.</p><blockquote><p>We recommend reading our blog post <a href="https://blog.letpeople.work/p/using-flow-metrics-from-feelings-to-facts">Using Flow Metrics</a> to get an introduction to Flow Metrics.</p></blockquote><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;a76437ec-4956-4af6-9dc7-eee82baf0c8c&quot;,&quot;caption&quot;:&quot;Whether you are applying Kanban or not, the four flow measures are a great tool to analyze how well things are flowing through your system. They are easy to measure (most likely you have the data already) and enable continuous improvement.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Using Flow Metrics&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-06-14T09:33:22.000Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/add39ac3-5e83-4bcb-8f35-cdf9b65ffe92_1000x600.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/using-flow-metrics-from-feelings-to-facts&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152320307,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h1>How Lighthouse Forecasts</h1><p>Now that we&#8217;ve covered the basics, let&#8217;s look at how Lighthouse is forecasting. We&#8217;ll use an example to explain the interesting parts. We&#8217;ll use some scenarios to explain how Lighthouse is running the forecast, starting from the most simple examples to more complicated ones.</p><blockquote><p>We&#8217;ll look into how Lighthouse is running <em>When</em> forecasts for projects. The <em>How Many</em> and <em>When</em> on Team level are the basic operations that are also covered in the above-mentioned blog post.</p></blockquote><h2>Teams, Features, and Projects</h2><p>Forecasts will always be made for specific <em>Teams</em>. The forecast will calculate <em>When</em> a certain number of <em>Work Items</em> will be done. Those <em>Work Items</em> are automatically fetched based on the Team Backlog (see <a href="https://docs.lighthouse.letpeople.work/features/teams/edit.html#work-item-query">Team Work Item Query</a>) and belong to a specific <em>Feature</em> of a <em>Project</em> (based on the <a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html#work-item-query">Project Work Item Query</a>).</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3ovG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3ovG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 424w, https://substackcdn.com/image/fetch/$s_!3ovG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 848w, https://substackcdn.com/image/fetch/$s_!3ovG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 1272w, https://substackcdn.com/image/fetch/$s_!3ovG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3ovG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png" width="738" height="78" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:78,&quot;width&quot;:738,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7270,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3ovG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 424w, https://substackcdn.com/image/fetch/$s_!3ovG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 848w, https://substackcdn.com/image/fetch/$s_!3ovG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 1272w, https://substackcdn.com/image/fetch/$s_!3ovG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F736d0648-d7a8-4a95-bd9d-62ea97e6cfff_738x78.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><blockquote><p>Lighthouse is only aware of Work Items if they are linked to a project. If your team is working on 5 Features, but only 3 of them are linked to Projects in Lighthouse, the other 2 Features and all the work items that belong to them will be ignored, and the forecast assumes you will <strong>only</strong> work on the 3 Features that are known. It is therefore important to make sure you have all the features that are relevant to you covered within a Lighthouse Project.</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_!p1kl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!p1kl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png 424w, https://substackcdn.com/image/fetch/$s_!p1kl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png 848w, https://substackcdn.com/image/fetch/$s_!p1kl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png 1272w, https://substackcdn.com/image/fetch/$s_!p1kl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!p1kl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png" width="643" height="496" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:496,&quot;width&quot;:643,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32064,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!p1kl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png 424w, https://substackcdn.com/image/fetch/$s_!p1kl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png 848w, https://substackcdn.com/image/fetch/$s_!p1kl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.png 1272w, https://substackcdn.com/image/fetch/$s_!p1kl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7eb5e61b-ad22-44c1-a30e-2458ba1d2026_643x496.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><em>If Project 2 is not defined in Lighthouse, Work Item 2, 4, and 5 will also not be known to Lighthouse</em>.</p><h2>Why the Backlog Order Matters</h2><p>When Lighthouse is forecasting, it will always take all the Features of <strong>all</strong> Projects into account. If you set up a new Project, you want to know when this will be done taking into account all the other things that are going on. You <strong>can&#8217;t</strong> make a forecast for a Project in isolation, but you will always look at the full known backlog.</p><blockquote><p>That means, if you really want to ignore everything else, just remove all other Projects. That&#8217;s not recommended though.</p></blockquote><p>Because Lighthouse works this way, this is also the reason why the order is so important. In the above image, you can see that <em>Feature 1</em> is ordered above <em>Feature 2</em>, which itself is above <em>Feature 3</em>. That means that Lighthouse assumes we first focus all our efforts on <em>Feature 1</em> (assuming a <a href="https://docs.lighthouse.letpeople.work/concepts/howlighthouseforecasts.html#the-impact-of-feature-wip">Feature WIP of 1</a>), then on <em>Feature 2</em>, and only then on <em>Feature 3</em>. If you forecast <em>Project 2</em>, the forecast will take into account that <em>Feature 1</em> and <em>Feature 2</em> must be done before that.</p><blockquote><p>The <a href="https://docs.lighthouse.letpeople.work/features/teams/detail.html#features">Feature View</a> in the Teams Detail Page will show you <strong>all</strong> the Features the team is contributing towards in their order.</p></blockquote><h2>The Impact of Feature WIP</h2><p>By default, Lighthouse will assume that your Teams will work on one Feature at a time (<em>Feature WIP</em> = 1). In other words, this means that the forecast will check how many items can be done, and assume all those items will contribute to the first feature. So the Features will be done <em>in sequence</em>:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OMnX!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OMnX!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 424w, https://substackcdn.com/image/fetch/$s_!OMnX!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 848w, https://substackcdn.com/image/fetch/$s_!OMnX!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 1272w, https://substackcdn.com/image/fetch/$s_!OMnX!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OMnX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png" width="428" height="84" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:84,&quot;width&quot;:428,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3838,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!OMnX!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 424w, https://substackcdn.com/image/fetch/$s_!OMnX!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 848w, https://substackcdn.com/image/fetch/$s_!OMnX!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 1272w, https://substackcdn.com/image/fetch/$s_!OMnX!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85fc037b-1eee-421d-b163-1f5c5ea2d718_428x84.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>If we increase the Feature WIP to 2, we will assume that the work that is completed is distributed to two Features (as long as we have 2):</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!If7W!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!If7W!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 424w, https://substackcdn.com/image/fetch/$s_!If7W!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 848w, https://substackcdn.com/image/fetch/$s_!If7W!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 1272w, https://substackcdn.com/image/fetch/$s_!If7W!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!If7W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png" width="285" height="191" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:191,&quot;width&quot;:285,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:6020,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!If7W!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 424w, https://substackcdn.com/image/fetch/$s_!If7W!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 848w, https://substackcdn.com/image/fetch/$s_!If7W!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 1272w, https://substackcdn.com/image/fetch/$s_!If7W!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2b764117-4f50-4fd3-86ad-93e714e2d308_285x191.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The same pattern can be applied with an even higher Feature WIP (as an example 3):</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZZt_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZZt_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png 424w, https://substackcdn.com/image/fetch/$s_!ZZt_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png 848w, https://substackcdn.com/image/fetch/$s_!ZZt_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png 1272w, https://substackcdn.com/image/fetch/$s_!ZZt_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZZt_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png" width="290" height="286" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/88180928-597b-4c65-b1c1-78b108c35417_290x286.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:286,&quot;width&quot;:290,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:8920,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZZt_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png 424w, https://substackcdn.com/image/fetch/$s_!ZZt_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png 848w, https://substackcdn.com/image/fetch/$s_!ZZt_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.png 1272w, https://substackcdn.com/image/fetch/$s_!ZZt_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F88180928-597b-4c65-b1c1-78b108c35417_290x286.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>In simple terms this means, that the higher the <em>Feature WIP</em>, the more focus goes away from the highest priority item (<em>Feature 1</em>) and the earlier we start on less important things (<em>Feature 2</em> and following). So instead of getting the most important thing early, we get everything later. This contradicts our ambition to continuously deliver value in small batches.</p><blockquote><p>We <strong>highly</strong> recommend keeping your Feature WIP as low as possible. Lighthouse can help you make the effects of a high Feature WIP transparent. It also is able to automatically adjust the Feature WIP based on your work in progress. See the <a href="https://docs.lighthouse.letpeople.work/features/teams/edit.html#feature-wip">Team Settings</a> for more details.</p></blockquote><h2>Example Scenarios</h2><p>So let&#8217;s go through some scenarios to look at what happens when Lighthouse forecasts.</p><blockquote><p>For simplicity, we&#8217;ll talk only about Teams and Features. As you learned above, this is tied to Projects. However, when it comes to forecasting we just care about the Features in Order, independent of which Projects they are in. To simplify this a bit, we&#8217;ll skip the Projects in the examples.</p></blockquote><h3>1 Team - 1 Feature</h3><p>The most basic case is if we have a single team, working on a single Feature. This equals a simple <em>When</em> forecast. We take the remaining Work Items for this Feature (all items that belong to this Feature that are <a href="https://docs.lighthouse.letpeople.work/features/teams/edit.html#states">Not Done</a>).</p><p>Then we calculate how long it will take to complete all those items.</p><blockquote><p>Feature WIP does not matter in this situation, as we&#8217;ll only have one Feature available. Thus all the work goes into that Feature.</p></blockquote><h3>1 Team - 2 Features</h3><p>If we have a single team, but 2 features, it starts to get more interesting. Lighthouse will first get all remaining work items for each Feature.</p><p>Then it will simulate a single day, and reduce the remaining work from the Features till there is nothing left. Once both Features have no remaining items left, the simulation is done. For each feature, we&#8217;ll count the simulated number of days it took.</p><blockquote><p>For <em>Feature 2</em> we will not start with the 1st day, but the count will resume from where it was when we finished <em>Feature 1</em>.</p></blockquote><p>This is done 10&#8217;000 times and the results are stored (how long did it take till the Features were done).</p><p>If the Feature WIP is 1, all simulated Throughput goes into the first Feature, until it&#8217;s done. From then on, all simulated Throughput goes towards the second one.</p><blockquote><p>If you have 1 item left for a Feature, and you simulate 2 or more items to be done that day, the full Throughput will go to Feature 1. Let&#8217;s book this under context switching cost.</p></blockquote><p>If we have a Feature WIP of 2, we simulate the Throughput each day. Then we randomly pick which Feature to assign this 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_!ur1j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ur1j!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png 424w, https://substackcdn.com/image/fetch/$s_!ur1j!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png 848w, https://substackcdn.com/image/fetch/$s_!ur1j!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png 1272w, https://substackcdn.com/image/fetch/$s_!ur1j!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ur1j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png" width="762" height="381" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/885dab64-a12f-4c84-9456-39d3b826e525_762x381.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:381,&quot;width&quot;:762,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:23094,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ur1j!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png 424w, https://substackcdn.com/image/fetch/$s_!ur1j!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png 848w, https://substackcdn.com/image/fetch/$s_!ur1j!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.png 1272w, https://substackcdn.com/image/fetch/$s_!ur1j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F885dab64-a12f-4c84-9456-39d3b826e525_762x381.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><p>Before you ask, it&#8217;s not possible to somehow <em>weigh</em> Features, for example, saying we work 80% on <em>Feature 1</em> and 20% on <em>Feature 2</em>. If you work on multiple things, items will be randomly distributed.</p></blockquote><h3>2 Teams - 2 Features</h3><p>If we have two teams working on two features independently, it&#8217;s the same case as in <a href="https://docs.lighthouse.letpeople.work/concepts/howlighthouseforecasts.html#1-team---1-feature">1 Team - 1 Feature</a>. We simply do it for both teams individually.</p><h3>2 Teams - 1 Feature</h3><p>A tricky case is if we have a feature that is being worked on by two teams. This means both teams have work to do for this feature. Lighthouse will run two forecasts, one for each team with the remaining work for the Feature (similar to <a href="https://docs.lighthouse.letpeople.work/concepts/howlighthouseforecasts.html#1-team---1-feature">1 Team - 1 Feature</a>). Then both forecasts will be stored for this Feature. Lighthouse is then presenting you the forecast that is predicted to be done later.</p><blockquote><p>That does not mean that one team is slower, they might just have other work that is ordered higher up.</p></blockquote><blockquote><p>What Lighthouse does in such cases is not ideal. It suggests that there is a 95/85/70/50% probability for the forecast that is predicted to be done later. However, as it&#8217;s two forecasts that both need to happen, the real probabilities would be 90/72/49/25%. This would be even worse if three or more teams would be involved. <a href="https://docs.lighthouse.letpeople.work/concepts/howlighthouseforecasts.html#dependencies">Dependencies</a> are horrible, try to get rid of them. While we know it&#8217;s not properly done at the moment, we are not sure what&#8217;s the best way to handle this. We&#8217;re open to ideas.</p></blockquote><h2>Dependencies</h2><p>Lighthouse does <strong>not</strong> offer any possibility to define dependencies in the sense of:</p><ul><li><p>This work item can only be started once that work is done</p></li><li><p>This Feature has to wait for the completion of those two other Features before we can start</p></li></ul><blockquote><p><strong>Lighthouse will also not offer this going forward.</strong></p></blockquote><p>This is for two reasons. First, it&#8217;s a lot of work to do. It may sound easy, but it will complicate the whole tool. And while we are not opposing investing in the tool, we only want to do it when we think it makes sense. Which brings us to the reason #2: We don&#8217;t like dependencies. While there may be some, you should try to aggressively remove them as well as possible. As long as we have lots of dependencies, a tool like Lighthouse will not help you very much.</p><p>Please have a look at the work of <a href="https://www.linkedin.com/in/singhpr13/">Prateek Singh</a>, who wrote among others, this very interesting blog post: <a href="https://singhpr.medium.com/understanding-the-impact-of-dependencies-4cca0d720019">Understanding the Impact of Dependencies</a></p><h1>Conclusion</h1><p>Congrats, you made it to the end of this page! We understand that this may have been the opposite of <em>light reading</em>. As mentioned in the beginning, you don&#8217;t <em>need</em> to know all of this when you start out with Lighthouse. But as you go on, you may wonder why certain things work how they do. And sometimes the answer can be found in the way Lighthouse works.</p><p><em>You may wonder why this is so complicated. It would be a lot easier if there were no dependencies between teams, teams would only focus on one feature at a time and could deliver projects without other teams. Also, it would be nice if we could keep a proper order in our backlog. <strong>We just try to help you cope with reality&#8230;don&#8217;t hate the player, hate the game. Or better yet, change how your organization plays the game.</strong></em></p>]]></content:encoded></item><item><title><![CDATA[Documentation as Code]]></title><description><![CDATA[How we write the User Documentation of Lighthouse (and why this was fun)]]></description><link>https://blog.letpeople.work/p/documentation-as-code</link><guid isPermaLink="false">https://blog.letpeople.work/p/documentation-as-code</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Sun, 16 Feb 2025 18:00:38 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!KE5i!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>&#8220;Writing documentation is fun!&#8221; - This sentence is probably not said very often by developers around the world. In this post, I want to share how we write the user documentation for Lighthouse, and why I believe that may resonate with developers.</em></p><p>You can see the end result of our documentation at <a href="https://docs.lighthouse.letpeople.work">https://docs.lighthouse.letpeople.work</a>:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KE5i!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KE5i!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 424w, https://substackcdn.com/image/fetch/$s_!KE5i!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 848w, https://substackcdn.com/image/fetch/$s_!KE5i!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 1272w, https://substackcdn.com/image/fetch/$s_!KE5i!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KE5i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png" width="1270" height="917" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4e31622-b594-4feb-b566-4a60855f6173_1270x917.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:917,&quot;width&quot;:1270,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:129381,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KE5i!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 424w, https://substackcdn.com/image/fetch/$s_!KE5i!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 848w, https://substackcdn.com/image/fetch/$s_!KE5i!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 1272w, https://substackcdn.com/image/fetch/$s_!KE5i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4e31622-b594-4feb-b566-4a60855f6173_1270x917.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://docs.lighthouse.letpeople.work">The Lighthouse Documentation</a></figcaption></figure></div><div class="pullquote"><p><a href="https://letpeople.work#lighthouse">Lighthouse</a> is the flagship product of <a href="https://letpeople.work">Let People Work</a>. It allows you to forecast completion dates with confidence and supports a wide range of scenarios, including projects with multiple teams and handling features that are not broken down yet.</p><p>It&#8217;s free to use, is open-source, and doesn&#8217;t need any cloud connection.<br>Join our <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Slack Community </a>to learn from other users and become part of the development.</p></div><h1>Documentation Experience</h1><p>Up to now, I&#8217;ve experienced two kinds of documentation:</p><ol><li><p>User-facing documentation, most often written in a dedicated tool like Word or dedicated Content Management Tools</p></li><li><p>Documentation aimed at developers, most often written in markup languages (like <a href="https://en.wikipedia.org/wiki/Markdown">Markdown</a>), for example as part of a README or Wiki</p></li></ol><p>In my experience, developers often dread the former, as it&#8217;s connected with something that you just have to do, not something you want to do. You have to use those annoying tools (that are very different from what you normally use day-to-day), and due to that, we try to delay this as much as possible. So when we finally can&#8217;t shift it anymore, we don&#8217;t remember the details which makes it even more of a slog and just reinforces the belief that this is annoying work.</p><p>&#8220;Developer Documentation&#8221; usually flows better. It may not be everyone&#8217;s favorite task, but it&#8217;s often less of a pain to do this.</p><p>My assumption is this is because you can stay within the tools you are used to, and the documentation work is often done much closer in time since the change that is being documented happened.</p><p>The whole <em>experience</em> feels different when I modify a Markdown file, commit the changes, push them to a repository, and the change is instantly there.</p><p>With this in mind, we tackled the User Documentation for Lighthouse as well. But before we get there, let&#8217;s quickly talk about one of my favorite topics: Automation.</p><h1>Automation Automation Automation</h1><p>I love automation. It&#8217;s one of the coolest feelings if you can automate something that was a cumbersome manual task before (especially if it had to be done repeatedly). <em><a href="https://blog.letpeople.work/p/how-do-we-test-lighthouse?r=1xcelp">It&#8217;s right up there with getting your tests to pass</a>.</em></p><p>When I recently was writing my CV, I was putting the following in the <em>About Me</em> section:</p><div class="pullquote"><p>Automation of anything and everything is another passion of mine. Whether it&#8217;s a script that can collect some data automatically or a CI/CD pipeline for this CV, it&#8217;s something I genuinely enjoy doing.</p></div><p>This was supported by the fact that the <a href="https://github.com/huserben/cv">whole CV itself is written in LaTeX, and a CI pipeline is creating a PDF out of this and publishing it</a>. Instead of a time-stamp, the CV is versioned (well the version is based on the last change date, but still). </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xu-i!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xu-i!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 424w, https://substackcdn.com/image/fetch/$s_!xu-i!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 848w, https://substackcdn.com/image/fetch/$s_!xu-i!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 1272w, https://substackcdn.com/image/fetch/$s_!xu-i!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xu-i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png" width="1096" height="601" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:601,&quot;width&quot;:1096,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:54780,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xu-i!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 424w, https://substackcdn.com/image/fetch/$s_!xu-i!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 848w, https://substackcdn.com/image/fetch/$s_!xu-i!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 1272w, https://substackcdn.com/image/fetch/$s_!xu-i!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4cc5f4b-04a2-4dbc-b87a-43e0aba21395_1096x601.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">CI/CD Pipeline of my CV</figcaption></figure></div><p>What I&#8217;m trying to tell you is that I&#8217;m serious about automation. Apart from me enjoying to do it, automation will lead to many improvements:</p><ul><li><p>It democratizes knowledge and makes it available to anyone. We don&#8217;t depend on a single person remembering how to do a thing, even if that person is yourself (<em>I certainly don&#8217;t remember that LaTeX command to compile my CV&#8230;</em>)</p></li><li><p>You make a process repeatable</p></li><li><p>Ideally, you also make the process versionable (for example by storing all the things needed to run the automation under version control)</p></li><li><p>You remove waste, as you don&#8217;t need to spend time doing that thing manually and instead can spend it on other things (like automating more things!)</p><ul><li><p>Note that just because something can be automated, doesn&#8217;t mean it&#8217;s worth it. There is always some cost to create the automation, which may be a lot higher than what you save.</p></li></ul></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!oqoW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!oqoW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oqoW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oqoW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oqoW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!oqoW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg" width="667" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:667,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:64767,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!oqoW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!oqoW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!oqoW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!oqoW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4510b44e-9fca-4ace-9015-f9e107ba7a2c_667x500.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Ignore the note above, automate absolutely everything.</figcaption></figure></div><p>As Lighthouse is something I&#8217;m spending my evenings and weekends on, and we concluded that &#8220;proper documentation&#8221; may be worth having, I combined it with doing something fun and automating as much as I possibly could. But before we get that, let&#8217;s first dive into why we concluded that the documentation was worth having.</p><h1>Why Bother To Create A Documentation?</h1><p>Initially, we had all the documentation on GitHub itself, as part of the README.me. This works but also expects that users are willing to navigate to your GitHub project and browse through the Readme. The experience is not ideal, and not everybody is a developer and wants to deal with GitHub (<em>which looks scary with all those files and badges and pipelines, etc&#8230;</em>). You also lack a decent search (for the documentation itself) as well as some elements to structure a document.</p><p>As more people got onboarded to the tool, we noticed that similar questions were popping up, and some would have been answered in our Readme already. Which is an indication that people do not read through that.</p><p>We took this as a feedback and decided to invest time into a documentation that:</p><ul><li><p>Is well structured (or at least could be well structured)</p></li><li><p>Is easy to write and extend</p></li><li><p>Can be searched</p></li><li><p>We could host online</p></li><li><p><em>We could automate the heck out of (maybe this was just my requirement :-)</em></p></li></ul><p>Read on to learn what we did in detail to achieve all of the above.</p><h1>Documentation as Code</h1><p>Based on my previous experience, I aimed at a solution that was done in Markdown (or similar). That would allow us to keep using the same editors as when we change code, and we could have the documentation in version control. In fact, we can keep it in the same repository as the application itself.</p><div class="pullquote"><p>The documentation then is no different from the code. It&#8217;s as much part of the application as anything else.</p></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!N1IS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!N1IS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!N1IS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!N1IS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!N1IS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!N1IS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg" width="541" height="224.92433697347894" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:533,&quot;width&quot;:1282,&quot;resizeWidth&quot;:541,&quot;bytes&quot;:37401,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!N1IS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 424w, https://substackcdn.com/image/fetch/$s_!N1IS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 848w, https://substackcdn.com/image/fetch/$s_!N1IS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!N1IS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd6902b2b-eb39-45f0-aee2-2a5fc97a89d3_1282x533.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Notes for Blog Posts, written in &#8220;Markdown&#8221; Syntax in my Notebook.</figcaption></figure></div><p>As we were using <a href="https://github.com/LetPeopleWork/Lighthouse/">GitHub to store our code </a>(<em>did we mention that Lighthouse is free and Open-Source?</em>), it made sense to use a cool feature from GitHub for the documentation: <a href="https://pages.github.com/">GitHub Pages</a>.</p><p>GitHub Pages allows you to host a website directly from your GitHub repository. Push some changes, trigger a CI Pipeline, and within a minute, the new version is published. And all of this is based on markdown files in your repo.</p><p>Two cool features from GitHub pages are:</p><ul><li><p>You can set up custom domains, so instead of a default URL, it can be anything you want it to be (assuming you own the domain). This allowed us to host our documentation under <a href="https://docs.lighthouse.letpeople.work">https://docs.lighthouse.letpeople.work</a>, even though it&#8217;s hosted on GitHub itself.</p></li><li><p>GitHub supports <a href="https://jekyllrb.com/">Jekyll</a>, which allows you to use various themes to create static sites based on your markdown files.</p></li></ul><h1>Just The Docs</h1><p>One of the available themes for Jekyll is <a href="https://just-the-docs.com">Just The Docs</a>. As the name suggests, this is a theme that helps you write nice documentation. It&#8217;s free to use, very simple yet powerful, and needless to say, the documentation of the theme is great.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VMsv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VMsv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 424w, https://substackcdn.com/image/fetch/$s_!VMsv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 848w, https://substackcdn.com/image/fetch/$s_!VMsv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 1272w, https://substackcdn.com/image/fetch/$s_!VMsv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VMsv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png" width="1270" height="719" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:719,&quot;width&quot;:1270,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:105030,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VMsv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 424w, https://substackcdn.com/image/fetch/$s_!VMsv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 848w, https://substackcdn.com/image/fetch/$s_!VMsv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 1272w, https://substackcdn.com/image/fetch/$s_!VMsv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8233b971-42da-42c7-aec6-9a48d35ca13f_1270x719.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Documentation of Just The Docs which is done in Just The Docs itself #Meta</figcaption></figure></div><p>Jekyll is based on <a href="https://www.ruby-lang.org/en/">Ruby</a> and you can run it with any template easily on your local machine (for example before you set up your CI Pipelines on GitHub).</p><p>Once done, you can work with Markdown as you are (most likely) used to. In Lighthouse, we keep our documentation within the <em><a href="https://github.com/LetPeopleWork/Lighthouse/tree/main/docs">docs</a></em> folder and create subfolders for each area that we display in the navigation.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!P36A!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!P36A!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 424w, https://substackcdn.com/image/fetch/$s_!P36A!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 848w, https://substackcdn.com/image/fetch/$s_!P36A!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 1272w, https://substackcdn.com/image/fetch/$s_!P36A!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!P36A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png" width="1456" height="471" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:471,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:236045,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!P36A!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 424w, https://substackcdn.com/image/fetch/$s_!P36A!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 848w, https://substackcdn.com/image/fetch/$s_!P36A!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 1272w, https://substackcdn.com/image/fetch/$s_!P36A!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2f77f389-57f1-4f1c-be66-c6bceedb6977_2046x662.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Feature Page in Markdown and How it Looks in the Documentation</figcaption></figure></div><p>While Jekyll respectively Just the Docs add some configuration options (for example the frontmatter on top of the file to describe the page details and navigation), you can mainly use the regular markdown syntax that you know (and love). Create links to other pages, use # for your headings, add tables where they make sense, and insert pictures to visualize what you&#8217;re describing. Which brings us to the topic of screenshots.</p><h1>Screenshots!</h1><p>It was not long after I started writing that I thought I should add a screenshot. Easy thing, just let me spin up the app and capture one. Store the file in my <em>docs/assets</em> folder, reference it, and it works.</p><p>Except, what if the app changes. I obviously should retake the screenshot. But do I remember that? And it would be nice if all the screenshots would follow a similar pattern (for example use the same team/project names). I could sense that either I&#8217;m automating this right away, or we will have not updated screenshots very quickly (<em>automation = fun, taking screenshots = boring</em>).</p><p>In Lighthouse, we run end-to-end tests using <a href="https://playwright.dev/">Playwright</a>. This is a great tool for testing, but the fact that it&#8217;s spinning up the app automatically, putting it in a known state, and can be run from our pipelines, made it also interesting for taking screenshots.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;81c0fc06-6741-4ea0-b637-7c3ac72ebd69&quot;,&quot;caption&quot;:&quot;When I started Lighthouse, it was a personal project. Yet, one of the first things I did was to add a CI Pipeline and write tests. Most of the backend was created using TDD, so it&#8217;s safe to say that tests were on our minds from the get-go.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;How Do We Test Lighthouse?&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-02-10T12:06:06.822Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/how-do-we-test-lighthouse&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:156169374,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>If you write your testing framework in a decent way (which you really should), you can reuse all your <a href="https://martinfowler.com/bliki/PageObject.html">page objects</a> for the sake of taking screenshots. Then very quickly you get simple <em>tests</em> that you can use for recapturing screenshots. To take the screenshot you see above in the <em>Feature Page</em>, this code is used:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EMN7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EMN7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 424w, https://substackcdn.com/image/fetch/$s_!EMN7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 848w, https://substackcdn.com/image/fetch/$s_!EMN7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 1272w, https://substackcdn.com/image/fetch/$s_!EMN7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EMN7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png" width="935" height="176" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:176,&quot;width&quot;:935,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:24372,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EMN7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 424w, https://substackcdn.com/image/fetch/$s_!EMN7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 848w, https://substackcdn.com/image/fetch/$s_!EMN7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 1272w, https://substackcdn.com/image/fetch/$s_!EMN7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb2da4d7-cb03-462e-b0c6-7af9de3be7de_935x176.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Sorry for the screenshot, the Substack Code Editor is horrible. Code can be found <a href="https://github.com/LetPeopleWork/Lighthouse/blob/main/Lighthouse.EndToEndTests/tests/specs/screenshots/Screenshots.spec.ts#L143">here</a>.</figcaption></figure></div><p>Without going too much into the details, the test uses a tag (<em>@screenshot</em>) and then spins up the application, puts it into a known state (updating Teams and Projects), navigates to the Overview Page, and takes the screenshot.</p><p>As we can run Lighthouse in docker, we can spin up a container to test against (to make sure we don&#8217;t have any leftovers of some other testing we did):</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!csve!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!csve!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 424w, https://substackcdn.com/image/fetch/$s_!csve!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 848w, https://substackcdn.com/image/fetch/$s_!csve!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 1272w, https://substackcdn.com/image/fetch/$s_!csve!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!csve!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png" width="1079" height="98" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:98,&quot;width&quot;:1079,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:21500,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!csve!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 424w, https://substackcdn.com/image/fetch/$s_!csve!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 848w, https://substackcdn.com/image/fetch/$s_!csve!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 1272w, https://substackcdn.com/image/fetch/$s_!csve!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8c50550-928a-48ee-8737-5e40db0ee299_1079x98.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><a href="https://github.com/LetPeopleWork/Lighthouse/blob/main/Lighthouse.EndToEndTests/package.json">Package.json </a>of the E2E Tests</figcaption></figure></div><p>The argument <em>--grep @screenshot</em> will make sure we only run tests with the <em>@screenshot</em> tag.</p><p>And our <em>takePageScreenshot</em> method also checks if the image is different than the one we currently have, and will only save it if that&#8217;s the case (with some threshold). That way, we don&#8217;t spam our git history with minor changes (for example if just the date is updated).</p><p>Pretty cool stuff so far, but to complete it, we want to run all of this automatically.</p><h1>Pipelines!</h1><p>The final piece of the puzzle is the Continuous Integration and Deployment. Lighthouse has three CI Pipelines:</p><ul><li><p><a href="https://github.com/LetPeopleWork/Lighthouse/blob/main/.github/workflows/ci.yml">The main pipeline </a>is building, testing, packaging, and deploying Lighthouse.</p></li><li><p><a href="https://github.com/LetPeopleWork/Lighthouse/blob/main/.github/workflows/pages.yml">The docs CI Pipeline </a>is triggered if anything within the <em>docs</em> subdirectory is changed.  This will redeploy the Jekyll page and deploy it to GitHub pages.</p></li><li><p><a href="https://github.com/LetPeopleWork/Lighthouse/blob/main/.github/workflows/screenshots.yml">The screenshot pipeline</a>, which can be triggered manually (and then runs against the latest dev docker image), also is triggered if any new release is created (and then runs against this specific version).</p></li></ul><p>The screenshot pipeline is running the Playwright tests that create the screenshots (if they changed). On top of that, it will create a Pull Request so a human can manually review the changes:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-qw7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-qw7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 424w, https://substackcdn.com/image/fetch/$s_!-qw7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 848w, https://substackcdn.com/image/fetch/$s_!-qw7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 1272w, https://substackcdn.com/image/fetch/$s_!-qw7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-qw7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png" width="1456" height="761" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:761,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:190607,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-qw7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 424w, https://substackcdn.com/image/fetch/$s_!-qw7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 848w, https://substackcdn.com/image/fetch/$s_!-qw7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 1272w, https://substackcdn.com/image/fetch/$s_!-qw7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8547b00a-e3e8-46f0-842a-85a4cc2f2ec1_1578x825.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Automatically created pull request with updated Screenshots</figcaption></figure></div><p>If the pipeline is rerun, the PR will be updated with newer screenshots (just in case something needs a fix). Once merged, the docs pipeline will kick in (as we changed something within the docs folder) and the latest screenshots will appear in our online documentation within the next 1-2 minutes.</p><div class="pullquote"><p>If you don&#8217;t find this cool, I really can&#8217;t help you.</p></div><h1>Conclusion</h1><p>Not that you needed any evidence, but I think this post is proof that I really like to automate stuff. At the same time, I did notice how much easier it is to write user documentation in Markdown. It just feels more natural than using some other WYSIWYG editor. I hope I could inspire you to also think about how you write your documentation, I can highly recommend this approach!</p>]]></content:encoded></item><item><title><![CDATA[How Do We Test Lighthouse?]]></title><description><![CDATA[Exploring the tests that keep Lighthouse stable]]></description><link>https://blog.letpeople.work/p/how-do-we-test-lighthouse</link><guid isPermaLink="false">https://blog.letpeople.work/p/how-do-we-test-lighthouse</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Mon, 10 Feb 2025 12:06:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When I started Lighthouse, it was a personal project. Yet, one of the first things I did was to add a CI Pipeline and write tests. Most of the backend was created using TDD, so it&#8217;s safe to say that tests were on our minds from the get-go.</p><p>In this post, I&#8217;d like to explore how Lighthouse is tested and try to explain what purpose the different tests serve.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Otiv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Otiv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 424w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 848w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1272w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Otiv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png" width="1456" height="236" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:236,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32087,&quot;alt&quot;:&quot;&quot;,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!Otiv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 424w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 848w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1272w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a><figcaption class="image-caption">The <a href="https://github.com/LetPeopleWork/Lighthouse/actions/workflows/ci.yml?query=branch%3Amain">Lighthouse CI Pipeline</a></figcaption></figure></div><div class="pullquote"><p><a href="https://letpeople.work#lighthouse">Lighthouse </a>is the flagship product of <a href="https://letpeople.work">Let People Work</a>. It allows you to forecast completion dates with confidence and supports a wide range of scenarios, including projects with multiple teams and handling features that are not broken down yet.</p><p>It&#8217;s free to use, is open-source, and doesn&#8217;t need any cloud connection.<br>Join our <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Slack Community </a>to learn from other users and become part of the development.</p></div><h1>Why Bother With Tests?</h1><p>You may wonder, if this used to be a personal project, why was I doing tests from the very beginning? The reason is simple: I enjoy writing tests. I don&#8217;t see this as a burden. I think it&#8217;s a great feeling if you wrote a test for a new feature, implemented the functionality, and now this and all other tests are green.</p><p>Or if you just reproduced a bug through an automated test. Yes, just reproducing the bug via test is already a great feeling. Because that means we have a clear indication that it&#8217;s fixed (when the test passes). And that this specific problem won&#8217;t happen again. <strong>Ever</strong>.</p><p>In my experience, many developers dislike tests. At best, they accept that they have to write them. Instead of embracing what great tests allow you to do (change your code with confidence!), they add them on top. Because someone expects the code coverage to be at least <em>&lt;add random number here&gt;</em>. I&#8217;m aware that&#8217;s by far not true for many developers and companies, but it&#8217;s something that I have experienced more often than developers being excited about tests&#8230;</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!eTGI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!eTGI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!eTGI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!eTGI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!eTGI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!eTGI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg" width="500" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:500,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:50100,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!eTGI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!eTGI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!eTGI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!eTGI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28cad955-f5c0-4f55-91b5-18bee0f7e0db_500x500.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h1>Can I Trust This Change?</h1><p>Building up a decent test suite, which covers various aspects of the Lighthouse functionality has been instrumental in evolving the application over time. There have been several bigger refactorings, but also the occasional bug that slips through and is discovered later.</p><p>Knowing that you have a set of tests that will make sure you will not break anything that used to work is very calming. It allows me to make <em>aggressive</em> changes, refactor as I see fit, and occasionally try something, with very limited risk.</p><p>Interestingly enough, it&#8217;s often not during refactoring that tests start to fail. But it has happened several times that I changed something and a seemingly unrelated test suddenly failed. I would be lying if often my first thought would not be: <em>&#8220;Oh, I probably need to adjust the test so it passes again&#8221;</em>, contemplating what I could change to make the test more reliable. Only to then find out that I just unintentionally broke 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_!jGnE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jGnE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jGnE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jGnE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jGnE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jGnE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg" width="500" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:500,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:57212,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jGnE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!jGnE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!jGnE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!jGnE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2d0f72c5-2b81-4817-971f-1eb8c3a1eeaa_500x500.jpeg 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><h1>Can We Trust This Release?</h1><p>As a user of Lighthouse (if you&#8217;re not yet - head over to <a href="https://letpeople.work/lighthouse">https://letpeople.work/lighthouse</a> to learn more!), you also get something out of this. Maybe you just don&#8217;t want to deal with amateur software, that continuously breaks. One release something works, another time this is suddenly broken. Once an application gets a reputation for being unreliable, it&#8217;s hard to get rid of it.</p><p>What&#8217;s more, because Lighthouse is free and open-source, many people associate this with &#8220;unprofessional&#8221;. While many open-source projects are just hobby projects, probably a lot of open-source is done more professionally than many paid software applications and services. As our target audience with Lighthouse is also corporations (or people within corporations that want to make a change in how they forecast), it&#8217;s an advantage that we can show that things are properly tested. On many levels. Continuously.</p><p>So let&#8217;s dive deeper into this.</p><h1>What Do We Test?</h1><p>Lighthouse has unit-, integration- and end-to-end tests. They are all run continuously; every time a change is pushed, it&#8217;s run. And if a single test fails somewhere along the pipeline, we immediately know something broke.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Otiv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Otiv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 424w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 848w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1272w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Otiv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png" width="1456" height="236" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:236,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:32087,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Otiv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 424w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 848w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1272w, https://substackcdn.com/image/fetch/$s_!Otiv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52fe53e0-ad44-4bab-842d-57f2eab0018f_1939x314.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">The <a href="https://github.com/LetPeopleWork/Lighthouse/actions/workflows/ci.yml?query=branch%3Amain">Lighthouse CI Pipeline</a></figcaption></figure></div><h2>Backend</h2><p>The Lighthouse Backend is built in <a href="https://dotnet.microsoft.com/en-us/apps/aspnet">ASP.NET Core </a>in C#. Most classes were written using TDD and therefore are unit-tested, leading to a high code coverage (not that this tells us that much). You can also see this for yourself on <a href="https://sonarcloud.io/component_measures?metric=coverage&amp;selected=LetPeopleWork_Lighthouse%3ALighthouse.Backend&amp;view=treemap&amp;id=LetPeopleWork_Lighthouse">SonarQube Cloud</a>.</p><p>In addition to the Unit Tests, also some integration tests are run. As Lighthouse works with data coming from both Jira and Azure DevOps, there is a hard dependency on those services. And while this can be mocked away to test most things, we test that those services also return the expected data, by having set up demo projects for each and making sure we get what we expect.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I4cM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I4cM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 424w, https://substackcdn.com/image/fetch/$s_!I4cM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 848w, https://substackcdn.com/image/fetch/$s_!I4cM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 1272w, https://substackcdn.com/image/fetch/$s_!I4cM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I4cM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png" width="536" height="410" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:410,&quot;width&quot;:536,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:51336,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!I4cM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 424w, https://substackcdn.com/image/fetch/$s_!I4cM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 848w, https://substackcdn.com/image/fetch/$s_!I4cM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 1272w, https://substackcdn.com/image/fetch/$s_!I4cM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9739c9-ac1c-4ee8-ad9e-51c555aefd03_536x410.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Backend Test Suite</figcaption></figure></div><h2>Frontend</h2><p>The front end is built in <a href="https://react.dev/">React</a>, and we&#8217;re using <a href="https://vitest.dev/">vitest </a>for testing. In general, every component should be covered by tests. Compared to the backend, the coverage is not as good (see <a href="https://sonarcloud.io/component_measures?metric=coverage&amp;selected=LetPeopleWork_Lighthouse_Frontend%3Asrc&amp;view=treemap&amp;id=LetPeopleWork_Lighthouse_Frontend">SonarQube Cloud</a>). The main reason for this is that I had no prior experience with React, so a lot of focus was simply getting it to run, sometimes creating suboptimal code that was harder to test. That said, as we continue to add features, fix bugs, and refactor in the process, the coverage has increased over the last months.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2aWs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2aWs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 424w, https://substackcdn.com/image/fetch/$s_!2aWs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 848w, https://substackcdn.com/image/fetch/$s_!2aWs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 1272w, https://substackcdn.com/image/fetch/$s_!2aWs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2aWs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png" width="871" height="127" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:127,&quot;width&quot;:871,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:11690,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2aWs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 424w, https://substackcdn.com/image/fetch/$s_!2aWs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 848w, https://substackcdn.com/image/fetch/$s_!2aWs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 1272w, https://substackcdn.com/image/fetch/$s_!2aWs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec3aa6d5-a697-46e3-a120-6fdd9a440a60_871x127.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Frontend Test Suite</figcaption></figure></div><h2>End-To-End Tests</h2><p>For quite a while, the Unit- and Integration tests for the back- and the front end was all there was. However, we noticed at one point that, while still everything is green, sometimes things break because the individual units were working, but put together something was still off.</p><p>So we added end-to-end UI Tests using <a href="https://playwright.dev/">Playwright</a>. This allows us to spin up the whole application (assuming the unit- and integration tests were running ok), and test end-to-end scenarios. Those tests interact via the Browser with the Frontend and work against the real Backend, which in turn gets data from a real Jira and Azure DevOps instance.</p><p>Using some neat features like <em><a href="https://playwright.dev/docs/test-fixtures">fixtures</a>, </em>we can make sure each test runs in isolation (so it does not depend on other tests and can be run in any order), while also setting up Lighthouse into a known state (for example by making sure certain Teams or Projects are added).</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1Ytj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1Ytj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 424w, https://substackcdn.com/image/fetch/$s_!1Ytj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 848w, https://substackcdn.com/image/fetch/$s_!1Ytj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 1272w, https://substackcdn.com/image/fetch/$s_!1Ytj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1Ytj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png" width="713" height="218" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:218,&quot;width&quot;:713,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:21117,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1Ytj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 424w, https://substackcdn.com/image/fetch/$s_!1Ytj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 848w, https://substackcdn.com/image/fetch/$s_!1Ytj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 1272w, https://substackcdn.com/image/fetch/$s_!1Ytj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb4c0e7b8-917c-4708-8d75-66cccdefed7e_713x218.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">The End-To-End Test Suite</figcaption></figure></div><p><em>Note that we always prefer to run unit or integration tests. End-to-end tests are expensive because they are slow to run. We try to make sure the basic scenarios work but don&#8217;t try to cover everything.</em></p><h2>Deploy The Demo App</h2><p>If all other tests have been successful, we are then deploying the app as part of the CI Pipeline to our <a href="https://demo.lighthouse.letpeople.work">demo environment</a>. This is not an automated test, but it helps to check if the app behaves as we would expect in the demo environment with the sample data.</p><h2>Publish A Docker Image</h2><p>In parallel with the deployment of the Demo App, docker images with the tag <em>dev-latest</em> are created and pushed to the <a href="https://github.com/LetPeopleWork/Lighthouse/pkgs/container/lighthouse">GitHub Container Registry</a>.</p><p>After the package is pushed, the end-to-end tests are run against this docker image. This makes sure we do not have any different behavior between the <em>regular</em> package and the one that is deployed in docker.</p><p>The automatic deployment of the Demo App as well as the docker image also simplifies the manual verification. Getting the latest version is just one click or one command away, so there is not really an excuse to not verify each individual change.</p><h1>Conclusion</h1><p>Only if all the above-mentioned tests were run, do we consider releasing a new package. The tests give us a lot of confidence to do this often, and history has shown that we can trust our test suite to tell us if we just broke something.</p><p>Testing has been an integral part of Lighthouse from its first commits, and we&#8217;re happy we&#8217;ve invested in this early on, everything else would be unprofessional.</p>]]></content:encoded></item><item><title><![CDATA[Lighthouse - Advanced Features]]></title><description><![CDATA[What distinguishes Lighthouse from any other Forecasting Tool]]></description><link>https://blog.letpeople.work/p/lighthouse-advanced-features</link><guid isPermaLink="false">https://blog.letpeople.work/p/lighthouse-advanced-features</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Sun, 09 Feb 2025 06:36:25 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In this post, we will give you an overview of Lighthouse's advanced features so you know what sets it apart from other forecasting tools.</p><p><em>Note that this is the state as of February 2025. The most up-to-date way Lighthouse is forecasting can always be found in the docs themselves, as this post may be outdated.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zpUm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zpUm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 424w, https://substackcdn.com/image/fetch/$s_!zpUm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 848w, https://substackcdn.com/image/fetch/$s_!zpUm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 1272w, https://substackcdn.com/image/fetch/$s_!zpUm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zpUm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png" width="1179" height="390" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:390,&quot;width&quot;:1179,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:70495,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zpUm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 424w, https://substackcdn.com/image/fetch/$s_!zpUm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 848w, https://substackcdn.com/image/fetch/$s_!zpUm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 1272w, https://substackcdn.com/image/fetch/$s_!zpUm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c4beaba-72f1-4b11-992e-60b66fe9153e_1179x390.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Showing Features that are actively being worked on and Default Feature Sizes are two distinct Lighthouse Features</figcaption></figure></div><div class="pullquote"><p><a href="https://letpeople.work#lighthouse">Lighthouse </a>is the flagship product of <a href="https://letpeople.work">Let People Work</a>. It allows you to forecast completion dates with confidence and supports a wide range of scenarios, including projects with multiple teams and handling features that are not broken down yet.</p><p>It&#8217;s free to use, is open-source, and doesn&#8217;t need any cloud connection.<br>Join our <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Slack Community </a>to learn from other users and become part of the development.</p></div><p>If you look for the basic features, you can find it in this post:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;9ffb1abb-5e7b-4271-8490-b52d05dc8e28&quot;,&quot;caption&quot;:&quot;In this post we will give you an overview of the basic features in Lighthouse, so you know all the basics to get started.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Lighthouse - Getting Started&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-02-05T17:56:28.902Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/lighthouse-getting-started&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:156193631,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:false,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>In this post, we&#8217;ll share some advanced (but awesome) features of Lighthouse that make your life better, and your forecast more realistic, and hopefully help you drive meaningful change in your organization:</p><ol><li><p>Default Feature Sizes</p></li><li><p>Unparented Work Items</p></li><li><p>Feature WIP</p></li><li><p>Active Feature Visualization</p></li></ol><h1>Default Feature Size</h1><p>Lighthouse Project Forecasting is based on the child items of your Features (for example your <em>Epics</em> or <em>Feature</em> work item types). However, not every Feature will be broken down already. This is great because it might not be worth the effort. However, when we run a forecast, we need to know the approximate size. Lighthouse offers functionality to define a <em><a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html#default-feature-size">Default Feature Size</a></em><a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html#default-feature-size"> </a>that is applied to features that don&#8217;t have any child items yet.</p><p>The default feature size can be defined either as a <a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html#default-feature-size">fixed number</a>, using <a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html#historical-feature-size">historical data</a>, or using an <a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html#estimated-size">estimate</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dWqD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dWqD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 424w, https://substackcdn.com/image/fetch/$s_!dWqD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 848w, https://substackcdn.com/image/fetch/$s_!dWqD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 1272w, https://substackcdn.com/image/fetch/$s_!dWqD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dWqD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png" width="1202" height="674" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:674,&quot;width&quot;:1202,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:58084,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dWqD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 424w, https://substackcdn.com/image/fetch/$s_!dWqD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 848w, https://substackcdn.com/image/fetch/$s_!dWqD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 1272w, https://substackcdn.com/image/fetch/$s_!dWqD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe1302e02-acbe-486b-a05d-461316e3b47d_1202x674.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Default Feature Size Options</figcaption></figure></div><p>Lighthouse will determine the size in this order:</p><ol><li><p>Number of Child Items read from your Work Tracking System</p></li><li><p>Estimation of Size per Feature</p></li><li><p>Default/Historical Feature Size</p></li></ol><p>If no child items are defined, it will fall back to the estimation. If no field is defined, or the field is defined but no estimate is found for a feature, it will fall back to the default or historical value (depending on your configuration).</p><h2>Default Number of Items</h2><p>The easiest way is to define a default number of Items, for example, 15 items. You can base this number on your historical data or just go with your gut. The value is fixed and will be applied to all Features that qualify for using the default value.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-Usz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-Usz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 424w, https://substackcdn.com/image/fetch/$s_!-Usz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 848w, https://substackcdn.com/image/fetch/$s_!-Usz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 1272w, https://substackcdn.com/image/fetch/$s_!-Usz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-Usz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png" width="1168" height="212" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:212,&quot;width&quot;:1168,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:17787,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-Usz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 424w, https://substackcdn.com/image/fetch/$s_!-Usz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 848w, https://substackcdn.com/image/fetch/$s_!-Usz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 1272w, https://substackcdn.com/image/fetch/$s_!-Usz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad935a4f-a157-4c92-aaf9-e2712719a731_1168x212.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Fixed Default Feature Size</figcaption></figure></div><h2>Historical Feature Size</h2><p>Instead of a default size, you can also choose to let Lighthouse calculate your historical feature size. If you do so, you have to define a percentile and a query.</p><p>As an example, if you chose the 85th percentile, it means that it uses the size that 85% of your Features had. If you go for 50, it uses the size that at least 50% of your features had. This is more flexible than using a fixed number, as Lighthouse will recalculate this value for you when updating. So over time, the system learns and the values will automatically adjust.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-2Rw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-2Rw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 424w, https://substackcdn.com/image/fetch/$s_!-2Rw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 848w, https://substackcdn.com/image/fetch/$s_!-2Rw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 1272w, https://substackcdn.com/image/fetch/$s_!-2Rw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-2Rw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png" width="1174" height="368" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:368,&quot;width&quot;:1174,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:27895,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-2Rw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 424w, https://substackcdn.com/image/fetch/$s_!-2Rw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 848w, https://substackcdn.com/image/fetch/$s_!-2Rw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 1272w, https://substackcdn.com/image/fetch/$s_!-2Rw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F49101b1a-980a-47ce-a850-0c5b9391b6bc_1174x368.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Using the 85th Percentile for all Features of &#8220;My Team&#8221;</figcaption></figure></div><h2>Estimated Size</h2><p>On top of the default size, which will be similar for every Feature, you can also specify a field that would include an estimate. This allows you to use the default size for features you have not looked at at all while providing more details for some things that you may have started to refine, but have no child items yet. Simply specify the name of the field that contains your estimate, and Lighthouse will extract the data from your work tracking system.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AkB7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AkB7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 424w, https://substackcdn.com/image/fetch/$s_!AkB7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 848w, https://substackcdn.com/image/fetch/$s_!AkB7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 1272w, https://substackcdn.com/image/fetch/$s_!AkB7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AkB7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png" width="1164" height="83" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:83,&quot;width&quot;:1164,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:7974,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AkB7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 424w, https://substackcdn.com/image/fetch/$s_!AkB7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 848w, https://substackcdn.com/image/fetch/$s_!AkB7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 1272w, https://substackcdn.com/image/fetch/$s_!AkB7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef5a12a5-7326-49bd-9322-6c23754f839b_1164x83.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Size Estimation Field</figcaption></figure></div><h2>State Override</h2><p>Sometimes we may have child items already, but we are still in the process of refining them. So instead of using the 3 child items that are already there, we may still want to use the estimate (which may say 12 for a feature) for some time. In order to achieve this, you can define which states should ignore the actual child items. For those states, the real number will <strong>always</strong> be ignored, and the estimate or default size will be used.</p><h2>Visual Indication</h2><p>You will get a visual indication for every item that is using the default/estimated size. That helps you identify where you have pending work to refine the features. This way Lighthouse allows you to create realistic forecasts early on, while also making sure you are not forgetting about the fact that some features still need to be refined (which may change your forecasts).</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gxp8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gxp8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 424w, https://substackcdn.com/image/fetch/$s_!gxp8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 848w, https://substackcdn.com/image/fetch/$s_!gxp8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 1272w, https://substackcdn.com/image/fetch/$s_!gxp8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gxp8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png" width="754" height="222" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4722a929-7843-461b-8564-f6b5fd801926_754x222.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:222,&quot;width&quot;:754,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:26189,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!gxp8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 424w, https://substackcdn.com/image/fetch/$s_!gxp8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 848w, https://substackcdn.com/image/fetch/$s_!gxp8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 1272w, https://substackcdn.com/image/fetch/$s_!gxp8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4722a929-7843-461b-8564-f6b5fd801926_754x222.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">Visual Indication of a Feature that is using the Default Size</figcaption></figure></div><h1>Unparented Work Items</h1><p>Sometimes (or shall we say &#8220;in the real world&#8221;) there is work that does not belong to a specific Feature. Still, it needs to get done. These may be small improvements that were planned (or promised) or some bug fixes.</p><div class="pullquote"><p>You could of course add some container feature (or even multiple) with the sole purpose of adding everything in this bucket. However, if you use a dedicated workflow for features (which we highly encourage), and your feature should be scoped and provide value, that is often at odds with such &#8220;containers&#8221;.</p></div><p>What Lighthouse offers instead is to collect all work items that are not having a featured parent into a &#8220;virtual&#8221; <a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html#unparented-work-items">unparented feature </a>that is also taken into the forecast. All you need to do for this is to create a query that searches for the work items in the individual team backlogs and Lighthouse will group all of them together and show them as &#8220;Unparented Items&#8221; for your projects.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hmYE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hmYE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 424w, https://substackcdn.com/image/fetch/$s_!hmYE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 848w, https://substackcdn.com/image/fetch/$s_!hmYE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 1272w, https://substackcdn.com/image/fetch/$s_!hmYE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hmYE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png" width="1218" height="596" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:596,&quot;width&quot;:1218,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:39838,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hmYE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 424w, https://substackcdn.com/image/fetch/$s_!hmYE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 848w, https://substackcdn.com/image/fetch/$s_!hmYE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 1272w, https://substackcdn.com/image/fetch/$s_!hmYE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b38057f-67f4-4470-953a-c5d09d8c50f7_1218x596.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Selecting Involved Teams and Defining the Query for Unparented Items</figcaption></figure></div><p>The query will only include items that are not already part of this project (under a &#8216;regular feature&#8217;). If we look at the screenshot above, it means that Lighthouse will go through the Backlogs of all the four involved teams, check every item that has the label <em>My Release</em>, and will add it to the virtual unparented feature if it&#8217;s not part of a &#8220;regular&#8221; Feature.</p><div class="pullquote"><p>If you have multiple teams, all unparented work will be added to this Feature. Also, the unparented Feature will be at the bottom of the priority, so it is always assumed that it will be done last.</p></div><h1>Feature WIP</h1><p>If your team is <a href="https://docs.lighthouse.letpeople.work/features/teams/edit.html#feature-wip">working on multiple Features at the same time</a>, Lighthouse allows you to define this number, as this will impact your forecasts for projects, and will lead to different predicted delivery times.</p><div class="pullquote"><p>Working on one Feature at a time does not mean only having one item in progress. It means that all items that are in progress belong to the same feature.</p></div><p>As an example, if you work on a single feature at a time, this feature will be done as fast as possible. If you work on two features, the first feature will finish later (as at least some of the teams effort goes to the second feature). In an ideal world, you have a Feature WIP of one. Your reality might look different, and that&#8217;s ok. Just know that ideally you should strive to be as close as possible to a Feature WIP of one.</p><h2>Automatically Adjust Feature WIP</h2><p>Probably you don&#8217;t want to go and count your Feature WIP and adjust the Lighthouse settings every few days. So instead, Lighthouse allows you to automatically adjust the Feature WIP with every refresh to the number of Features that are right now being worked on by this team.</p><div class="pullquote"><p>Enable this setting if you want to increase transparency. A higher Feature WIP will lead to <em>late delivery</em> of many features. Not everyone will like this. It may be a good way to show why we should use focus (and Lighthouse might give you the underlying data for that). Keep fighting the good fight!</p></div><h2>Visualize The Impact of Feature WIP</h2><p>Your Feature WIP might not always be the same (again, the real world is messy). You can set your Feature WIP to anything you like, there does not need to be a correlation to what is actually happening (although obviously it would be good if the number reflects reality&#8230;). Lighthouse allows you to easily adjust the Feature WIP to visualize the impact. Once adjusted, it will automatically reforecast the completion dates and likelihoods for each milestone:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!iVK2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!iVK2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 424w, https://substackcdn.com/image/fetch/$s_!iVK2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 848w, https://substackcdn.com/image/fetch/$s_!iVK2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!iVK2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!iVK2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png" width="1280" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:124577,&quot;alt&quot;:&quot;&quot;,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!iVK2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 424w, https://substackcdn.com/image/fetch/$s_!iVK2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 848w, https://substackcdn.com/image/fetch/$s_!iVK2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!iVK2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe2af4938-9717-488e-aae3-83de743d09cb_1280x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Changing the Feature WIP of an Involved Team will trigger an immediate re-forecast</figcaption></figure></div><p>You should strive for a Feature WIP that is as low as possible, ideally 1 or 2. However, if your reality looks different, it makes more sense to set Lighthouse up accordingly, as otherwise the forecasts will be off. You may use Lighthouse to make it transparent what a change in Feature WIP can mean in terms of Feature delivery, which could be a good conversation starter to make a change.</p><div class="pullquote"><p>If a team is configured to <a href="https://docs.lighthouse.letpeople.work/features/teams/edit.html#automatically-adjust-feature-wip">Automatically Adjust Feature WIP</a>, you can still change the settings manually. However, they will be overridden the next time the Team Data will be updated.</p></div><h1>Active Feature Visualization</h1><p>For both Teams and Projects, Lighthouse will visually indicate what Features are actively being worked on.</p><p>This is a great indicator to see if we are focusing on the most important items (as Lighthouse is based on the <a href="https://docs.lighthouse.letpeople.work/concepts/concepts.html#feature-order">order in your Work Tracking System</a>).</p><div class="pullquote"><p>Actively being worked on means that right now there is one child item of a Feature that is <em>In Progress</em>. <em>If you have 2 items already done, but right now no other child item is in progress, it will not appear as actively being worked on.</em></p></div><p>On a team level, you can see how many Features are actively being worked on, and if they are &#8220;at the top&#8221; of the list (if not, this may be a good conversation starter).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vTvw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vTvw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 424w, https://substackcdn.com/image/fetch/$s_!vTvw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 848w, https://substackcdn.com/image/fetch/$s_!vTvw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 1272w, https://substackcdn.com/image/fetch/$s_!vTvw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vTvw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png" width="794" height="528" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0782a4f-a6da-4d29-8852-0769573897e4_794x528.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:528,&quot;width&quot;:794,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:60202,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vTvw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 424w, https://substackcdn.com/image/fetch/$s_!vTvw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 848w, https://substackcdn.com/image/fetch/$s_!vTvw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 1272w, https://substackcdn.com/image/fetch/$s_!vTvw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0782a4f-a6da-4d29-8852-0769573897e4_794x528.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For projects you get the same view, but with all the involved teams. In the following screenshot you can see that we currently work on the second feature, while the first one is not even refined yet (indicated by the use of the <em>Default Size</em>).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QYoF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QYoF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png 424w, https://substackcdn.com/image/fetch/$s_!QYoF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png 848w, https://substackcdn.com/image/fetch/$s_!QYoF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png 1272w, https://substackcdn.com/image/fetch/$s_!QYoF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QYoF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png" width="844" height="559" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:559,&quot;width&quot;:844,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:68681,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!QYoF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png 424w, https://substackcdn.com/image/fetch/$s_!QYoF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png 848w, https://substackcdn.com/image/fetch/$s_!QYoF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.png 1272w, https://substackcdn.com/image/fetch/$s_!QYoF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F524bf22f-59ea-4e9e-8f45-495202cde87c_844x559.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><h1>Getting Started</h1><p>Now that you know about what sets Lighthouse apart, you may wonder how you can start to use it. Our documentation at <a href="https://docs.lighthouse.letpeople.work">https://docs.lighthouse.letpeople.work</a> is the best place to get started. Do you need support? <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Join our Slack Channel </a>and get help from us and other users who already use the tool. Or <a href="mailto:contact@letpeople.work">reach out to us </a>to discuss what options we offer to businesses that need tailored support.</p>]]></content:encoded></item><item><title><![CDATA[Lighthouse - Getting Started]]></title><description><![CDATA[What you need to get started with Lighthouse]]></description><link>https://blog.letpeople.work/p/lighthouse-getting-started</link><guid isPermaLink="false">https://blog.letpeople.work/p/lighthouse-getting-started</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Wed, 05 Feb 2025 17:56:28 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In this post we will give you an overview of the basic features in Lighthouse, so you know all the basics to get started.</p><p><em>Note that this is the state as of February 2025. The most up-to-date way Lighthouse is forecasting can always be found in the docs themselves, as this post may be outdated.</em></p><div class="pullquote"><p><a href="https://letpeople.work#lighthouse">Lighthouse</a> is the flagship product of <a href="https://letpeople.work">Let People Work</a>. It allows you to forecast completion dates with confidence and supports a wide range of scenarios, including projects with multiple teams and handling features that are not broken down yet.</p><p>It&#8217;s free to use, is open-source, and doesn&#8217;t need any cloud connection.<br>Join our <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Slack Community </a>to learn from other users and become part of the development.</p></div><h1>What Is Lighthouse?</h1><p>Lighthouse is a tool that helps you run probabilistic forecasts using Monte Carlo Simulations in a continuous and simple way. It connects to your Work Tracking Tool (currently Jira and Azure DevOps are supported) and will automatically update your team&#8217;s Throughput and your project&#8217;s forecasted delivery dates.</p><p>You can use it with a single team for doing manual &#8220;<em>When</em>&#8221; and &#8220;<em>How Many</em>&#8221; forecasts, as well as for tracking projects with one or multiple teams.</p><h2>Free, Open-Source, and No Cloud Connection</h2><p>Lighthouse is hosted on <a href="https://github.com/LetPeopleWork/Lighthouse/">GitHub </a>under an MIT License. It is free to use, whether you are an individual, small company, or big enterprise. No hidden fees, no subscription service. Furthermore, Lighthouse is running on your systems. There is no cloud service involved where it stores any data, everything stays on the system that runs it.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HnAL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HnAL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 424w, https://substackcdn.com/image/fetch/$s_!HnAL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 848w, https://substackcdn.com/image/fetch/$s_!HnAL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 1272w, https://substackcdn.com/image/fetch/$s_!HnAL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HnAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp" width="426" height="152.428125" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:229,&quot;width&quot;:640,&quot;resizeWidth&quot;:426,&quot;bytes&quot;:15834,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HnAL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 424w, https://substackcdn.com/image/fetch/$s_!HnAL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 848w, https://substackcdn.com/image/fetch/$s_!HnAL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 1272w, https://substackcdn.com/image/fetch/$s_!HnAL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F28dfcd29-efa4-4105-afaf-dc85cd0d3248_640x229.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a><figcaption class="image-caption">Lighthouse is Free and Open-Source, based on an <a href="https://opensource.org/license/mit">MIT License</a></figcaption></figure></div><h2>Cross Platform</h2><p>No matter what system you have, Lighthouse will run. We support Windows, macOS, and Linux, and provide Docker containers to run it.</p><p>Check out the <em><a href="https://docs.lighthouse.letpeople.work/Installation/installation.html">Installation </a></em>portion of our documentation for more information.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!htB6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!htB6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!htB6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!htB6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!htB6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!htB6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png" width="317" height="178.3125" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:317,&quot;bytes&quot;:23592,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!htB6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 424w, https://substackcdn.com/image/fetch/$s_!htB6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 848w, https://substackcdn.com/image/fetch/$s_!htB6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 1272w, https://substackcdn.com/image/fetch/$s_!htB6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F202ff4ee-287b-4908-9f0b-bd4f3a6bcbaf_3840x2160.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption">The easiest way to run Lighthouse is via <a href="https://www.docker.com/">Docker</a></figcaption></figure></div><h2>Jira and Azure DevOps</h2><p>The two most popular systems for tracking your work are supported. There is a seamless integration with both Jira and Azure DevOps, and you get the full power of their respective query languages to define your teams and projects.</p><p>Check out the <em><a href="https://docs.lighthouse.letpeople.work/concepts/concepts.html">Concepts</a></em><a href="https://docs.lighthouse.letpeople.work/concepts/concepts.html"> </a>portion of our documentation to learn more.</p><h1>Live Demo</h1><p>If you want to see it live, you can either just run it in <a href="https://docs.lighthouse.letpeople.work/Installation/docker.html">docker</a>, or even simpler, check out our <a href="https://demo.lighthouse.letpeople.work">Live Demo</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!VbB5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!VbB5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 424w, https://substackcdn.com/image/fetch/$s_!VbB5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 848w, https://substackcdn.com/image/fetch/$s_!VbB5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 1272w, https://substackcdn.com/image/fetch/$s_!VbB5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!VbB5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png" width="1270" height="808" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:808,&quot;width&quot;:1270,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:139665,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!VbB5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 424w, https://substackcdn.com/image/fetch/$s_!VbB5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 848w, https://substackcdn.com/image/fetch/$s_!VbB5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 1272w, https://substackcdn.com/image/fetch/$s_!VbB5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe8e26bb8-0029-4542-9fe7-d2d473a45718_1270x808.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Live Demo of the latest version of Lighthouse</figcaption></figure></div><div class="pullquote"><p>Note that the Live Demo will not run real forecasts, but is there to show you the various options and the UI of the tool. We recommend trying it out with your data on your machine to get into the details.</p></div><h1>Continuous Forecasting</h1><p>One of the main features of Lighthouse is the fact that all your forecasts are automatically updated. Forecasting is most powerful if you do it continuously, and Lighthouse was designed with this in mind. Set up your teams and projects, and always get an up-to-date view of your forecasts.</p><h1>Team Level Forecasts</h1><div class="pullquote"><p>&#8203;Answer "When will it be done" and "How much can we accomplish in a given timeframe?" without time-consuming estimation sessions.</p></div><p>Simply <a href="https://docs.lighthouse.letpeople.work/features/teams/edit.html">define your Teams</a> and start running forecasts based on the Throughput. This eliminates the need for Story Points or other forms of estimations and accompanying meetings, allows teams to focus on delivering value while providing stakeholders with accurate insights, and also supports you in creating a realistic plan for your Sprints, Product Increments, etc.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!drh2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!drh2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 424w, https://substackcdn.com/image/fetch/$s_!drh2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 848w, https://substackcdn.com/image/fetch/$s_!drh2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!drh2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!drh2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png" width="1280" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:96867,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!drh2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 424w, https://substackcdn.com/image/fetch/$s_!drh2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 848w, https://substackcdn.com/image/fetch/$s_!drh2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!drh2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7764f07c-5a06-4eb6-9cde-3dc62b507b8f_1280x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://docs.lighthouse.letpeople.work/features/teams/detail.html">Team Info Page</a></figcaption></figure></div><h1>Project Tracking</h1><div class="pullquote"><p>Answer stakeholder questions like "When can we deliver these features?" with confidence.</p></div><p><a href="https://docs.lighthouse.letpeople.work/features/projects/edit.html">Create a new Project</a> by telling which teams are involved and what Epics or Features are part of it, and you are ready to go. Instead of days, an initial project plan is done in minutes. And kept up-to-date as long as the project goes on:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LaIB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LaIB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 424w, https://substackcdn.com/image/fetch/$s_!LaIB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 848w, https://substackcdn.com/image/fetch/$s_!LaIB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!LaIB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LaIB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png" width="1280" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:118403,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LaIB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 424w, https://substackcdn.com/image/fetch/$s_!LaIB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 848w, https://substackcdn.com/image/fetch/$s_!LaIB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!LaIB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6af425f4-201b-4c9b-a5da-644a060d124b_1280x1080.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption"><a href="https://docs.lighthouse.letpeople.work/features/projects/detail.html">Project Detail Page</a></figcaption></figure></div><p>With Lighthouse, you can manage projects from initial planning to delivery, whether you have a single or multiple teams that contribute to features.</p><p>Forecast Sprints, Product Increments, Releases, Quarters, or anything else that you define as a Project. Lighthouse helps you create transparency and is based on the historical data of the involved teams.</p><p>Have some important date coming up? No problem, dynamically create <a href="https://docs.lighthouse.letpeople.work/features/projects/detail.html#milestones">Milestones </a>and see how likely it is to deliver each Feature of your project till then.</p><h1>Keep the Overview</h1><div class="pullquote"><p>Are you interested in keeping an overview of many teams and/or projects? Don't get lost in spreadsheets and slides with various ways of reporting. Stay on top of multiple teams and projects effortlessly.</p></div><p>Lighthouse offers you <a href="https://docs.lighthouse.letpeople.work/features/overview/overview.html">one dashboard for all your Projects</a>. You can see real-time updates reflecting the current state. This helps you focus on analysis and action, rather than gathering data and spending time in status meetings.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lHCu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lHCu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 424w, https://substackcdn.com/image/fetch/$s_!lHCu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 848w, https://substackcdn.com/image/fetch/$s_!lHCu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 1272w, https://substackcdn.com/image/fetch/$s_!lHCu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lHCu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png" width="1280" height="608" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:608,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:81383,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lHCu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 424w, https://substackcdn.com/image/fetch/$s_!lHCu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 848w, https://substackcdn.com/image/fetch/$s_!lHCu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 1272w, https://substackcdn.com/image/fetch/$s_!lHCu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0eec800b-e7e7-42cb-b78a-64b3157a9851_1280x608.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lighthouse Overview</figcaption></figure></div><h1>Getting Started</h1><p>Our documentation at <a href="https://docs.lighthouse.letpeople.work">https://docs.lighthouse.letpeople.work </a>is the best place to get started. Do you need support? <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Join our Slack Channel </a>and get help from us and other users who already use the tool. Or <a href="mailto:contact@letpeople.work">reach out to us </a>to discuss what options we offer to businesses that need tailored support.</p>]]></content:encoded></item><item><title><![CDATA[Why We Created Lighthouse and What We Learned So Far]]></title><description><![CDATA[A reflection one year after the first commit]]></description><link>https://blog.letpeople.work/p/why-we-created-lighthouse-and-what</link><guid isPermaLink="false">https://blog.letpeople.work/p/why-we-created-lighthouse-and-what</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Sun, 02 Feb 2025 17:45:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Llec!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>On February 10th, 2025, <a href="https://letpeople.work#Lighthouse">Lighthouse</a> turns one year old. On the same day in 2024, the first commit to the <a href="https://github.com/letpeoplework/lighthouse">GitHub </a>repository was made (back then, it was still called <em>CMFT</em>&#8212;<em><strong>C</strong>ontinuous <strong>M</strong>onitoring and <strong>F</strong>orecasting <strong>T</strong>ool</em>). In this post, I&#8217;d like to share what led to the decision to create it in the first place, why I&#8217;m spending hours of my free time building it, and what we have learned so far.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Llec!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Llec!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Llec!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Llec!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Llec!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Llec!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg" width="486" height="486" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1024,&quot;width&quot;:1024,&quot;resizeWidth&quot;:486,&quot;bytes&quot;:301313,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Llec!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Llec!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Llec!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Llec!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe627cebf-944f-4590-b50d-ef2a84c2f016_1024x1024.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Happy Birthday Lighthouse!</figcaption></figure></div><div class="pullquote"><p><a href="https://letpeople.work#lighthouse">Lighthouse </a>is the flagship product of <a href="https://letpeople.work">Let People Work</a>. It allows you to forecast completion dates with confidence and supports a wide range of scenarios, including projects with multiple teams and handling features that are not broken down yet.</p><p>It&#8217;s free to use, is open-source, and doesn&#8217;t need any cloud connection.<br>Join our <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Slack Community </a>to learn from other users and become part of the development.</p></div><h1>Consultants and American Football - How It All Started</h1><p>Yes, you&#8217;ve read that right. Two main reasons why Lighthouse was created were the statements of an external consultant on one hand and American Football on the other.</p><p>In January 2024 we were working with a consultancy that was engaged to help us deliver a new product. During a discussion about Quality, Practices, and Continuous Integration, a lead developer said:</p><blockquote><p>It doesn&#8217;t make sense to have green pipelines. We&#8217;re in the development phase, so the tests can&#8217;t always be working. This is also why we should use <em>Gitflow</em> to keep the main branch stable.</p></blockquote><p>I was puzzled at such a statement, especially for a greenfield project using state-of-the-art technology. My inner developer was shocked and angry: <em>That&#8217;s <strong>not</strong> how we are supposed to do things in 2024</em>. However, after some time, I was wondering whether I might just be out of touch. I have not been writing much code in recent years (apart from a few scripts), so who am I to think I know better. Don&#8217;t get me wrong, I was still convinced that the statement was not correct, but I wanted to gain some practical experience again instead of just assuming things.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AE-m!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AE-m!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 424w, https://substackcdn.com/image/fetch/$s_!AE-m!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 848w, https://substackcdn.com/image/fetch/$s_!AE-m!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 1272w, https://substackcdn.com/image/fetch/$s_!AE-m!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AE-m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png" width="491" height="343" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:343,&quot;width&quot;:491,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:277106,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AE-m!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 424w, https://substackcdn.com/image/fetch/$s_!AE-m!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 848w, https://substackcdn.com/image/fetch/$s_!AE-m!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 1272w, https://substackcdn.com/image/fetch/$s_!AE-m!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4c87a080-b4a8-4bf6-a031-37faca5c8ad9_491x343.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>A Highly Competitive Idiot</h2><p>Before I elaborate on what the National Football League has to do with the creation of Lighthouse, a quick note on myself. I&#8217;d describe myself as a highly competitive idiot. Everyone who will work with me for some time will know what I mean (and that I mean this most positively) with the idiot part. I like to have fun and not take things too seriously (<em>frantically points at all the memes</em>).</p><div class="pullquote"><p>If you wonder how it is to work with a highly competitive idiot, reach out to us at Let People Work and we&#8217;ll find a way so you can experience this</p></div><p>What many might not see behind the memes is that I&#8217;m ultra-competitive. If you tell me that I <strong>can&#8217;t</strong> do something, you can be sure I will invest a lot of time to prove you wrong (yes, it&#8217;s that easy to get me to do something). I don&#8217;t see the point of aiming for mediocracy (&#8220;<em>Well it&#8217;s not great, but the others are not better either</em>&#8221;). I do understand we can&#8217;t be the best in everything, but it&#8217;s no excuse for just accepting mediocre or subpar practices.</p><p>The great thing about working in the Software industry is that the bar keeps moving, what was state of the art 5 years ago, might be seen as outdated today. This also means that once we get to state-of-the-art, and we keep improving, we get to <strong>define state-of-the-art</strong>.</p><p>Now if someone comes and sells me something outdated 10 years ago (hello Gitflow&#8230;) as the thing we should certainly be doing, I get triggered&#8230;</p><h2>American Football</h2><p>If you are following the NFL, you are probably aware that in the first weeks of February, the Super Bowl is happening. This ends the season, and it will take till September until the new one begins. The Super Bowl in 2024 happened on the 11th of February, just after I had the conversation described above.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_leW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_leW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 424w, https://substackcdn.com/image/fetch/$s_!_leW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 848w, https://substackcdn.com/image/fetch/$s_!_leW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!_leW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_leW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg" width="1200" height="630" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:630,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:56000,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_leW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 424w, https://substackcdn.com/image/fetch/$s_!_leW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 848w, https://substackcdn.com/image/fetch/$s_!_leW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!_leW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7f6c52f4-bd1a-43c6-8147-96855ad1e9d5_1200x630.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">If you know, you know</figcaption></figure></div><p>This is important because this meant that <em>suddenly</em> my Sunday evenings were free (in Europe, most NFL games happen on Sunday evenings). Instead of watching games, I have time to spend on writing code. And I could do this in the way I wanted to. </p><h1>Do Things My Way</h1><p>The cool thing about personal projects is that you can do whatever you want, however you want. My goal was, apart from the actual product that was built, to make sure I could refresh my knowledge of various engineering practices, and (re-) gain practical experience. Specifically, I wanted to do:</p><ul><li><p>Use Test Driven Development as good as I could</p></li><li><p>Do <a href="https://www.linkedin.com/posts/huserben_people-write-cicd-pipeline-because-they-activity-7266003269221560320-kCCG?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAACe4uzEBv26bG8Km2V78XF8V78XOeyrQ1uc">Continuous Integration </a>and Continuous Deployment</p></li></ul><p>Some proof for that is visible below, as the first commits show that one of the first things I did was to add CI Pipelines, integrate with SonarCloud to check the code, and add tests:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!c0GO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!c0GO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 424w, https://substackcdn.com/image/fetch/$s_!c0GO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 848w, https://substackcdn.com/image/fetch/$s_!c0GO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 1272w, https://substackcdn.com/image/fetch/$s_!c0GO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!c0GO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png" width="1244" height="714" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:714,&quot;width&quot;:1244,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:72918,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!c0GO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 424w, https://substackcdn.com/image/fetch/$s_!c0GO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 848w, https://substackcdn.com/image/fetch/$s_!c0GO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 1272w, https://substackcdn.com/image/fetch/$s_!c0GO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30fed489-35bf-496f-9ecc-4df52139db42_1244x714.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">First commits to the <a href="https://github.com/LetPeopleWork/Lighthouse/commits/main/?since=2024-02-08&amp;until=2024-02-12">Lighthouse Repository</a></figcaption></figure></div><p>I tried to use those practices wherever they made sense. And the more the project grew, the happier I was that I invested in <em>proper</em> engineering practices. While going into detail on all the practices and how they helped me develop deserves its own blog post, the conclusion I can draw after one year is that it&#8217;s certainly not<strong> impossible to keep the pipeline green</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!h7Km!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!h7Km!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 424w, https://substackcdn.com/image/fetch/$s_!h7Km!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 848w, https://substackcdn.com/image/fetch/$s_!h7Km!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!h7Km!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!h7Km!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg" width="500" height="713" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:713,&quot;width&quot;:500,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:130074,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!h7Km!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 424w, https://substackcdn.com/image/fetch/$s_!h7Km!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 848w, https://substackcdn.com/image/fetch/$s_!h7Km!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!h7Km!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9544d559-2aa7-4991-bff8-a643313c210d_500x713.jpeg 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><h1>Make Forecasting Accessible</h1><p>Next to my personal reasons for starting this project (remember, I basically just wanted to prove that certain engineering practices work), another driver was to make the topic of forecasting a bit more accessible. In the weeks before, I did a post on How Monte Carlo Simulations work, which got some attention. I wrote a basic tool in Python to run simulations based on CSV data, but thought that there could be something more accessible and feature rich.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;a4e34492-2795-4962-b481-8564c6047d0c&quot;,&quot;caption&quot;:&quot;Since we started using Monte Carlo Simulations for forecasting instead of estimations with teams we work with, we&#8217;ve gotten several questions about how it works and more importantly what data is needed to run them.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;An Introduction and Step-by-Step Guide to Monte Carlo Simulations&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-08-16T09:28:00.000Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/574cb9c7-0604-440b-b584-15f4b595fe30_720x488.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/an-introduction-and-step-by-step-guide-to-monte-carlo-simulations&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152320302,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><h2>A 15% Forecasting Solution</h2><p>While there were various tools, from spreadsheets to <a href="https://actionableagile.com/">full-fledged Cloud services </a>that integrated into Jira and Azure DevOps, I had the feeling that something was missing. You either get very basic functionality, or you have to pay quite some money for and/or need some high-level access to your systems (to install new plugins in Jira/Azure DevOps).</p><p>At <a href="https://letpeople.work">Let People Work</a>, we discussed this and concluded that there is a gap for a forecasting tool that would allow someone in a big corporation to try out this way of forecasting. It should be a <a href="https://medium.com/the-liberators/trigger-big-change-by-starting-small-with-15-solutions-3d463ff1c38a">15% solution</a>, something that can be tried out without the need to ask for money or permission from anyone. For this, the tool would need to be:</p><ul><li><p>Free to use</p></li><li><p>Open-Source (in case internal IT catches wind of an unauthorized tool they can go and check the code if they want)</p></li><li><p>Run locally (no need to upload to some cloud service that you may not trust)</p></li></ul><p>While we aim to build up services <strong>around</strong> the tool, what we develop shall remain available for the people we had in mind initially.</p><h1>What Have We Learned</h1><p>To wrap up this post, I want to share some of the learnings that we had within the first year of Lighthouse's existence.</p><h2>Technology and Practices</h2><p>I am a Software Engineer by trait, but in my professional developer life, I mainly worked on Desktop Applications (.Net/C#/WPF) before in 2019 I switched towards a full-time Scrum Master role. So Lighthouse was a chance to catch up on all the fancy tech and practices. The following things were new to me (meaning while I knew those things, I haven&#8217;t built something proper beyond a &#8220;Hello-World&#8221; with them) and I learned over the last year while building Lighthouse:</p><ul><li><p><a href="https://dotnet.microsoft.com/en-us/apps/aspnet">ASP.NET Core</a></p></li><li><p><a href="https://learn.microsoft.com/en-us/aspnet/core/razor-pages/?view=aspnetcore-9.0&amp;tabs=visual-studio">Razor Pages</a></p></li><li><p><a href="https://chatgpt.com/">ChatGPT </a>(to write code)</p></li><li><p><a href="https://www.docker.com/">Docker</a></p></li><li><p><a href="https://react.dev/">React</a></p></li><li><p><a href="https://vitest.dev/">vitest</a></p></li><li><p><a href="https://playwright.dev/">Playwright</a></p></li><li><p><a href="https://github.com/features/actions">GitHub Actions</a></p></li><li><p><a href="https://jekyllrb.com/">Jekyll</a></p></li><li><p><a href="https://just-the-docs.com/">Just-The-Docs</a></p></li></ul><p>The engineering practices (TDD, CI/CD) were crucial, as several major refactorings happened within the first year. Having an extensive test suite made this possible without breaking (too many) things in the process.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZlVD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZlVD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 424w, https://substackcdn.com/image/fetch/$s_!ZlVD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 848w, https://substackcdn.com/image/fetch/$s_!ZlVD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 1272w, https://substackcdn.com/image/fetch/$s_!ZlVD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZlVD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png" width="1280" height="1027" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ebf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1027,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:102491,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZlVD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 424w, https://substackcdn.com/image/fetch/$s_!ZlVD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 848w, https://substackcdn.com/image/fetch/$s_!ZlVD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 1272w, https://substackcdn.com/image/fetch/$s_!ZlVD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Febf50be2-3e97-43b2-89d4-483dbada9c9d_1280x1027.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">An early version of Lighthouse</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7rHO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7rHO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 424w, https://substackcdn.com/image/fetch/$s_!7rHO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 848w, https://substackcdn.com/image/fetch/$s_!7rHO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 1272w, https://substackcdn.com/image/fetch/$s_!7rHO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7rHO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png" width="1265" height="906" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:906,&quot;width&quot;:1265,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:114108,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7rHO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 424w, https://substackcdn.com/image/fetch/$s_!7rHO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 848w, https://substackcdn.com/image/fetch/$s_!7rHO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 1272w, https://substackcdn.com/image/fetch/$s_!7rHO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff5321597-79ef-44f5-8dd8-7c6d80f9f00f_1265x906.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Lighthouse with new UI based on React</figcaption></figure></div><h2>Product Management</h2><p>Apart from the technology side of things, we also started to learn things about product management. As people started to use it, we got feedback and feature requests. As the tool is free to use, we&#8217;re spending our free time on it. So as time goes on, we learn about how to best manage stakeholders, we experiment with how we can scale up (maybe having 5 different communication channels isn&#8217;t the smartest idea&#8230;), and what features to really follow up on and what to drop (saying no to things is a lot easier if you work on it on the weekends).</p><h1>Conclusion</h1><p>Lighthouse started as a hobby project for me, trying to catch up with technology and engineering practices. This is something I would recommend to everyone, instead of just claiming some random stuff about how AI will change the industry on LinkedIn, go actually build something and learn while doing it.</p><p>And as we head into <a href="https://en.wikipedia.org/wiki/Super_Bowl_LIX">Super Bowl LIX</a> (go Eagles!), this also means our time will free up again. So try out <a href="https://docs.lighthouse.letpeople.work/">Lighthouse</a>, join our <a href="https://join.slack.com/t/let-people-work/shared_invite/zt-2y0zfim85-qhbgt8N0yw90G1P~JWXvlg">Slack Channel</a>, and help us make your forecasting experience better!</p><p></p>]]></content:encoded></item><item><title><![CDATA[It's all Connected]]></title><description><![CDATA[How to apply Little's Law in Software Engineering]]></description><link>https://blog.letpeople.work/p/its-all-connected</link><guid isPermaLink="false">https://blog.letpeople.work/p/its-all-connected</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Thu, 02 Jan 2025 10:25:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Qi2L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Measuring Flow Metrics is quite simple, supports you in creating transparency about your process, and can help you spot areas for improvement. However, it&#8217;s not always obvious what can be done to improve. That&#8217;s where Little&#8217;s Law comes into play, showing that Flow Metrics influence each other. With this knowledge, we can create better experiments to improve our flow.</em></p><p><em>Read on to learn more about Little&#8217;s Law, what it is good for (and what it is not), and how we can practically apply it.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Qi2L!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Qi2L!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Qi2L!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Qi2L!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Qi2L!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Qi2L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg" width="577" height="433" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:433,&quot;width&quot;:577,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:95929,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Qi2L!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Qi2L!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Qi2L!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Qi2L!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F548be5ff-fde6-4079-a2c4-204d7a602e38_577x433.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h1>What&#8217;s Little&#8217;s Law?</h1><p>Little&#8217;s Law is named after <a href="https://en.wikipedia.org/wiki/John_Little_(academic)">John Little</a>, an American researcher. He was working in the field of Queueing Theory. Little&#8217;s Law is an equation, which takes the following form:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;{\\displaystyle L=\\lambda W}&quot;,&quot;id&quot;:&quot;TWACECMKAY&quot;}" data-component-name="LatexBlockToDOM"></div><p>Where L is the queue length (or <em>Work In Progress</em>), &#955; is the &#8220;arrival rate&#8221;, and W is the Wait Time (or <em>Cycle Time</em>). While the above equation was published by <a href="https://en.wikipedia.org/wiki/Philip_M._Morse">Philip Morse</a>, Little was the first to prove that the law is valid.</p><h1>Kanban and Flow Metrics</h1><p>When we&#8217;re applying Kanban (as defined by the <a href="https://kanbanguides.org/english/">Kanban Guide</a>), we have four measures of Flow:</p><ul><li><p>Work In Progress (WIP)</p></li><li><p>Throughput</p></li><li><p>Cycle Time</p></li><li><p>Work Item Age</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!H3Lw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!H3Lw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png 424w, https://substackcdn.com/image/fetch/$s_!H3Lw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png 848w, https://substackcdn.com/image/fetch/$s_!H3Lw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png 1272w, https://substackcdn.com/image/fetch/$s_!H3Lw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!H3Lw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png" width="564" height="563" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/afee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:563,&quot;width&quot;:564,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:153683,&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;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!H3Lw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png 424w, https://substackcdn.com/image/fetch/$s_!H3Lw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png 848w, https://substackcdn.com/image/fetch/$s_!H3Lw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.png 1272w, https://substackcdn.com/image/fetch/$s_!H3Lw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafee5a9f-e5b5-4e5a-bdd3-d2e77cc32167_564x563.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>With those four metrics, <a href="https://blog.letpeople.work/p/using-flow-metrics-from-feelings-to-facts">we can measure the flow of value through a system</a>. As you can see, the original form of Little&#8217;s Law includes WIP (L) and Cycle Time (W) but not the arrival rate. However, there is another form of Little&#8217;s Law that looks at Throughput (or <em>departure rate</em>).</p><h1>What&#8217;s Little Got To Do With It?</h1><p>When we use <em>departure</em> instead of <em>arrival</em> rate, the equation looks like this:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\text{Average Cycle Time} = \\frac{\\text{Average WIP}}{\\text{Average Throughput}}&quot;,&quot;id&quot;:&quot;WLUSKYBSMA&quot;}" data-component-name="LatexBlockToDOM"></div><p>This puts three of our Flow Metrics in relation to each other, which means we cannot look at one of those three metrics in isolation but have to understand that if one changes, the other two will be affected as well. On the other hand, if we want to adjust one, we can look at how we can change one (or both) of the others to achieve the desired change.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RKYE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RKYE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!RKYE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!RKYE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!RKYE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RKYE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg" width="889" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:889,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:126558,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RKYE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!RKYE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!RKYE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!RKYE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F74ef9336-a7fa-4b62-a6f7-320310ed5d2f_889x500.jpeg 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>Be Aware</h2><p>Before we look in more detail at what the Law is good for and how to apply it, a few words of caution.</p><p>First and foremost, the law (especially in the form of Throughput/Departure Rate) has a set of assumptions that must be fulfilled for it to be valid. Daniel Vacanti wrote <a href="https://www.55degrees.se/post/littles-law-assumptions">an excellent article about this</a> if you want to dive deeper. The summary is that we expect a relatively stable system, where items that are started are also finished and we&#8217;re not accumulating more and more WIP over time.</p><p>Furthermore, the law talks about <strong>averages</strong> of the metrics over some time. In many posts that reference the law, this fact is either implied or simply skipped or forgotten. That fact makes the law not well suited for forecasting the future&#8230;</p><h2>What Is It Good For?</h2><p>You might be inclined to &#8220;plug in your numbers&#8221; into the equation and forecast the future. For example, you might think, that to halve your Cycle Time, you can simply half your WIP while keeping your Throughput stable.</p><div class="pullquote"><p>Plans based on average, fail on average</p></div><p>While I understand the thought, there are several problems with it:</p><ul><li><p>The law applies to historical data, not to future data.</p></li><li><p>You will not be able to tell how your Throughput is affected by this change.</p></li><li><p>The law is based on averages, so it falls victim to the <a href="https://blog.letpeople.work/p/the-flaw-of-averages-comparing-monte-carlo-simulations-with-estimates-based-on-averages-267528ae4f47">Flaw of Averages</a></p></li></ul><p>So if we can&#8217;t use it for making forecasts about the future, what is it good for?</p><p><em>Note: You might also realize that if you plug your historical numbers into the formula, it will not be &#8220;correct&#8221;. This is because most likely one (or more) assumptions of this form of the equation are not fulfilled. I highly recommend <a href="https://www.55degrees.se/post/when-an-equation-isn-t-equal">reading the series from Daniel Vacanti on Little&#8217;s Law </a>for more details.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!U3xJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!U3xJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!U3xJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!U3xJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!U3xJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!U3xJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg" width="500" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:500,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:68435,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!U3xJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!U3xJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!U3xJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!U3xJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb724fab5-efcc-46ca-b8cd-72fb3ce92b6c_500x500.jpeg 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>Instead of forecasting the future, we can use Little&#8217;s Law to identify improvements. It helps us formulate hypotheses and craft experiments that aim to change our Flow Metrics in a given way. The nice thing about this is, that we have the data to see if our experiments worked as we expected. We see how this could work with a concrete example, but first, let&#8217;s do a bit of elementary school math.</p><h2>Solving For X</h2><p>We already saw the most used form of Little&#8217;s Law above:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\text{Average Cycle Time} = \\frac{\\text{Average WIP}}{\\text{Average Throughput}}&quot;,&quot;id&quot;:&quot;OPRWVTKXEB&quot;}" data-component-name="LatexBlockToDOM"></div><p>But we can also adjust it, so we solve it for either average Throughput or average WIP:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\text{Average Throughput} = \\frac{\\text{Average WIP}}{\\text{Average Cycle Time}}&quot;,&quot;id&quot;:&quot;LQILHKWJVC&quot;}" data-component-name="LatexBlockToDOM"></div><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\text{Average WIP} = \\text{Average Cycle Time}\\times\\text{Average Throughput}&quot;,&quot;id&quot;:&quot;BRYHJAEGOM&quot;}" data-component-name="LatexBlockToDOM"></div><p>Depending on which Flow Metric you are most interested in adjusting, you can pick the most useful form.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!wrXl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!wrXl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 424w, https://substackcdn.com/image/fetch/$s_!wrXl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 848w, https://substackcdn.com/image/fetch/$s_!wrXl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!wrXl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!wrXl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg" width="733" height="499" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:499,&quot;width&quot;:733,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:89068,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!wrXl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 424w, https://substackcdn.com/image/fetch/$s_!wrXl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 848w, https://substackcdn.com/image/fetch/$s_!wrXl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!wrXl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4ef8c54d-a50e-4af9-8118-e43fa7fdfa16_733x499.jpeg 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><h1>A Little Less Conversation&#8230;</h1><p>&#8230;a little more action, let&#8217;s dive into how we could apply this knowledge. Imagine this:</p><div class="pullquote"><p>Your Product Manager approaches you and asks for support. She was checking the Flow Metrics and is concerned about the Team&#8217;s Throughput. Thus she&#8217;d like to see what could be done to increase it. She&#8217;s curious if you have concrete ideas on what could be done to improve it.</p></div><p>Let&#8217;s split this exercise into two parts, before we design an experiment, let&#8217;s first think about our Flow Metrics.</p><h2>Impact on Flow Metrics</h2><p>Let&#8217;s bring in the equation with Average Throughput on the left side of the equals sign:</p><div class="latex-rendered" data-attrs="{&quot;persistentExpression&quot;:&quot;\\text{Average Throughput} = \\frac{\\text{Average WIP}}{\\text{Average Cycle Time}}&quot;,&quot;id&quot;:&quot;MMNUUCKTLZ&quot;}" data-component-name="LatexBlockToDOM"></div><p>The throughput depends on WIP and Cycle Time. If we want to increase our Throughput, we have the following options (in no particular order):</p><ul><li><p><em>Decreasing</em> <strong>Cycle Time</strong> while keeping <strong>WIP</strong> <em>stable (or increasing)</em></p></li><li><p><em>Increase</em> <strong>WIP</strong> while keeping <strong>Cycle Time</strong> <em>stable (or decreasing)</em></p></li><li><p><em>Decrease</em> <strong>WIP</strong> while <em>decreasing</em> <strong>Cycle Time</strong> <em>more</em> than you decrease WIP</p></li><li><p><em>Increase</em> <strong>Cycle Time</strong> while <em>increasing</em> <strong>WIP</strong> <em>more</em> than you increase Cycle Time</p></li></ul><p><em>Note that I skipped writing &#8220;Average&#8221; for the sake of readability.</em></p><p>You notice that I always wrote the change for <strong>both</strong>, Cycle Time and WIP. As a change in one will most likely affect both other metrics, I prefer writing down what I&#8217;d like to achieve for both metrics on &#8220;the right side&#8221; of the equation.</p><p>Another thing that you might be wondering about: <em>I could increase WIP and that might lead to a positive change. But I always hear we should limit and lower WIP?</em></p><p>Indeed, if you can manage the effect the increased WIP has on your Cycle Time, that might be a good strategy. This could happen if you are performing below the &#8220;optimum&#8221; of your system, and have too much slack. An example could be that you are &#8220;starving&#8221; the system, so once you close an item, there is no item to be pulled, leading to wasted time for the team. An increased WIP might be useful in such a scenario.</p><p>You can see such a scenario in one of our case studies about <a href="https://blog.letpeople.work/p/limit-work-in-progress-without-work-in-progress-limits-33ee889f661d">Controlling WIP</a>.</p><p>In any case, Little&#8217;s Law does not tell us what is &#8220;good or bad&#8221;, it just shows the relation and gives us the above options if we want to increase our Throughput. So let&#8217;s try to put this to good use.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qU4g!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qU4g!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!qU4g!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!qU4g!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!qU4g!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qU4g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg" width="750" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:750,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:117067,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qU4g!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!qU4g!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!qU4g!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!qU4g!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b715af4-c377-4668-84ea-a5dd52f7de4f_750x500.jpeg 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>Designing Experiments</h2><p>We can now think about various ways to achieve the change in Cycle Time or WIP to increase Throughput. Let&#8217;s look at two examples:</p><h2>Decreasing Cycle Time while keeping WIP stable</h2><p>What the above basically means is to keep the same amount of items in progress, but get them done faster. One way to do this is to look at how you slice your items. Can they be sliced into smaller pieces? Depending on your workflow, this might lead to faster feedback, so you discover potential problems earlier (think about integration issues or early customer feedback). This in turn will support you in getting the items closed faster, in turn decreasing your Cycle Time while keeping WIP the same.</p><div class="pullquote"><p>Can your Work Items be sliced into smaller pieces? </p></div><h2>Increase WIP while keeping Cycle Time stable</h2><p>If you are happy with your Cycle Time, you might consider increasing your WIP and see what happens. Whatever mechanism you use for controlling your WIP, think about allowing a bit more work into your process. Now you might not want to overdo it, and it should still be <strong>controlled</strong>, but it doesn&#8217;t mean you're not supposed to change it ever.</p><p>While the result can be an increase in Cycle Time, it might also help you achieve faster flow. The good thing is that we have the data to check this.</p><h2>Evaluating your Hypothesis</h2><p>Whether you call it hypothesis, improvement action, retrospective outcome, or anything else. Ultimately it&#8217;s just an assumption that when we do <em>X &#8212;&gt; Y</em> will happen. We formulated our experiments based on Little&#8217;s Law, and we can very easily measure if reality matches what we <s>hoped </s>expected would happen.</p><p><strong>If yes, great!</strong> You&#8217;ve successfully applied Little&#8217;s Law. <em>You may give me a shout-out and share your experiment!</em></p><p><strong>If not, great!</strong> You can see what happened instead of what you thought, and based on this either abandon or adjust your experiment. <em>You may give me a shout-out and share your experiment and learnings!</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NXG6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NXG6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NXG6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NXG6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NXG6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NXG6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg" width="500" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:500,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:68158,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NXG6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!NXG6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!NXG6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!NXG6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F63cacfd2-4573-41aa-9557-9d918e765c72_500x500.jpeg 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>Little&#8217;s Law is not magic, it will not solve your problems. But it can be really helpful in identifying what you could do to adjust your process and achieve a better flow.</p><h1>What&#8217;s My Age Again?</h1><p>The attentive reader might have noticed that we only focused on three flow metrics, but there are four of them. What about Work Item Age in all of this? Is this not relevant?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XAfZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XAfZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XAfZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XAfZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XAfZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XAfZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg" width="500" height="500" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:500,&quot;width&quot;:500,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:77165,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!XAfZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 424w, https://substackcdn.com/image/fetch/$s_!XAfZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 848w, https://substackcdn.com/image/fetch/$s_!XAfZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!XAfZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb681bcce-c6f1-42cd-99d3-5df032545cd5_500x500.jpeg 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>You have correctly spotted that Work Item Age (WIA) is not part of  the equation of Little&#8217;s Law. However, it is of great relevance anyway. It is part of the assumptions (check the resources for more details on this). WIA is a leading indicator for Cycle Time. While Throughput and Cycle Time are lagging indicators, WIA gives us an &#8220;early warning&#8221; when items start to age. If your conclusion is that you want to decrease Cycle Time, your experiment will most likely include monitoring and acting upon aging items.</p><div class="pullquote"><p>WIA is a leading indicator for Cycle Time</p></div><p>In my above example, I focused on slicing work items smaller as an experiment. Another option could be to set a new (lower) goal for Cycle Time, monitor the age of all the items, and start to act as soon as an item gets close to this goal (for example by swarming this item till you manage to close it).</p><h1>Conclusion</h1><p>Little&#8217;s Law is incredibly helpful for us if we want to design experiments to improve our flow. By knowing the different forms of the equation, we can understand what must change to achieve the result we would like to have.</p><p>If we&#8217;re designing experiments, we should be aware that both Cycle Time and Throughput are lagging indicators, while Work Item Age is a leading indicator. Moreover, we tend to have some form of control over our WIP, so this is also &#8220;simpler&#8221; to change and allows for more concrete experiments.</p><p>And don&#8217;t forget that for a proper experiment, you should observe what is happening in your process and check if you get the results you expected. And if not, you should adjust accordingly.</p><h1>Resources</h1><p>If you&#8217;d like to use this blog post for an interactive learning session (for example with your team), it&#8217;s available as a template on <a href="https://miro.com/miroverse/littles-law/">Miro</a>.</p><p>I highly recommend reading all posts of Dan Vacanti&#8217;s series about Little&#8217;s Law, but if every minute counts, at least read:</p><ul><li><p><a href="https://www.55degrees.se/post/when-an-equation-isn-t-equal">https://www.55degrees.se/post/when-an-equation-isn-t-equal</a></p></li><li><p><a href="https://www.55degrees.se/post/littles-law-assumptions">https://www.55degrees.se/post/littles-law-assumptions</a></p></li></ul><p></p><p>Below are some existing Blog Posts that we wrote around Flow Metrics, the Flaw of Averages, and Controlling WIP:</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d8505a6f-b503-4075-82b7-d3ed1f485dcb&quot;,&quot;caption&quot;:&quot;Whether you are applying Kanban or not, the four flow measures are a great tool to analyze how well things are flowing through your system. They are easy to measure (most likely you have the data already) and enable continuous improvement.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Using Flow Metrics&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-06-14T09:33:22.000Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/add39ac3-5e83-4bcb-8f35-cdf9b65ffe92_1000x600.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/using-flow-metrics-from-feelings-to-facts&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152320307,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:1,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;3d1327c0-a193-408d-8af7-3757e49213a3&quot;,&quot;caption&quot;:&quot;Some weeks ago, my boss challenged me: Why do we need to run those 10'000 simulations when doing Monte Carlo forecasts? Could we not use the average throughput and get the same result? While he was not rejecting my arguments, he pushed me to prove it with data: Are Monte Carlo Simulations really performing better or is it just the assumption?&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;The Flaw of Averages &#8212; Comparing Monte Carlo Simulations with Estimates based on Averages&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2023-12-22T13:46:43.448Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/69ed1c9f-7678-44ff-b362-4dfb1088da12_800x533.jpeg&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/the-flaw-of-averages-comparing-monte-carlo-simulations-with-estimates-based-on-averages-267528ae4f47&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152320735,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;e0c2b831-268d-491f-9af2-b456366f6a00&quot;,&quot;caption&quot;:&quot;A Case Study of using Total Work Item Age as WIP Control Mechanism&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;Limit Work in Progress without Work In Progress Limits&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null},{&quot;id&quot;:292493250,&quot;name&quot;:&quot;Lorenzo Santoro&quot;,&quot;bio&quot;:&quot;I like pushing my limits.&quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4e0a961-00a5-4120-8f18-7abb41e49607_3542x3542.jpeg&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2024-05-29T18:06:44.469Z&quot;,&quot;cover_image&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9caca6f7-e7ad-4d3e-a854-6a3504b4c1a7_800x443.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/limit-work-in-progress-without-work-in-progress-limits-33ee889f661d&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152320717,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p></p><p>Special thanks to <a href="https://imgflip.com/">https://imgflip.com/</a> for providing me with all the Meme Templates.</p>]]></content:encoded></item><item><title><![CDATA[Kaboom or Bust]]></title><description><![CDATA[How we applied Kanban and Obeya Principles to increase Transparency in our Military Unit]]></description><link>https://blog.letpeople.work/p/kaboom-or-bust</link><guid isPermaLink="false">https://blog.letpeople.work/p/kaboom-or-bust</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Sun, 15 Dec 2024 07:58:46 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>When you think about Kanban, Flow, and Obeya, a group of people wearing camouflage uniforms might not be the first thing that pops into your head. Following up on a learning from a past exercise, we ran an experiment using those tools &amp; principles recently within the military unit I&#8217;m serving.</p><p>In this post, I&#8217;ll explain how this came to be, how well it worked, and what we learned from it.</p><p>But first, let&#8217;s explain shortly how I ended up serving in the military in the first place&#8230;</p><div><hr></div><p><em>The post uses some military terms that I often hear only in German and that don&#8217;t translate well (because they are somewhat military-specific and not used anywhere else I&#8217;m aware of). I do my best to describe it, but occasionally I&#8217;ll also mention the German word (or abbreviation). Sadly there is no easy translator from &#8220;Military German&#8221; to &#8220;Military English&#8221;&#8230;</em></p><div><hr></div><h1>Military Service in Switzerland</h1><p>In Switzerland, there is a <a href="https://en.wikipedia.org/wiki/Militia_System">militia system</a> that spans from politics to the army and other areas. While some of it is voluntary, there is a mandatory obligation to join the Swiss Armed Forces or alternative services like civil service for every male Swiss citizen. This means, most units are made up of people that have regular occupations and are called up for military service at regular intervals. After basic training that lasts roughly 6 months and is done at around 20 years of age, you serve in a unit and spend roughly three weeks each year until you&#8217;ve served all the time you owe to the state. The number of days you owe depends on the rank - I&#8217;m a sergeant and have to serve a total of 400 days (25 days pending at the time of writing).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!__xm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!__xm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 424w, https://substackcdn.com/image/fetch/$s_!__xm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 848w, https://substackcdn.com/image/fetch/$s_!__xm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!__xm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!__xm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg" width="1000" height="451" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:451,&quot;width&quot;:1000,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!__xm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 424w, https://substackcdn.com/image/fetch/$s_!__xm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 848w, https://substackcdn.com/image/fetch/$s_!__xm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!__xm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0afd2958-1fe8-4962-a0db-bc972256f9da_1000x451.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Soldiers wearing this insignia belong to the militia part of the Swiss army.</figcaption></figure></div><h1>The National Emergency Operations Centre (NEOC)</h1><p>The unit I serve in supports the <a href="https://www.naz.ch/en">National Emergency Operations Centre</a> (short called &#8220;NEOC&#8221; or, in German, &#8220;NAZ&#8221;). The NEOC is a civil organization that is part of the <a href="https://www.babs.admin.ch/en">Federal Office for Civil Protection</a> (FOCP).</p><blockquote><p><em>The main task of the NEOC consists in maintaining an overview of the situation which is relevant for protecting the population.</em></p><p><em>In the event of incidents involving radioactivity, major chemical accidents, dam ruptures and natural hazards, the NEOC takes on additional tasks. As far as radioactivity is concerned, the centre is authorised to implement immediate measures to protect the population.</em></p></blockquote><p>Being a civil organization means that there are non-military people who have regular jobs at the NEOC. In case of a large-scale event (issues in nuclear power plants, earthquakes, etc.), they are supported by <a href="https://www.naz.ch/en/naz/stab.html">military staff</a>:</p><blockquote><p><em>NEOC has a personnel pool at its disposal consisting of well-trained, qualified specialists who are ready for deployment within four to six hours of an incident.</em></p></blockquote><p>The military staff trains with the civil organization three times a year, to make sure that the processes and tools are well understood, as in case of an emergency, we have to be operational within hours.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BZ3h!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BZ3h!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BZ3h!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BZ3h!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BZ3h!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BZ3h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg" width="1202" height="800" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:800,&quot;width&quot;:1202,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BZ3h!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BZ3h!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BZ3h!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BZ3h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09f29280-39f0-4b88-88af-046aa80ea149_1202x800.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">One of the main operating rooms of the NEOC in Bern - Image Source: <a href="https://www.mediathek.admin.ch/media/image/similarassets/6c74943c-6ddb-44a6-810f-64a261a16004/2619bf23-6fdb-4707-b8a1-ad2a1b08530b">https://www.mediathek.admin.ch/media/image/similarassets/6c74943c-6ddb-44a6-810f-64a261a16004/2619bf23-6fdb-4707-b8a1-ad2a1b08530b</a></figcaption></figure></div><h2>Operations Unit / FGG3</h2><p>The NEOC is split into various &#8220;departments&#8221; that have different responsibilities. For simplicity, I will refer to them as units.</p><p><em>In German, they are called &#8220;F&#252;hrungsgrundgebiet&#8221; or &#8220;FGG&#8221; (and you might see the term in some pictures below).</em></p><p>I am part of the &#8220;Operations&#8221; unit (FGG3), which is responsible for the various processes we have, preparing warnings and alarms, and triaging incoming messages to the NEOC.</p><p><em>If this sounds interesting, you can apply to do your service at NEOC, you can find more information about the process to <a href="https://www.naz.ch/downloads/de/Merkblatt%20Dienst%20im%20Stab%20BR%20NAZ_de.pdf">apply online</a> (only available in German).</em></p><p>In case of an emergency, all units will have representatives (civil and military) in a main operations room, while the bulk of the military personnel will work from a &#8220;back office&#8221; (BO).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2gm_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2gm_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2gm_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2gm_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2gm_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2gm_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg" width="570" height="380" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:380,&quot;width&quot;:570,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2gm_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 424w, https://substackcdn.com/image/fetch/$s_!2gm_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 848w, https://substackcdn.com/image/fetch/$s_!2gm_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!2gm_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe11cfb2c-161c-497e-a621-e4f715fc6373_570x380.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The main operations room in a bunker facility - Image Source: <a href="https://blog.alertswiss.ch/de/gefahren-kennen/unfall-kernkraftwerk/gnu15-impressionen-naz/">https://blog.alertswiss.ch/de/gefahren-kennen/unfall-kernkraftwerk/gnu15-impressionen-naz/</a></figcaption></figure></div><p>In operations, we have various &#8220;stations&#8221; as we have to create different &#8220;products&#8221; (documents for supporting the decision-making), send out alarms to warn the general public, and make sure we distribute information on all relevant channels so other units and affected authorities (like police, local government representatives, etc.) are informed.</p><p>In the back office, we get tasks from the unit leader after they talk through them with the other units. While we know what kind of warnings eventually have to be sent out (it&#8217;s a pretty well-defined process in most cases), various factors influence the content (magnitude of an event, weather, etc.). In the back office, the work is done by a subset of the unit, as an event might take several days to weeks, and the work is done in shifts.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!46b1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!46b1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 424w, https://substackcdn.com/image/fetch/$s_!46b1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 848w, https://substackcdn.com/image/fetch/$s_!46b1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!46b1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!46b1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg" width="580" height="796" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:796,&quot;width&quot;:580,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!46b1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 424w, https://substackcdn.com/image/fetch/$s_!46b1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 848w, https://substackcdn.com/image/fetch/$s_!46b1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!46b1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F26f8864d-ae82-4d3e-b575-5dce5ecc0321_580x796.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Discussion between civil and military personnel of the operations unit - Image Source: <a href="https://blog.alertswiss.ch/de/rubriken/uebungen/wenn-alles-gleichzeitig-kommt-nationale-alarmzentrale-uebt-einsatzverfahren-mit-teilstaeben/">https://blog.alertswiss.ch/de/rubriken/uebungen/wenn-alles-gleichzeitig-kommt-nationale-alarmzentrale-uebt-einsatzverfahren-mit-teilstaeben/</a></figcaption></figure></div><h1>Learnings from our Service</h1><p>In September 2024, we had a week of service where we did a two-day training exercise. While in general, it went well, there were a few points that were raised during our review and feedback session.</p><p>There was some confusion about the progress respectively the state of some of the tasks. If we send out warnings or alarms to the public, they must go through a more rigid verification process, where two other people have to check and confirm that everything is correct (you don&#8217;t want to set off alarms or evacuate towns for no reason&#8230;). If this takes time, it&#8217;s very easy to forget about those tasks:</p><ul><li><p>Is it being reviewed right now? Or was it already?</p></li><li><p>Has it come back for some adjustments?</p></li><li><p>Have we sent it out yet?</p></li></ul><p>When certain decisions are taken, the inflow of tasks can be high, and often many things are needed (it goes without saying that all of it should be done as fast as possible). It has happened that some tasks simply were &#8220;lost&#8221;. Sometimes tasks come in via phone, via digital systems, or via someone just walking from the main operations room to the back office. Combine that with shift changes and you can easily &#8220;lose&#8221; a task.</p><p>Some processes require a confirmation from another party before they are &#8220;done&#8221;. It&#8217;s easy to think that the work is completed with the first part, and we might never get the confirmation. And while everything is documented in a wiki, in stressful situations you probably will forget that you need a confirmation and simply move on.</p><h1>Transparency</h1><p>While in my professional life, I mainly deal with teams that work in software development, I&#8217;ve come across such issues before: We were missing transparency. Transparency about what is ongoing, what is waiting to be picked up, and what is already done. I assumed that with more transparency, we&#8217;d be able to inspect and make sure:</p><ul><li><p>We know each task we&#8217;re currently working on (and who is working on it)</p></li><li><p>We know where in the process each task is</p></li><li><p>We know the dedicated steps for each task</p></li></ul><p>And with this, we could also take better action on what to focus on. Instead of &#8220;just executing&#8221;, it should allow us to self-organize the work in the back office. Instead of micromanaging, we collect what needs to be done, and let people work on it how it best fits them.</p><div class="pullquote"><p><em>Transparency enables inspection. Inspection without transparency is misleading and wasteful. - <a href="https://scrumguides.org/scrum-guide.html">Scrum Guide</a></em></p></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!TSYB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!TSYB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 424w, https://substackcdn.com/image/fetch/$s_!TSYB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 848w, https://substackcdn.com/image/fetch/$s_!TSYB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 1272w, https://substackcdn.com/image/fetch/$s_!TSYB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!TSYB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png" width="700" height="698" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:698,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!TSYB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 424w, https://substackcdn.com/image/fetch/$s_!TSYB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 848w, https://substackcdn.com/image/fetch/$s_!TSYB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 1272w, https://substackcdn.com/image/fetch/$s_!TSYB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F044e87ec-614f-4ae3-a0b4-7f7fefa75fc1_700x698.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The three pillars of empiricism - Image Source: <a href="https://medium.com/the-liberators">The Liberators</a></figcaption></figure></div><h1>Kanban Board</h1><p>The proposal was made to create a Kanban Board where we could track our tasks through a defined workflow. Each card on the board would represent a task and could have details for this specific task written on it. That should help guide the people who take up the task and make sure we know what to do and where we are in the process.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8gcp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8gcp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 424w, https://substackcdn.com/image/fetch/$s_!8gcp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 848w, https://substackcdn.com/image/fetch/$s_!8gcp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!8gcp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8gcp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg" width="899" height="798" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:798,&quot;width&quot;:899,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:172183,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8gcp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 424w, https://substackcdn.com/image/fetch/$s_!8gcp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 848w, https://substackcdn.com/image/fetch/$s_!8gcp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!8gcp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F02392f24-0dd7-4420-95f7-3e6fc63429b8_899x798.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The sketch of how a potential board could look like - created after our feedback session</figcaption></figure></div><h1>Kanban Definition</h1><p>Before I go on and share how this was put into practice, let me quickly share what I mean when I talk about Kanban. I&#8217;m using the definition as described in the <a href="https://kanbanguides.org/english/">Kanban Guide</a>:</p><blockquote><p><em>Kanban is a strategy for optimizing the flow of value through a process that uses a visual, pull-based system.</em></p></blockquote><p>So we want to optimize the flow of value, where flow means &#8220;<em>the speed and smoothness of the delivery</em>&#8221;.</p><blockquote><p><em>Good flow feels like a well-oiled machine. The Kanban system members enjoy a sense of calm and get more work done with minimal stress. - </em><a href="https://kanbanguides.org/wp-content/uploads/2020/10/Definitions-for-Kanban-Guide-1-1.pdf">Definitions for Kanban Guide</a></p></blockquote><p>To do this, we planned on introducing a &#8220;Kanban Board&#8221;. This is a visual representation of a workflow. As the goal is transparency, it should be accessible to the Kanban system members at all times.</p><h1>Preparation&#8230;or lack thereof</h1><p>Our next service was planned for November 2024, two months after we concluded we wanted to give the Kanban board a try. This specific service was special, as we were part of a big exercise (<a href="https://www.admin.ch/gov/de/start/dokumentation/medienmitteilungen.msg-id-102972.html">Gesamtnotfall&#252;bung 2024</a>) that happens only every two years and where national and international partners take part (for example the national grid operator Swissgrid, the nuclear power plant in G&#246;sgen, the Swiss federal railways, the Swiss Federal Nuclear Safety Inspectorate, and more).</p><p>In light of this, we could not afford to take time and train everyone for one or two days on the new approach. When most of the staff would arrive, the exercise would be in full swing already (it&#8217;s part of the exercise that the military staff is called upon during the exercise, as it would happen in a real event). At the same time, there is no better way to try this out, it won&#8217;t get any closer to a real event than this.</p><p>Two of us were invited a day before the start of the exercise to prepare the basics, but we had to keep it simple. We decided to go with a minimal approach and did the following:</p><ul><li><p>Design a board that has all the relevant information needed for people to see who is around and what&#8217;s going on</p></li><li><p>Design a workflow that should fit our purpose but is not overly complex (we had no time to elaborate on explicit policies or complicated WIP control strategies)</p></li><li><p>Prepare a template for the Kanban Cards and some pre-filled Cards that we knew we&#8217;d need (as the scenario is quite standardized this was possible) so we have a starting point but also have the flexibility to capture things we could not yet think about</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ERuK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ERuK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ERuK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ERuK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ERuK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ERuK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg" width="1200" height="1600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1600,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ERuK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ERuK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ERuK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ERuK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa665a01f-9956-4425-875f-1625c69a4bce_1200x1600.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The first version of our Kanban Board</figcaption></figure></div><p>On the top right, you can see our shift plan and below the names of the individual people, split by who is currently &#8220;active&#8221; and who is &#8220;inactive&#8221;. We created transparency about two specific roles as the &#8220;Chief Back Office&#8221; is the point of contact and it has to be known whom to talk to, as well as another role (&#8220;ASNAZ&#8221;) that happens to be in a dedicated room (so it&#8217;s good to know who is there as you can&#8217;t see them).</p><p>We also highlighted important dates (when is the next &#8220;situation report&#8221; and when do our products have to be updated) which should inform everyone working in the back office.</p><p>In the middle part, you can see the workflow, which looks like this &#8220;To Do&#8221; &#8594; &#8220;Waiting for Information&#8221; &#8594; &#8220;Processing&#8221; &#8594; &#8220;Product Update &amp; Storage&#8221; &#8594; &#8220;Done&#8221;</p><p>At the bottom, you can see the Kanban Cards ordered by categories that made sense for the event, as well as some &#8220;blank&#8221; cards for anything we did not foresee.</p><p>We assumed that this was &#8220;clear enough&#8221; that we could get started without much introduction, while still providing enough value. We were also very much aware that this was far from perfect, but it was not worth putting more effort into - instead, we should inspect and adapt in the coming days.</p><h2>Obeya</h2><p>You might have noticed that the above is not showing &#8220;just&#8221; a Kanban board, but has more information visualized. We implicitly applied ideas from &#8220;Obeya&#8221;:</p><blockquote><p>An Obeya is a physical or digital workspace where strategy meets execution. Typical about Obeya is that it guides both behavior as well as a work environment design. It creates a so called &#8220;single source of truth&#8221;. - <a href="https://obeya-association.com/">Obeya Association</a></p></blockquote><p>In short, the idea is to visualize everything that is needed for the people that work with Obeya so they can make decisions as independently as possible. You can find more information about Obey on the homepage of the <a href="https://obeya-association.com/">Obey Association</a>.</p><p>For the rest of the post, whenever I refer to Kanban, be aware that implicitly I also mean the Obeya concept.</p><h1>Experience During The Exercise</h1><p>When I arrived at our back office, a few people were already there, but we were not yet operational. Here the board helped a first time - we could tag who is already around (independent of which shift they are in) as well as look at the predefined cards. By going through them, we could in a more structured way try to understand what has already happened and what we should start to take over (the civil employees might have done some of the work already, and the cards helped us to &#8220;transfer&#8221; the knowledge).</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!j1Hv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!j1Hv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 424w, https://substackcdn.com/image/fetch/$s_!j1Hv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 848w, https://substackcdn.com/image/fetch/$s_!j1Hv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!j1Hv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!j1Hv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg" width="1080" height="340" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:340,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!j1Hv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 424w, https://substackcdn.com/image/fetch/$s_!j1Hv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 848w, https://substackcdn.com/image/fetch/$s_!j1Hv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!j1Hv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F082e5e44-2134-4cc7-8c52-4e617be52b00_1080x340.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The message telling us the exercise has started and we should go to our meeting point in Bern</figcaption></figure></div><p>During the first day, the acting &#8220;Chief Back Office&#8221; (CBO) started to familiarize themselves more with what works (and what doesn&#8217;t work). For example, it was not clear:</p><ul><li><p>Whether everyone should update the board or it&#8217;s just the CBO that does this.</p></li><li><p>For what we needed a card and what we can simply do.</p></li><li><p>When/if a card should move backward.</p></li></ul><p>But overall, the feedback from the group was positive, the board and process seemed to help. And often you could find someone studying the board.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uPq5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uPq5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!uPq5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!uPq5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!uPq5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uPq5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg" width="1200" height="1600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1600,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!uPq5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!uPq5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!uPq5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!uPq5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9ebff91f-a8dd-4663-84c9-d749edeca57a_1200x1600.jpeg 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>We also had some early learnings and made some adjustments:</p><ul><li><p>We very quickly ran out of space in the &#8220;Done&#8221; column, but also wanted to keep the cards (as they are a great artifact for reflection later on). Also, we wanted to see the done items we recently closed (that is valuable information as well), so we simply added an envelope and stored the done items once we ran out of space.</p></li><li><p>Some people might not be available (due to a leave of absence, having lunch, etc.). We indicated this by turning their names upside down.</p></li><li><p>We also have three specific products, which have to be updated for the situation reports. Indicating who is taking care of them on the board helped to make things more clear.</p></li></ul><p>During day two of the exercise, the board looked like this:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MXD5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MXD5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!MXD5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!MXD5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!MXD5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MXD5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg" width="1200" height="1600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1600,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MXD5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!MXD5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!MXD5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!MXD5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7cdbeafb-a03f-4541-a965-3f2c1b3710cf_1200x1600.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">The second iteration of our board with adjustments made during the exercise</figcaption></figure></div><p>As you can see, a lot more stuff started to happen, and the board proved to be a great radiator of information. It helped the CBO keep an overview, and also make sure we&#8217;re following up on our tasks. One example was that we were tasked to organize a briefing for an external group. However, right after that, the situation escalated and lots of more important things came up. It took us till the next day to finally follow up on this task. Without having it on the board, we most likely would not have remembered to eventually follow up on this.</p><h1>Learnings after the Exercise</h1><p>After two days of exercise (which went rather well), the feedback on the approach with the Kanban board was rather positive. It helped &#8220;track things to closure&#8221; organize the work, and in general keep a good overview.</p><p>Having the board also uncovered some dysfunctions - mainly outsiders &#8220;walking in and walking up&#8221; to people in our back office and giving them tasks. This became visible because it was not clear whether cards should be added, whether should we work on this now, etc. This has triggered a discussion about who is making tasks available, who should be &#8220;accepting&#8221; them etc. which is something we will have to clarify going forward.</p><p>While this is not &#8220;Kanban by the Guide&#8221;, it was very useful. Going for a simplistic approach made sense, given the constraints we had: No real preparation time, no time to train anyone, and also it has to be clear that this way of working might be new to some.</p><p>Our unit is diverse, not everyone works in Software Development where &#8220;Kanban&#8221; might be a common term and easily understood. Someone even referred to it as &#8220;Kaboom&#8221; instead of &#8220;Kanban&#8221;. This sparked the inspiration to name the whole process (and the title of this blog post): The &#8220;Kanban Back Office Operating Model&#8221;, or &#8220;KABOOM&#8221; in short.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zo94!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zo94!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zo94!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zo94!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zo94!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zo94!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg" width="1200" height="1600" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1600,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zo94!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 424w, https://substackcdn.com/image/fetch/$s_!zo94!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 848w, https://substackcdn.com/image/fetch/$s_!zo94!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!zo94!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48d20d9f-d841-4874-a52e-76e4a8dfc5ae_1200x1600.jpeg 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>Having predefined cards ready for events that have a defined process is extremely helpful, as when we are there for an emergency, they are a great guide. However, we noticed that we can put more guidance on the card itself (think of them like &#8220;predefined subtasks&#8221; that we know we have to do for specific actions). Also, we decided to simplify the workflow, as it turned out that two of the stages were not providing value, and instead capturing some of the steps needed (if they are needed for a given task) on the card itself, reducing the workflow to &#8220;To Do&#8221; &#8594; &#8220;Processing&#8221; &#8594; &#8220;Done&#8221;.</p><p>On the cards, we also introduced a step in which we <a href="https://blog.letpeople.work/p/you-dont-need-a-retrospective-to-inspect-and-adapt-your-effectiveness-70dd67bb7dc0">capture &#8220;lessons learned&#8221;</a> before we set anything to done. Having this happening &#8220;in the moment&#8221; is a great practice, as often we will forget as time goes on, even if we reflect just a day or two later. But having the cards and some space to write things down as we just worked on it will make sure we&#8217;re capturing as much as we can.</p><p>The adjusted cards are now stored in our KABOOM envelope. And while we hope we never need it, if it ever comes to it, we simply can grab it and are set up in a matter of minutes.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;82b64152-232b-4934-bb26-32280d9b1fe5&quot;,&quot;caption&quot;:&quot;Most teams that I have worked with run retrospectives. Usually, they are held at the end of their iteration. After doing the same for some time, we wondered if there is a more continuous way of inspecting and adapting.&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;lg&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;You don&#8217;t need a Retrospective to Inspect and Adapt your Effectiveness&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:116472301,&quot;name&quot;:&quot;Benjamin Huser-Berta&quot;,&quot;bio&quot;:null,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad582364-2260-4c0a-9a02-3967c3bdbd32_664x664.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2023-05-29T16:05:28.315Z&quot;,&quot;cover_image&quot;:&quot;https://cdn-images-1.medium.com/max/800/1*RkziIvq_mZYSTfsYY_amuw.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://blog.letpeople.work/p/you-dont-need-a-retrospective-to-inspect-and-adapt-your-effectiveness-70dd67bb7dc0&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:152320753,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;Let People Work&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff674c5cb-422b-49bb-87b4-a2b91102eda7_1181x1181.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Another interesting aspect was the &#8220;Chief Back Office&#8221; and the active shift might use it in different ways. Some might prefer to have more &#8220;fixed stations&#8221;, while others might use a more flexible approach. This could also depend on the current situation. The great thing is, that the KABOOM will give you flexibility so people can focus on the work and decide how they want to work. Some might call that agility, but I&#8217;d say just give people the information they need and let them focus on the work to be done.</p><h1>What&#8217;s Next</h1><p>Our next service is in March 2025 (and hopefully we don&#8217;t have to meet earlier&#8230;). The plan is to further refine the KABOOM and also take some time to elaborate on the different elements as there is no big exercise planned.</p><p>There is also the question of whether the board should be physical or if a digital version could be more useful. I&#8217;m a fan of a physical board, but there are some advantages of a digital one (for example the team in the main operation room could see it) and we might investigate the possibility of it.</p><p>Last but not least, being a nerd for numbers, I&#8217;m curious if there would be any value in capturing the flow metrics. I&#8217;m undecided on this, both because I would not know how to best capture it and in general if it would provide value, but it might be worth an experiment.</p>]]></content:encoded></item><item><title><![CDATA[Why you should compare metrics of different Teams with each other]]></title><description><![CDATA["This data is internal to the team, you should not share this or use it to compare different teams".]]></description><link>https://blog.letpeople.work/p/why-you-should-compare-metrics-of-different-teams-with-each-other</link><guid isPermaLink="false">https://blog.letpeople.work/p/why-you-should-compare-metrics-of-different-teams-with-each-other</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Sat, 28 Sep 2024 11:37:05 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/88c9a127-159f-46df-8d70-a70d2353f23d_1000x666.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>"This data is internal to the team, you should not share this or use it to compare different teams". I've often heard of sentences like this and agreed to it for most of my career as a Scrum Master. Somehow we're all about transparency, except when it comes to metrics. Eventually, this did not make sense to me anymore and I started to challenge this view.</em></p><p>In this post, I'd like to share a different perspective, show how teams can profit from transparency around metrics, and what you need to get started.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sB-8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sB-8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 424w, https://substackcdn.com/image/fetch/$s_!sB-8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 848w, https://substackcdn.com/image/fetch/$s_!sB-8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 1272w, https://substackcdn.com/image/fetch/$s_!sB-8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sB-8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Will a Metrics Dashboard solve our Problems?&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="Will a Metrics Dashboard solve our Problems?" srcset="https://substackcdn.com/image/fetch/$s_!sB-8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 424w, https://substackcdn.com/image/fetch/$s_!sB-8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 848w, https://substackcdn.com/image/fetch/$s_!sB-8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 1272w, https://substackcdn.com/image/fetch/$s_!sB-8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf0c03a2-fe0a-4676-930f-aacc400f0391_1000x666.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><h2>What's usually being compared?</h2><p>The metric I've encountered most in such a discussion was Velocity, defined as <em>Story Points closed per unit of time (for example per Sprint)</em>, often in the context of "How much can we get done"?</p><p>When the debate about comparing teams came up, it was usually to answer those questions:</p><ul><li><p>Why is this team performing better (meaning more Story Points are getting closed) than others?</p></li><li><p>Why is this team planning better (meaning the team is "closer" to completing the planned amount of work) than other teams?</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_DR8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_DR8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 424w, https://substackcdn.com/image/fetch/$s_!_DR8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 848w, https://substackcdn.com/image/fetch/$s_!_DR8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 1272w, https://substackcdn.com/image/fetch/$s_!_DR8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_DR8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Velocity Chart from Jira&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="Velocity Chart from Jira" srcset="https://substackcdn.com/image/fetch/$s_!_DR8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 424w, https://substackcdn.com/image/fetch/$s_!_DR8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 848w, https://substackcdn.com/image/fetch/$s_!_DR8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 1272w, https://substackcdn.com/image/fetch/$s_!_DR8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f98c4f1-1956-46f2-968f-a1124f15d285_626x374.png 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><p>Other metrics that I've seen being used to compare were:</p><ul><li><p>Number of defects open/found</p></li><li><p>"Code Quality" measures like test coverage, code smells, etc.</p></li></ul><p>Often these numbers needed to be reported somewhere, accompanied by a semaphore indicating whether we are "green", "amber", or "red" against some arbitrary target (80% code coverage, anyone?).</p><h2>Why is this a problem?</h2><p>Whenever someone would suggest comparing the above metrics across teams, my knee-jerk reaction would be to block and explain why this is a bad idea:</p><ol><li><p>The context of my team is different, thus it does not make sense to compare this.</p></li><li><p>Whoever sees this metric doesn't know that the context is different. They will wonder why we are "worse" than other teams, and start to punish the team in some form.</p></li><li><p>The team is smart and knows that, so they will start to game the metric, making it useless not only for people asking for it but also for the team themselves.</p></li></ol><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!SOd1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!SOd1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 424w, https://substackcdn.com/image/fetch/$s_!SOd1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 848w, https://substackcdn.com/image/fetch/$s_!SOd1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 1272w, https://substackcdn.com/image/fetch/$s_!SOd1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!SOd1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;My context is different than yours, so we should not be compared&quot;,&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="" title="My context is different than yours, so we should not be compared" srcset="https://substackcdn.com/image/fetch/$s_!SOd1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 424w, https://substackcdn.com/image/fetch/$s_!SOd1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 848w, https://substackcdn.com/image/fetch/$s_!SOd1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 1272w, https://substackcdn.com/image/fetch/$s_!SOd1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2dab71e-08c2-4275-8c2f-4dbe4de68a77_1000x750.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Now those problems are real, and I've seen this happening. So why would I suggest to compare teams and metrics anyway?</p><h2>It's all about the Targets...</h2><p>Let's start with the last point above, which is the fact that teams will game the metric. You might have heard of <a href="https://en.wikipedia.org/wiki/Goodhart%27s_law">Goodhart's Law:</a></p><blockquote><p>When a measure becomes a target, it ceases to be a good measure</p></blockquote><p>If arbitrary targets are set across the company, it usually doesn't take long and teams start to figure out a way to reach that target.</p><blockquote><p>"What if we exclude these parts from the test coverage, they are legacy and we can't test them, so it's not making sense to include them..."</p></blockquote><p>While it probably comes with a good intention, such targets undermine continuous improvement efforts. Instead of having transparency about where teams stand, you can't trust the data anymore. So even for the team itself, assessing how they are doing might not be possible.</p><blockquote><p>"Hey, this bug actually somewhat is like a feature request in a way, so let's track this differently...".</p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dgbz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dgbz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 424w, https://substackcdn.com/image/fetch/$s_!Dgbz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 848w, https://substackcdn.com/image/fetch/$s_!Dgbz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 1272w, https://substackcdn.com/image/fetch/$s_!Dgbz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dgbz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;It's about the targets&quot;,&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="" title="It's about the targets" srcset="https://substackcdn.com/image/fetch/$s_!Dgbz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 424w, https://substackcdn.com/image/fetch/$s_!Dgbz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 848w, https://substackcdn.com/image/fetch/$s_!Dgbz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 1272w, https://substackcdn.com/image/fetch/$s_!Dgbz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe0b0ca5e-1eff-4365-9c76-6ba41adc0a0c_1000x628.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>What I've seen work is to look at trends over time instead of "hard numbers". This brings several benefits:</p><ul><li><p>It takes the context of the team into account. No matter if you right now have 200 or 3 open defects, 85% or 29% code coverage, you can track if you're improving over time.</p></li><li><p>If you look at it over time, you can better deal with the natural variability. Your defect count might spike once for some reason, but over time you should be able to keep it stable or reduce it.</p></li></ul><p>These "relative improvement targets" should then keep the context of the team into account. For example, if you use a tool to track "code smells" (like <a href="https://www.sonarsource.com/products/sonarcloud/">SonarCloud</a>), instead of saying you should have 0 smells (or less than 1000, or any other random number someone thinks of...), look at how you can prevent new smells from entering your code base, and continuously work to reduce the current issues. Sometimes you might still introduce a smell, and that's an opportunity to improve your process.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gmWx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gmWx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 424w, https://substackcdn.com/image/fetch/$s_!gmWx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 848w, https://substackcdn.com/image/fetch/$s_!gmWx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 1272w, https://substackcdn.com/image/fetch/$s_!gmWx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gmWx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Code Smells over 6 months&quot;,&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="" title="Code Smells over 6 months" srcset="https://substackcdn.com/image/fetch/$s_!gmWx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 424w, https://substackcdn.com/image/fetch/$s_!gmWx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 848w, https://substackcdn.com/image/fetch/$s_!gmWx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 1272w, https://substackcdn.com/image/fetch/$s_!gmWx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4ecb6ca-0c43-4254-9676-32f2cc715a4f_509x157.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This will have a more sustainable impact than forcing to get to 0, as it will lead to rules being disabled (no rule, no issue...), or code being excluded from the analysis. Some might say that teams can still game those numbers. I agree with that, but in my experience, it's a lot easier to explain that our goal is to eventually be at 0 code smells, but for now, we're targeting to not introduce any new ones and clean up existing ones as we go, than simply saying "make it to 0 or else".</p><p>Now if you compare various teams, and see that one team manages to get down quicker, you might ask what they are doing differently (maybe they simply prioritize this work, or they have better tooling...). If you see a team where the issues are continuously rising, you should probably also ask what's going on with this team, and how this team can be supported.</p><h2>...And The Metrics</h2><p>Next to the targets, you should also make sure that the metric itself makes sense. As mentioned, I've often seen that estimates respectively plans based on estimates are compared. Estimates are guesses by nature, they are not meant to be accurate. If you start comparing teams based on their accuracy, what most likely will happen is that estimates are being blown up. Instead of a "5", this now becomes an "8" or "13", just to be safe.</p><p>If you can play with your metrics like this "at will", I would argue that it's not a good metric, and you should not track it. <em>While I'm not a fan of using estimations like Story Points at all, you might still find them useful as a tool for discussion. Just don't use it for anything else.</em></p><p>Instead, use something comparable across teams. Code coverage and the number of defects work better for this because you can clearly define what it means. Instead of estimates, I would propose to use <a href="https://www.letpeople.work/post/using-flow-metrics-from-feelings-to-facts">Flow Metrics</a>, as they will give you information about the flow of each team that you can compare with each other.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1q6h!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1q6h!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 424w, https://substackcdn.com/image/fetch/$s_!1q6h!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 848w, https://substackcdn.com/image/fetch/$s_!1q6h!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 1272w, https://substackcdn.com/image/fetch/$s_!1q6h!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1q6h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Cycle Time Scatterplot&quot;,&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="" title="Cycle Time Scatterplot" srcset="https://substackcdn.com/image/fetch/$s_!1q6h!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 424w, https://substackcdn.com/image/fetch/$s_!1q6h!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 848w, https://substackcdn.com/image/fetch/$s_!1q6h!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 1272w, https://substackcdn.com/image/fetch/$s_!1q6h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2a84136a-28dd-43e9-97e9-b69645669f74_740x444.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>For example, we can look at the 70th percentile of the Cycle Time over the last 3 months. If you see a team that has considerably lower Cycle Times, that's an opportunity to learn. How are they breaking down work? How do they collaborate to get to done as fast as possible?</p><p>Try to refrain from metrics that are not comparable and highly dependent on the team like estimations, and instead look at more "neutral" data. That doesn't mean the numbers will not be different based on the context, but it will allow you to be curious about what they are doing differently, as it's not just "subjective" to the team.</p><h2>Context Matters - But is not an Excuse for not Improving</h2><p>Yes, teams have different skill levels and work on different technology stacks. The culture differs from company to company. However, why would this stop you from looking at how others are doing, and thinking about what they are doing differently if they seem to perform better?</p><p>Why would we not want to learn what this other team in our company is doing differently? Maybe it doesn't apply to us, but maybe it does.</p><p>Instead of "protecting" the team, we should actively look for ways to improve. It's easy to say "Oh that team has more senior developers, that's why they have better numbers". Is it the seniority, or are they just doing something different that you could also try as an experiment? Are you investigating this? Are you having discussions on how the seniority in your team could be increased? Or are you just looking for excuses?</p><p>Every team, every product, every context is different. But that is no excuse for not learning from each other.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Jes3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Jes3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 424w, https://substackcdn.com/image/fetch/$s_!Jes3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 848w, https://substackcdn.com/image/fetch/$s_!Jes3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 1272w, https://substackcdn.com/image/fetch/$s_!Jes3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Jes3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Jes3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 424w, https://substackcdn.com/image/fetch/$s_!Jes3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 848w, https://substackcdn.com/image/fetch/$s_!Jes3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 1272w, https://substackcdn.com/image/fetch/$s_!Jes3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd9833816-3e3f-4f26-8e6a-b6c621248220_1000x666.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>For example, I've seen a team that had a much higher Cycle Time than another one in the same company. When checking what was different, it turned out that they were relying on a different team that did the verification for them. So the items were "stuck" for quite a while until the other team picked them up.</p><p>Once we learned that, there were two options:</p><ul><li><p>Saying "Oh yeah, of course, you have lower cycle times if you don't depend on this team. But that won't work for us" and not doing anything.</p></li><li><p>Taking action and find ways on how to improve the situation.</p></li></ul><p>I guess it's needless to say which one should be the preferred option.</p><h2>Prerequisites</h2><p>As mentioned at the beginning of this post, I used to be highly "protective" when it came to metrics, especially making them transparent or even actively comparing them with other teams.</p><p>Nowadays, I can see many benefits of comparing the metrics of teams together. My aim with any team I work with is not to be mediocre. We aim that we become the best at what we do. This doesn't happen by hiding numbers, but by being brutally honest. You may not like what you see, but it's the first step to improving anything.</p><blockquote><p>"The truth will set you free, but first it will make you miserable" - Attributed to James A. Garfield</p></blockquote><p>You also should look at what you are currently measuring. Are those metrics useful, or should you measure something else? Data can be incredibly useful, and I urge you to check out Flow Metrics if you haven't yet, as they are powerful, actionable, and very easy to measure.</p><p>You should educate your team, as well as your organization. In the past, I accepted that we had to fulfill random targets, and was ok with finding <em>any</em> way to get to this number. In retrospect, I was just not doing a good job and making my life easy. Thinking that "management anyway doesn't get it" is an excuse that will lead to no improvements. In reality, people might simply not know better. If you approach them and explain why for example looking at the improvement trend over time might make more sense than a hard number, you might learn that they are happy to learn from you.</p><p>Accepting "faking" metrics is not only unethical, but you also rob your company of the chance to improve. If something is not ideal, you should not be hiding it. You should make it transparent and ask for support to improve it.</p><p>These prerequisites are especially important if you are in some kind of Scrum Master/Agile Coaching role. <strong>This is your job</strong>. Go do something to improve the environment to create transparency. Without it, you won't ever establish any kind of continuous improvement.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Yaqp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Yaqp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 424w, https://substackcdn.com/image/fetch/$s_!Yaqp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 848w, https://substackcdn.com/image/fetch/$s_!Yaqp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 1272w, https://substackcdn.com/image/fetch/$s_!Yaqp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Yaqp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Pillars of Empiricism: Transparency, Inspection, Adaptation. Picture by The Liberators&quot;,&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="" title="Pillars of Empiricism: Transparency, Inspection, Adaptation. Picture by The Liberators" srcset="https://substackcdn.com/image/fetch/$s_!Yaqp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 424w, https://substackcdn.com/image/fetch/$s_!Yaqp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 848w, https://substackcdn.com/image/fetch/$s_!Yaqp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 1272w, https://substackcdn.com/image/fetch/$s_!Yaqp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F53b76aeb-93c4-4a9f-bace-ee4e010cfa5c_720x718.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>You may not change your complete organization at once, but start with what you can control. Create a dashboard, or even better, an <a href="https://www.letpeople.work/post/working-with-obeya-an-experience-report">Obeya </a>with the data that is relevant for your team. Invite others to look at your metrics, and see what happens. Actively ask how you are doing compared to other teams, and be open for input.</p><h2>Conclusion</h2><p>Using metrics can be incredibly helpful to improve within a team itself. If you collect useful metrics, you can base your retrospectives on data. However, if you do it across many teams, you can supercharge your continuous improvement efforts and cross-pollinate knowledge across teams.</p><p>If one team seems to be "better" (whatever that means in your context), it does make a lot of sense to be curious and ask what they might be doing differently, instead of just assuming "their context is different, we don't want to hear anything about it".</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ll-e!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ll-e!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 424w, https://substackcdn.com/image/fetch/$s_!ll-e!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 848w, https://substackcdn.com/image/fetch/$s_!ll-e!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 1272w, https://substackcdn.com/image/fetch/$s_!ll-e!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ll-e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ll-e!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 424w, https://substackcdn.com/image/fetch/$s_!ll-e!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 848w, https://substackcdn.com/image/fetch/$s_!ll-e!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 1272w, https://substackcdn.com/image/fetch/$s_!ll-e!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd5359b44-ee2c-4697-b1eb-a64c543937c3_640x418.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Work with your teams and organization to:</p><ul><li><p>Move from fixed targets towards continuous improvements over time, by looking at trends and making sure you improve.</p></li><li><p>Move from metrics that are subjective to the context of a team towards metrics that can be compared (keeping the context in mind), for example, Flow Metrics.</p></li><li><p>Move from secrecy around metrics of the team, towards transparency to enable inspection and adaptation, for example, by creating an Obeya for your team.</p></li></ul><p><em>If you are interested in learning more about Flow Metrics, Obeya, or Data-Driven Decision Making, check out our <a href="https://www.letpeople.work/training">training </a>or <a href="https://calendly.com/letpeoplework/">reach out for a call.</a></em></p>]]></content:encoded></item><item><title><![CDATA[Getting a team out of learned helplessness using Flow Metrics — a Case Study]]></title><description><![CDATA[Writing this article has been on my mind for quite some time, but I somehow didn&#8217;t get around to writing it due to a million reasons, mostly excuses.]]></description><link>https://blog.letpeople.work/p/getting-a-team-out-of-learned-helplessness-using-flow-metrics-a-case-study</link><guid isPermaLink="false">https://blog.letpeople.work/p/getting-a-team-out-of-learned-helplessness-using-flow-metrics-a-case-study</guid><dc:creator><![CDATA[Peter]]></dc:creator><pubDate>Mon, 23 Sep 2024 17:42:21 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/5984eeae-1b6a-4087-a444-a2aa339a8da3_850x400.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Writing this article has been on my mind for quite some time, but I somehow didn&#8217;t get around to writing it due to a million reasons, mostly excuses.</p><p>In this article, I&#8217;d like to introduce you to a team I was fortunate enough to be part of. It&#8217;s a pretty common team, one that probably most of us have met or been part of during our time working in teams. It is probably a bit too large in team size and has team members with a variety of skills, with the aim of delivering software to customers. And, like other teams in the realm of software development, something was not quite right with this team &#8212; you could say that this team was stuck.</p><p>I was brought in as an external consultant to work with the team, as usual with my engagement in the form of &#8216;do something with the team and improve it.&#8217;</p><p>In this case study, I&#8217;d like to invite you on the journey we took, how we were able to get unstuck, and even more importantly, become a team of individuals that creates value &#8212; with some support from data that we always had but never thought of using.</p><h5><em><strong>Question to myself: Any regrets that I delayed writing the article?</strong></em></h5><p>It&#8217;s actually the opposite &#8212; I&#8217;m quite happy about it, because it was only when I got my hands on Jim Benson&#8217;s book &#8220;The Collaboration Equation&#8221; that I truly understood what was happening in this specific team I will write about.</p><p>The book, which is already my &#8216;must-read for 2024 recommendation,&#8217; gave me the understanding and also the right words to describe what this team went through and how they moved from their learned helplessness to a state in which &#8220;individuals in teams create value.&#8221;</p><p><em><strong>Learned Helplessness</strong></em></p><p>Let&#8217;s start with the definition of Learned Helplessness &#8212; Jim Benson describes it as:</p><blockquote><p><em>Learned Helplessness is the tendency not to act at all because you increasingly expect the system to thwart you and then penalize you for even trying. Logically, it is safer to not act (to give up your agency). It is easy to blame the victim and tell people to go that extra mile, but learned helplessness isn&#8217;t simply giving up. Learned helplessness is the result of realistically assessing no-win situations and realizing that action will yield no or negative results. In an anti-collaborative environment, acting with confidence is dangerous, which means that professionalism is dangerous &#8212;&nbsp;Jim Benson/The Collaboration Equation</em></p></blockquote><p>Everyone working in this team would have noticed symptoms that were visible in this team &#8212; there we plenty of them.</p><p>If I had to pick three they would be:</p><ul><li><p>not able to control their own working environment</p></li><li><p>a very limited flow of information within the team and outside the team</p></li><li><p>a self-fulfilling team identity of &#8220;that&#8217;s just how we are&#8221;</p></li></ul><p>The last point is the most interesting to me, as it is also something often observed in individuals. After some time, we tend to believe a story others tell about us or that we tell ourselves. And given that the collaboration equation is &#8216;Individuals in teams create value,&#8217; maybe it&#8217;s not so surprising after all.</p><h5><em><strong>What we usually do vs. what we should do instead</strong></em></h5><p>So what was it?</p><p>Did we start by changing the people?</p><p>Were these individuals who simply didn&#8217;t care?</p><p>I guess the usual tendency in most companies nowadays is to focus on the performance of individuals, conduct awkward yearly reviews, and just hope things will improve. And if not, they start looking again to find who could be accountable for the situation, change people, change managers, keep everyone seemingly busy, and yet generate no real change at all. It&#8217;s like being in a constant loop.</p><p>From my point of view, there is a better question we could ask instead:</p><p>Do these professionals work in an environment/system that allows them to be good professionals?&#8221;</p><p>As Jim Benson puts it:</p><blockquote><p><em>No incentives, no negative reinforcement, no threats to their livelihood, can get people to perform well in an environment which does not give them the freedom or even the ability to perform well &#8212; Jim Benson/The Collaboration Equation</em></p></blockquote><p>So instead of working on the people, let&#8217;s have a look into the system they worked in.</p><h5><em><strong>Collaborating when it was not avoidable</strong></em></h5><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qddN!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qddN!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 424w, https://substackcdn.com/image/fetch/$s_!qddN!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 848w, https://substackcdn.com/image/fetch/$s_!qddN!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 1272w, https://substackcdn.com/image/fetch/$s_!qddN!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qddN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qddN!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 424w, https://substackcdn.com/image/fetch/$s_!qddN!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 848w, https://substackcdn.com/image/fetch/$s_!qddN!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 1272w, https://substackcdn.com/image/fetch/$s_!qddN!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F128dadf8-0435-4ccd-8825-f4d3ab618b90_850x400.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The team was working within a system that enforced the use of Scrum. To avoid any conversation that might completely miss the mark, I&#8217;d describe it more accurately as a &#8220;push&#8221; system.</p><p>Every two weeks, new work was pushed onto the team&#8217;s workflow.</p><p>While there was initial feedback from the team about this situation, it eventually subsided over time, leading to a state of learned helplessness within the team.</p><p><em>Now comes the most crucial part of it:</em></p><p>This situation dragged on for more than four years. During this time, every two weeks, new work was pushed into the system, regardless of whether the previous tasks were completed or not.</p><p>This often resulted in a sprint backlog of over 70&#8211;80 tasks, with a team struggling to survive week by week. The situation reached a point where even frustration wasn&#8217;t openly expressed anymore, as it became accepted as &#8220;just how things are.&#8221;</p><p>Team members simply picked up another ticket, worked on it, and moved to the next one, collaborating when it was not avoidable.</p><p>I&#8217;m pretty sure that if this team would have looked at the 5 dysfunctions of a team, we would have scored quite high in all of them.</p><p>And every attempt to help the team from the outside, came from the perspective of &#8220;fix them&#8221; and &#8220;make them understand&#8221; and never looked at the system the team was working in and if the system made it possible for good professionals to actually be good professionals.</p><h5><em><strong>Fix the system, not the people</strong></em></h5><p>So what happened?</p><p>Hopefully not surprising to a lot of my readers, it wasn&#8217;t a big transformation that helped this team move into the right direction.</p><p>What might be surprising is the fact that it all started with a simple question:</p><p><em>&#8220;What if we would just stop working as we do now?&#8221;</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!qSho!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qSho!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 424w, https://substackcdn.com/image/fetch/$s_!qSho!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 848w, https://substackcdn.com/image/fetch/$s_!qSho!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 1272w, https://substackcdn.com/image/fetch/$s_!qSho!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qSho!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qSho!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 424w, https://substackcdn.com/image/fetch/$s_!qSho!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 848w, https://substackcdn.com/image/fetch/$s_!qSho!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 1272w, https://substackcdn.com/image/fetch/$s_!qSho!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa4cfc4e9-dd48-40b9-bd0d-fd53bb83dec7_425x225.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>And, although it might have seemed like a fairly standard question from the outside, the reactions on the faces of those we were looking at on the screens told a different story. It appeared that in four years, no one had thought to ask this team what their ideal working environment would look like.</p><p>This was the beginning of what I call our &#8220;culture bubble&#8221; story.</p><p>Check <a href="https://evolve2b.com/">Evolve2B</a> for more information on Culture Bubbles</p><p><strong>How the right environment looked for this team</strong></p><p>I have to admit that I myself didn&#8217;t expect this to work as well as it did.</p><p>But more suprisingly, I was shocked on how quickly these professionals were able to be in charge of their professionalism again.</p><p>The first step was an obvious one:</p><p>We changed from a push system into a pull system. Work was not longer being pushed into the system every 2 weeks but instead was waiting in a backlog to be pulled by the team. We still kept our iterations of 2 weeks for 2 reasons:</p><ul><li><p>we wanted to keep a dedicated time we would get together and discuss priorities, learnings and also look back at what we achieved</p></li><li><p>the second reason is that the system around kept on working in iterations of 2 weeks so we decided to build adapters and this way were able to reduce noise regarding the changes we have made and at the same time, were aligned with the teams outside the team</p></li></ul><p>A next step was that we wanted to make sure that the way our work flows becomes visible &#8212; to us, but also to the people relying on our work.</p><p>So the look of our working board changed &#8212; we have added new columns that we hoped would make the progress of our work more visible:</p><p>We went from</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!B24h!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!B24h!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 424w, https://substackcdn.com/image/fetch/$s_!B24h!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 848w, https://substackcdn.com/image/fetch/$s_!B24h!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 1272w, https://substackcdn.com/image/fetch/$s_!B24h!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!B24h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!B24h!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 424w, https://substackcdn.com/image/fetch/$s_!B24h!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 848w, https://substackcdn.com/image/fetch/$s_!B24h!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 1272w, https://substackcdn.com/image/fetch/$s_!B24h!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0a05587e-6b78-4403-a814-aa833eda4e70_1000x77.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>to</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RkN3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RkN3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 424w, https://substackcdn.com/image/fetch/$s_!RkN3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 848w, https://substackcdn.com/image/fetch/$s_!RkN3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 1272w, https://substackcdn.com/image/fetch/$s_!RkN3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RkN3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!RkN3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 424w, https://substackcdn.com/image/fetch/$s_!RkN3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 848w, https://substackcdn.com/image/fetch/$s_!RkN3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 1272w, https://substackcdn.com/image/fetch/$s_!RkN3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7aee790d-9fdd-4734-8050-ca65daef2538_1000x53.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>As another point of discussion, we talked about Flow Metrics and decided that the data they provided could be a valuable indicator of our work.</p><p>This data would provide us with information, allowing us to act with confidence. We agreed to give this approach a try and have another conversation about it in six weeks, at which point we would decide if this was the right path.</p><p>I&#8217;d love to tell you more about what we did &#8212; about all the amazing workshops we conducted with the team, about the fruitful one-on-one sessions, and how we unlocked deep-seated personal issues.</p><p>But the truth is, we didn&#8217;t do anything else. It wasn&#8217;t that these professionals were incapable of working together, or even worse, unwilling.</p><p>Rather, the image that formed in my mind was that of individuals at work, chained to a wall. In this scenario, all that was necessary was to help them realize that they could break free from the chains themselves.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!NCgM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!NCgM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 424w, https://substackcdn.com/image/fetch/$s_!NCgM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 848w, https://substackcdn.com/image/fetch/$s_!NCgM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 1272w, https://substackcdn.com/image/fetch/$s_!NCgM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!NCgM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!NCgM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 424w, https://substackcdn.com/image/fetch/$s_!NCgM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 848w, https://substackcdn.com/image/fetch/$s_!NCgM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 1272w, https://substackcdn.com/image/fetch/$s_!NCgM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba5a6fc-83c7-4d10-8653-51d78f48dd55_1000x1000.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>I already told you at the beginning of this section how quickly it went.</p><p>Well&#8230;how quickly did something change?</p><h5><em><strong>Professionals who are in charge of their professionalism</strong></em></h5><p>It took about two to three days for the new working system to click in.</p><p>Cleaning up the backlog was obviously necessary, and this wasn&#8217;t a task performed by a single person but rather a team effort.</p><p>Getting accustomed to accurately reflecting the status of our work on the new board was probably the hardest part for everyone on the team.</p><p>But once we overcame that, collaboration and work began to flow smoothly.</p><p>So, what did we see happening next?</p><p>Fruitful conversations about work in progress became a regular part of our daily huddles.</p><p><em>We shifted from dull daily meetings to ones where we:</em></p><ul><li><p>Actively engaged in conversations about how we could collaborate to move aged items to the right side of the board (action on data)</p></li><li><p>Team members sought support from others</p></li><li><p>People decided to pair up for specific complex analyses or tasks</p></li><li><p>Challenged priorities using the information that was visible and available to us</p></li></ul><p><em>Eliminating value-negative tasks</em></p><ul><li><p>While sitting in meetings, we openly challenged their value, quickly agreeing to try alternatives. Mostly it was along the lines of, &#8220;Let&#8217;s see if we miss anything if we don&#8217;t have this meeting.&#8221;</p></li><li><p>The board introduced new ways to quickly and effortlessly find information.</p></li><li><p>We implemented quick fixes swiftly. For example, &#8220;Could we visualize information for the person who picks this up next right on the first screen? It would then be easier for them to decide what to do next.&#8221; This meant, for instance, letting the team member who would take over QA know in advance which environment was needed for testing:</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!65in!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!65in!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 424w, https://substackcdn.com/image/fetch/$s_!65in!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 848w, https://substackcdn.com/image/fetch/$s_!65in!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 1272w, https://substackcdn.com/image/fetch/$s_!65in!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!65in!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec6e8676-7c27-4b33-9761-f3f935439099_564x288.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!65in!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 424w, https://substackcdn.com/image/fetch/$s_!65in!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 848w, https://substackcdn.com/image/fetch/$s_!65in!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 1272w, https://substackcdn.com/image/fetch/$s_!65in!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec6e8676-7c27-4b33-9761-f3f935439099_564x288.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The last part was an interesting one, as it happened naturally.</p><p>No Retrospective was performed for these changes. These were all things that simply happened or that were brought up during a daily huddle.</p><p><em>Quickly identifying bottlenecks and acting on them</em></p><p>Thanks to our new way of visualizing our work, we were quickly able to identify bottlenecks within the system we were working in. To my great surprise, even though most of these bottlenecks were beyond our direct control, the team realized that there was something they could do to alleviate these choke points to some extent, and they swiftly took action on it.</p><p>There was also an instance where the team, without any external interference, started discussions about having smaller work items and how it would benefit their feedback loop. (The 85th percentile cycle time proved quite useful in determining a good starting point for this.)</p><p>It&#8217;s important to note that we never started with a Work In Progress (WIP) limit. However, due to the collaboration and the pull-system in place, it never became a real issue. If a problem did arise, it was quickly addressed in the daily huddle, actions were taken, and we moved forward.</p><p><em>Increase in engagement</em></p><p>The points mentioned above already suggest an increase in engagement. But one aspect that really stands out to me is the atmosphere you experience when you enter a room with these individuals. There&#8217;s a palpable difference in their demeanor and in the way they work.</p><blockquote><p><em>We see systems that engage people professionally, leaving them energized at the end of the day and not tired and spent. &#8212; Jim Benson/The Collaboration Equation</em></p></blockquote><h5><em><strong>Give me the data</strong></em></h5><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9sAg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9sAg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 424w, https://substackcdn.com/image/fetch/$s_!9sAg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 848w, https://substackcdn.com/image/fetch/$s_!9sAg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 1272w, https://substackcdn.com/image/fetch/$s_!9sAg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9sAg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9sAg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 424w, https://substackcdn.com/image/fetch/$s_!9sAg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 848w, https://substackcdn.com/image/fetch/$s_!9sAg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 1272w, https://substackcdn.com/image/fetch/$s_!9sAg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fec4d5003-48ce-4edb-9a8a-718bf381ef93_680x367.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Although we rarely discussed the data itself, simply accepting it as information to enhance our team decision-making and our collaboration, we were still surprised by the results of the first data set.</p><p>This is what we got:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!2Vc_!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!2Vc_!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 424w, https://substackcdn.com/image/fetch/$s_!2Vc_!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 848w, https://substackcdn.com/image/fetch/$s_!2Vc_!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 1272w, https://substackcdn.com/image/fetch/$s_!2Vc_!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!2Vc_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!2Vc_!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 424w, https://substackcdn.com/image/fetch/$s_!2Vc_!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 848w, https://substackcdn.com/image/fetch/$s_!2Vc_!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 1272w, https://substackcdn.com/image/fetch/$s_!2Vc_!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc3d096fc-951d-4d87-9c61-f0eeee5b1d1a_1000x595.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The graphic above shows what we were capable of achieving in the three months prior to the changes: a throughput of 140 items, with each taking 37 days or less to complete (as indicated by the 85th percentile, highlighted in light green).</p><p>When we took another measure after the first 3 months, and got the following:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!mcc9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!mcc9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 424w, https://substackcdn.com/image/fetch/$s_!mcc9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 848w, https://substackcdn.com/image/fetch/$s_!mcc9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 1272w, https://substackcdn.com/image/fetch/$s_!mcc9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!mcc9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!mcc9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 424w, https://substackcdn.com/image/fetch/$s_!mcc9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 848w, https://substackcdn.com/image/fetch/$s_!mcc9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 1272w, https://substackcdn.com/image/fetch/$s_!mcc9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6d298a39-b27c-45d4-98d2-03cb77674760_1000x593.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>With the same scope of three months, we now achieved a throughput of 186 items and reduced the cycle time from 37 days or less to 17 days or less (again, refer to the light green line for the 85th percentile).</p><p>Also, take note of the changes in the Y-graph.</p><p>Although we still had outliers, as unexpected things happened, we took action or were consciously aware of them. The more our items aged and approached our 85th percentile line, the more we discussed them in our huddle.</p><p>There is one aspect that is difficult to measure, and perhaps shouldn&#8217;t be, but it&#8217;s one that keeps this team continuously improving in their collaboration: the increase in the number of professionals who were empowered to work effectively.</p><p>A key learning for us was that having data helped shape our conversations within the team, leading to more informed and effective decisions.</p><h5><em><strong>What came after?</strong></em></h5><p>Understandably, people around this team became curious about how they managed to break free from their previous state and are now trying to adapt their systems to achieve something similar. This is the beauty of a &#8220;culture bubble&#8221;&#8212; extensive promotion isn&#8217;t even necessary.</p><p>People from the outside quickly notice the change and start asking questions.</p><p>Using data also opens up new opportunities to answer questions like, &#8220;When will it be done?&#8221; (Thank you, Monte Carlo simulations).</p><p>This hopefully serves as another example of how visualizing our work, and planning future tasks, aids in collaborating with others and making informed decisions.</p><p>Another interesting aspect is delving into the concepts of Obeya, as described in Benson&#8217;s book (Did I mention that it&#8217;s an absolute must-read?).</p><p>To me, the most significant takeaway remains the fact that no matter what we do, working within a system that allows individuals to excel in what they do best is crucial for awakening the professional within them.</p><blockquote><p><em>Individuals in Teams create value- &#8212; Jim Benson/The Collaboration Equation</em></p></blockquote><p>Do you want to learn more about Flow Metrics and how to shift the dynamics in your team? Then join one of our upcoming micro-sessions.</p><p>Check them out here: <a href="https://letpeoplework.eventbrite.com/">https://letpeoplework.eventbrite.com/</a></p>]]></content:encoded></item><item><title><![CDATA[An Introduction and Step-by-Step Guide to Monte Carlo Simulations]]></title><description><![CDATA[Since we started using Monte Carlo Simulations for forecasting instead of estimations with teams we work with, we&#8217;ve gotten several questions about how it works and more importantly what data is needed to run them.]]></description><link>https://blog.letpeople.work/p/an-introduction-and-step-by-step-guide-to-monte-carlo-simulations</link><guid isPermaLink="false">https://blog.letpeople.work/p/an-introduction-and-step-by-step-guide-to-monte-carlo-simulations</guid><dc:creator><![CDATA[Benjamin Huser-Berta]]></dc:creator><pubDate>Fri, 16 Aug 2024 09:28:00 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/574cb9c7-0604-440b-b584-15f4b595fe30_720x488.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Since we started using Monte Carlo Simulations for forecasting instead of estimations with teams we work with, we&#8217;ve gotten several questions about how it works and more importantly what data is needed to run them.</em></p><p><em>In this post, we&#8217;ll explain what a Monte Carlo Simulation is and why this might interest you, and we'll walk you through the different steps of how it works.</em></p><p><em>This post was first published on <a href="https://medium.com/@benjihuser/an-introduction-and-step-by-step-guide-to-monte-carlo-simulations-4706f675a02f">Medium </a>and republished in an updated version.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!60GK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!60GK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 424w, https://substackcdn.com/image/fetch/$s_!60GK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 848w, https://substackcdn.com/image/fetch/$s_!60GK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 1272w, https://substackcdn.com/image/fetch/$s_!60GK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!60GK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/883ae3d8-0b66-47d5-8781-202159803280_720x488.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Monte Carlo Simulation. By the end of this post, the charts you see here hopefully make sense to you &#8212; Source: Actionable Agile/55 Degrees&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="Monte Carlo Simulation. By the end of this post, the charts you see here hopefully make sense to you &#8212; Source: Actionable Agile/55 Degrees" srcset="https://substackcdn.com/image/fetch/$s_!60GK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 424w, https://substackcdn.com/image/fetch/$s_!60GK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 848w, https://substackcdn.com/image/fetch/$s_!60GK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 1272w, https://substackcdn.com/image/fetch/$s_!60GK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F883ae3d8-0b66-47d5-8781-202159803280_720x488.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><h2>What is a Monte Carlo Simulation?</h2><p>Wikipedia describes the Monte Carlo Method as follows:</p><blockquote><p><em>Monte Carlo methods, or Monte Carlo experiments, are a broad class of computational algorithms that rely on repeated random sampling to obtain numerical results.&nbsp;The underlying concept is to use randomness to solve problems that might be deterministic in principle&nbsp;&#8212; <a href="https://en.wikipedia.org/wiki/Monte_Carlo_method">Wikipedia</a></em></p></blockquote><p>To forecast, we try to &#8220;simulate&#8221; the past and apply it to the future. We run many of those simulations and see what is &#8220;most likely&#8221; to happen. It&#8217;s a &#8220;probabilistic forecast&#8221;, meaning&nbsp;we don&#8217;t get a single result, but many options that are associated with a probability.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7RWg!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7RWg!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 424w, https://substackcdn.com/image/fetch/$s_!7RWg!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 848w, https://substackcdn.com/image/fetch/$s_!7RWg!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 1272w, https://substackcdn.com/image/fetch/$s_!7RWg!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7RWg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Forecasts for Features and Likelihood to complete them at a certain time. Source: Screenshot of Lighthouse&quot;,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="Forecasts for Features and Likelihood to complete them at a certain time. Source: Screenshot of Lighthouse" srcset="https://substackcdn.com/image/fetch/$s_!7RWg!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 424w, https://substackcdn.com/image/fetch/$s_!7RWg!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 848w, https://substackcdn.com/image/fetch/$s_!7RWg!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 1272w, https://substackcdn.com/image/fetch/$s_!7RWg!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff326d2ee-00f2-4851-8fba-22fc5ac78215_1000x314.png 1456w" sizes="100vw"></picture><div></div></div></a></figure></div><h2>How Many &amp; When</h2><p>When applied to forecasting in software development, we can use the Monte Carlo Simulation to answer two questions:</p><ul><li><p>How many items do we manage to close till a specific target date?</p></li><li><p>When will a specific amount of items be done?</p></li></ul><p>Having answers to those questions is very powerful when we&#8217;re planning, and Monte Carlo Simulations allow us to answer this easily without estimations in just a few seconds. More information can be found in Daniel Vacanti&#8217;s books &#8220;<a href="https://www.goodreads.com/book/show/25867120-actionable-agile-metrics-for-predictability?ac=1&amp;from_search=true&amp;qid=U0WMBwHLel&amp;rank=1">Actionable Agile Metrics for Predictability</a>&#8221; and &#8220;<a href="https://www.goodreads.com/book/show/40681093-when-will-it-be-done?from_search=true&amp;from_srp=true&amp;qid=paTCzIr1Rb&amp;rank=1">When Will It Be Done?</a>&#8221;.</p><h2>Monte Carlo Algorithm</h2><p>The goal of this post is to make it more clear on how a Monte Carlo Simulation works. I&#8217;ll first explain the algorithm on a high level and then go more into the details. Some terms, like Throughput, might not be clear, please bear along with me as I&#8217;ll elaborate more on them during the post.</p><p>A simplified version of the algorithm to make forecasts with Monte Carlo Simulations looks like this:</p><ol><li><p>Create a run chart of your Throughput</p></li><li><p>Randomly select values on this chart and sum up the Throughput. This is the simulated Throughput for a single day. Do this either for the number of days you want to simulate (&#8220;How Many&#8221;) or till you have 0 items remaining (&#8220;When&#8221;).</p></li><li><p>Write down the results (either the sum of the Throughput or the amount of days).</p></li><li><p>Execute steps two and three many times (like 10'000+ times)</p></li><li><p>Plot the results on a histogram. Identify the &#8220;risk profiles&#8221; that you are interested in, for example, what you got in 85% of the simulations.</p></li></ol><p>Before we start with step 1, the Throughput, let me elaborate on our sample data.</p><h2>Sample Data</h2><p>In our opinion, it will help you follow along a bit more actively. To make it more engaging, we&#8217;ve created a spreadsheet that you can use to follow along. You can find a copy of it on <a href="https://docs.google.com/spreadsheets/d/1vMPnY7BNLlRmeQ21CicJbVgrTNlJ58mfrqhbYR72R80/copy?usp=sharing">Google Docs</a>&nbsp;or on <a href="https://1drv.ms/x/s!AhPPLtkE4LW0goQ8o8c0946R-DVvog?e=7LVokg">OneDrive </a>if you prefer MS Excel. Ideally, you have it open on the side while reading. I&#8216;ve marked the parts relevant to the spreadsheet with this icon:</p><p>In our example, we&#8217;ll be using the Throughput of a team from December 2023 and we&#8217;ll forecast:</p><ul><li><p>How many items will be done in the next 30 days?</p></li><li><p>When will 28 items be done?</p></li></ul><h2>Throughput</h2><p>The only thing we need to run a Monte Carlo Simulation is to have data on the team&#8217;s Throughput.</p><blockquote><p><strong>Throughput</strong>:&nbsp;The number of work items finished per unit of time. Note the measurement of throughput is the exact count of work items. &#8212; <a href="https://kanbanguides.org/english/">The Kanban Guide</a></p></blockquote><p>The <em>unit of time</em>&nbsp;can be anything you want it to be: days, weeks, Sprints. For the sake of this post, we&#8217;ll be working with days.</p><p><strong>Note:</strong>&nbsp;<em>If you would use another unit of time, say weeks, the Monte Carlo Simulation would also work with this unit. We would forecast how many items we manage in a certain amount of weeks (instead of days) and how many weeks it takes to complete several items.</em></p><p>To calculate the Throughput, we simply need to know on which date your items were closed. If you are using a digital tool, the chance is very high that you already have that available. If you are using a physical board, just note down the date when an item was closed.</p><h3>What about the Other Flow Metrics?</h3><p>You might be thinking, wait a minute, what about the other <a href="https://www.letpeople.work/post/using-flow-metrics-from-feelings-to-facts">measures of flow</a>? Are <em>WIP</em>, <em>Cycle Time, </em>and <em>Work Item Age </em>completely irrelevant for Monte Carlo Simulations?</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_g5G!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_g5G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 424w, https://substackcdn.com/image/fetch/$s_!_g5G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 848w, https://substackcdn.com/image/fetch/$s_!_g5G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 1272w, https://substackcdn.com/image/fetch/$s_!_g5G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_g5G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Cycle Time Scatterplot created with FlowMetricsCSV&quot;,&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="" title="Cycle Time Scatterplot created with FlowMetricsCSV" srcset="https://substackcdn.com/image/fetch/$s_!_g5G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 424w, https://substackcdn.com/image/fetch/$s_!_g5G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 848w, https://substackcdn.com/image/fetch/$s_!_g5G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 1272w, https://substackcdn.com/image/fetch/$s_!_g5G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd7fe93e0-9507-4966-a8fb-4250a00fe55e_740x444.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>The short answer is yes. You don&#8217;t need them to run a Monte Carlo Simulation.</p><p>The longer explanation is that, while you don&#8217;t need them for the Monte Carlo Simulation, they still are an indicator of how &#8220;good&#8221; your forecast will be. Controlling and taking action on those measures, helps us get more predictable Throughput. And the more predictable our Throughput is, the &#8220;better&#8221; we can forecast.</p><h3>Creating a Throughput Run Chart</h3><p>Our Monte Carlo Simulation needs the Throughput ordered by days.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fznT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fznT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 424w, https://substackcdn.com/image/fetch/$s_!fznT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 848w, https://substackcdn.com/image/fetch/$s_!fznT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 1272w, https://substackcdn.com/image/fetch/$s_!fznT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fznT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/da81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Throughput Run Chart generated by Lighthouse&quot;,&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="" title="Throughput Run Chart generated by Lighthouse" srcset="https://substackcdn.com/image/fetch/$s_!fznT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 424w, https://substackcdn.com/image/fetch/$s_!fznT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 848w, https://substackcdn.com/image/fetch/$s_!fznT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 1272w, https://substackcdn.com/image/fetch/$s_!fznT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda81d943-8484-404f-b44f-0e87f5df3aba_1000x709.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>In our <a href="https://docs.google.com/spreadsheets/d/1vMPnY7BNLlRmeQ21CicJbVgrTNlJ58mfrqhbYR72R80/copy?usp=sharing">spreadsheet</a>, you can check out the &#8220;Throughput&#8221; sheet. In column A, we see the dates when items were closed.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8D4z!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8D4z!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 424w, https://substackcdn.com/image/fetch/$s_!8D4z!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 848w, https://substackcdn.com/image/fetch/$s_!8D4z!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 1272w, https://substackcdn.com/image/fetch/$s_!8D4z!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8D4z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Closed Dates of Items&quot;,&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="" title="Closed Dates of Items" srcset="https://substackcdn.com/image/fetch/$s_!8D4z!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 424w, https://substackcdn.com/image/fetch/$s_!8D4z!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 848w, https://substackcdn.com/image/fetch/$s_!8D4z!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 1272w, https://substackcdn.com/image/fetch/$s_!8D4z!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5e55e99-aaa1-480a-a8be-5e8720f26c01_148x191.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>You can see that some dates appear multiple times, this means several items were closed on that day.</p><p>We now create a run chart with this data. As mentioned above, we use the data from all of December, so we create a table that shows how many items were closed each day in December:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EQ6Q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 424w, https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 848w, https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 1272w, https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Throughput per Day&quot;,&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="" title="Throughput per Day" srcset="https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 424w, https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 848w, https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 1272w, https://substackcdn.com/image/fetch/$s_!EQ6Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0f4a007e-06ac-41a1-82bd-e051015027ad_340x112.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>We can also show this in a chart:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PIaz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PIaz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 424w, https://substackcdn.com/image/fetch/$s_!PIaz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 848w, https://substackcdn.com/image/fetch/$s_!PIaz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 1272w, https://substackcdn.com/image/fetch/$s_!PIaz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PIaz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PIaz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 424w, https://substackcdn.com/image/fetch/$s_!PIaz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 848w, https://substackcdn.com/image/fetch/$s_!PIaz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 1272w, https://substackcdn.com/image/fetch/$s_!PIaz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F44a2293e-9125-4472-97b5-89d5e6626b7b_720x430.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This will be the base for our simulations. You can see there were days where the team managed to close 4 items, while on other days nothing was closed.</p><h3>What about Holidays and Weekends?</h3><p>The attentive reader has probably noticed: We include weekends (like the 2nd and 3rd of December) and the whole holiday period around the 25th of December. We use the Throughput per unit of time, independent of holidays, weekends, and people being sick or on vacation.</p><p>When using Monte Carlo Simulations, we can ignore such things that often make &#8220;capacity planning&#8221; tricky.</p><h3>Simulate a Future that looks like the Past</h3><p>What the simulation helps us to do, is that we use the &#8220;past&#8221; in the form of our historical Throughput, to simulate the future. People will have weekends in the future (I hope), and they will also be occasionally sick. This is a strength of Monte Carlo Simulations over traditional capacity planning, as such events are factored in.</p><p>Now you should put some thought into which Throughput period you select as a base for your simulation. The month of December was randomly chosen, and you might not want to use two weeks over Christmas when everyone was off.</p><p><a href="http://off.As">As</a> a rule of thumb: use a &#8220;history&#8221; that you believe will look similar to the future you&#8217;re trying to forecast. If you&#8217;re team just formed a month ago, don&#8217;t try to use a 3-month history.</p><p><em>Also, if you wonder if you could use more special sampling models (for example use Mondays to simulate Mondays), we recommend this in-depth post by <a href="https://towardsdatascience.com/all-models-are-wrong-but-some-are-random-25ff1491406f?source=post_page-----4706f675a02f--------------------------------">Prateek Singh</a>.</em></p><p>Now that we have our history in the form of an ordered Throughput run chart, we&#8217;re ready to run our Monte Carlo Simulation!</p><h2>Monte Carlo &#8212; How Many</h2><p>If we do a &#8220;How Many&#8221; simulation, we have a specific &#8220;target date&#8221;. We want to forecast how many items we can finish in this period.</p><p><em>If you are following along in our <a href="https://docs.google.com/spreadsheets/d/1vMPnY7BNLlRmeQ21CicJbVgrTNlJ58mfrqhbYR72R80/copy?usp=sharing">spreadsheet</a>, move to the &#8220;How Many&#8221; sheet. You can read along and then run a couple of runs of the simulation yourself &#8212; follow the instructions in the sheet.</em></p><p>Let&#8217;s assume we want to forecast what we manage in the next 30 days.</p><p>For a single run of our Monte Carlo Forecast, we will simulate those 30 days. For this, we need 30 random values (one for each day) between 1 and 31 (because our history from December has 31 days).</p><p>The random number we get is used to &#8220;look up&#8221; the Throughput value from this day in our history. For example, if we get a 20, we&#8217;ll use the Throughput value from day 20 in our history (which would be 1 in our case):</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gXaI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gXaI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 424w, https://substackcdn.com/image/fetch/$s_!gXaI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 848w, https://substackcdn.com/image/fetch/$s_!gXaI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 1272w, https://substackcdn.com/image/fetch/$s_!gXaI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gXaI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/accf3de0-6c9e-4d15-8488-214187434096_720x211.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Simulation of a single day&quot;,&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="" title="Simulation of a single day" srcset="https://substackcdn.com/image/fetch/$s_!gXaI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 424w, https://substackcdn.com/image/fetch/$s_!gXaI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 848w, https://substackcdn.com/image/fetch/$s_!gXaI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 1272w, https://substackcdn.com/image/fetch/$s_!gXaI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Faccf3de0-6c9e-4d15-8488-214187434096_720x211.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>If you do this for all 30 days, you&#8217;ll end up with a number. This is our simulated throughput through 30 days.</p><p><em>We encourage you to try it out, play with different values, and check the results.</em></p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PBoM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PBoM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 424w, https://substackcdn.com/image/fetch/$s_!PBoM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 848w, https://substackcdn.com/image/fetch/$s_!PBoM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 1272w, https://substackcdn.com/image/fetch/$s_!PBoM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!PBoM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/db2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;One Run that resulted in 27 items in 30 days&quot;,&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="" title="One Run that resulted in 27 items in 30 days" srcset="https://substackcdn.com/image/fetch/$s_!PBoM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 424w, https://substackcdn.com/image/fetch/$s_!PBoM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 848w, https://substackcdn.com/image/fetch/$s_!PBoM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 1272w, https://substackcdn.com/image/fetch/$s_!PBoM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdb2475a2-44a0-48d9-9c6b-65b8c5b2d743_720x109.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>We should now take note of the result, where we count how many simulations had the specific result. For my example, we would now increase the count for 27 by 1.</p><p>As we want probability, we should run this more times. Often about 10'000 times is used to get meaningful results. Feel free to run some runs on your own, for example, 10, and create the result tables for yourself.</p><p>After you run this several times, you&#8217;ll end up with a table that contains the results:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GtQQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GtQQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 424w, https://substackcdn.com/image/fetch/$s_!GtQQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 848w, https://substackcdn.com/image/fetch/$s_!GtQQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 1272w, https://substackcdn.com/image/fetch/$s_!GtQQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GtQQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Count of Runs that closed a specific number of items&quot;,&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="" title="Count of Runs that closed a specific number of items" srcset="https://substackcdn.com/image/fetch/$s_!GtQQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 424w, https://substackcdn.com/image/fetch/$s_!GtQQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 848w, https://substackcdn.com/image/fetch/$s_!GtQQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 1272w, https://substackcdn.com/image/fetch/$s_!GtQQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e8b039f-cfcb-4e5f-839d-c9c38ef6d2e2_616x440.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Tables are not ideal to visualize this, so you can also plot this in a chart:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5um5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5um5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 424w, https://substackcdn.com/image/fetch/$s_!5um5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 848w, https://substackcdn.com/image/fetch/$s_!5um5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 1272w, https://substackcdn.com/image/fetch/$s_!5um5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5um5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Count of Runs that closed a specific number of items&quot;,&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="" title="Count of Runs that closed a specific number of items" srcset="https://substackcdn.com/image/fetch/$s_!5um5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 424w, https://substackcdn.com/image/fetch/$s_!5um5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 848w, https://substackcdn.com/image/fetch/$s_!5um5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 1272w, https://substackcdn.com/image/fetch/$s_!5um5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56cc343b-1782-43a5-a9b7-b7d5ee874127_720x297.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>You can see that the very high and very low numbers happened less frequently. This is because you are very &#8220;unlucky&#8221; if you hit often days that have 0 or a very high Throughput (in our example 4).</p><p>To make this useful for our forecast, we can see how many runs managed to close &#8220;x items or more&#8221;. In this example, we have 100'000 runs. This means, 1% of the runs are at 1'000. So we sum up the runs, ordered by most items closed. When we get to 1'000, we know that &#8220;There is a 1% chance to close x items or more&#8221;. In our example below, the items closed at the 1% mark is 47. So in other words, there is a 1% chance that we manage to close 47 items or more in the next 30 days.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!OtM7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!OtM7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 424w, https://substackcdn.com/image/fetch/$s_!OtM7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 848w, https://substackcdn.com/image/fetch/$s_!OtM7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 1272w, https://substackcdn.com/image/fetch/$s_!OtM7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!OtM7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;In 1% of the Simulations, we manage to close 47 items or more in 30 days&quot;,&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="" title="In 1% of the Simulations, we manage to close 47 items or more in 30 days" srcset="https://substackcdn.com/image/fetch/$s_!OtM7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 424w, https://substackcdn.com/image/fetch/$s_!OtM7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 848w, https://substackcdn.com/image/fetch/$s_!OtM7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 1272w, https://substackcdn.com/image/fetch/$s_!OtM7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F922c56f4-8798-4654-9348-2cdfb6ab68bd_720x336.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>While 1% might be a bit too risky for most teams, you can apply the same strategy to look for more meaningful &#8220;risk profiles&#8221;, like 50%, 70%, 85%, or 95%.</p><p><em>If you are following along in the spreadsheet, identify those risks and how many items we manage to close</em>.</p><p>And that&#8217;s it, that&#8217;s how you can run a &#8220;how many&#8221; forecast using Monte Carlo Simulations.</p><h2>Monte Carlo &#8212; When</h2><p>While we had a &#8220;target date&#8221; or a specific amount of days when doing the &#8220;How Many&#8221; simulation, we have a different situation for the &#8220;When&#8221; simulation. This simulation answers the question: How long will it take to close <em>x</em>&nbsp;items?</p><p><em>If you are following along in our <a href="https://docs.google.com/spreadsheets/d/1vMPnY7BNLlRmeQ21CicJbVgrTNlJ58mfrqhbYR72R80/copy?usp=sharing">spreadsheet</a>, move to the &#8220;When&#8221; sheet. You can read along and then run a couple of runs of the simulation yourself &#8212; follow the instructions in the sheet.</em></p><p>Let&#8217;s assume we want to forecast when we manage to close 28 items.</p><p>Before, for a single run of our Monte Carlo Forecast, we simulated 30 days. As we don&#8217;t know the days, our simulation will now run until we close 28 items or more. We again need a random value between 1 and 31 (as our history is the same as before). We look up the Throughput value from this day and subtract the number from the remaining items.</p><p>We do this until we are at 0 (or below). That &#8220;day&#8221; is the result of this simulation:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QMth!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QMth!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 424w, https://substackcdn.com/image/fetch/$s_!QMth!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 848w, https://substackcdn.com/image/fetch/$s_!QMth!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 1272w, https://substackcdn.com/image/fetch/$s_!QMth!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QMth!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;The day we hit 0 (or below) is the &#8220;stop point&#8221; for our When simulation.&quot;,&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="" title="The day we hit 0 (or below) is the &#8220;stop point&#8221; for our When simulation." srcset="https://substackcdn.com/image/fetch/$s_!QMth!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 424w, https://substackcdn.com/image/fetch/$s_!QMth!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 848w, https://substackcdn.com/image/fetch/$s_!QMth!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 1272w, https://substackcdn.com/image/fetch/$s_!QMth!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9b01abf1-2f68-48b3-b264-b7dfd35c0332_720x336.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>In the above screenshot, you can see that it took us 16 days to &#8220;close&#8221; 28 items.</p><p>We should again take note of the result. Before we had a specific number of items in a fixed amount of days. Now we want to count how often each day was the one where we got to 0. For my example, we would now increase the count for 16 by 1.</p><p><em>If you follow along, feel free to play around with the numbers again and see the different results you&#8217;re getting.</em></p><p>Again, we should run this more often. Then, we&#8217;ll create a table with the results just as with the &#8220;How Many&#8221; simulation:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9KpO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9KpO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 424w, https://substackcdn.com/image/fetch/$s_!9KpO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 848w, https://substackcdn.com/image/fetch/$s_!9KpO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 1272w, https://substackcdn.com/image/fetch/$s_!9KpO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9KpO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Results Table after 100'000 Runs&quot;,&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="" title="Results Table after 100'000 Runs" srcset="https://substackcdn.com/image/fetch/$s_!9KpO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 424w, https://substackcdn.com/image/fetch/$s_!9KpO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 848w, https://substackcdn.com/image/fetch/$s_!9KpO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 1272w, https://substackcdn.com/image/fetch/$s_!9KpO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6b78547e-c82c-4554-bab1-0d968c6e800f_720x216.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MVRK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MVRK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 424w, https://substackcdn.com/image/fetch/$s_!MVRK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 848w, https://substackcdn.com/image/fetch/$s_!MVRK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 1272w, https://substackcdn.com/image/fetch/$s_!MVRK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MVRK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Visualization of When Forecast.&quot;,&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="" title="Visualization of When Forecast." srcset="https://substackcdn.com/image/fetch/$s_!MVRK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 424w, https://substackcdn.com/image/fetch/$s_!MVRK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 848w, https://substackcdn.com/image/fetch/$s_!MVRK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 1272w, https://substackcdn.com/image/fetch/$s_!MVRK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff55fbe4d-3569-40ef-909c-1e25a87bfa14_720x439.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>We can now apply the same logic as before, and identify the different risk profiles. As an example, there is a 52% chance to close 28 items in 30 days or less:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!16z6!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!16z6!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 424w, https://substackcdn.com/image/fetch/$s_!16z6!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 848w, https://substackcdn.com/image/fetch/$s_!16z6!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 1272w, https://substackcdn.com/image/fetch/$s_!16z6!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!16z6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2fd68c64-ea77-42d2-aded-17328de185af_720x47.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;52.199% of our simulations managed to close 28 items in 30 days or less&quot;,&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="" title="52.199% of our simulations managed to close 28 items in 30 days or less" srcset="https://substackcdn.com/image/fetch/$s_!16z6!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 424w, https://substackcdn.com/image/fetch/$s_!16z6!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 848w, https://substackcdn.com/image/fetch/$s_!16z6!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 1272w, https://substackcdn.com/image/fetch/$s_!16z6!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2fd68c64-ea77-42d2-aded-17328de185af_720x47.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Congratulations, you now ran both a <em>How Many </em>and a <em>When </em>forecast using Monte Carlo Simulation.</p><h2>How Stable Throughput Affects Monte Carlo Simulations</h2><p>In the beginning, we mentioned that we only need Throughput for the Monte Carlo Simulation. However, the other flow metrics might be an indicator of how well the Monte Carlo Simulation will work. As you now should have a solid understanding of how it works, this might make more sense.</p><p>If we were perfectly predictable, we would have a &#8220;stable&#8221; Throughput. This means, that every single day (or whatever unit of time you are using), we would have the same value. If that were the case, every single run of the Monte Carlo Simulation would result in the same result.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Dclw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Dclw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 424w, https://substackcdn.com/image/fetch/$s_!Dclw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 848w, https://substackcdn.com/image/fetch/$s_!Dclw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 1272w, https://substackcdn.com/image/fetch/$s_!Dclw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Dclw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;&#8220;Stable Throughput&#8221; of 1 every single day (including weekends)&quot;,&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="" title="&#8220;Stable Throughput&#8221; of 1 every single day (including weekends)" srcset="https://substackcdn.com/image/fetch/$s_!Dclw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 424w, https://substackcdn.com/image/fetch/$s_!Dclw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 848w, https://substackcdn.com/image/fetch/$s_!Dclw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 1272w, https://substackcdn.com/image/fetch/$s_!Dclw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F94df7c83-fae7-4c6c-b4a2-3e929364e17b_720x440.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>The original Throughput sums up to 32 items for December. You can go back to the Throughput sheet, and change <strong>all</strong> entries in Throughput/Day to 1. That adds up to almost the same total, but what happens with the simulations if you run a couple of them? What do you observe?</em></p><p>On the other hand, if you have a long period where there is nothing closed, and then suddenly a large amount, you would have more &#8220;extremes&#8221; in your simulations. As most of the time you will select days with 0 (as the chance is higher), but for some runs you might get many instances where you pick the &#8220;high Throughput days&#8221;. This will increase the &#8220;spread of the results&#8221;.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!S680!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!S680!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 424w, https://substackcdn.com/image/fetch/$s_!S680!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 848w, https://substackcdn.com/image/fetch/$s_!S680!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 1272w, https://substackcdn.com/image/fetch/$s_!S680!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!S680!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Very &#8220;unstable&#8221; Throughput, where few days have lots of closed items while most days have 0&quot;,&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="" title="Very &#8220;unstable&#8221; Throughput, where few days have lots of closed items while most days have 0" srcset="https://substackcdn.com/image/fetch/$s_!S680!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 424w, https://substackcdn.com/image/fetch/$s_!S680!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 848w, https://substackcdn.com/image/fetch/$s_!S680!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 1272w, https://substackcdn.com/image/fetch/$s_!S680!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F68db22d6-bb16-4092-8325-1765ad87bdbe_720x429.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p><em>Again, what if we change how the total Throughput of 32 is distributed over the whole month? Change the Throughput/Day so that the team would have had many days with zero, while there are just a few days where there was a lot of stuff completed.</em></p><p>This means, a focus on flow, making sure your items don&#8217;t age too long, your WIP is not too high and you are working in small batches will affect the Monte Carlo Simulation.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!O-s2!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!O-s2!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 424w, https://substackcdn.com/image/fetch/$s_!O-s2!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 848w, https://substackcdn.com/image/fetch/$s_!O-s2!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 1272w, https://substackcdn.com/image/fetch/$s_!O-s2!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!O-s2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;It&#8217;s all connected &#8212; Source: imgflip.com&quot;,&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="" title="It&#8217;s all connected &#8212; Source: imgflip.com" srcset="https://substackcdn.com/image/fetch/$s_!O-s2!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 424w, https://substackcdn.com/image/fetch/$s_!O-s2!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 848w, https://substackcdn.com/image/fetch/$s_!O-s2!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 1272w, https://substackcdn.com/image/fetch/$s_!O-s2!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F93a62ca0-e3e5-4beb-8099-147570d4e7b4_666x500.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>There are also more advanced methods to analyze how predictable your Throughput is: The usage of Process Behaviour Charts with so-called XmR charts. However, that would go way beyond the scope of this post. You can find more information about this in Daniel Vacanti&#8217;s new book &#8220;<a href="https://leanpub.com/actionableagilemetricsii">Actionable Agile Metrics Volume II</a>&#8221;:</p><h2>Tools for Monte Carlo Simulations</h2><p>Before we wrap up, we wanted to share some tooling for running Monte Carlo Simulations. It&#8217;s nice to run it manually, but not very practical. In the end, you want to have it automated to run it frequently, or ideally even automated, so that you can move towards continuous forecasting.</p><h3>Write your Own</h3><p>As you went through the algorithm now, we hope that you saw that it&#8217;s not complex. You should have a computer to run many simulations, but if you can write code, you should be able to write a script that does the calculation for you.</p><p>The advantage of this approach is that you can customize it fully to your needs. It allows you to integrate with your systems, and your pipelines, and take all the special cases you have into account.</p><h3>Lighthouse</h3><p>If writing your own is not an option, you might look at <a href="https://letpeople.work/lighthouse">Lighthouse</a>. It's a tool we've developed to continuously run probabilistic forecasts.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I2vu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I2vu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 424w, https://substackcdn.com/image/fetch/$s_!I2vu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 848w, https://substackcdn.com/image/fetch/$s_!I2vu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 1272w, https://substackcdn.com/image/fetch/$s_!I2vu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I2vu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!I2vu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 424w, https://substackcdn.com/image/fetch/$s_!I2vu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 848w, https://substackcdn.com/image/fetch/$s_!I2vu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 1272w, https://substackcdn.com/image/fetch/$s_!I2vu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb2ec205a-88bf-465e-b680-785e8ad8e9ac_1000x434.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>You can run forecasts for Features with one or many teams involved and also do "manual" forecasts (When and How Many) for each of your teams:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!f6S1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!f6S1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 424w, https://substackcdn.com/image/fetch/$s_!f6S1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 848w, https://substackcdn.com/image/fetch/$s_!f6S1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 1272w, https://substackcdn.com/image/fetch/$s_!f6S1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!f6S1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!f6S1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 424w, https://substackcdn.com/image/fetch/$s_!f6S1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 848w, https://substackcdn.com/image/fetch/$s_!f6S1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 1272w, https://substackcdn.com/image/fetch/$s_!f6S1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F940be666-69c2-4b60-83b9-412f68bb1aa4_1000x274.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Find out how to use it and get a link to the Demo on our dedicated <a href="https://letpeople.work/lighthouse">Lighthouse info page.</a></p><h3>MonteCarloCSV</h3><p>If you won't or can't use Lighthouse, you might look at <a href="https://letpeople.work/montecarlocsv">MonteCarloCSV</a>.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jG9Q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jG9Q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 424w, https://substackcdn.com/image/fetch/$s_!jG9Q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 848w, https://substackcdn.com/image/fetch/$s_!jG9Q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 1272w, https://substackcdn.com/image/fetch/$s_!jG9Q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jG9Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Monte Carlo Simulation from MonteCarloCSV&quot;,&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="" title="Monte Carlo Simulation from MonteCarloCSV" srcset="https://substackcdn.com/image/fetch/$s_!jG9Q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 424w, https://substackcdn.com/image/fetch/$s_!jG9Q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 848w, https://substackcdn.com/image/fetch/$s_!jG9Q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 1272w, https://substackcdn.com/image/fetch/$s_!jG9Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feba28d45-c987-4b9a-9df2-39213bfe8043_720x338.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>It&#8217;s a Python script that works with any CSV file as input. Just export the &#8220;closed dates&#8221; of your items into a CSV, feed the script with it, and your simulations can be run.</p><p>This might be a good option if you don&#8217;t want or don&#8217;t know how to build your tool. You can also use it as an easy way to try Monte Carlo Simulations out, without investing too much time. If you like it, you can even start building your tool based on the existing code.</p><p>Last but not least, the code is open source and you can run it on your system. Your data does not need to leave any of your systems. If you or your company is concerned about where their data ends up, this might be the tool for you.</p><h3>Actionable Agile</h3><p><a href="https://support.55degrees.se/page/actionable-agile">Actionable Agile </a>(AA) is &#8220;the tool&#8221; for all things flow. It&#8217;s very powerful and integrates with Azure DevOps and Jira. It&#8217;s a SaaS offering, and you can find more information on their website.</p><h3>FlowViz</h3><p>Last but not least, if you are using Azure DevOps or Jira and rely on Power BI to visualize your data, <a href="https://github.com/nbrown02/FlowViz">FlowViz </a>might be a great alternative for you. It&#8217;s free to use and very powerful. It can run Monte Carlo Simulations as well as display other useful information for analyzing the flow of your teams.</p><h2>Conclusion</h2><p>In this post, you went through the steps that are needed to create a forecast using a Monte Carlo Simulation. You created both a &#8220;When&#8221; as well as a &#8220;How Many&#8221; forecast. Furthermore you saw that the only thing you need to do this is to have the data on the Throughput of your team. And that&#8217;s something you most likely have already!</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!tziE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!tziE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 424w, https://substackcdn.com/image/fetch/$s_!tziE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 848w, https://substackcdn.com/image/fetch/$s_!tziE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 1272w, https://substackcdn.com/image/fetch/$s_!tziE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!tziE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Remember that picture from the very top? Is it more clear now what you can see?&#8212; Source: Actionable Agile/55 Degrees&quot;,&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="" title="Remember that picture from the very top? Is it more clear now what you can see?&#8212; Source: Actionable Agile/55 Degrees" srcset="https://substackcdn.com/image/fetch/$s_!tziE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 424w, https://substackcdn.com/image/fetch/$s_!tziE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 848w, https://substackcdn.com/image/fetch/$s_!tziE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 1272w, https://substackcdn.com/image/fetch/$s_!tziE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F56c152e6-4861-4876-81ad-4e86cdcb7c46_720x488.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>I hope the post helped you to demystify Monte Carlo forecasts and gave you a good insight into the method itself.</p><p>As you now know that you don&#8217;t need too much to try it, I&#8217;d encourage you to give it a try yourself. If you do, let me know how it went!</p><h2>Additional Resources</h2><p>Following are some additional resources that we recommend to check out to learn more:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.youtube.com/watch?v=A_0ngk6OlRg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!qzC0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!qzC0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!qzC0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!qzC0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!qzC0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.youtube.com/watch?v=A_0ngk6OlRg&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!qzC0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!qzC0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!qzC0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!qzC0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F73332eb3-8dda-4f80-ac2d-95765caba5da_1280x720.jpeg 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><a href="https://www.55degrees.se/post/monte-carlo-simulations-and-forecasting?source=post_page-----4706f675a02f--------------------------------">Monte Carlo Simulations and Forecasting</a></p><p><a href="https://www.goodreads.com/book/show/25867120-actionable-agile-metrics-for-predictability?ac=1&amp;from_search=true&amp;qid=U0WMBwHLel&amp;rank=1&amp;source=post_page-----4706f675a02f--------------------------------">Actionable Agile Metrics for Predictability: An Introduction</a></p><p><a href="https://www.goodreads.com/book/show/40681093-when-will-it-be-done?from_search=true&amp;from_srp=true&amp;qid=paTCzIr1Rb&amp;rank=1&amp;source=post_page-----4706f675a02f--------------------------------">When Will It Be Done?: Lean-Agile Forecasting to Answer Your Customers' Most Important Question</a></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://www.youtube.com/watch?v=h3Ds80fYvdw" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fr1G!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fr1G!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fr1G!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fr1G!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fr1G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg" width="1280" height="720" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:720,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:&quot;https://www.youtube.com/watch?v=h3Ds80fYvdw&quot;,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fr1G!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 424w, https://substackcdn.com/image/fetch/$s_!fr1G!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 848w, https://substackcdn.com/image/fetch/$s_!fr1G!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!fr1G!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2e83b2ff-c24f-42b5-9437-7099f7b3ee89_1280x720.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div>]]></content:encoded></item><item><title><![CDATA[Reality Check Through Scatter Plotting]]></title><description><![CDATA[This post was originally published on Medium and was slightly adjusted when republishing here.]]></description><link>https://blog.letpeople.work/p/reality-check-through-scatter-plotting</link><guid isPermaLink="false">https://blog.letpeople.work/p/reality-check-through-scatter-plotting</guid><dc:creator><![CDATA[Peter]]></dc:creator><pubDate>Fri, 02 Aug 2024 07:51:05 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/bf14234e-76d6-47ac-84a2-55023d030b07_720x405.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>This post was originally published on </em><a href="https://medium.com/@peter_89654/reality-check-through-scatter-plotting-6a476523c699">Medium </a><em>and was slightly adjusted when republishing here.</em></p><p>There is a lot of noise in the daily life of companies &#8212; especially if you are part of a big corporation. By now, most have undergone at least one transformation and have adopted some form of an agile framework including&nbsp;several tools that come with it &#8212; whether&nbsp;useful&nbsp;or not.</p><p>Fact is: These tools are being used&nbsp;and&nbsp;if you are one of the lucky ones who works in a proper product-driven company, this article is potentially not as useful.</p><p>In this article, I&#8217;d like to share examples of how I have seen one particular tool used and how a simple method helped to&nbsp;open discussions that were not possible&nbsp;before.&nbsp;It&#8217;s something that I would encourage everyone using the tool to try out for themselves.</p><p>The tool I&#8217;m talking about is of&nbsp;course:</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lg-q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lg-q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 424w, https://substackcdn.com/image/fetch/$s_!lg-q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 848w, https://substackcdn.com/image/fetch/$s_!lg-q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 1272w, https://substackcdn.com/image/fetch/$s_!lg-q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lg-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8accf464-7d27-4d73-9e65-f93693623204_720x405.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lg-q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 424w, https://substackcdn.com/image/fetch/$s_!lg-q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 848w, https://substackcdn.com/image/fetch/$s_!lg-q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 1272w, https://substackcdn.com/image/fetch/$s_!lg-q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8accf464-7d27-4d73-9e65-f93693623204_720x405.png 1456w" sizes="100vw" fetchpriority="high"></picture><div></div></div></a></figure></div><h2>Story Points</h2><p>What are Story Points anyway?</p><p>According to <a href="https://www.atlassian.com/agile/project-management/estimation">Atlassian</a>:</p><blockquote><p>Story points are units of measure for expressing an estimate of the overall effort required to fully implement a product backlog item or any other piece of work. Teams assign story points relative to work complexity, the amount of work, and risk or uncertainty. Values are assigned to more effectively break down work into smaller pieces, so they can address uncertainty. Over time, this helps teams understand how much they can achieve in a period of time and builds consensus and commitment to the solution. It may sound counter-intuitive, but this abstraction is helpful because it pushes the team to make tougher decisions around the difficulty of work.</p></blockquote><p>And even though not required by a framework like Scrum, most teams I have come across do use Story Points and some form or Planning Poker to align on the effort that team members think a specific work item will require.</p><p>And while this conversation can be useful, in a lot of teams it ends up being fruitless conversations about &#8220;Is this 2 or 3 Story Points?&#8221;</p><p>Other frameworks, like a famous scaling framework, propose the idea of &#8220;normalized Story Points&#8221; to help predict the story point size for Epics and Features &#8212; meaning find a story that requires 1/2 day for coding and 1/2 for testing and call this story your &#8220;1 Story Point&#8221; work item. Then give every developer or tester in your team 8 Story Points to work on during an iteration and off you go!</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!zckA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!zckA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 424w, https://substackcdn.com/image/fetch/$s_!zckA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 848w, https://substackcdn.com/image/fetch/$s_!zckA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 1272w, https://substackcdn.com/image/fetch/$s_!zckA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!zckA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!zckA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 424w, https://substackcdn.com/image/fetch/$s_!zckA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 848w, https://substackcdn.com/image/fetch/$s_!zckA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 1272w, https://substackcdn.com/image/fetch/$s_!zckA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21701559-09a2-4dd0-b281-ad1cfdb752bf_720x405.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>The Ugly Mess</h2><p>When joining companies nowadays and hearing about the organization using Story Points, I have to admit that my alarm bells are going off.</p><p>The first thing I do is to check the understanding of what Story Points mean, so I usually ask the open question: &#8220;What are Story Points to you?&#8221;</p><p>What comes next is usually a mixture of all the things stated above and &#8220;but we are not taking complexity into account, right?&#8221; is being shared every single time in these conversations. Which then usually leads to more proof that the understanding of what is even being done is not aligned within teams and companies.</p><p>I usually then try to throw Ron Jeffries into the mix and share that the person who invented Story Points even apologized for it.</p><blockquote><p><em>I like to say that I may have invented story points, and if I did, I&#8217;m sorry now. Let&#8217;s explore my current thinking on story points. At least one of us is interested in what I think. &#8212; </em><a href="https://ronjeffries.com/articles/019-01ff/story-points/Index.html">Ron Jeffries</a>, potential inventor of Story Points</p></blockquote><p>But it seems like the arguments and ideas in the article by Jeffries were still not good enough.</p><h2>Go Where It Hurts</h2><p>So my next move was usually to see what benefits companies see in using Story Points to estimate OR where they become a challenge &#8212; and very quickly you saw an ugly picture of velocities being (mis)-used to predict the future of teams.</p><p>Be it for Sprint Planning, the quarterly planning or to predict when an important feature/milestone will be reached.</p><p>I have seen a lot:</p><ul><li><p>Teams tweak their velocity because humans know how to trick a system</p></li></ul><ul><li><p>Complex Excel Sheets in which the Average Base Velocity was calculated and then mapped to the availability of team members</p></li><li><p>Re-estimating a story during the sprint closing</p></li><li><p>Weeks spent on getting the capacity and story point estimates into a tool for an entire quarter</p></li></ul><p>But what almost all teams and organizations had in common was that there was some dissatisfaction on the management level about what teams committed to deliver vs. what they delivered.</p><p>This usually led to statements like:</p><ul><li><p>Teams need to estimate better</p></li><li><p>They need to spend more time refining the stories</p></li><li><p>The preparation week needs to be extended (for quarterly planning)</p></li><li><p>We need more Agile Coaches</p></li><li><p>We need more team members</p></li></ul><p>And I could probably go on for even more. At the same time, I was not able to get my message across that these things will not necessarily improve the situation, for different reasons. What I was lacking was a visual system that would give me a seat at the table to discuss what was going wrong.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6YGe!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6YGe!,w_424,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 424w, https://substackcdn.com/image/fetch/$s_!6YGe!,w_848,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 848w, https://substackcdn.com/image/fetch/$s_!6YGe!,w_1272,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 1272w, https://substackcdn.com/image/fetch/$s_!6YGe!,w_1456,c_limit,f_webp,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6YGe!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6YGe!,w_424,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 424w, https://substackcdn.com/image/fetch/$s_!6YGe!,w_848,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 848w, https://substackcdn.com/image/fetch/$s_!6YGe!,w_1272,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 1272w, https://substackcdn.com/image/fetch/$s_!6YGe!,w_1456,c_limit,f_auto,q_auto:good,fl_lossy/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8d16c0d4-b377-47fe-be04-138308c2c569_400x213.gif 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><h2>Scatterplot to the Rescue</h2><blockquote><p>Have you tried putting the Story Points on a Scatterplot and mapping Cycle Time to it? - Well, you know&#8230;.No</p></blockquote><p>This is at least how a conversation between Benjamin Huser-Berta and me must have looked like.</p><p>But my answer was honest &#8212; I have never even thought about the option of actually reflecting on estimates and mapping them to Cycle Time.</p><p>You might wonder, <a href="https://www.letpeople.work/post/using-flow-metrics-from-feelings-to-facts">what do you mean by Cycle Time?</a></p><blockquote><p><em><strong>Cycle Time:</strong>&nbsp;The amount of elapsed time between when a work item started and when a work item finished. - <a href="https://kanbanguides.org/english/">The Kanban Guide</a></em></p></blockquote><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ydkY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ydkY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 424w, https://substackcdn.com/image/fetch/$s_!ydkY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 848w, https://substackcdn.com/image/fetch/$s_!ydkY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 1272w, https://substackcdn.com/image/fetch/$s_!ydkY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ydkY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ydkY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 424w, https://substackcdn.com/image/fetch/$s_!ydkY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 848w, https://substackcdn.com/image/fetch/$s_!ydkY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 1272w, https://substackcdn.com/image/fetch/$s_!ydkY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd845b297-fee7-4b37-a83a-bde2f21a07e0_360x203.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>And here is the thing: Using data was not something I was very fond of in the past. I have considered myself as someone who is simply not interested in it and therefore protected myself from ever digging into it &#8212; in Coaching we would probably call it &#8220;limiting belief&#8221;.</p><p>But here I was mapping Story Points to Cycle Time and the results I got were: <strong>SHOCKING</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!o2U0!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!o2U0!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 424w, https://substackcdn.com/image/fetch/$s_!o2U0!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 848w, https://substackcdn.com/image/fetch/$s_!o2U0!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 1272w, https://substackcdn.com/image/fetch/$s_!o2U0!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!o2U0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!o2U0!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 424w, https://substackcdn.com/image/fetch/$s_!o2U0!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 848w, https://substackcdn.com/image/fetch/$s_!o2U0!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 1272w, https://substackcdn.com/image/fetch/$s_!o2U0!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd8438286-ddc2-4413-8e2f-d02e9e85fc84_640x390.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>You would assume that there is some correlation between story points and time. Not always, as there is variance in complex work. But in general, you would assume that a 13 takes longer than an 8, which takes longer than a 2.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!79nw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!79nw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 424w, https://substackcdn.com/image/fetch/$s_!79nw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 848w, https://substackcdn.com/image/fetch/$s_!79nw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 1272w, https://substackcdn.com/image/fetch/$s_!79nw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!79nw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!79nw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 424w, https://substackcdn.com/image/fetch/$s_!79nw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 848w, https://substackcdn.com/image/fetch/$s_!79nw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 1272w, https://substackcdn.com/image/fetch/$s_!79nw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F27a73623-55ff-4a4a-aaf9-366692b9c91b_640x408.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Most of the Scatterplots looked like the ones above, they showcased there was almost no relationship between estimated Story Points and the Cycle time. This was indeed a problem as these organizations used the &#8220;normalized story point&#8221; approach.</p><p>So whenever they did plan their quarter, their firm belief was:</p><blockquote><p>1 Story Point = 1 day of work</p></blockquote><p>Only to find out by the end of the quarter that their delivery rate was again not even close to their desired goal.</p><p>As we can see in the 2 Scatterplots above, 2 Story Points could mean a range from a few days of Cycle times up to almost 160 days. Or that a Story estimated with 10 Story Points could take just as much time as a Story with 1,2 or whatever number of Story Points.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!RYmr!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!RYmr!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 424w, https://substackcdn.com/image/fetch/$s_!RYmr!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 848w, https://substackcdn.com/image/fetch/$s_!RYmr!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 1272w, https://substackcdn.com/image/fetch/$s_!RYmr!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!RYmr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/389df780-f117-42b1-acab-b2539c79b2b0_720x432.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Chart generated with FlowMetricsCSV by LetPeopleWork&quot;,&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="" title="Chart generated with FlowMetricsCSV by LetPeopleWork" srcset="https://substackcdn.com/image/fetch/$s_!RYmr!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 424w, https://substackcdn.com/image/fetch/$s_!RYmr!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 848w, https://substackcdn.com/image/fetch/$s_!RYmr!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 1272w, https://substackcdn.com/image/fetch/$s_!RYmr!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F389df780-f117-42b1-acab-b2539c79b2b0_720x432.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>This was not a localized problem but something I can see happening for a lot of teams, regardless of the framework they are working as seen in the scatterplot above. A team working with Scrum and wondering why they are not able to finish what they plan to do.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MnGE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MnGE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 424w, https://substackcdn.com/image/fetch/$s_!MnGE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 848w, https://substackcdn.com/image/fetch/$s_!MnGE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 1272w, https://substackcdn.com/image/fetch/$s_!MnGE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MnGE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:&quot;Chart generated with FlowMetricsCSV by LetPeopleWork&quot;,&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="" title="Chart generated with FlowMetricsCSV by LetPeopleWork" srcset="https://substackcdn.com/image/fetch/$s_!MnGE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 424w, https://substackcdn.com/image/fetch/$s_!MnGE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 848w, https://substackcdn.com/image/fetch/$s_!MnGE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 1272w, https://substackcdn.com/image/fetch/$s_!MnGE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b99abbd-0a54-4929-b87d-707cc035f3fa_720x432.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>A conversation about how their cycle time (85th percentile) is 20 days or less, allowed us to have a good conversation on why this team is struggling to finish things in a 2-week sprint. A conversation about, what we can learn from the other items (below the red line).</p><h2>Seat at the Table</h2><p>And this to me is the real magic and provided me with a valuable lesson for the future: Visualizing something fosters dialogues and conversations about what matters.</p><p>Bringing this scatterplot into meetings with management and teams shifted the conversation from:</p><blockquote><p>&#8220;They need to estimate better.&#8221;</p></blockquote><p>towards</p><blockquote><p>&#8220;We might have a systemic issue here.&#8221;</p></blockquote><p>With very little effort, we were able to give people visualized information they were able to base their conversations on. It was not information they all individually had in their heads, but it was visible on their screens, in their meeting rooms and finally, a dialogue was made possible.</p><p>The visualization helped to understand what was happening in the system and why this department was getting the results they were getting.</p><p>We gave them an idea of their reality.</p><h2>My Recommendation</h2><p>It&#8217;s very tempting in a situation like this to now hire experts and have them work with the team to improve estimates and work on the symptom. Start looking for who is accountable for the situation, change people, change managers, keep everyone busy, and generate a new kind of noise which will probably dilute the issue at hand for a moment.</p><p><a href="http://moment.In">In</a> a situation like this, my recommendation is and was to start looking into what you already have. Look for patterns that look different, see what you can learn out of them.</p><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Ov53!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Ov53!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 424w, https://substackcdn.com/image/fetch/$s_!Ov53!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 848w, https://substackcdn.com/image/fetch/$s_!Ov53!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 1272w, https://substackcdn.com/image/fetch/$s_!Ov53!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Ov53!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:null,&quot;width&quot;:null,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Ov53!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 424w, https://substackcdn.com/image/fetch/$s_!Ov53!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 848w, https://substackcdn.com/image/fetch/$s_!Ov53!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 1272w, https://substackcdn.com/image/fetch/$s_!Ov53!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e33a14e-a7cc-4942-bffa-2ea1422b2cfe_720x401.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a></figure></div><p>Like with the team above &#8212; we can see that this team was able to finish most of their work items in 10 days or less. Go and talk to the team &#8212; what do they do differently? What can we now do with this information? Is this a concept that would help us with the challenge at hand?</p><p>Once you have the conversation, you can bring in different ideas which yes, could include paying closer attention to Flow Metrics and using your Throughput to do Monte Carlo Simulations that will give you a better prediction.</p><h2>Try It Out Yourself</h2><p>If you are in an environment in which Story Points are being used to predict the future (Sprint Planning, Quarterly Planning, etc.), take a look at the tools we provide for free.</p><h3>FlowMetricsCSV</h3><p>With <a href="https://github.com/LetPeopleWork/FlowMetricsCSV">FlowMetricsCSV </a>you can extract your issues from your work tracking tool and create a Scatterplot with your data.</p><h3>FlowPulse</h3><p>With <a href="https://github.com/LetPeopleWork/FlowPulse">FlowPulse </a>you can automate the process, and instead of extracting the data into CSV, you can directly hook it up with either Jira or Azure DevOps.</p><p>If Python is too tricky for you (trust me though, if I was able to do it, you can do it too), you can also do it manually and extract your completed issues from the last quarter into an Excel file-take the Cycle Time and Story Points for your input and create a Scatterplot in Excel.</p><p>Using Scatterplots gave and still gives me a lot of answers on why certain things do not work for teams and organizations &#8212; i.e. a cycle time of 19 or days or less (85th percentile) for teams that work in a 2-week sprint, says a lot about why a team is not able to finish their tasks within a specific time frame.</p><p>As stated above: It gives us a glimpse into reality and opens doors for fruitful conversations.</p><h2>Use What Makes Sense, But Do Not Lose Sight on Alternatives</h2><p>Hear me out: I don&#8217;t ask anyone to stop doing something that works for anyone. If you are using Story Points (or any other form of estimation) and it works for you and your teams, good job. Keep it going, keep reflecting, and listen to the feedback you get from the inside and the outside.</p><p>Also if you read the article and think: What is he even talking about? We do proper product development, we work closely together, work quickly to verify assumptions and then get on with the work that is upcoming and do not even waste our time thinking what happens in 2 weeks, let alone 3 months, I&#8217;m happy for you and the work environment you seem to work in.</p><p>My reality though is that there is still a big demand for predictability in companies (especially bigger ones) and I&#8217;d ask everyone to be curious about other options to predict what can be done and when something can be done.</p>]]></content:encoded></item></channel></rss>