<?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[Software Antifragility]]></title><description><![CDATA[What makes software fail? Legacy code? Competitive software solution? Sloppy design? Bad coding? Low team morale? Lack of funding? Inexperienced leaders? Can software stand the taste of time? Enter Software Antifragility!]]></description><link>https://www.softwareantifragility.com</link><image><url>https://substackcdn.com/image/fetch/$s_!JN9Q!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F42341aa2-880f-43a1-9fc0-2c3128482e54_256x256.png</url><title>Software Antifragility</title><link>https://www.softwareantifragility.com</link></image><generator>Substack</generator><lastBuildDate>Sun, 12 Apr 2026 21:03:02 GMT</lastBuildDate><atom:link href="https://www.softwareantifragility.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Dr. Apostolos Kritikos]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[softwareantifragility@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[softwareantifragility@substack.com]]></itunes:email><itunes:name><![CDATA[Apostolos Kritikos, Ph.D.]]></itunes:name></itunes:owner><itunes:author><![CDATA[Apostolos Kritikos, Ph.D.]]></itunes:author><googleplay:owner><![CDATA[softwareantifragility@substack.com]]></googleplay:owner><googleplay:email><![CDATA[softwareantifragility@substack.com]]></googleplay:email><googleplay:author><![CDATA[Apostolos Kritikos, Ph.D.]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[5 Open Source Projects that learned from failure]]></title><description><![CDATA[How PostgreSQL, Python, OpenSSL, Git and React grew stronger through challenges]]></description><link>https://www.softwareantifragility.com/p/5-open-source-projects-that-learned</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/5-open-source-projects-that-learned</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 20 Nov 2025 15:03:14 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!9UyW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9UyW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9UyW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9UyW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9UyW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9UyW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9UyW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/afd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2939399,&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://www.softwareantifragility.com/i/179392650?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.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_!9UyW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg 424w, https://substackcdn.com/image/fetch/$s_!9UyW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg 848w, https://substackcdn.com/image/fetch/$s_!9UyW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!9UyW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fafd58bd8-7a60-4fe1-ac9f-1be69d3daa87_5479x3653.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">Photo by Sandra Gr&#252;newald on Unsplash</figcaption></figure></div><p>In my previous articles we discussed challenges, stressors and common bad practices that software projects may face. Almost every software system evolves through pressure, unexpected failures, design mistakes, governance gaps, and the constant friction between what users need and what the architecture can support. Now when we talk about antifragility in software, we talk about a pattern that emerges when a project becomes stronger because of stress, not despite it. We are not talking about the projects that avoided disruption but the ones that had to respond to it.</p><p>Today I want you to join me to a journey down to memory lane. Together we will revisit the evolution of five open source software projects. During their development history, these projects went through several crises. These crises ranged from security incidents to governance disputes to architectural transitions. Each of these projects used the pressure to clarify its direction, strengthen weak processes, or rework assumptions that no longer fit. And that is exactly why they make very good antifragility cases. </p><h2>PostgreSQL</h2><p>During its transition from an academic research project into a community-led database the original codebase had structural limitations and slow development cycles. As users grew frustrated with stalled progress, the community reorganized itself around clearer governance and more incremental releases. This shift created a culture that values careful engineering and transparent decision making, shaped directly by early stress and uncertainty.</p><p>Later, PostgreSQL encountered pressures from large-scale deployments and competition from established commercial databases. These challenges pushed the project into developing advanced indexing, replication, and extensibility features. Instead of weakening the system, these demands clarified architectural priorities and led to the robustness PostgreSQL is known for today. The database grew stronger because real-world stress revealed the next set of capabilities it needed to support.</p><p>If you want to learn more about PostgreSQL&#8217;s challenges and evolution here are some useful articles:</p><ul><li><p><a href="https://www.odbms.org/2025/11/inside-postgresql-an-open-source-projects-growth-governance-and-future-qa-with-joe-conway-and-robert-treat/">Inside PostgreSQL: An Open Source Project&#8217;s Growth, Governance, and Future. Q&amp;A with Joe Conway and Robert Treat</a></p></li><li><p><a href="https://www.enterprisedb.com/blog/place-postgres-history">The History of PostgreSQL: How Postgres Became the World&#8217;s Leading Open Source Database</a></p></li><li><p><a href="https://arxiv.org/pdf/1901.01973">Looking Back at Postgres (arXiv)</a></p></li><li><p><a href="https://learnsql.com/blog/history-of-postgresql/">Breaking With Filing Cabinets: The History of PostgreSQL</a></p></li></ul><h2>Python</h2><p>Python&#8217;s most visible stressor was the long transition from version 2 to version 3. The incompatibility created confusion and fragmentation across ecosystems and organizations. Teams struggled to maintain dual codepaths, and migration resistance became a recurring point of tension. This forced the Python community to improve its governance, clarify long-term roadmaps, and invest in modernization incentives. The project matured through the pressure of reconciling past decisions with future needs.</p><p>Performance limitations created a second persistent stressor. Developers often compared Python unfavorably to languages with stronger throughput characteristics. Instead of destabilizing the project, this led to the creation of PyPy, Cython, better packaging standards, and work on concurrency models like asyncio. Each response strengthened Python by acknowledging constraints and adapting around them rather than denying their existence.</p><p>If you want to learn more about Python&#8217;s challenges and evolution here are some useful articles:</p><ul><li><p><a href="https://www.redhat.com/en/command-line-heroes/season-3/pythons-tale">Python&#8217;s Tale. Command Line Heroes (podcast by RedHat)</a></p></li><li><p><a href="https://news.ycombinator.com/item?id=34439876">YCombinator: Breaking the Snake: How Python went from 2 to 3</a></p></li><li><p><a href="https://talkpython.fm/episodes/show/209/inside-pythons-new-governance-model">Inside Python&#8217;s new governance model</a></p></li></ul><h2>OpenSSL</h2><p>OpenSSL encountered a defining stressor through the Heartbleed vulnerability. The incident exposed long-standing governance and funding gaps and brought global attention to the fragility of widely used cryptographic infrastructure. Instead of collapsing under scrutiny, the project responded with new audits, better testing practices, and increased transparency. The shock created momentum for reforms that had been needed but repeatedly deferred.</p><p>The creation of LibreSSL introduced another challenge. The fork publicly highlighted technical debt and maintainability issues inside the codebase. Rather than fragment the ecosystem, the pressure motivated the OpenSSL team to simplify components, modernize the API, and revise development processes. The project became sturdier because the crisis clarified exactly where technical and organizational reforms were required.</p><p>If you want to learn more about OpenSSL&#8217;s challenges and evolution here are some useful articles:</p><ul><li><p><a href="https://lwn.net/Articles/702751/">OpenSSL after Heartbleed</a></p></li><li><p><a href="https://arstechnica.com/information-technology/2014/04/tech-giants-chastened-by-heartbleed-finally-agree-to-fund-openssl/">Tech giants, chastened by Heartbleed, finally agree to fund OpenSSL</a></p></li><li><p><a href="https://lwn.net/Articles/841664/">LibreSSL languishes on Linux</a></p></li><li><p><a href="https://www.theregister.com/2014/07/12/libressl_portable/">LibreSSL crypto library leaps from OpenBSD to Linux, OS X, more</a></p></li></ul><h2>Git</h2><p>Git originated as a response to the sudden loss of BitKeeper, a proprietary tool crucial to Linux kernel development. The abrupt constraint forced a rapid exploration of new ideas around distributed version control, integrity, and performance. Instead of weakening the development workflow, the stress catalyzed a fresh design that solved long-standing coordination problems in large distributed teams. Git&#8217;s early identity was formed directly by the need to operate without a central point of failure.</p><p>As Git grew, the project confronted usability challenges and workflow confusion among new adopters. Problems with rebasing, merging conflicts, and branching models exposed gaps in documentation and tooling. These pain points pushed maintainers and the community to improve safety features, refine commands, and evolve best practices. Git became more robust because user struggles consistently revealed which areas required clearer patterns and better support.</p><p>If you want to learn more about Git&#8217;s challenges and evolution here are some useful articles:</p><ul><li><p><a href="https://www.linuxjournal.com/content/git-origin-story">A Git Origin Story</a></p></li><li><p><a href="https://www.reddit.com/r/linux/comments/94i2e2/shortish_article_on_how_linus_torvalds_came_up/">Short(-ish) article on how Linus Torvalds came up with git</a></p></li><li><p><a href="https://github.blog/open-source/git/git-turns-20-a-qa-with-linus-torvalds/">Git turns 20: A Q&amp;A with Linus Torvalds</a></p></li><li><p><a href="https://www.gitkraken.com/gitkon/history-of-git">History of Git (GitKon 2021 Keynote)</a></p></li></ul><h2>React</h2><p>React&#8217;s antifragility first surfaced in the licensing controversy surrounding its PATENTS file. Developers questioned the long-term implications of adopting the library, and the pushback challenged Facebook&#8217;s governance assumptions. The maintainers used this tension to revise licensing choices and communicate more openly about project stewardship. The event helped React grow because it forced clearer boundaries around trust, communication, and community expectations.</p><p>React&#8217;s architectural evolution created a second stressor. The introduction of hooks and the shift toward a more functional model presented conceptual and migration difficulties. Early adopters confronted unfamiliar patterns, and many struggled with mental models for state and lifecycle management. These pressures encouraged the ecosystem to refine documentation, standardize patterns, and simplify teaching materials. React strengthened its consistency because the friction revealed where conceptual clarity was lacking.</p><p>If you want to learn more about React&#8217;s challenges and evolution here are some useful articles:</p><ul><li><p><a href="https://coderanger.net/react-patents/">React and Patents</a></p></li><li><p><a href="https://ipwatchdog.com/2017/10/30/facebook-drops-efficient-infringement-clause-from-react-software-license/">Facebook drops efficient infringement clause from its React software license</a></p></li><li><p><a href="https://hackernoon.com/4-lessons-from-the-react-patent-license-controversy-3da3c4baf3a4">4 Lessons from the &#8216;React Patent License&#8217; Controversy</a></p></li><li><p><a href="https://www.reddit.com/r/javascript/comments/574n5f/a_lawyers_review_of_reacts_license/">A lawyer&#8217;s review of React&#8217;s license</a></p></li></ul><h2>Final Thoughts</h2><p>The projects discussed here did not follow a predetermined path toward resilience, or antifragility for that matter. They were shaped by disruptions that forced clearer governance, more deliberate architectural choices, and better alignment between the community and the long-term direction of the software.</p><p>There is value in studying such cases (and the past in general) because they reveal how stress can clarify priorities and expose unrealistic assumptions. They also remind us that growth often follows discomfort. When a system absorbs a shock and uses it to improve, it offers a practical example of how technical, social, and organizational layers interact. As engineers and leaders, the question is not how to avoid stress but how to design environments that respond to it with learning instead of fragility.</p>]]></content:encoded></item><item><title><![CDATA[The Fuzzy Logic of Corporate vs Startup & the hybrid development model ]]></title><description><![CDATA[When choreography is sound, team's size becomes irrelevant]]></description><link>https://www.softwareantifragility.com/p/the-fuzzy-logic-of-corporate-vs-startup</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/the-fuzzy-logic-of-corporate-vs-startup</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 13 Nov 2025 15:01:23 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!QjMW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QjMW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QjMW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg 424w, https://substackcdn.com/image/fetch/$s_!QjMW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg 848w, https://substackcdn.com/image/fetch/$s_!QjMW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!QjMW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QjMW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1568228,&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://www.softwareantifragility.com/i/178722208?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.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_!QjMW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg 424w, https://substackcdn.com/image/fetch/$s_!QjMW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg 848w, https://substackcdn.com/image/fetch/$s_!QjMW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!QjMW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F651d8ea7-96e3-448a-a666-e04714c8ed12_5472x3648.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">Photo by Jametlene Reskp on Unsplash</figcaption></figure></div><p>In every choreography harmony is not born of numbers, but of intent. Whether a single dancer moves in solitude or a hundred glide across the stage, the essence of choreography lies in the invisible thread that binds rhythm, movement, and purpose. Scale does not define the outcome. A duet can echo with the same emotional gravity as an ensemble, provided each gesture serves its purpose.</p><p>Harmony, in this sense, becomes the equilibrium between precision, expression and  discipline. It is the point where the dancers&#8217; individuality dissolves into collective coherence, where the choreography transcends coordination to become communion. </p><p>A choreographer&#8217;s true pursuit is not magnitude but alignment. The end goal is not to fill the stage, but to fill the moment! To turn time, motion, and intention into a collective breath. For when harmony is achieved the stage, no matter its size, becomes infinite.</p><h1>Corporate vs Startup Culture</h1><p>The contrast between startup and corporate cultures is often painted as agility versus structure, creativity versus protocol, passion versus process. Yet this is a false dichotomy. The startup, with its frenetic energy and fluid hierarchies, thrives on motion: ideas emerging raw, unfiltered, evolving in real time. The corporation, by contrast, consists of systems. Each process honed to preserve consistency, each decision guided by precedent. One dances to improvisation, the other to choreography. But both are, in essence, searching for harmony: that elusive alignment between people, purpose, and performance.</p><p>Where startups risk chaos, corporations risk inertia. One may falter from exuberance, the other from complacency. Yet within this tension lies the possibility of synthesis. A mature startup aspires, eventually, to the operational elegance of a corporation. A wise corporation rediscovers, cyclically, the restless spirit of the startup to remain alive. The most antifragile organizations are those that understand when to lead with rhythm and when to lead with structure. When to let the dancers find the beat, and when to steady the tempo.</p><p>Thus, startup and corporate are not opposing forces but complementary movements within the same choreography of innovation. The scale of the team, like the size of a stage, does not determine the grace of the performance. What matters is coherence. A shared rhythm that allows invention and discipline to coexist. In the end, both cultures are striving toward the same goal: a harmony of purpose where creativity finds its frame and structure finds its soul.</p><h1>The Cathedral + The Bazaar!</h1><p>In <em>The Cathedral and the Bazaar</em>, Eric S. Raymond illuminated a profound tension in how creation unfolds: the cathedral, meticulously designed behind closed doors, versus the bazaar, alive with open exchange and constant iteration. The true difference, he observed, was not structure but visibility. In the cathedral model of closed-source development, the process is veiled. The work of a few, revealed only when complete. The bazaar, by contrast, thrives in the sunlight of participation: transparency becomes both a mechanism of quality and a philosophy of trust.</p><p>In the context of modern organisations, this distinction resonates far beyond software. Traditional corporate cultures often mirror the cathedral. Teams working in isolation, information flowing upward rather than outward. Startups, meanwhile, embody the bazaar&#8217;s ethos: porous boundaries, open dialogue, and collective sense-making. Yet the emergence of <em>inner source</em> transforms this binary. By opening the code within an organisation, making it visible to all regardless of team or department, the cathedral&#8217;s walls dissolve without sacrificing its architectural coherence. Visibility no longer threatens control; it enhances alignment.</p><p>In such an environment, harmony is no longer the privilege of small, agile teams. When code, ideas, and intent are shared across an organisation, silos fade into choreography, movement coordinated not by hierarchy, but by shared rhythm. Inner source, then, becomes a synthesis where the stability of the cathedral meets the openness of the bazaar. In this convergence, visibility is not a risk to be managed, but the very light that allows collaboration, trust, and creativity to flourish in unison.</p><h1>Waterfall &amp; Agile is the new Yin &amp; Yang</h1><p>As organisations evolve, they often traverse the same bridge that connects Raymond&#8217;s cathedral and bazaar. In the early days of a startup, energy resembles the bazaar: a cacophony of ideas, swift decisions, and porous hierarchies. Everyone sees the work unfolding. Visibility is total, ownership is collective, and mistakes are treated as steps in the dance rather than flaws in the score. Yet, as the organisation grows, the very chaos that once fuelled innovation begins to strain its rhythm. Processes solidify, structures emerge, and a cathedral slowly rises from the noise. The challenge is to preserve the vibrancy of the bazaar within the quiet discipline of the cathedral. To maintain harmony as the stage expands.</p><p>A similar philosophy underpins the evolution from pure Agile or pure Waterfall to a hybrid approach. Waterfall, like the cathedral, is deliberate: a design drawn in advance, its beauty found in precision and predictability. Agile, like the bazaar, is fluid: it values learning in motion, discovery through iteration. Each has its virtue, but also its constraint. When combined (carefully, consciously) they can form a methodology that acknowledges both the need for foresight and the inevitability of change. The hybrid Agile&#8211;Waterfall model, then, becomes an architectural metaphor for organisational maturity: the scaffolding of the cathedral supporting the improvisation of the bazaar.</p><p>For startups in transition, this hybridisation is not just methodological but existential. Scaling brings weight: more people, more dependencies, more voices. To sustain innovation at scale, an organisation must manage its dual identity. The restless spirit of a startup and the composure of a corporation. The hybrid model allows that synthesis. Agile frameworks empower teams to adapt locally, respond to users, and innovate at the edges. Waterfall structures coordinate the larger machinery, aligning delivery, compliance, and governance. It is a system that learns as it plans but also plans as it learns. </p><p>Ultimately, hybrid project management embodies the same principle that unites choreography, architecture, and open collaboration: harmony through visibility and balance. It accepts that growth need not mean abandoning agility, nor that discipline must suppress creativity. A truly evolving organisation does not choose between cathedral and bazaar, or between Waterfall and Agile. It learns to dance between them. In this sense, the organisation finds its enduring rhythm: structure with transparency, purpose with adaptability, and innovation sustained by design.</p><h3><strong>References</strong></h3><ul><li><p>Zaleski M. <em>Traversing Hybrid Project Management: The Bridge Between Agile and Waterfall.</em> Toptal. Published 2025. Accessed November 14, 2025. <a href="https://www.toptal.com/project-managers/agile/hybrid-project-management-a-middle-ground-between-agile-and-waterfall">https://www.toptal.com/project-managers/agile/hybrid-project-management-a-middle-ground-between-agile-and-waterfall</a></p></li><li><p>Harvard Business School Online. <em>Startup vs. Corporate Culture: What&#8217;s the Difference?</em> Published August 31, 2023. Accessed November 14, 2025. <a href="https://online.hbs.edu/blog/post/startup-vs-corporate-culture">https://online.hbs.edu/blog/post/startup-vs-corporate-culture</a></p></li><li><p>Devologyx. <em>Startup Culture Versus Corporate Culture: Which Is Best for You?</em> Published 2024. Accessed November 14, 2025. <a href="https://devologyx.io/startup-culture-versus-corporate-culture-which-is-best-for-you/">https://devologyx.io/startup-culture-versus-corporate-culture-which-is-best-for-you/</a></p></li><li><p>Founders Network. <em>Startup vs. Big Company: Which Is Right for You?</em> Published 2024. Accessed November 14, 2025. <a href="https://foundersnetwork.com/startup-vs-big-company/">https://foundersnetwork.com/startup-vs-big-company/</a></p></li><li><p>Raymond ES. <em>The Cathedral and the Bazaar.</em> Published 2000. Accessed November 14, 2025. <a href="http://www.catb.org/~esr/writings/cathedral-bazaar/">http://www.catb.org/~esr/writings/cathedral-bazaar/</a></p></li></ul><p></p>]]></content:encoded></item><item><title><![CDATA[Skeletons as a Service. Part 1: Startups]]></title><description><![CDATA[Somewhere, something, went terribly wrong!]]></description><link>https://www.softwareantifragility.com/p/skeletons-as-a-service-part-1-startups</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/skeletons-as-a-service-part-1-startups</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 06 Nov 2025 15:02:31 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ngFp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ngFp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ngFp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ngFp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ngFp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ngFp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ngFp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1626095,&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://www.softwareantifragility.com/i/178118094?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.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_!ngFp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ngFp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ngFp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ngFp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F567b2eea-e13d-4d99-bbd0-d72b47ec41e5_4200x2800.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">Photo by Ewan Buck on Unsplash</figcaption></figure></div><p>A software startup is, in its essence, a hypothesis. A tentative combination of technology, market timing, and belief in a user need that might not yet exist. It carries the posture of innovation, but beneath that, it is a fragile construct. A prototype of a business model wrapped around assumptions waiting to be tested. The product is a manifestation of these assumptions, an interface layered over uncertainties about usage, adoption, pricing, and retention. Before it is a company, it is a question.</p><p>But this question is posed to a market that is not static. It is dynamic, multi-dimensional, and entangled with variables far beyond the startup&#8217;s scope or control. Economic conditions shift. Legal frameworks evolve. Competitors pivot or collapse. Technical landscapes change rapidly. Even the internal rhythms of decision-making can create fault lines. Each of these vector, business, software, legal, economic, can become a source of pressure. In time, some of these pressures manifest as crises. Whether or not they become fatal depends on the antifragility of the startup, or to put it in another way, how many &#8220;skeletons has in its closet&#8221;.</p><h1>The lifecycle of a startup</h1><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AjAT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AjAT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png 424w, https://substackcdn.com/image/fetch/$s_!AjAT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png 848w, https://substackcdn.com/image/fetch/$s_!AjAT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png 1272w, https://substackcdn.com/image/fetch/$s_!AjAT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AjAT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png" width="768" height="746" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:746,&quot;width&quot;:768,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Your Startup Journey&quot;,&quot;title&quot;:null,&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="Your Startup Journey" title="Your Startup Journey" srcset="https://substackcdn.com/image/fetch/$s_!AjAT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png 424w, https://substackcdn.com/image/fetch/$s_!AjAT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png 848w, https://substackcdn.com/image/fetch/$s_!AjAT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.png 1272w, https://substackcdn.com/image/fetch/$s_!AjAT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8183fe8f-c219-4bef-8874-a178668a7c59_768x746.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><figcaption class="image-caption">Silicon Valley Bank: What are the three stages of a startup?</figcaption></figure></div><p>This graph originates from Silicon Valley Bank&#8217;s article titled <em>&#8220;What are the three stages of a startup?&#8221; </em>[1]. I referenced these stages during my talk at the <a href="https://www.youtube.com/watch?v=yvTn5DGvSA0">InnerSource Summit 2024</a> [2] international conference to describe the evolution of InstaShop, the company I currently serve, as it progressed from startup to acquisition by a publicly traded company. InstaShop successfully gone full-circle, passing through each of the three stages described. Not all startups, however, have this luxury. In fact, <strong>90% or more</strong> of them, fail!</p><p>The early stage of a startup does not begin with scale but with a question. There is a kernel of an idea, sometimes born out of persistent frustration, other times from a moment of clarity, suggesting that a product or service could be viable under the right conditions. This phase involves defining the problem and shaping the first response. The team is small, risk is high, and most commitments are personal rather than formal. Resources tend to be limited and improvised. It is in this environment that the initial product takes form, often alongside the first attempts to raise funding. Support commonly comes from friends, family, or personal savings. Accelerators may enter the picture once the team has built something more tangible than an idea.</p><p>The venture-funded stage begins with the arrival of Series A capital. At this point, the focus shifts from potential to performance. Investors come with expectations, and the business must demonstrate its ability to grow. The company is now expected to scale its operations with a clear plan, a structured team, and a functioning sales strategy. Founders take on new responsibilities, often moving away from execution and toward leadership. As the company grows, it must remain responsive to changing conditions and willing to adapt. Each funding round depends on the outcomes achieved during this stage. This is where theoretical value must be proven through practical results.</p><p>In the late stage, the startup increasingly takes on the structure and responsibilities of a mature company. Financing stabilises, and revenue is no longer speculative. Strategic expansion becomes a central focus. The company may consider entering new markets, expanding its product offerings, or exploring acquisitions. Fundraising remains important but is now driven by demonstrated performance. Founders often face the decision of whether to continue leading or begin planning an exit. At this point, the market that once challenged their idea may now be prepared to acquire it. Yet, even in this advanced phase, the core question persists: how to build a business that does not just endure pressure, but improves because of it.</p><h1>Common business startup mistakes [3,4]</h1><p><strong>1. Selling to the Wrong Customers: </strong>It is tempting in the early days to take any deal that comes your way. But not every customer is a good fit, and those who are only loosely aligned with your core offering will eventually churn, drain your support resources, or damage your reputation. Building a disciplined qualification process early is not a luxury, but a necessity for sustainable growth.</p><p><strong>2. Underpricing and Poor Monetisation Strategy: </strong>Setting your price too low, either out of fear or in a misguided attempt to gain market share, signals a lack of confidence and risks anchoring your product as low value. At the same time, overcomplicating pricing or failing to tie it to customer outcomes can block adoption and reduce your perceived impact. Pricing must be tested, validated, and continuously aligned with how value is delivered and experienced.</p><p><strong>3. Overbuilding Before Core Value is Proven: </strong>Many startups add features too quickly, trying to be all things to all users before they&#8217;ve demonstrated their core utility. This leads to bloated products, longer onboarding, and higher support costs. Start with the smallest, clearest version of value, then evolve based on actual customer behaviour and needs.</p><p><strong>4. Failing to Build Around Retention and Expansion: </strong>Focusing exclusively on acquisition is a short-sighted strategy. Your existing customers are a richer source of revenue and insight than cold prospects, especially in subscription models where retention, upsell, and advocacy drive growth. Build your sales, success, and product functions with customer lifetime value in mind from the outset.</p><p><strong>5. Misusing or Neglecting Sales Technology: </strong>Technology should serve your sales strategy, not complicate it. When properly selected, integrated, and used, sales tools enable faster feedback loops, better visibility into the funnel, and more time for meaningful conversations. But without the right setup, training, and process discipline, they become expensive distractions.</p><p><strong>6. Hiring Sales Reps Too Early Without a Proven System: </strong>A common pitfall is bringing in sales hires before there is a repeatable and documented process for finding, qualifying, and converting leads. Even experienced sales professionals will underperform if thrown into an undefined system. Before hiring, ensure you&#8217;ve built the basics: a validated ICP, a tested pitch, and a reliable lead generation mechanism.</p><p><strong>7. Trying to Do Everything Alone: </strong>Founders often carry the full weight of vision, product, and sales. But as the complexity of growth increases, so does the need for external input. Seeking out mentors, advisors, or strategic partners is not a sign of weakness; it is an operational strength that accelerates clarity and builds robustness into your go-to-market approach.</p><h2>THE mistake! Also known as Technical Debt</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!UQhS!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UQhS!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png 424w, https://substackcdn.com/image/fetch/$s_!UQhS!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png 848w, https://substackcdn.com/image/fetch/$s_!UQhS!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png 1272w, https://substackcdn.com/image/fetch/$s_!UQhS!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UQhS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png" width="512" height="384" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:384,&quot;width&quot;:512,&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_!UQhS!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png 424w, https://substackcdn.com/image/fetch/$s_!UQhS!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png 848w, https://substackcdn.com/image/fetch/$s_!UQhS!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.png 1272w, https://substackcdn.com/image/fetch/$s_!UQhS!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F4fe47357-ab4e-4521-baa5-e4fb01ee1390_512x384.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://martinfowler.com/bliki/TechnicalDebtQuadrant.html">The Technical Debt Quadrant by Martin Fowler [7]</a></figcaption></figure></div><p>Technical debt [5] is a powerful metaphor for deficiencies in internal software quality that slow future change. As Martin&#8239;Fowler explains, it surfaces when our system accumulates &#8220;cruft&#8221;&#8212;architectural, design or code&#173;r&#8209;level issues that make adding new features harder than it should be. For example, a muddled module structure might take a developer six days to extend rather than four; the extra two days are interest on the debt. The metaphor helps us frame trade&#8209;offs: deliver quickly now, or invest time in internal quality so that the future becomes easier.</p><p>But as Uncle&#8239;Bob argues [6], not all bad code qualifies as technical debt. He draws a distinction between deliberate, managed compromises and reckless messes. A team may choose a sub&#8209;optimal design for legitimate business reasons, fully aware of the cost and committed to pay it off later, this is true technical debt. In contrast, when poor design arises through laziness, ignorance or lack of discipline and there is no plan for remediation, it is simply a mess, not a debt. The mess will eventually choke the architecture and erode team productivity regardless of whether it was intentional.</p><p>Managing technical debt therefore becomes a matter of strategy and discipline. It is unwise to pretend that every shortcut is safe; we must treat debt like a financial obligation, some of it we may choose intentionally, but we must track the balance, pay the interest and gradually reduce the principal. Fowler recommends incremental &#8220;pay&#8209;down&#8221; of cruft by refactoring areas we modify often, since the interest payments there are highest. Uncle&#8239;Bob emphasises that taking on debt still requires cleanliness: the code created under the compromise must be maintainable, testable and refactorable, otherwise you&#8217;ve simply created a mess.</p><p>Ultimately, the question is not whether your system has flaws (every evolving software system does) but whether you treat them as manageable debt or uncontrolled mess. Internal quality is not a luxury; it is the fuel that enables speed, adaptability and antifragility. By being deliberate about the debt we accept, transparent about the cost, and disciplined about the payment, we build systems that do not merely survive change, but thrive because of it.</p><h1>Final thoughts</h1><p>A startup must not confuse early traction with stability. What it builds, how it sells, and who it serves are all subject to volatility. Pitfalls are not always dramatic collapses. Often, they are silent inefficiencies, decisions made under pressure, or compromises never revisited. The startup that survives is not the one that avoids all mistakes, but the one that learns how to surface them early, understand their impact, and build stronger processes in response. Whether the problem lies in misaligned customers, rushed pricing, overbuilding, or neglected code quality, each mistake leaves a trace. Startups should monitor these traces carefully, not to avoid failure, but to metabolise it into capability.</p><p>This is where the concept of antifragility becomes essential. It is not enough to remain operational in the face of stress; a company must grow more resilient because of it. Antifragility comes from feedback loops, from actively confronting what went wrong and iterating forward with intention. This includes managing technical debt deliberately, building quality into high-velocity areas of the codebase, and recognising when speed has quietly turned into drag. It also means knowing when to slow down, when to refactor, when to listen. Startups that treat every feature shipped, every deal lost, every spike in support tickets as signals rather than setbacks are the ones that stand a chance to grow past the fragile beginnings and into something more durable.</p><h1>References</h1><ol><li><p>Silicon Valley Bank. <em>What Are the Three Stages of a Startup?</em> SVB.com. Published April 2022. Accessed November 5, 2025. <a href="https://www.svb.com/startup-insights/startup-growth/what-are-the-three-stages-of-a-startup/">https://www.svb.com/startup-insights/startup-growth/what-are-the-three-stages-of-a-startup/</a></p></li><li><p>Kritikos&#8239;A. <em>When There Is No Alternative to InnerSource.</em> YouTube. Published December&#8239;5,&#8239;2024. Accessed November&#8239;5,&#8239;2025. Kritikos&#8239;A. When There Is No Alternative to InnerSource. YouTube. <em>www.youtube.com/watch?v=yvTn5DGvSA0</em></p></li><li><p>de&#8239;Vonarkha&#8209;Varnak&#8239;J. <em>Six Common Sales Mistakes SaaS Startups Should Avoid.</em> Salescode.io. Published April 25, 2022. Accessed November 5, 2025. <a href="https://salescode.io/en/blog/six-common-sales-mistakes-saas-startups-should-avoid">https://salescode.io/en/blog/six-common-sales-mistakes-saas-startups-should-avoid</a></p></li><li><p><em>Common Mistakes in SaaS Business and the Best Ways to Avoid Them.</em> <em>Medium.</em> Published February 2022. Accessed November 5, 2025. <a href="https://medium.com/startup-insider-edge/common-mistakes-in-saas-business-and-the-best-ways-to-avoid-them-2f18cbb3c6bb?utm_source=chatgpt.com">https://medium.com/startup-insider-edge/common-mistakes-in-saas-business-and-the-best-ways-to-avoid-them-2f18cbb3c6bb</a></p></li><li><p>Fowler M. <em>Technical Debt.</em> MartinFowler.com. Published May 21, 2019. Accessed November 5, 2025. <a href="https://martinfowler.com/bliki/TechnicalDebt.html">https://martinfowler.com/bliki/TechnicalDebt.html</a></p></li><li><p>Martin RC. <em>A Mess Is Not a Technical Debt.</em> Uncle Bob Consulting LLC. Accessed November 5, 2025. <a href="https://sites.google.com/site/unclebobconsultingllc/a-mess-is-not-a-technical-debt?utm_source=chatgpt.com">https://sites.google.com/site/unclebobconsultingllc/a-mess-is-not-a-technical-debt</a></p></li><li><p>Fowler M. <em>Technical Debt Quadrant.</em> MartinFowler.com. Published October 14, 2009. Accessed November 5, 2025. <a href="https://martinfowler.com/bliki/TechnicalDebtQuadrant.html">https://martinfowler.com/bliki/TechnicalDebtQuadrant.html</a></p></li></ol><p></p>]]></content:encoded></item><item><title><![CDATA[Let's talk Governance: How Open Source Turns Chaos Into Strength]]></title><description><![CDATA[Open Source Software is probably the world&#8217;s largest collective experiment in organized chaos: a borderless network of volunteers, companies, and organizations who build and maintain a bunch of applications that form digital modern life.]]></description><link>https://www.softwareantifragility.com/p/lets-talk-governance-how-open-source</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/lets-talk-governance-how-open-source</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 30 Oct 2025 15:01:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ysq9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ysq9!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ysq9!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ysq9!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ysq9!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ysq9!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ysq9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg" width="1456" height="818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1714782,&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://www.softwareantifragility.com/i/177507676?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.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_!ysq9!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ysq9!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ysq9!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ysq9!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32d97441-a466-4767-9feb-94f8ff8b60f3_3500x1967.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">Photo by Jaime Spaniol on Unsplash</figcaption></figure></div><p>Open Source Software is probably the world&#8217;s largest collective experiment in organized chaos: a borderless network of volunteers, companies, and organizations who build and maintain a bunch of applications that form digital modern life. Linux, Kubernetes, Python, Apache, Android are all byproducts of this model that thrives not despite disorder, but because of it.</p><p>Let&#8217;s ask ourselves this. Could it be that the difference between a project that survives and one that outlives its founders is because of good governance choices?</p><p>Governance in open source should not be considered as bureaucracy. It&#8217;s, what we may call, the nervous system of a community. It defines the decision makers and the decision making process, but also how conflicts are resolved. In this sense, we could say that governance has the power to turn fragility into resilience and, well, resilience into antifragility.</p><p>As we saw in a previous post, an antifragile system doesn&#8217;t survive stress. It evolves through it! Sometimes when Open Source projects weather crises (a massive bug, a fork, a sudden leadership exit) we are witnessing antifragility in action. The code gets better, the governance tighter, the culture clearer. </p><p>Governance, in such cases, can assist by turning individual chaos into collective intelligence (or, as we call it, wisdom of the crowds).</p><h2>Open Source Governance Types and What They Teach Us</h2><p>Red Hat&#8217;s classic 2020 breakdown of governance models remains an up to date map. It identifies six archetypes: <em>do-ocracy</em>, <em>founder-leader</em>, <em>self-appointing council</em>, <em>electoral</em>, <em>corporate-backed</em>, and <em>foundation-backed</em>. Each distributes power differently. </p><ul><li><p><strong>Do-ocracy:</strong> &#8220;Those who do the work make the decisions.&#8221; It&#8217;s agile, fast, and often terrifyingly informal. In a crisis, this model reacts quickly; the people writing the code fix the issue. But it&#8217;s socially unstable! </p></li><li><p><strong>Founder-leader:</strong> Clear vision, quick decisions, and one benevolent dictator. It&#8217;s efficient until it isn&#8217;t. When the &#8220;benevolent&#8221; part fades or the &#8220;dictator&#8221; part retires, fragility seeps in. The project risks losing its North Star.</p></li><li><p><strong>Self-appointing councils or boards:</strong> More structure, less personality. This model trades charisma for continuity, and that&#8217;s not always a bad deal. It keeps the ship steady, though sometimes at the cost of spontaneity.</p></li><li><p><strong>Electoral models:</strong> Democratic and fair, at least in theory. Elections can empower communities, but they can also turn them into campaign arenas. For large, mature projects (like Apache&#8217;s), the predictability and transparency outweigh the noise.</p></li><li><p><strong>Corporate-backed:</strong> Stability comes with strings. When a company runs the show, governance becomes predictable and predictably narrow. It&#8217;s great for focus, bad for community diversity.</p></li><li><p><strong>Foundation-backed:</strong> The elder statesman of governance models. By embedding legal and fiscal stability into the DNA of a project, it ensures longevity. The trade-off? Bureaucracy. (Though, as any maintainer will tell you, bureaucracy beats chaos most days.)</p></li></ul><p>The key insight here is that no model is purely good or bad. Each trades speed for structure, creativity for continuity. Therefore, antifragility doesn&#8217;t come from choosing one. It comes from evolving between them as the project matures.</p><h2>Governance as an Adaptive Immune System</h2><p>If resilience is the immune response, governance is the immune memory. It captures lessons from crises and encodes them into policy, process, and culture.</p><p>GitHub&#8217;s <em>Understanding Governance for Your Growing Project</em> captures this beautifully: as communities grow, they must formalize roles (maintainer, committer, contributor) and document them, oftentimes in a simple <code>GOVERNANCE.md</code>. </p><p>The act of writing things down, who decides, how conflicts are handled, what behavior is acceptable, might seem mundane. Yet, this documentation transforms panic into protocol. When the next incident comes (and it will), the community has a starting point on how to deal with it. If we consider the role definitions and the documentation process learning loops, we got the project learning from past failures and hence, becoming more antifragile.</p><h2>Security as the Mirror of Governance</h2><p>In recent years, security researchers have started treating governance as a defense mechanism. Liran Tal, in Why Open Source Governance is Key for Security, argues that governance <em>is</em> security. A human firewall that filters trust and authority.</p><p>Who has commit access? Who reviews pull requests? Who maintains dependency hygiene? These are governance questions before they&#8217;re technical ones.</p><p>Software composition analysis tools can detect vulnerable packages, but governance determines how those findings become action. Without clear processes, no tool can save a project from itself.</p><p>Tal&#8217;s point is simple and profound: the earlier a community defines its governance, the easier it becomes to detect, triage, and prevent security issues. In open source, resilience is inseparable from accountability. </p><h2>Diversity, Merit, and the Myth of Flat Hierarchies</h2><p>Open source loves to romanticize the &#8220;bazaar&#8221;, a perfectly flat world where anyone can contribute and everyone&#8217;s ideas compete equally. But as Isabella Ferreira notes in Open Source Governance Models Explained, real communities aren&#8217;t flat; they&#8217;re porous.</p><p>Diversity of thought, background, and motivation is the hidden engine of resilience. Distributed authority ensures that no single point of failure (or ego) can paralyze progress. When one maintainer leaves, another steps in. When one company pulls out, another joins.</p><p>The healthiest projects understand that meritocracy, while attractive, is not enough. Without transparency and inclusivity, meritocracy becomes gatekeeping in disguise.</p><p>Governance creates antifragility by keeping the system open to new contributors and new perspectives. Redundancy, in human form, is what keeps open source alive.</p><h2>Corporate Gravity and the Paradox of Control</h2><p>Every major open-source success eventually faces the same existential question: what happens when the corporations arrive?</p><p>Companies bring money, time, and infrastructure but also expectations. As Red Hat and the Linux Foundation&#8217;s <em>Building Leadership in an Open Source Community</em> warn, influence in open source cannot be bought. It must be earned.</p><p>Guy Martin of Autodesk put it bluntly: &#8220;The only way to gain leadership is to earn credibility and make contributions.&#8221;</p><p>When companies learn this governance becomes a two-way symbiosis. The project gains resources and reach; the company gains insight and reputation.</p><p>But when corporations fork projects to &#8220;move faster,&#8221; they trade antifragility for short-term control. Forking is like cloning a tree by cutting off its roots. You get autonomy, not sustainability.</p><h2>Culture: The Hidden Component of Governance</h2><p>Culture is the personality of an Open Source Software and, therefore, its community&#8217;s. Leading in open source is as much about emotional intelligence as technical skill.</p><p>Communities succeed when they nurture psychological safety. The confidence to disagree publicly without fear of exile. Conflict, when well-managed, is not a weakness but a source of evolution.</p><p>Gil Yehuda of Oath captures this dynamic perfectly: &#8220;In order to develop influence on an open source project, you have to get a group of people who don&#8217;t know you, who work for different companies, and may have different objectives to agree with you.&#8221;</p><p>That&#8217;s governance as diplomacy. Paradoxically, the most antifragile system could be the one that welcomes disagreement. Every argument is a stress test. Every consensus, a reinforcement.</p><h2>Innersourcing</h2><p>Companies that contribute to Open Source Software often realize they can&#8217;t just &#8220;consume&#8221; collaboration; they have to practice it internally. Hence the rise of innersourcing;  applying Open Source Software best practices in the corporate world.</p><p>The TODO Group&#8217;s guidance reads almost like a twelve-step program for cultural transformation: make code visible to everyone, enforce peer review, automate testing, shorten release cycles, and empower individuals by merit.</p><p>Innersourcing doesn&#8217;t just improve software quality; it inoculates organizations against fragility. It teaches teams to operate transparently, share ownership, and handle failure publicly. All habits of antifragile systems.</p><h2>Governance as a Security Blanket with Memory</h2><p>Governance can be a safety mechanism. A way to manage risk, define ownership, and ensure compliance. But over time, it can become a feedback engine.</p><p>Every vulnerability report, fork, and disagreement feeds into policy refinement. Every contributor who leaves, leaves behind documentation. Every failure leaves data.</p><p>Projects that institutionalize this learning, through governance councils, voting systems, mentorship, and codes of conduct, don&#8217;t just recover from stress; they grow because of it. They become harder to break and easier to adapt.</p><h2>From Code to Community</h2><p>Imagine democracy as an Open Source Software Project: policies are pull requests, citizens are contributors, laws are versioned releases.</p><p>Just as governments struggle with transparency and participation, so does Open Source Software. Yet the analogy holds as both systems thrive on shared intelligence. Governance, whether civic or digital, is a mechanism for turning conflict into collaboration.</p><p>A project that can handle dissent without division, like a democracy that can debate without collapsing, has achieved constructive disorder which can be considered a form of antifragility.</p><h2>Final Thoughts</h2><p>In software, sometimes we obsess over architecture, testing, and performance. But the real architecture that determines whether a project survives, is social.</p><p>Governance creates the conditions for creative tension. It&#8217;s what turns a community of strangers to an organism. One that senses, reacts, and adapts faster than a system.</p><p>In Open Source Software, fragility sometimes can be a feature rather than a flaw. Every crisis can be considered as a patch. Every argument documentation. And every fork, well, an experiment.</p><p>Good governance doesn&#8217;t protect software from failure. It teaches software and its people how to get better at failing.</p><p>And that, ultimately makes Open Source Software not only resilient, but antifragile.</p><h3><strong>References</strong></h3><ol><li><p><a href="https://www.redhat.com/en/blog/understanding-open-source-governance-models">Neary D, Berkus J, Novakovic K, Behrenshausen B. </a><em><a href="https://www.redhat.com/en/blog/understanding-open-source-governance-models">Understanding open source governance models.</a></em><a href="https://www.redhat.com/en/blog/understanding-open-source-governance-models"> Red Hat; July 17, 2020</a>.</p></li><li><p><a href="https://scantist.com/resources/blogs/a-guide-to-the-6-open-source-governance-modelshttps://iferreiradev.medium.com/open-source-governance-models-explained-723a3ffd59b6">Ferreira I. </a><em><a href="https://scantist.com/resources/blogs/a-guide-to-the-6-open-source-governance-modelshttps://iferreiradev.medium.com/open-source-governance-models-explained-723a3ffd59b6">Open Source Governance Models Explained.</a></em><a href="https://scantist.com/resources/blogs/a-guide-to-the-6-open-source-governance-modelshttps://iferreiradev.medium.com/open-source-governance-models-explained-723a3ffd59b6"> Medium; March 23, 2022</a>.</p></li><li><p><em><a href="https://scantist.com/resources/blogs/a-guide-to-the-6-open-source-governance-models">A Guide to the 6 Open Source Governance Models.</a></em><a href="https://scantist.com/resources/blogs/a-guide-to-the-6-open-source-governance-models"> Scantist; February 9, 2023</a>.</p></li><li><p><em><a href="https://opensource.guide/leadership-and-governance/">Leadership and Governance.</a></em><a href="https://opensource.guide/leadership-and-governance/"> GitHub Open Source Guides; accessed 2023</a>.</p></li><li><p><a href="https://snyk.io/articles/open-source-security/open-source-governance/">Tal L. </a><em><a href="https://snyk.io/articles/open-source-security/open-source-governance/">Why open source governance is key for security.</a></em><a href="https://snyk.io/articles/open-source-security/open-source-governance/"> Snyk Blog; 2024</a>.</p></li><li><p><em><a href="https://www.linuxfoundation.org/resources/open-source-guides/building-leadership-in-an-open-source-community">Building Leadership in an Open Source Community.</a></em><a href="https://www.linuxfoundation.org/resources/open-source-guides/building-leadership-in-an-open-source-community"> Open Source Guides, TODO Group (Linux Foundation); accessed 2023</a>.</p></li><li><p><em><a href="https://en.wikipedia.org/wiki/Open-source_governance">Open-source governance.</a></em><a href="https://en.wikipedia.org/wiki/Open-source_governance"> Wikipedia; last updated 2024</a>.</p></li></ol>]]></content:encoded></item><item><title><![CDATA[Software as a Service (SaaS) Stressors]]></title><description><![CDATA[Challenges from implementation to growth.]]></description><link>https://www.softwareantifragility.com/p/software-as-a-service-saas-stressors</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/software-as-a-service-saas-stressors</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 23 Oct 2025 14:03:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!DW4j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DW4j!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DW4j!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg 424w, https://substackcdn.com/image/fetch/$s_!DW4j!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg 848w, https://substackcdn.com/image/fetch/$s_!DW4j!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!DW4j!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DW4j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg" width="1456" height="1040" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1040,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3341094,&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://www.softwareantifragility.com/i/176859267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.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_!DW4j!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg 424w, https://substackcdn.com/image/fetch/$s_!DW4j!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg 848w, https://substackcdn.com/image/fetch/$s_!DW4j!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!DW4j!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe37194d8-419f-4ebc-aca2-646f7fe5cfeb_4109x2935.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">Photo by Pascal van de Vendel on Unsplash</figcaption></figure></div><p>Software as a Service (SaaS) is the industry that undeniably moves fast but breaks faster. Platforms that promise to &#8220;revolutionize&#8221; collaboration, automate the tedious, or unlock new efficiencies in the cloud, pop-up all the time. Yet most SaaS companies wrestle with the same invisible pressure: how to build, launch, and grow a product that actually lasts.</p><p>The SaaS model is beautiful in theory: recurring revenue, global scalability, automatic updates. In practice, it&#8217;s an endurance test. Implementation hurdles, scaling pains, user churn, technical bottlenecks, and cultural misalignments can grind even the best ideas to a halt.</p><p>In this post we will try to map common challenges that define the SaaS lifecycle. This isn&#8217;t a checklist but a stress map including factors that can determine whether our products thrive or burnout.</p><p>For better navigation, we have grouped the identified stressors in five major challenge zones. </p><ol><li><p>Technical &amp; Product</p></li><li><p>Business</p></li><li><p>Team</p></li><li><p>Customer</p></li><li><p>Implementation &amp; Governance</p></li></ol><h1><strong>1. Technical &amp; Product Challenges</strong></h1><h2><em>Building for Change.</em></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AtYd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AtYd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png 424w, https://substackcdn.com/image/fetch/$s_!AtYd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png 848w, https://substackcdn.com/image/fetch/$s_!AtYd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png 1272w, https://substackcdn.com/image/fetch/$s_!AtYd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AtYd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png" width="969" height="732" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:732,&quot;width&quot;:969,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:116159,&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://www.softwareantifragility.com/i/176859267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.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_!AtYd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png 424w, https://substackcdn.com/image/fetch/$s_!AtYd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png 848w, https://substackcdn.com/image/fetch/$s_!AtYd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.png 1272w, https://substackcdn.com/image/fetch/$s_!AtYd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F09448840-9c45-4402-b9f3-bd5c69c2ddbb_969x732.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>There are software systems that can be fast, elegant, and even &#8220;user-loved&#8221;. However, these same systems can collapse spectacularly when success arrives too quickly. In the SaaS world, growth isn&#8217;t always connected with progress and vise versa.</p><p>In the early days of SaaS, scalability was often treated as a &#8220;future problem.&#8221; Teams focused on features, not foundations. The result was performance bottlenecks, database meltdowns, and the famous &#8220;please refresh&#8221; message that haunted every beta launch. Over time, architecture became strategy. Concepts like <em>elastic scaling</em>, <em>microservices</em>, and <em>feature flagging</em> evolved not just as technical patterns but as survival mechanisms.</p><p>Integrations followed a similar story. The modern SaaS product rarely stands alone. It must coexist with CRMs, ERPs, payment gateways, and analytics stacks. Compatibility is no longer a luxury; it&#8217;s part of the user promise.</p><p>And then there&#8217;s security, the quiet guardian of trust. Where early SaaS teams treated encryption as optional, compliance frameworks like GDPR, SOC 2, and HIPAA have since made it mandatory. Not just for legality, but for credibility as well.</p><p>Ultimately, technical resilience in SaaS is not about writing perfect code. It&#8217;s about writing code that endures, adapts, scales, and survives contact with real users. The mature SaaS product is not built for launch day. It&#8217;s built for the thousand unpredictable tomorrows that follow.</p><div><hr></div><h1><strong>2. Business Challenges </strong></h1><h2><em>Strategy Under Pressure.</em></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!GrWy!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!GrWy!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png 424w, https://substackcdn.com/image/fetch/$s_!GrWy!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png 848w, https://substackcdn.com/image/fetch/$s_!GrWy!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png 1272w, https://substackcdn.com/image/fetch/$s_!GrWy!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!GrWy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png" width="1048" height="722" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:722,&quot;width&quot;:1048,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:120203,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/176859267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.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_!GrWy!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png 424w, https://substackcdn.com/image/fetch/$s_!GrWy!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png 848w, https://substackcdn.com/image/fetch/$s_!GrWy!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.png 1272w, https://substackcdn.com/image/fetch/$s_!GrWy!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6ae073dc-516f-4a59-a5fc-2e2d4a0300b6_1048x722.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>When the first generation of SaaS founders spoke about &#8220;recurring revenue,&#8221; it sounded like a dream. Predictable income, infinite scalability, and low distribution costs. In reality, it was the beginning of a new kind of pressure: the constant demand for <em>retention over acquisition</em> and <em>value over novelty</em>.</p><p>At the heart of every SaaS business lies a question: <strong>Who is this for, and why will they pay for it again next month?</strong></p><p>Finding that answer determines whether a company grows sustainably or fades quietly into a market that has already moved on. This is what we call product - market fit.</p><p>Pricing is the next battlefield. Subscription models promised stability, but also introduced psychology into revenue strategy. Tiered pricing, usage-based billing, and freemium models make evident that the closer price aligns with perceived value, the stronger the company&#8217;s financial resilience.</p><p>Beyond revenue design, SaaS businesses must navigate hidden costs. There are vendor dependencies, API fees, and compliance overheads and more. Meanwhile, the competitive landscape grows noisier every quarter. Winning today is less about adding features and more about building ecosystems that embed your product into customers&#8217; workflows and identities.</p><p>In this sense, SaaS strategy becomes less about growth hacks and more about orchestration. Aligning technology, finance, and brand storytelling under one clear vision. Because when everything moves fast, clarity becomes your only sustainable advantage.</p><h1><strong>3. Team Challenges</strong></h1><h2><em>Alignment is Everything.</em></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!bqrI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!bqrI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png 424w, https://substackcdn.com/image/fetch/$s_!bqrI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png 848w, https://substackcdn.com/image/fetch/$s_!bqrI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png 1272w, https://substackcdn.com/image/fetch/$s_!bqrI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!bqrI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png" width="1045" height="712" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:712,&quot;width&quot;:1045,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:119975,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/176859267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.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_!bqrI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png 424w, https://substackcdn.com/image/fetch/$s_!bqrI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png 848w, https://substackcdn.com/image/fetch/$s_!bqrI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.png 1272w, https://substackcdn.com/image/fetch/$s_!bqrI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F47e90dc2-fb43-4370-babc-72ff25c3c007_1045x712.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>Software doesn&#8217;t scale! Teams do. And in SaaS, team dynamics can make or break a product long before the market gets a chance to.</p><p>Historically in product development, small teams thrive on shared context;  everyone knows everything. As the company grows, that unity fragments. Engineering ships features marketing didn&#8217;t know about. Customer support learns about bugs from Twitter. It&#8217;s not incompetence; it&#8217;s entropy.</p><p>Cross-functional alignment is the antidote. Shared OKRs, transparent dashboards, and interdepartmental rituals. SaaS companies should aim to a collective understanding that the product is not &#8220;owned&#8221; by any one team, but by the organization as a whole.</p><p>The second challenge is talent. SaaS companies live in a domain that demands hybrid skill sets: engineers who understand UX, marketers who speak data, and leaders who can interpret both. The hiring market rarely provides these ready-made, so training and mentorship become strategic necessities, not perks.</p><p>Then comes change management. SaaS moves fast, but people don&#8217;t. Rolling out new tools or processes without empathy leads to fatigue, resistance, and eventual disengagement. The best teams treat internal adoption like customer onboarding: communicate early, train continuously, celebrate wins.</p><p>Last but not least, there&#8217;s culture. That subtle architecture of trust, feedback, and curiosity. SaaS may be powered by code, but it&#8217;s animated by people. A company that treats collaboration as infrastructure can outlast market noise and management fads.</p><h1><strong>4. Customer Challenges</strong></h1><h2><em>Growth Beyond Acquisition.</em></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5gax!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5gax!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png 424w, https://substackcdn.com/image/fetch/$s_!5gax!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png 848w, https://substackcdn.com/image/fetch/$s_!5gax!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png 1272w, https://substackcdn.com/image/fetch/$s_!5gax!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5gax!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png" width="1043" height="716" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1049d969-c549-4103-88a2-4b189e45e007_1043x716.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:716,&quot;width&quot;:1043,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:118362,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/176859267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.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_!5gax!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png 424w, https://substackcdn.com/image/fetch/$s_!5gax!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png 848w, https://substackcdn.com/image/fetch/$s_!5gax!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.png 1272w, https://substackcdn.com/image/fetch/$s_!5gax!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1049d969-c549-4103-88a2-4b189e45e007_1043x716.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 the SaaS industry we used to measure success by sign-ups. If the graph pointed up, optimism followed. But soon, founders realized that growth isn&#8217;t the number of people who try your product. It&#8217;s the number of those who stay.</p><p>Customer growth in SaaS is therefore less a matter of marketing and more a study in human behavior. Users arrive with expectations shaped by other platforms, other experiences, and other frustrations. The challenge is not just to attract attention but to build and sustain trust.</p><p>Onboarding is where this trust begins. A good onboarding flow is like a well-lit path through an unfamiliar city. Products such as Slack and Notion mastered this by embedding micro-discoveries. Those small &#8220;Aha!&#8221; moments that make a user feel clever, not lost.</p><p>Retention, on the other hand, is the art of staying relevant. It demands continuous dialogue, whether through updates, education, or community. When handled with care, these interactions transform users into advocates. The strongest brands don&#8217;t broadcast; they converse.</p><p>Transparency plays an equally central role. Outages, bugs, and delays are inevitable. What defines a SaaS company&#8217;s maturity is how it communicates during those moments. The teams that publish clear incident notes and speak candidly about failure often emerge with more trust than before.</p><p>In essence, growth in SaaS is not acceleration. It&#8217;s continuity. It&#8217;s the slow compounding of goodwill, usability, and transparency. Products that respect this rhythm evolve from tools into partners, from software into ecosystems.</p><p>As we mentioned earlier, the SaaS journey doesn&#8217;t end with acquisition. It begins with retention. And in that space between the first click and the thousandth login, true growth quietly takes root.</p><div><hr></div><h1><strong>5. Implementation &amp; Governance Challenges</strong></h1><h2><em>Getting It Right the First Time.</em></h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!gGb5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!gGb5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png 424w, https://substackcdn.com/image/fetch/$s_!gGb5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png 848w, https://substackcdn.com/image/fetch/$s_!gGb5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png 1272w, https://substackcdn.com/image/fetch/$s_!gGb5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!gGb5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png" width="1048" height="802" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:802,&quot;width&quot;:1048,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:133259,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/176859267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.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_!gGb5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png 424w, https://substackcdn.com/image/fetch/$s_!gGb5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png 848w, https://substackcdn.com/image/fetch/$s_!gGb5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.png 1272w, https://substackcdn.com/image/fetch/$s_!gGb5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7a1c31f-dd33-4466-b526-401b30525caa_1048x802.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>Before a SaaS product dazzles users or scales to millions, it must first work! Reliably, securely, and predictably. </p><p>Implementation sounds straightforward: connect systems, migrate data, train teams. But in reality, it&#8217;s closer to a choreography between technology, people, and expectations. The most common mistake? Treating implementation as a checklist instead of a change process. When objectives are vague or success metrics undefined, even the best software becomes another unused license in a growing portfolio of digital clutter.</p><p>Then comes governance. Once upon a time, IT departments controlled every piece of software within an organization. Today, SaaS decentralizes that authority. Sales teams buy CRMs, HR signs up for analytics tools, and marketing subscribes to automation platforms. Without structured oversight, this freedom can easily turn into fragmentation.</p><p>Strong governance frameworks restore alignment without stifling agility. They establish clear roles for decision-making, vendor accountability, and compliance checks. In regulated industries, this becomes more than efficiency. It becomes protection. The difference between a well-governed SaaS ecosystem and an unmanaged one often appears only during crisis: one adapts, the other panics.</p><p>But governance isn&#8217;t just about control. It&#8217;s about visibility. Continuous performance monitoring, user feedback loops, and iterative improvement transform &#8220;go-live&#8221; from a finish line into a starting point. The most resilient SaaS companies never stop auditing themselves. They treat every deployment as a living system to be observed, tuned, and evolved.</p><p>In this light, implementation is not the first chapter of SaaS success.  It&#8217;s just an introduction. It sets the tone for everything that follows: adoption, trust, and ultimately, growth.<br>Because a product that begins with clarity and governance doesn&#8217;t just launch&#8212;it lasts.</p><h2><strong>From Chaos to Continuity</strong></h2><p>There are software systems that can be classified by what they do and others by how they survive. SaaS belongs to the latter category. It isn&#8217;t simply a model for delivering software over the internet; it is an ongoing experiment in adaptability.</p><p>Throughout its evolution, SaaS has forced us to rethink what &#8220;finished&#8221; means. A traditional software release had an endpoint: a version number, a CD (in older times), a patch. SaaS erased that boundary. Deployment became continuous. Feedback became instantaneous. Failure became visible. In this sense, SaaS transformed software from a <em>product</em> into a <em>process</em>.</p><p>From implementation to growth, each layer of this process introduces its own kind of stress. The technical layer demands resilience. Systems that expand and contract with unpredictable demand. The business layer tests clarity. Finding a purpose in a market of noise. The team layer measures coherence. Aligning humans around shared context. The customer layer builds continuity. Nurturing trust long after the sale. And finally, the implementation layer anchors it all through governance. Ensuring the system doesn&#8217;t collapse under its own freedom.</p><p>The SaaS Challenge Map, is less a list of problems than a living framework of tensions. It reminds us that the real test of modern software isn&#8217;t functionality, but fragility. Every new feature, integration, or deployment adds complexity, and every layer of complexity invites risk. The goal is not to eliminate that risk, but to evolve through it.</p><p>In other words, the most successful SaaS companies do not aim to be unbreakable. They aim to be antifragile! Dynamic systems that grow stronger each time they are tested.</p><h1>References:</h1><ul><li><p>Ful.io. <em>Top 9 SaaS Development Challenges and Solutions to Overcome Them.</em> Ful.io Blog. Published 2025. Accessed October 22, 2025. <a href="https://ful.io/blog/saas-development-challenges-and-solutions">https://ful.io/blog/saas-development-challenges-and-solutions</a></p></li><li><p>Userpilot. <em>10 SaaS Challenges Across Product, Sales, and Business (and How to Overcome Them).</em> Userpilot Blog. Published 2025. Accessed October 22, 2025. <a href="https://userpilot.com/blog/saas-challenges/">https://userpilot.com/blog/saas-challenges/</a></p></li><li><p>Imaginary Cloud. <em>Top 10 SaaS Implementation Challenges and How to Solve Them.</em> Imaginary Cloud Blog. Published 2025. Accessed October 22, 2025. <a href="https://www.imaginarycloud.com/blog/top-10-saas-implementation-challenges-and-how-to-solve-them">https://www.imaginarycloud.com/blog/top-10-saas-implementation-challenges-and-how-to-solve-them</a></p></li></ul><div><hr></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!pZXE!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pZXE!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png 424w, https://substackcdn.com/image/fetch/$s_!pZXE!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png 848w, https://substackcdn.com/image/fetch/$s_!pZXE!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png 1272w, https://substackcdn.com/image/fetch/$s_!pZXE!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pZXE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png" width="751" height="347" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:347,&quot;width&quot;:751,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:47814,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/176859267?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.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_!pZXE!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png 424w, https://substackcdn.com/image/fetch/$s_!pZXE!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png 848w, https://substackcdn.com/image/fetch/$s_!pZXE!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.png 1272w, https://substackcdn.com/image/fetch/$s_!pZXE!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3cccb4ad-312c-435e-a3d2-7791a8d21f7d_751x347.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://app.gptzero.me/documents/c5bf3959-d6a5-463e-b372-4f6c59aa91cc/share">Read the full GPTZero analysis for this post.</a></figcaption></figure></div><div><hr></div><p></p>]]></content:encoded></item><item><title><![CDATA[The Source Code Spectrum]]></title><description><![CDATA[Open Source <> Inner Source <> Closed Source.]]></description><link>https://www.softwareantifragility.com/p/the-source-code-spectrum</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/the-source-code-spectrum</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 16 Oct 2025 19:01:04 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!C_gT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!C_gT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!C_gT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 424w, https://substackcdn.com/image/fetch/$s_!C_gT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 848w, https://substackcdn.com/image/fetch/$s_!C_gT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 1272w, https://substackcdn.com/image/fetch/$s_!C_gT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!C_gT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png" width="960" height="540" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:540,&quot;width&quot;:960,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:44457,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/176257211?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!C_gT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 424w, https://substackcdn.com/image/fetch/$s_!C_gT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 848w, https://substackcdn.com/image/fetch/$s_!C_gT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 1272w, https://substackcdn.com/image/fetch/$s_!C_gT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd696a096-ad9e-4e22-8416-f130b4f44b31_960x540.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>There is software out there that can be classified either as Free / Open Source or as Closed Source. Lately a new term, Inner Source Software, has been introduced but we will get to that later. The important thing is that the aforementioned classifications of software forms the <strong>Source Code Spectrum</strong>. </p><p>The decisive factor of where a software project will end up in the Source Code Spectrum, is usually its level of openness. This is usually connected with the type of license the project is published under (for example, if a project is published under the MIT license it is considered a permissive open source software project but if it is a proprietary software, copyrighted by a company, it is considered a closed source software project). </p><p>The license of a project can, indeed, play a part in the longevity of a software project and that is why license type has been part of the resilience-based framework we proposed in [1] for assessing the evolution of open source projects. However, in this post of Software Antifragility, we will approach the Source Code Spectrum from another point of view. The way it is being developed!</p><h1>Closed Source Software Development</h1><p>In the beginning, there was closed source software:</p><blockquote><p><em><strong>Closed source</strong> (or proprietary software) are computer programs whose source code is not published. The source code is not shared with the public for anyone to look at or change. Closed source is the opposite of open source.</em></p><p><em>~ Wikipedia</em></p></blockquote><p>Before remote work, before version control, before CI/CD, developers were using collective backups for writing software. A version of this was the anecdotal <strong>&#8220;shout &amp; ftp&#8221;</strong> technique in web development: <em>You would shout &#8220;is anyone working on the foo page?&#8221; If no one piped up, you&#8217;d ftp into the server and download it. Make your changes and then load the file back, hoping your coworkers remembered to shout before they made any changes themselves that would stomp on yours [2]. </em></p><p>Software was being developed from teams, it was orchestrated in a central release of an executable or server app and it was served to the users. For the desktop applications, the executable files were usually offered via user licenses that prevented them for being copied or shared with others for free.</p><p>Unless of course, the application is WinRAR. Because WinRAR offers a 40-day trial that ends&#8230; well&#8230; never! </p><p><strong>From autumn 1993, when it was first released, until now, this software can be used for free even after the 40 days trial has expired &#128071;</strong></p><div id="youtube2-fTgZRVVr3_Y" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;fTgZRVVr3_Y&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/fTgZRVVr3_Y?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>Post version control systems (CVS, SVN, Perforce Helix Core in the past and Mercurial and Git more recently), the teams started working on their code collectively using a centralized version control system that allowed them to keep track of the changes, deal with conflicts and orchestrate their releases better.</p><p>What&#8217;s interesting is that, even after the adoption of version control systems, some closed source companies kept implementing their software in silos. </p><p>In such cases, although the closed source code of the software product was owned by the same company, some engineers might never access specific parts of it, even if they were working with the same company for years. This phenomenon, appearing mainly in bigger companies, is still happening nowadays, usually in large companies that are developing several different software products. In such cases the developers of one project do not have access to the code base of another.</p><p>In this sense, the Wikipedia definition of Closed Source could change to:</p><blockquote><p><em>Closed source (or proprietary software) are computer programs whose source code is not published. The source code is not shared with anybody but the programmers who are responsible for crafting the software. </em></p></blockquote><h1>Open Source Software Development</h1><p>Then Open Source Software happened! Before we dive in, let&#8217;s talk definitions: We have Free Software, Open Source Software and Free / Libre Open Source Software. If you currently look at Wikipedia you will find the following definitions: </p><blockquote><p><em><strong>Free software</strong>, <strong>libre software</strong>, <strong>libreware</strong><sup> </sup>sometimes known as <strong>freedom-respecting software</strong> is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions.</em></p><p><em>Wikipedia</em></p></blockquote><p>Free Software as a term is attributed to Richard Stallman who crafted the first formal definition who was then published by Free Software Foundation in February 1986. [3]</p><blockquote><p><em><strong>Open-source software</strong> (<strong>OSS</strong>) is computer software that is released under a license in which the copyright holder grants users the rights to use, study, change, and distribute the software and its source code to anyone and for any purpose.</em></p><p><em>Wikipedia</em></p></blockquote><p><em>In 1997, Eric Raymond&#8217;s essay The Cathedral and the Bazaar explored the development model of Free Software, influencing Netscape&#8217;s decision in 1998 to release the source code for its browser suite. This code base became Mozilla Firefox and Thunderbird.</em></p><p><em>To broaden business adoption, a group of developers including Raymond, Bruce Perens, Tim O&#8217;Reilly, and Linus Torvalds rebranded the Free Software movement as &#8220;Open Source.&#8221; The Open Source Initiative (OSI) was founded in 1998 to promote this new term and emphasize collaborative development benefits over ideology.</em> [4]</p><p>More or less, Raymond in the Cathedral and the Bazaar essay, described the Open Source Software Development culture as shown (in a simplified version) in this video:</p><div id="youtube2-a4ap0R_OQIE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;a4ap0R_OQIE&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/a4ap0R_OQIE?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>In Open Source Software Development, a community of people are working together to create software. Since they are volunteers they can come and go as they please but this creates the need for the source code, the requirements, the specifications, the roadmap, designs, schematics, bug reports / tickets and so forth to be openly available and transparent to everyone. </p><p>Open Source Software Development looks like closed source software development, completely inversed, right? </p><p>It is worth mentioning that some of the most used software in the planet is built as open source software. And although Open Source Software is being developed as a collaborative approach based (mainly) in voluntary work, the '&#8220;valuation&#8221; of some open source software projects is also impressive:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!H8cw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!H8cw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg 424w, https://substackcdn.com/image/fetch/$s_!H8cw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg 848w, https://substackcdn.com/image/fetch/$s_!H8cw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!H8cw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!H8cw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg" width="460" height="380" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:380,&quot;width&quot;:460,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:54437,&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://www.softwareantifragility.com/i/176257211?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.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_!H8cw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg 424w, https://substackcdn.com/image/fetch/$s_!H8cw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg 848w, https://substackcdn.com/image/fetch/$s_!H8cw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!H8cw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F52c26f89-b6c9-4f69-bcbd-48f831a43d89_460x380.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">From Wikipedia; &#8220;Open Source&#8221; lemma&#8217;s page.</figcaption></figure></div><h1>Inner Source Software Development</h1><p>We have seen what Closed Source Software is and how Open Source Software revolutionized how software development was happening. What about Inner Source? What kind of witchcraft is that and how is it positioned in the Source Code Spectrum?</p><blockquote><p><em><strong>Inner Source </strong>is the use of open source software development best practices and the establishment of an open source-like culture within organizations for the development of its non-open-source and/or proprietary software.<br><br>Wikipedia [5]</em></p></blockquote><p>The term was coined by Tim O&#8217;Reilly circa 2000. It is a growing trend in the engineering world. Teams adopting Inner Source aim to work and collaborate more effectively. Although they develop proprietary software, they open up the work internally between teams so that everyone &#8212; from developers to product managers &#8212; can contribute to the source code. </p><p>Here&#8217;s a video from Github, explaining the concept of Inner Source &#128071;</p><div id="youtube2--VXFeSz_s8M" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;-VXFeSz_s8M&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/-VXFeSz_s8M?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>Inner Source is adopted today by a variety of corporations in terms of business sector and size. Some of them are: Hewlett Packard, Red Hat, Philips, IBM, Robert Bosch, Google, Microsoft, SAP, PayPal but also non-technological companies and organizations like Walmart, BBC, Deloitte, Disney, Etsy, Mercedes-Benz, NASA, Harvard Business Review among others.</p><h1>Characteristics of development in open, close and inner source environments</h1><p><strong>Closed Source Software Development</strong> keeps the source code private and accessible only to authorized developers within an organization. Ownership rests with a single entity, and collaboration is usually limited to internal teams following a hierarchical structure. Transparency is low since decisions, issues, and design choices are not publicly visible. Governance is centralized, and innovation tends to move at a moderate pace due to reliance on internal R&amp;D. A classic example is Microsoft Office.</p><p><strong>Inner Source Software Development</strong> applies open-source principles within an organization. Code is accessible to all employees, encouraging cross-team collaboration while maintaining company ownership and intellectual property rights. Transparency is high internally, as documentation, reviews, and discussions are shared across teams. Governance follows a hybrid approach; open contribution with internal oversight. This model accelerates innovation and knowledge sharing within large organizations. PayPal&#8217;s Inner Source program is a notable example.</p><p><strong>Open Source Software Development</strong> makes the source code publicly available for anyone to view, modify, or distribute under open licenses like MIT or GPL. Ownership is shared and governed by community norms and licensing agreements. Collaboration is global and community-driven, with contributions from individuals and organizations worldwide. Transparency is very high, as development processes are open to all. Governance is distributed, and innovation occurs rapidly through diverse, continuous contributions. The Linux Kernel is a prime example.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!XNsF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!XNsF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png 424w, https://substackcdn.com/image/fetch/$s_!XNsF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png 848w, https://substackcdn.com/image/fetch/$s_!XNsF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png 1272w, https://substackcdn.com/image/fetch/$s_!XNsF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!XNsF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png" width="880" height="371" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:371,&quot;width&quot;:880,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:62951,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/176257211?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.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_!XNsF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png 424w, https://substackcdn.com/image/fetch/$s_!XNsF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png 848w, https://substackcdn.com/image/fetch/$s_!XNsF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.png 1272w, https://substackcdn.com/image/fetch/$s_!XNsF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9c74f7e2-e3a0-494f-afe2-75e5ac3f0e5d_880x371.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><strong>Reference:</strong></p><p>[1] <strong>Kritikos, Apostolos &amp; Stamelos, Ioannis. (2023)</strong>. A resilience&#8208;based framework for assessing the evolution of open source software projects. Journal of Software: Evolution and Process. 36. <a href="https://www.researchgate.net/publication/372535158_A_resilience-based_framework_for_assessing_the_evolution_of_open_source_software_projects">10.1002/smr.2597</a>.</p><p>[2] <strong>Quora.</strong> <em>Before version control like Git was invented, how did people manage code in a project?</em> Quora website. <a href="https://www.quora.com/Before-version-control-like-Git-was-invented-how-did-people-manage-code-in-a-project">https://www.quora.com/Before-version-control-like-Git-was-invented-how-did-people-manage-code-in-a-project</a>. Accessed October 15, 2025.</p><p>[3] <strong>Wikipedia.</strong> <em>Free software.</em> Wikipedia website. <a href="https://en.wikipedia.org/wiki/Free_software">https://en.wikipedia.org/wiki/Free_software</a>. Accessed October 15, 2025.</p><p>[4] <strong>Wikipedia.</strong> <em>Free and open-source software.</em> Wikipedia website. <a href="https://en.wikipedia.org/wiki/Free_and_open-source_software">https://en.wikipedia.org/wiki/Free_and_open-source_software</a>. Accessed October 15, 2025.</p><p>[5] <strong>Wikipedia.</strong> <em>Inner source.</em> Wikipedia website. <a href="https://en.wikipedia.org/wiki/Inner_source">https://en.wikipedia.org/wiki/Inner_source</a>. Accessed October 15, 2025.</p><div><hr></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aJO1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aJO1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 424w, https://substackcdn.com/image/fetch/$s_!aJO1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 848w, https://substackcdn.com/image/fetch/$s_!aJO1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!aJO1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aJO1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg" width="504" height="196" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:196,&quot;width&quot;:504,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:19106,&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://www.softwareantifragility.com/i/176257211?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.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_!aJO1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 424w, https://substackcdn.com/image/fetch/$s_!aJO1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 848w, https://substackcdn.com/image/fetch/$s_!aJO1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!aJO1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F12bb8330-7c6f-4f5f-9b9e-f6b391817461_504x196.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><a href="https://app.gptzero.me/documents/7c5a31b1-ee47-4caf-9d71-120c960dd305/share">Read the full GPTZero analysis for this post.</a></figcaption></figure></div><div><hr></div><p></p>]]></content:encoded></item><item><title><![CDATA[From Software Robustness to Software Antifragility ]]></title><description><![CDATA[A 40+ year journey!]]></description><link>https://www.softwareantifragility.com/p/from-software-robustness-to-software</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/from-software-robustness-to-software</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 09 Oct 2025 14:01:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!-z6M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-z6M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-z6M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-z6M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-z6M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-z6M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-z6M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg" width="1456" height="970" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/de76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:970,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1008207,&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://www.softwareantifragility.com/i/175627171?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.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_!-z6M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-z6M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-z6M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-z6M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fde76bcd6-b32b-475b-ac37-6b4f3a9acc38_3312x2207.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">Photo by Joshua Hoehne on Unsplash</figcaption></figure></div><p>&#932;his is officially the first post of our rebranded newsletter. I&#8217;d like to start with definitions. To be able to discuss about antifragility and what it means for software engineering, it is important that we:</p><ol><li><p>Define antifragility outside the scope of software engineering.</p></li><li><p>Revisit software engineering&#8217;s history and investigate why the concept of antifragility is relevant to software. </p></li></ol><p>Let&#8217;s begin.</p><p><strong>Antifragility</strong> is a term coined by Nassim Nicholas Taleb circa 2012, when he published his book <em>Antifragile: Things That Gain from Disorder</em>. It is defined as a property of systems that <em>gain</em> from volatility, uncertainty, and stressors. It&#8217;s not merely about survival or adaptation; it&#8217;s about transformation. When a system is antifragile, shocks act as fuel for improvement. Mistakes become data, volatility becomes feedback, and randomness becomes a source of creativity. </p><p>At its heart, antifragility is a philosophy of engagement with the unpredictable. It asks us to design systems that learn, self-correct, and regenerate. It is a mindset that reframes uncertainty from a threat into an ingredient for progress. </p><p>What does antifragility have to do with Software Engineering?</p><p>During the 70s and the 80s a need became apparent. In certain cases, it was critical that we create software that would be as error free as possible. Margaret Hamilton, while working for the Apollo space programme, pioneered building in code to prevent failures due to user error or hardware failure. Software Engineering was born and popularized by a NATO conference in 1968. Software crisis, a term coined by Fritz Bauer in the same conference, described a critical shortage of programmers (sounds familiar?). </p><p>Throughout the 70s the software world tried to improve software quality. Structured programming, functional programming and object-oriented programming where some of the coding paradigms that emerged to assist this effort. Testing began to be recognized as separate from debugging when Glenford Myers wrote <em>The Art of Software Testing in 1979</em>. The software development life cycle (SDLC) was formalised in the 1980s and the waterfall model became commonplace after the US Department of Defence adopted it in 1985 [1].</p><p>This was the era of <strong>Software Robustness</strong>.</p><blockquote><p><em>In computer science, <strong>robustness</strong> is the ability of a computer system to cope with errors during execution<sup> </sup>and cope with erroneous input.</em></p><p><em>~ Wikipedia [2]</em></p></blockquote><p>Software Quality as a concept was heavily investigated by the academia. In [3] we found that there were a lot of Quality Models created between 1977 and 2013. They are sorted in Basic Models (1977-2001) evaluating software as a whole and Tailored Quality Models (2001-2013) which extend evaluation to components. Moreover, these models try to evaluate more than the source code. Robustness wasn&#8217;t enough any more. </p><p>Although resilience is connected with software since 2009, the connection mainly happens on an infrastructural level. When we talked about resilience in computer science at this period, we did it from the network perspective; how (the network) could cope with stressors like power outages, hacking attempts and so forth. During my PhD dissertation (2017-2023) I tried to introduce the concept of Software Resilience by using the research of the Arup + Rockefeller institutes; the City Resilience Framework. Although City Resilience Framework was meant to evaluate Urban Resilience, in [3] we argue that <em>there are conceptual similarities between a city and an Open Source Software (OSS).  OSS projects are dynamic and continuously evolving systems with their own structural properties, they attract people that form communities around them which, on a second level, may utilize a governance model. Some OSS projects have commercial activity. As it is happening with cities, OSS projects can face stresses and crises (i.e. developers abandoning the project to work on a fork or users massively migrate to a competitive project)</em>.</p><p>Now that we have established that software can be resilient, lets try to define  resilience:</p><blockquote><p><em><strong>Resilience</strong> lies in the ability of a system to suffer stresses and crises and, nevertheless, survive them.</em></p><p><em>City Resilience Framework [4]</em></p></blockquote><p>I approached the resilience of an Open Source Software, from four distinct dimensions. </p><ul><li><p>It&#8217;s structure (source code)</p></li><li><p>It&#8217;s monetization capabilities (which reflect on the projects legal and business decisions).</p></li><li><p>It&#8217;s ability to be integrated to other projects or integrate other projects itself </p></li><li><p>(and, last but not least) it&#8217;s social aspect (aka its community of developers, users, stakeholders, etc).</p></li></ul><p>Fast forward to the sunset of 2025, I feel antifragility is a prerequisite for survival. We are seeing the world and almost every aspect of our lives facing major challenges; major stressors. From the economic crisis that started on 2008 (and never really ended), the pandemic that followed in 2020 and now the wars that emerge in different parts of the earth, we see that we are navigating through troubled times. I strongly believe that it is imperative to move past resilience - the ability to navigate through a crisis without &#8220;losing ourselves&#8221; - to antifragility, the ability to learn from a crisis and come out wiser and ready to avoid it next time. </p><p>For software it is, more or less, the same. Nowadays the rapid evolution of interconnectivity through the World Wide Web and the rapid evolution of AI create opportunities for creativity and prosperity. At the same time, they bring challenges. Resources management, privacy and security issues and the hot topic of when we are going to be enslaved by the machines &#128579;.</p><p>Regardless of how likely or unlikely, how intense or impactful these scenarios may be, we will need to bring software engineering to the next level. </p><p>Welcome to Software Antifragility!</p><div><hr></div><p><strong>References:</strong></p><ol><li><p><strong>Harrison AJ.</strong> <em>Robust Programs</em>. In: <em>How to Teach Computer Science</em>. Available from: <a href="https://httcs.online/robust/">https://httcs.online/robust/</a>.</p></li><li><p><strong>Robustness (computer science)</strong>. <em>Wikipedia</em>. Updated [cited 2025 Oct 8]. Available from: <a href="https://en.wikipedia.org/wiki/Robustness_(computer_science)">https://en.wikipedia.org/wiki/Robustness_(computer_science)</a>.</p></li><li><p><strong>Kritikos A, Stamelos I.</strong> Open Source Software Resilience Framework. In: Stamelos I, Gonzalez-Barahona J, Varlamis I, Anagnostopoulos D, eds. <em>Open Source Systems: Enterprise Software and Solutions. OSS 2018.</em> IFIP Advances in Information and Communication Technology. Vol 525. Cham: Springer; 2018. <a href="https://www.researchgate.net/publication/325650188_Open_Source_Software_Resilience_Framework">doi:10.1007/978-3-319-92375-8_4</a></p></li><li><p><strong>Da Silva J, Morera B.</strong> City resilience framework. Arup &amp; Rockefeller Foundation. Online: <a href="http://publications. arup. com/Publications/C/C-  ity_Resilience_Framework.aspx">http://publications. arup. com/Publications/C/C-</a></p><p><a href="http://publications. arup. com/Publications/C/C-  ity_Resilience_Framework.aspx">ity_Resilience_Framework.aspx</a> [12/15/2015] 2014.</p></li><li><p><strong>Kritikos, Apostolos &amp; Stamelos, Ioannis. (2023)</strong>. A resilience&#8208;based framework for assessing the evolution of open source software projects. Journal of Software: Evolution and Process. 36. <a href="https://www.researchgate.net/publication/372535158_A_resilience-based_framework_for_assessing_the_evolution_of_open_source_software_projects">10.1002/smr.2597</a>. </p></li></ol><div><hr></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LCIm!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LCIm!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 424w, https://substackcdn.com/image/fetch/$s_!LCIm!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 848w, https://substackcdn.com/image/fetch/$s_!LCIm!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 1272w, https://substackcdn.com/image/fetch/$s_!LCIm!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LCIm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png" width="490" height="187" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/874a1626-3db8-440f-8e24-45b468037c79_490x187.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:187,&quot;width&quot;:490,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:18786,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/175627171?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LCIm!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 424w, https://substackcdn.com/image/fetch/$s_!LCIm!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 848w, https://substackcdn.com/image/fetch/$s_!LCIm!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 1272w, https://substackcdn.com/image/fetch/$s_!LCIm!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F874a1626-3db8-440f-8e24-45b468037c79_490x187.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><strong><a href="https://app.gptzero.me/documents/381976c1-e671-4fd2-977b-c52daf7db5a7/share">Read the full GPTZero analysis for this post.</a></strong></figcaption></figure></div><p></p>]]></content:encoded></item><item><title><![CDATA[📢 Breaking news! We are rebranding 🚀]]></title><description><![CDATA[~ Software Resilience is dead! Long live Software Antifragility! ~]]></description><link>https://www.softwareantifragility.com/p/breaking-news-we-are-rebranding</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/breaking-news-we-are-rebranding</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Fri, 26 Sep 2025 19:44:45 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Sbmt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Sbmt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Sbmt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Sbmt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Sbmt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Sbmt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Sbmt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg" width="996" height="723" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:723,&quot;width&quot;:996,&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_!Sbmt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Sbmt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Sbmt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Sbmt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2c9048e7-d8c0-4cf2-a687-c6c7dec01c20_996x723.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">&#8220;The Great Shower of Shooting-Stars&#8221; by Agnes Giberne (1898) from &#8220;The Story of the Sun, Moon and Stars&#8221;. CC0 license by Internet Archive / Library of Congress.</figcaption></figure></div><p>Dear Subscribers,</p><p>&#127881; <strong>Exciting News!</strong> &#127881;</p><p>Coming October <em>softwareresilience.substack.com</em><strong> </strong>will be served from <em><strong>www.softwareantifragility.com</strong></em>.</p><p>I created this Substack circa 2017 to serve as a notepad for my PhD on Open Source and Software Resilience. </p><p>I failed to follow up on that so I thought I could retrospectively share with you the learnings of the journey. And I did, for a while; 23 posts worth of a journey to be precise.</p><p>Lately I have been pondering on the future of this newsletter. I kept feeling that the name and content didn&#8217;t align. Instead of sharing content about Software Resilience I was mainly sharing lessons from my field work as an engineering leader &#128579;.</p><p>I thought of starting a new Substack. But I didn&#8217;t want to let this one go and start from scratch. So I started thinking of ways <s>to turn</s> evolve this newsletter to something new; a topic worth investigating and field testing at the same time. </p><p>While I was struggling with these thoughts, &#8220;universe stepped in&#8221; &#129315;. I received an offer <strong>to sell </strong><em><strong>www.softwareresilience.com</strong></em>. It was the sign I was looking for. </p><div><hr></div><p>So&#8230; Software Resilience is dead; long live <strong>Software Antifragility &#128640;</strong></p><p>From October onwards, this Substack will be served from <strong>www.softwareantifragility.com. </strong></p><p>What you can expect after the rebranding:</p><ol><li><p>New research related to software antifragility.</p></li><li><p>Opinion pieces on how software engineering roles, processes, tools, frameworks, etc, can impact the antifragility of a software.</p></li><li><p>Empirical insights of software antifragility in the Software as a Service industry.</p></li><li><p>Software Antifragility in the code spectrum: Closed Source - Inner Source - Open Source. </p></li><li><p>and the occasional engineering leadership / misc posts &#128513;. </p></li></ol><p>NOTE: I will preserve the old posts as an archive, but the focus will (hopefully) change!</p><p>Unless I fail again! </p><p>Thank you for being part of the journey. </p><p>Talk to you soon &#129761;,</p><p>Apostolos</p><p><em>P.S: What is <a href="https://en.wikipedia.org/wiki/Antifragility">Antifragility</a>?</em></p><div><hr></div><div class="captioned-image-container"><figure><a class="image-link image2" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Cjwt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Cjwt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 424w, https://substackcdn.com/image/fetch/$s_!Cjwt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 848w, https://substackcdn.com/image/fetch/$s_!Cjwt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 1272w, https://substackcdn.com/image/fetch/$s_!Cjwt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Cjwt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png" width="509" height="174" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:174,&quot;width&quot;:509,&quot;resizeWidth&quot;:509,&quot;bytes&quot;:18436,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareantifragility.com/i/174642376?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:&quot;center&quot;,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Cjwt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 424w, https://substackcdn.com/image/fetch/$s_!Cjwt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 848w, https://substackcdn.com/image/fetch/$s_!Cjwt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 1272w, https://substackcdn.com/image/fetch/$s_!Cjwt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a4e87a-ef85-4dd4-9eca-133ce588c243_509x174.png 1456w" sizes="100vw" loading="lazy"></picture><div></div></div></a><figcaption class="image-caption"><strong><a href="https://app.gptzero.me/documents/2ed8486d-44d9-4786-bbcc-4e41a5e06280/share">Read the full GPTZero analysis for this post.</a></strong></figcaption></figure></div><p></p><p></p>]]></content:encoded></item><item><title><![CDATA[Notes: July 20, 2025]]></title><description><![CDATA[Git & Github: A quick but comprehensive quide.]]></description><link>https://www.softwareantifragility.com/p/notes-july-20-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-july-20-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Mon, 21 Jul 2025 06:01:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/Uszj_k0DGsg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>#1</h2><div><hr></div><p>Git for Pros: Tools &amp; Concepts for Mastering Version Control with Git</p><ul><li><p>Commits</p><ul><li><p>git add filename</p></li><li><p>git diff filename</p></li><li><p>git add -p filename (patch level / select chunk of change to commit)</p></li><li><p>Commit message</p></li><li><p>simple title then</p></li><li><p>empty line</p></li><li><p>then body of the commit</p></li><li><p>git log</p></li></ul></li><li><p>Branches</p></li><li><p>Written convention</p></li><li><p>Always be integrating</p><ul><li><p>few branches</p></li><li><p>relatively small commits</p></li><li><p>high-quality testing &amp; QA standards</p></li></ul></li><li><p>State, release and feature branches</p><ul><li><p>different types of branches...</p></li><li><p>...fullfill different types of jobs</p></li><li><p>Long-running branches</p><ul><li><p>exist through the complete lifetime of the project</p></li><li><p>often, they mirror "stages" in your dev life cycle</p></li></ul></li><li><p>Short-lived branches</p><ul><li><p>for new feature, bug fixes, refactorings, experiments...</p></li><li><p>will be deleted after integration (merge/rebase)</p></li></ul></li></ul></li><li><p>GitHub Flow</p><ul><li><p>very simple, very lean: only one long-running branch ("main") + feature branches</p></li></ul></li><li><p>GitFlow</p><ul><li><p>more structure, more rules</p></li><li><p>long-running: "mail" + "develop"</p></li><li><p>short-lived: features, releases, hotfixes</p></li></ul></li><li><p>How to choose "Best" Branching Model?</p><ul><li><p>consider your project, release cycle, and team</p></li><li><p>take inspiration from existing models (like "GitFlow" or "GitHub Flow")</p></li><li><p>... and create your own model!</p></li></ul></li><li><p>Pull requests</p><ul><li><p>Communicating About and Reviewing Code</p><ul><li><p>Without a Pull Request, you would jump right to merging your code...</p></li><li><p>A Pull Request invites reviewers to provide feedback before merging</p></li></ul></li><li><p>Contribute code to other repositories (you may not have push access)</p><ul><li><p>creating a "Fork" of the original repository, where you can make changes...</p></li><li><p>... and sugest those changes to be included via a PR (i.e. in OSS projects).</p></li><li><p>fork project &gt; git clone &gt; git branch test &gt; git checkout test &gt; open pref editor &gt; make changes &gt; git status &gt; git add ... &gt; git commit -m "" &gt; git push --set-upstream origin test &gt; go to browser github and create a pull request</p></li></ul></li></ul></li><li><p>Merge Conflicts</p><ul><li><p>How and when they occur</p></li><li><p>git merge, git rebase, git pull, git cherry-pick, git stash apply</p></li><li><p>Merging changes in Git</p><ul><li><p>most of the time, GIt will figure things out on its own!</p></li><li><p>when contradictory changes happen, git may not know what's correct! (i.e. file is changed in one change and deleted in another)</p></li><li><p>we can undo a conflict and start over (not always have to resolve it)</p><ul><li><p>git merge --abort</p></li><li><p>git rebase --abort</p></li></ul></li><li><p>when we want to handle the conflict, we see the conflicting part in the file</p><ul><li><p>in such cases we just clean-up the file communicating with the other team member</p></li><li><p>after clean-up we do git mergetool and we have to select between modified or deleted file or abort</p></li><li><p>changed file is added and ready to be committed!</p></li></ul></li></ul></li></ul></li><li><p>Merge vs Rebase</p><ul><li><p>Merge</p><ul><li><p>most simple scenario: original commit triggered to branches A and B, B has changes, A remained as is so the changes of B are merged to A (fast-forward merge)</p></li><li><p>merge-commit is created automatically from git to synthesize 2 different branches with changes</p></li></ul></li><li><p>Rebase</p><ul><li><p>git rebase branch-B (the one we want to integrate as with merge)</p></li><li><p>rebase re-writes commit history eliminatiting branching for history</p></li><li><p>WE NEED TO BE CAREFUL when we rebase branches in public commits as they may eliminate the evidence of the work of another developer</p></li><li><p>DO NOT rebase on commits that you've already pushed/shared on a remote repository!</p></li><li><p>You should use them to clean up your local commit history before mergin remotely.</p></li></ul></li></ul></li></ul><p>Notes taken from this video &#128071;</p><div id="youtube2-Uszj_k0DGsg" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;Uszj_k0DGsg&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/Uszj_k0DGsg?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><h2>#2</h2><div><hr></div><p>Advanced Git - Interactive Rebase, Cherry-Picking, Reflog, Submodules and more</p><ul><li><p>Interactive rebase</p><ul><li><p>a tool for optimizing and cleaning up your commit history</p><ul><li><p>change a commit's message</p></li><li><p>delete commits </p></li><li><p>reorder commits </p></li><li><p>combine multiple commits into one</p></li><li><p>edit / split an existing commit into multiple new ones</p></li></ul></li><li><p>DO NOT use interactive rebase on commits that you've already pushed/shared on a remote repository!</p><ul><li><p>instead, use it for cleaning up your local commit history before merging it into a shared team branch</p></li><li><p>git rebase -i HEAD~3</p><ul><li><p>"reword" the line you want to edit the commit message</p></li><li><p>then a new window opens that allows us to change the commit message</p></li></ul></li><li><p>git rebase -i HEAD~4</p><ul><li><p>squash the line that you want to combine with the previous commit</p></li><li><p>first line creates the commit message for the combined commit</p></li></ul></li></ul></li></ul></li><li><p>Cherry picking</p><ul><li><p>Moving a commit to a different branch</p><ul><li><p>git checkout feature/newsletter &gt; git cherry-pick commit_number</p></li><li><p>then git checkout master &gt; git reset </p></li><li><p>hard HEAD~1 to clean up the master branch</p></li></ul></li></ul></li><li><p>Delete unwanted commits</p><ul><li><p>git reset --hard commit_id_I_want_as_last</p></li></ul></li><li><p>Delete branch</p></li><li><p>The Reflog</p><ul><li><p>Recovering deleted commits</p><ul><li><p>git reflog &gt; git branch happy-ending number of deleted commit from reflog</p></li></ul></li><li><p>Restoring branches</p><ul><li><p>git reflog &gt; git branch feature/login commit number of the deleted branch</p></li></ul></li></ul></li><li><p>Submodules</p><ul><li><p>Mixing external code with your own files</p></li><li><p>Updating the external code is, again, a manual process</p></li><li><p>mkdir lib &gt; cd lib &gt; git submodule add URL to library &gt; git commit -m ""</p></li><li><p>git clone project with submodules</p><ul><li><p>git submodule update --init (to add the actual submodules folders / populate)</p></li><li><p>or git clone --recurse-submodules and project clone URL</p></li></ul></li></ul></li><li><p>Search and Find</p><ul><li><p>Filtering your commit history: git log</p><ul><li><p>by keyword --grep="&lt;keyword&gt;"</p></li><li><p>by date --before / --after</p></li><li><p>by message --grep</p></li><li><p>by author --author</p></li><li><p>by file -- &lt;filename&gt;</p></li><li><p>by branch &lt;branch-A&gt;</p></li></ul></li></ul></li></ul><p>Notes taken from this video &#128071;</p><div id="youtube2-qsTthZi23VE" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;qsTthZi23VE&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/qsTthZi23VE?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>]]></content:encoded></item><item><title><![CDATA[Notes: June 22, 2025]]></title><description><![CDATA[Expert Generalists: The lost art of "IT Universalis"]]></description><link>https://www.softwareantifragility.com/p/notes-june-22-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-22-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Sun, 22 Jun 2025 19:02:41 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JN9Q!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F42341aa2-880f-43a1-9fc0-2c3128482e54_256x256.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>#1</h2><div><hr></div><ul><li><p>As computer systems get more sophisticated we've seen a growing trend to value deep specialists. But we've found that our most effective colleagues have a skill in spanning many specialties. </p></li><li><p>We are thus starting to explicitly recognize this as a first-class skill of &#8220;Expert Generalist&#8221;.</p></li><li><p>The characteristics that we've observed separating effective software developers from the chaff aren't things that depend on the specifics of tooling. </p></li><li><p>We rather appreciate such things as: the knowledge of core concepts and patterns of programming, a knack for decomposing complex work-items into small, testable pieces, and the ability to collaborate with both other programmers and those who will benefit from the software.</p></li><li><p>This echoes a long debate about the relative value of specialists and generalists. </p><ul><li><p>Specialists are seen as people with a deep skill in a specific subject, </p></li><li><p>while generalists have broad but shallow skills.</p></li></ul></li><li><p>Folks that only work in a single technological neighborhood are at the constant risk of locking themselves into a knowledge silo, unaware of many tools that could help them in their work.</p></li><li><p>This ability goes beyond just developer skills. We've seen our best business analysts gain deep skills in a couple of domains, but use their generalist skills to rapidly understand and contribute in new domains.</p></li><li><p>So over the last year or so we have started to resist this industry-wide push for narrow skills, by calling out this quality, which we call an <strong>Expert Generalist</strong>.</p></li><li><p>Expert Generalists have the following attributes:</p><ul><li><p><strong>Curiosity:</strong> Self-explanatory</p></li><li><p><strong>Collaborativeness:</strong> Self-explanatory</p></li><li><p><strong>Customer Focus: </strong></p><blockquote><p><em>We are fans of Kathy Sierra's notion that our purpose as software developers is to help our customers become &#8220;badass&#8221; at what they do.</em></p></blockquote></li><li><p><strong>Favor Fundamental Knowledge: </strong></p><blockquote><p><em>Such knowledge tends to age slowly, and is applicable when folks move into new environments. For example the basic moves of refactoring are the same whatever language you are programming, the core patterns of distributed systems reappear regularly.</em></p></blockquote></li></ul></li><li><p>Good Catch in that &#8212;&gt; Blend of Generalist and Specialist Skills is not being reflected correctly to the &#8220;T-shape&#8221; metaphor. </p><blockquote><p><em>While the T-shape moniker did catch on, it comes with a major problem in the metaphor, we don't find such folks have only a single deeper skill. They usually have a few, of varying depth.</em></p></blockquote></li></ul><p><em>(Martin Fowler et. al. / June 19, 2025 / MartinFowler.com / <a href="https://martinfowler.com/articles/expert-generalist.html">permalink</a>)</em></p><h2>#2</h2><div><hr></div><pre><code><strong>Connection with previous Notebook Entries</strong></code></pre><p><strong><a href="https://www.softwareresilience.com/p/notes-june-10-2025">Entry of June 10, 2025</a> </strong>was about engineering roles, career ladders and professional growth extensively. </p><ul><li><p>How is the skill of Expert Generalist connects with the above?</p></li><li><p>Is it a skill that should be linked with the &#8220;Management Track&#8221; of a career ladder, or it could be relevant to the more mature levels of the &#8220;Individual Contributor&#8217;s Track&#8221;?</p></li><li><p>How can we effectively cultivate this skill within a company or organization?</p></li></ul><p><strong>Side Note: </strong>Is Expert Generalist skill relevant to the Open Source / Inner Source governance? </p><p> </p>]]></content:encoded></item><item><title><![CDATA[Notes: June 18, 2025]]></title><description><![CDATA[United Nations (UN) Open Source Week 2025 / Open Source Program Offices (OSPOs) for Good]]></description><link>https://www.softwareantifragility.com/p/notes-june-18-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-18-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 19 Jun 2025 19:39:33 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JN9Q!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F42341aa2-880f-43a1-9fc0-2c3128482e54_256x256.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>United Nations (UN) Open Source Week 2025 / Open Source Program Offices (OSPOs) for Good</h2><div><hr></div><p>Editathon - Maintainathon - Hackathon</p><ul><li><p>22 teams from all over world</p></li><li><p>Maintainathon &#8212;&gt; Strengthening the open source infrastructure</p><ul><li><p>50+ breakout sessions</p></li><li><p>Senior maintainers </p></li></ul></li><li><p>Editathon &#8212;&gt; Safeguarding the integrity of the information online</p><ul><li><p>6 new articles</p></li><li><p>234 existing articles</p></li><li><p>30000+ edits</p></li><li><p>topics related to UN and mission around emerging technologies</p></li><li><p>37 editors</p></li><li><p>Collective effort reached a global audience of 2.000.000 views</p></li></ul></li><li><p>Hackathon &#8212;&gt; Fostering inclusive collaboration</p><ul><li><p>81 hackers</p></li><li><p>3 ambitious challenges: Children - Climate - RIS data </p></li></ul></li></ul><p>3rd edition of OSPOs for Good (happening for 3 consecutive years)</p><p>This year (2024-2025) UN:</p><ul><li><p>Released the open source repository </p></li><li><p>Released the open source catalogue</p></li><li><p>Released the open source principles</p></li></ul><p>OSPOs for Good sessions:</p><ul><li><p>Continue the dialog that started 3 years ago</p></li><li><p>How we can build more effective government OSPOs?</p></li><li><p>Explore the dynamic relationship between Open Source and AI</p></li><li><p>Discuss how Open Source and DPIs can re-enforce each other</p></li><li><p>During DPI Day we will</p><ul><li><p>Better connect open source and DPI communities and ecosystems</p></li><li><p>Help align initiatives in global level and</p></li><li><p>Ensure that DPI projects actively contribute to the implementation of the Global Digital Compact</p></li></ul></li></ul><p>UN is a space for all stakeholders not only governments</p><p><a href="https://www.un.org/global-digital-compact/en">Global Digital Compact (GDC)</a> is a north-star for every actor in the digital ecosystem</p><ul><li><p>Open AI models and open access to training data </p></li><li><p>Open Source as a foundation for digital transformation</p></li><li><p>GDC is open for endorsement for individuals or organizations</p></li></ul><p><strong>Panel:</strong> How They Did It: A Look Behind Newly Launched OSPOs</p><ul><li><p>96% of all software has open source components in it </p></li><li><p>80% is released as open source</p></li><li><p>OSPO Amazon: Started back in early 00s (2004 - 2007)</p></li><li><p>OSPO started first to focus on the compliance side of things</p></li><li><p>The driving motivation for an OSPO starts usually with compliance but then moves to engagement!</p></li><li><p>We &#8220;Africanized&#8221; open source projects to have short term project delivery of projects with long term support.</p></li></ul><p><strong>//&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;- Live <s>X(ing)?</s> tweeting started here &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;//</strong></p><ul><li><p><a href="https://x.com/hashtag/AI?src=hashtag_click">#AI</a> and <a href="https://x.com/hashtag/OpenSource?src=hashtag_click">#OpenSource</a>: Building <a href="https://x.com/hashtag/Ethical?src=hashtag_click">#Ethical</a> and <a href="https://x.com/hashtag/Transparent?src=hashtag_click">#Transparent</a> Systems happening now at <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a>.</p></li><li><p>Sabrina Farmer. At Gitlab we are vendor agnostic. Before we work with services, we make sure there are no violations when our systems interacting with the <a href="https://x.com/hashtag/data?src=hashtag_click">#data</a>. <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Hakim Hacid. AI as a problem is a very complex problem to be dealt by a specific actor only. We need to foster collaboration <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Guilherme Canela: Intenational rule of law system allowed the collaboration in different levels and groups (i.e. <a href="https://x.com/hashtag/scientific?src=hashtag_click">#scientific</a> <a href="https://x.com/hashtag/community?src=hashtag_click">#community</a>). But we need to revisit and be careful how we translate everything to <a href="https://x.com/hashtag/respect?src=hashtag_click">#respect</a> the <a href="https://x.com/hashtag/human?src=hashtag_click">#human</a> <a href="https://x.com/hashtag/rights?src=hashtag_click">#rights</a> agenda <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Expected reference to <a href="https://x.com/GreatDismal">GreatDismal</a> work as the <a href="https://x.com/hashtag/digital?src=hashtag_click">#digital</a> <a href="https://x.com/hashtag/future?src=hashtag_click">#future</a> and <a href="https://x.com/hashtag/AI?src=hashtag_click">#AI</a> is being discussed. Once again, we are coming to the conclusion that <a href="https://x.com/hashtag/opensource?src=hashtag_click">#opensource</a>, by fueling open, collaborative work, can be a force to the right direction <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Hakim Hacid: Data is the oil that fuels the AI. However there is part of these data that can be considered high quality (data as such can help researchers to build AI) <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Hakim Hacid: Preserving the <a href="https://x.com/hashtag/privacy?src=hashtag_click">#privacy</a> of the <a href="https://x.com/hashtag/data?src=hashtag_click">#data</a> but also fostering the research around AI is a challenge of paramount importance <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Hakim Hacid: There seems to be a luck in relevant <a href="https://x.com/hashtag/talent?src=hashtag_click">#talent</a> that will help us build <a href="https://x.com/hashtag/AI?src=hashtag_click">#AI</a> the right way, collaboratively <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Hakim Hacid: There is a need for <a href="https://x.com/hashtag/regulation?src=hashtag_click">#regulation</a>, but we need to do it the right way. Also there is need for <a href="https://x.com/hashtag/standardization?src=hashtag_click">#standardization</a>, but we need to also collaboratively decide what we can do to speed up <a href="https://x.com/hashtag/development?src=hashtag_click">#development</a>. <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Guilherme Canela: Maybe the real <a href="https://x.com/hashtag/innovation?src=hashtag_click">#innovation</a> is not whether we have super <a href="https://x.com/hashtag/regulation?src=hashtag_click">#regulation</a> or super <a href="https://x.com/hashtag/governance?src=hashtag_click">#governance</a>. Maybe it is how we do things without leaving anyone behind <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Guilherme Canela: The scientists that decided to share their research as <a href="https://x.com/hashtag/open?src=hashtag_click">#open</a> <a href="https://x.com/hashtag/science?src=hashtag_click">#science</a> during <a href="https://x.com/hashtag/covid19?src=hashtag_click">#covid19</a> era, made the vaccines to be developed very fast. We have been advocating for <a href="https://x.com/hashtag/openscience?src=hashtag_click">#openscience</a> years before at <a href="https://x.com/hashtag/UN?src=hashtag_click">#UN</a> <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Panel #2 / Breaking Silos: <a href="https://x.com/hashtag/OpenSource?src=hashtag_click">#OpenSource</a> and <a href="https://x.com/hashtag/OpenData?src=hashtag_click">#OpenData</a> Drive <a href="https://x.com/hashtag/Interoperability?src=hashtag_click">#Interoperability</a> <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Egos drive a lot of <a href="https://x.com/hashtag/innovation?src=hashtag_click">#innovation</a> in <a href="https://x.com/hashtag/tech?src=hashtag_click">#tech</a>. <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p><a href="https://x.com/hashtag/OpenSource?src=hashtag_click">#OpenSource</a> is a <a href="https://x.com/hashtag/governance?src=hashtag_click">#governance</a> <a href="https://x.com/hashtag/model?src=hashtag_click">#model</a> <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>In both UN/LOCODE and UN/CEFACT we are applying <a href="https://x.com/hashtag/opensource?src=hashtag_click">#opensource</a> solution and we need help <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p><a href="https://x.com/hashtag/dataism?src=hashtag_click">#dataism</a> vs <a href="https://x.com/hashtag/humanism?src=hashtag_click">#humanism</a> <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Nabiha Syed / Mozilla Foundation: <a href="https://x.com/hashtag/opensource?src=hashtag_click">#opensource</a> is only one instantiation of the general <a href="https://x.com/hashtag/open?src=hashtag_click">#open</a> <a href="https://x.com/hashtag/philosophy?src=hashtag_click">#philosophy</a>. This is not about product-market fit but about product-community fit <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Nabiha Syed / Mozilla Foundation: <a href="https://x.com/hashtag/opensource?src=hashtag_click">#opensource</a> needs not consumers but collaborators in the co-creation process <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Masayuki Yamada / Digital Agency, Japan Gov: A digital society where noone is left behind. That is the vision for the Japanese government <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Rebecca Mackinnon / Wikimedia Foundation: If we want quality data, we need attribution (highlighting that data produced from AI may be of low quality due to hallucinations) <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>I heard "we should go back to pre-internet human rights". I would argue that the early days of the internet created collaborative communities that had respect as their core values (at least in the majority of cases). We are talking 1990+ to 2020+ here <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Panel #3 / The Role of Open Source in Digital Public Infrastructure (DPI) <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a> <a href="https://x.com/hashtag/OPSOsforGood?src=hashtag_click">#OPSOsforGood</a></p></li><li><p>Adriana Groh / Sovereign Tech Agency: We are trying to create a blueprint is like a new government muscle where solutions are produced but also shared for collective improvement and optimization <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li><li><p>Adriana Groh / Sovereign Tech Agency: We are trying to create a blueprint is like a new government muscle where solutions are produced but also shared for collective improvement and optimization <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li></ul><ul><li><p>Gabriele Columbro: Providers solutions (meaning proprietary solution) in a very big percentage (up to 90%) probably run on <a href="https://x.com/hashtag/opensource?src=hashtag_click">#opensource</a>. Think them as the last mile of open source <a href="https://x.com/hashtag/UNOpenSourceWeek?src=hashtag_click">#UNOpenSourceWeek</a></p></li></ul><p><em>(<a href="https://webtv.un.org/en/asset/k1i/k1i8jasxz4">OSPOs for Good / </a>Parts that were available for remote participation)</em></p>]]></content:encoded></item><item><title><![CDATA[Notes: June 16, 2025]]></title><description><![CDATA[How to achieve engineering maturity; The messy middle for engineering managers]]></description><link>https://www.softwareantifragility.com/p/notes-june-16-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-16-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Mon, 16 Jun 2025 19:49:06 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!kAOj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>#1</h2><div><hr></div><p><strong>Transparency &#8594; Intent &#8594; Speed:</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_!kAOj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kAOj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 424w, https://substackcdn.com/image/fetch/$s_!kAOj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 848w, https://substackcdn.com/image/fetch/$s_!kAOj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 1272w, https://substackcdn.com/image/fetch/$s_!kAOj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kAOj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:56218,&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;:&quot;https://www.softwareresilience.com/i/166094206?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.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_!kAOj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 424w, https://substackcdn.com/image/fetch/$s_!kAOj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 848w, https://substackcdn.com/image/fetch/$s_!kAOj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 1272w, https://substackcdn.com/image/fetch/$s_!kAOj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6845a5e4-2491-42ad-9ab8-ea3c24588b1e_1456x816.webp 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><ul><li><p><strong>Transparency</strong> &#8212; is about being <em>aware</em> of what&#8217;s going on, and creating the correct feedback loop to discuss and design improvements. </p></li><li><p><strong>Intent</strong> &#8212; Transparency enables <em>intent</em>. The second clear trend that comes out is that teams that are <em>intentional</em> about parts of their engineering process are rewarded. </p></li><li><p><strong>Speed</strong> &#8212; is the tip of the pyramid. Going fast is only helpful and sustainable when you are going in the right direction (intent) and you have a good feedback loop to steer your practices if needed (transparency). </p></li></ul><p>Good teams are fast, but fast teams are not necessarily good!</p><p><em>(Luca Rossi / January 15, 2025 / Refactoring.fm / <a href="https://refactoring.fm/p/the-path-to-engineering-maturity">permalink</a>)</em></p><h2>#2</h2><div><hr></div><ul><li><p>"Messy middle"&#8212;that space where you're both leading a team and reporting to senior executives.</p></li><li><p>It's a position that requires a delicate balance, a nuanced understanding of people, and the ability to adapt your approach depending on who you're interacting with.</p></li><li><p>When you're leading a team of managers, you're not just responsible for their output&#8212;you're stewarding their hopes, dreams, and professional growth.</p></li><li><p>Creating opportunities for your team members to shine is key. Whether it's through challenging assignments, public recognition, or simply giving them the space to lead, it's important to be everyone's cheerleader.</p><ul><li><p>Leadership can be lonely, and it's easy to get lost in the needs of others. Remember to carve out time for your own development and well-being.</p></li></ul></li><li><p>Managing up to senior executives is a different beast altogether. SVPs and C-suite executives are often focused on the bigger picture&#8212;the strategic direction of the company, high-level results, and key business outcomes.</p><ul><li><p>Different executives have different styles, and part of your job is to adapt your approach to meet them where they are. Some may prefer high-level summaries, while others might want to dive into the details.</p></li></ul></li><li><p>The ability to change your style and delivery based on the person you're talking to is crucial. It's about meeting people where they are&#8212;whether they're on your team or in the executive suite.</p></li><li><p>This means being flexible, not just in how you communicate, but in how you lead. Some team members may need more guidance, while others thrive with autonomy. Similarly, some executives might value data-driven discussions, while others are more swayed by narrative and vision.</p></li><li><p>Embrace feedback as a way to grow&#8212;both for yourself and your team. Encourage open dialogue, and be receptive to criticism. It's not always easy, but it's through constructive feedback that we become better leaders.</p></li><li><p>This decision-making process often involves considering the broader implications of a situation. Will standing your ground on this issue benefit your team in the long run? Is it aligned with the company&#8217;s goals? Sometimes, it's better to let go and focus your energy on what truly matters.</p></li><li><p>It's a privilege to be in a position where you can influence the professional lives of others. But with that privilege comes the duty to lead with integrity, empathy, and a focus on the long-term success of your team. Your leadership has a direct impact on their satisfaction, growth, and career trajectory.</p></li></ul><p><em>(Amy Crook / August 15, 2024 / LinkedIn / <a href="https://www.linkedin.com/pulse/messy-middle-managing-up-down-amy-crook-94udc/">permalink</a>)</em></p>]]></content:encoded></item><item><title><![CDATA[Notes: June 14, 2025]]></title><description><![CDATA[What's the real value of my startup?]]></description><link>https://www.softwareantifragility.com/p/notes-june-14-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-14-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Sat, 14 Jun 2025 20:24:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!y1nI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Startup Valuation Methods: 8 Approaches Investors Use</p><ul><li><p><strong>The Berkus Method: Valuing Potential Over Revenue</strong></p><ul><li><p>Here&#8217;s how it works: investors break your startup into five categories &#8212; the idea itself, the strength of your team, how far your product has come, the product&#8217;s launch readiness, and any strategic relationships you&#8217;ve lined up. </p></li><li><p>Each category is assigned a dollar amount, often up to $500K each. Add them together, and that&#8217;s your pre-money valuation. </p></li><li><p>Founder tip: Use Berkus as your early narrative, not your final pitch.</p></li></ul></li><li><p><strong>Comparable Transactions:</strong> The Startup "Comps" Approach</p><ul><li><p>This is one of the most common methods used by VCs, bankers, and acquirers, and for good reason.</p></li><li><p>Find relevant deals, extract the valuation multiples (like revenue or user-based), and apply them to your own numbers. For example, if SaaS startups at your stage are getting 8&#215; ARR and you&#8217;re doing $2M ARR, your implied value might sit around $16M.</p></li><li><p>But here&#8217;s the catch: good comps are hard to find.</p></li><li><p>Founder tip: Use comps as a credibility tool, not a crutch.</p></li></ul></li><li><p><strong>Scorecard Valuation:</strong> Adjusting for Local Strengths</p><ul><li><p>What&#8217;s the going rate for startups like yours in your region? If most pre-seed rounds in your city are getting $3 million pre-money, that becomes the baseline.</p></li><li><p>From there, investors adjust up or down based on how your startup stacks up against others in key areas, like team quality, market size, product, traction, and competitive landscape. Each factor has a weight. Maybe the team counts for 25%, the market size for 20%, and so on. If your team is stronger than average, that part gets a boost. If your go-to-market looks weak, that portion might get docked. According to Eqvista, some of the most common scorecard criteria are:</p><ul><li><p>Board, entrepreneur, the management team &#8211; 25%</p></li><li><p>Size of opportunity &#8211; 20%</p></li><li><p>Technology/Product &#8211; 18%</p></li><li><p>Marketing/Sales &#8211; 15%</p></li><li><p>Need for additional financing &#8211; 10%</p></li><li><p>Others &#8211; 10%</p></li></ul></li><li><p>Founder tip: Have your data ready; know the average valuation in your area and stage.</p></li></ul></li><li><p><strong>Cost-to-Duplicate:</strong> Rebuilding from Scratch</p><ul><li><p>This method asks a basic but important question: how much would it cost to build your startup from the ground up, today?</p></li><li><p>The Cost-to-Duplicate approach estimates the value of your business by adding up everything it took (or would take) to recreate it. That includes engineering time, salaries, tech infrastructure, R&amp;D, hardware, patents, and other tangible investments.</p></li><li><p>Founder tip: Calculate your cost to build and have it handy. It&#8217;s a good fallback if investors push back on price. But don&#8217;t stop there. Anchor the conversation in traction, market size, and vision to push beyond the minimum.</p></li></ul></li><li><p><strong>Risk Factor Summation:</strong> Quantifying Uncertainty</p><ul><li><p>This method takes a structured approach to something every investor already does - assess risk. The Risk Factor Summation Method starts with a base valuation, often the average pre-money for startups at your stage, and adjusts it up or down based on 12 specific risk categories.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!y1nI!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!y1nI!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg 424w, https://substackcdn.com/image/fetch/$s_!y1nI!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg 848w, https://substackcdn.com/image/fetch/$s_!y1nI!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!y1nI!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!y1nI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg" width="730" height="637" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:637,&quot;width&quot;:730,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:111267,&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://www.softwareresilience.com/i/165868681?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.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_!y1nI!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg 424w, https://substackcdn.com/image/fetch/$s_!y1nI!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg 848w, https://substackcdn.com/image/fetch/$s_!y1nI!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!y1nI!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fded67f8a-a548-404f-a23f-81ccbd6121e6_730x637.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></li><li><p>Founder tip: Ask which risks matter most to an investor. If you can mitigate or reframe those concerns, you may be able to shift the math in your favor.</p></li></ul></li><li><p><strong>Discounted Cash Flow (DCF):</strong> The Financial Forecast Model</p><ul><li><p>one of the most rigorous valuation methods out there. It&#8217;s built on a simple idea - a business is worth the money it will generate in the future, adjusted for the risk of actually getting there.</p></li><li><p>This method is great for startups with steady revenue and visibility into growth, typically post-Series A or later. But in early-stage deals, DCF often falls apart.</p></li><li><p>Founder tip: DCF can help you understand the long-term economics of your model.</p></li></ul></li><li><p><strong>Venture Capital Method:</strong> Exit-Driven Estimation</p><ul><li><p>The Venture Capital Method works backward from the endgame. It starts with a projected exit, through acquisition or IPO, and calculates how much a VC needs to invest today to hit their target return.</p></li><li><p>6 steps:</p><ul><li><p>Estimate the Investment Needed</p></li><li><p>Forecast Startup Financials</p></li><li><p>Determine the Timing of Exit (IPO, M&amp;A, etc.)</p></li><li><p>Calculate Multiple at Exit (based on comps)</p></li><li><p>Discount to PV at the Desired Rate of Return</p></li><li><p>Determine Valuation and Desired Ownership Stake</p></li></ul></li><li><p>Founder tip: Know the math investors are doing behind the scenes. You can&#8217;t control their return targets, but you can influence the exit assumptions. Make a credible case for why your business could be a $100M+ outcome, and back it up with market logic.</p></li></ul></li><li><p><strong>Book Value Method:</strong> Net Worth of the Startup</p><ul><li><p>This one&#8217;s as old-school as it gets. The Book Value Method calculates your startup&#8217;s value by subtracting liabilities from assets, essentially, what the company is worth on paper if it shut down today.</p></li><li><p>Founder tip: Don&#8217;t lead with book value unless your assets are a real part of the story. But make sure your books are clean</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_!pYlF!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!pYlF!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg 424w, https://substackcdn.com/image/fetch/$s_!pYlF!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg 848w, https://substackcdn.com/image/fetch/$s_!pYlF!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!pYlF!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!pYlF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg" width="846" height="818" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:818,&quot;width&quot;:846,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:153873,&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;:&quot;https://www.softwareresilience.com/i/165868681?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.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_!pYlF!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg 424w, https://substackcdn.com/image/fetch/$s_!pYlF!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg 848w, https://substackcdn.com/image/fetch/$s_!pYlF!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!pYlF!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa5a72147-f1f4-453f-905e-5c1bde6680dc_846x818.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><p><em>(Ruben Dominguez Ibar / June 14, 2025 / The VC Corner  / <a href="https://www.thevccorner.com/p/8-startup-valuation-methods">permalink</a>)</em></p>]]></content:encoded></item><item><title><![CDATA[Notes: June 13, 2025]]></title><description><![CDATA[Can AI support effectively the SDLC process?]]></description><link>https://www.softwareantifragility.com/p/notes-june-13-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-13-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Fri, 13 Jun 2025 20:23:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/6xiJaDYN3_k" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>#1</h2><div><hr></div><p>Dev Interrupted research: We broke the software delivery process into 14 steps across planning, requirements gathering, coding, and release. We asked participants to consider their most recent pull requests, and for each step of the process, we asked participants who completed the task: a human, AI, or both.</p><ul><li><p>Coding phase shows strong AI integration</p><ul><li><p>Regarding writing code, only 33% of developers rely solely on humans, while 67% use AI either wholly or partially.</p></li><li><p>AI is most dominant in writing tests, with 24% of tests being AI driven.</p></li><li><p>Even pull request descriptions have seen high AI adoption, with 53% of teams using AI assistance.</p></li></ul></li><li><p>Requirements and Architecture remain largely human-led</p><ul><li><p>Task creation is still 68% human-led, architecture decisions remain 64% human-driven, and the critical question of "what to build" is still 70% human-determined. </p></li><li><p>These numbers suggest that teams trust AI with implementation but hesitate to involve it in strategic decision-making.</p></li></ul></li><li><p>Review and Release present the biggest bottleneck</p><ul><li><p>Code review remains 51% human-only, while merge approval is 77% human-controlled. </p></li><li><p>Similarly, human workflows constrain release management, with 70% of releases being human-led.</p></li><li><p>AI can accelerate code creation, but traditional gatekeeping processes haven't evolved to handle the increased throughput.</p></li></ul></li><li><p>Teams have successfully adopted AI where the risk is low and the output is measurable (coding, documentation, testing), but remain cautious about areas requiring judgment, creativity, or strategic thinking. The question for engineering leaders is whether this caution is justified or whether it's leaving significant value on the table.</p></li><li><p>Organizations like Deloitte have reported reducing unit test time by 70% through agent interactions, while others have compressed documentation cycles from weeks to days.</p></li><li><p>This level of autonomous operation extends beyond coding into areas like debugging, system administration, and even architectural analysis. However, it raises crucial questions about oversight, security, and the skills developers need to maintain as AI capabilities expand.</p></li><li><p>Implementing AI across the SDLC requires a cultural approach that embraces experimentation and healthy skepticism.</p><blockquote><p><em>"The enthusiasts need to pull the skeptics up, and the skeptics need to pull the enthusiasts a little bit down to earth."</em> &#8212;Birgitta B&#246;ckeler.</p></blockquote></li><li><p>AI can significantly enhance quality and velocity in organizations with strong development practices. </p></li><li><p>However, AI may accelerate the creation of technical debt or security vulnerabilities in systems with underlying issues.</p></li><li><p>The sparring partner model, where AI serves as a thought partner rather than a replacement, has emerged as particularly effective.</p></li><li><p>One of engineering leaders' most significant challenges is managing expectations around AI productivity gains. The focus on percentage improvements and speed metrics can create counterproductive pressure that leads to corner-cutting and quality degradation.</p></li><li><p>Engineering leaders must also address knowledge gaps among technical teams. Many developers still don't fully understand the implications of using AI tools, from data privacy concerns to the reality that most AI interactions involve sending code to third-party servers.</p></li><li><p>"AI is becoming foundational to how we work; the real opportunity is not replacing people. It's about amplifying individuals, amplifying creativity, and improving the flow through the system." This amplification approach requires several key elements:</p><ul><li><p><strong>Transparency and ownership</strong>: Clear accountability for AI-generated outputs, with humans responsible for review and validation.</p></li><li><p><strong>Tool selection criteria</strong>: Guidelines around which AI tools are approved for use, considering factors like data handling, security scanning, and license compliance.</p></li><li><p><strong>Progressive experimentation</strong>: Start with low-risk use cases and gradually expand scope as teams build confidence and competency.</p></li><li><p><strong>Continuous learning culture</strong>: Regular sharing of successes, failures, and best practices across the organization.</p></li></ul></li><li><p>The conversation around AI in software development is shifting from tactical tool adoption to strategic workflow transformation. For engineering leaders, this transition requires several key considerations:</p><ol><li><p>First, resist the temptation to optimize solely for speed. Organizations that see the most sustainable benefits from AI focus on overall system improvement rather than individual productivity metrics.</p></li><li><p>Second, invest in cultural change alongside technical adoption. The most successful AI implementations happen in environments that encourage thoughtful experimentation while maintaining high standards for quality and security.</p></li><li><p>Finally, think systematically about bottlenecks across the entire SDLC. The gains from AI-accelerated coding can be undermined by manual processes elsewhere in the pipeline, requiring a holistic approach to workflow optimization.</p></li></ol></li></ul><div id="youtube2-6xiJaDYN3_k" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;6xiJaDYN3_k&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/6xiJaDYN3_k?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><em>(Andrew Zigler &amp; Ben Lloyd Pearson / June 12, 2025 / Dev Interrupted - Linear B / <a href="https://devinterrupted.substack.com/p/faster-coding-isnt-enough">permalink</a>)</em></p><h2>#2</h2><div><hr></div><p><strong>Paymonade.tech - Delete account feature / experience:</strong></p><ul><li><p>Delete account to Paymonade is not available through the site. The user needs to request it via e-mail</p></li><li><p>They reply with a Google form that needs to be filled.</p></li><li><p>NOTE:</p></li></ul><blockquote><p>Please note that once deleted the account cannot be restored. Additionally there is a 1-year cooling period before a new account can be created using the same credentials</p></blockquote><h2></h2>]]></content:encoded></item><item><title><![CDATA[Notes: June 12, 2025]]></title><description><![CDATA[Kent Beck on AI and coding!]]></description><link>https://www.softwareantifragility.com/p/notes-june-12-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-12-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Thu, 12 Jun 2025 14:52:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/youtube/w_728,c_limit/aSXaxOdVtAQ" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>To carefully review &#128071;</p><div id="youtube2-aSXaxOdVtAQ" class="youtube-wrap" data-attrs="{&quot;videoId&quot;:&quot;aSXaxOdVtAQ&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/aSXaxOdVtAQ?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>]]></content:encoded></item><item><title><![CDATA[Notes: June 11, 2025]]></title><description><![CDATA[Disappointing team members, turning ICs to EMs and what drives growth]]></description><link>https://www.softwareantifragility.com/p/notes-june-11-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-11-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Wed, 11 Jun 2025 20:31:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JN9Q!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F42341aa2-880f-43a1-9fc0-2c3128482e54_256x256.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>#1</h2><div><hr></div><ul><li><p>Book suggestion: <a href="https://press.stripe.com/scaling-people">Scaling People</a> by Claire Hughes Johnson.</p></li><li><p>"<em>leadership is disappointing people at a rate they can absorb</em>", typically attributed to Ronald Heifetz and Marty Linsky.</p></li><li><p>Disappointment is the part of the performance process that leaves a lasting sour taste for managers and their staff, and it is particularly acute for top performers who can never quite get everything they desire, no matter how hard they work.</p></li><li><p>Managing a team of any size &#8212; from a handful of people to a whole company &#8212; is a continual balance between trying to empower people to achieve what they want (interesting projects, plentiful opportunities, a plethora of pay increases and promotions) whilst navigating a conflicting reality that doesn't always want to give it to them.</p></li><li><p>If you run a large team, there are so many zero-sum situations stemming from limited resources, strategic decisions, your customers, or the market that you can't control.</p></li><li><p>The Dissapointment Frontier can grow in size for a number of reasons:</p><ul><li><p>You act as a buffer or protector of your team, shielding them from the reality of a situation.</p></li><li><p>You project an illusion of control over things that you <em>can't</em> control in order to make your team trust you more, or even just to convince yourself things are more certain than they are.</p></li><li><p>You try to implement a team culture that is far removed from the rest of the company culture.</p></li><li><p>You overpromise on what you can deliver to your team.</p></li></ul></li><li><p>It turns out that by practicing the skills that you need to be a more effective manager, you can also reduce the size of the frontier.</p><ul><li><p>Overcommunicate: The first step is to overcommunicate everything that you can from your unique position at the top. Context is key.</p></li><li><p>Own It Or Be a Collaborator: This leads into the next key strategy: owning what you can control, and being a <em>collaborator</em> on what you can't.</p></li><li><p>Reality Check: nobody is immune. Even CEOs can't control and decide everything: they have to manage their own disappointment frontier with their board and their investors.</p></li></ul></li></ul><p><em>(James Stanier / May 24, 2025 / The Engineering Manager / <a href="https://theengineeringmanager.substack.com/p/the-disappointment-frontier">permalink</a>)</em></p><h2>#2</h2><div><hr></div><p>An IC on your team says they&#8217;re interested in management. What now?</p><ul><li><p><strong>Start with curiosity:</strong> Ask what&#8217;s drawing them to management. Do they want to coach others? Take on more responsibility? Or are they assuming it&#8217;s the only path to growth? Management is a completely different line of work, so if it&#8217;s the latter, this conversation may be a short one. You should explain to them that IC and EM tracks are (and should be) separate, and career growth is possible without moving into management.</p></li><li><p><strong>Reflect on what they&#8217;re already doing:</strong> Are they mentoring teammates? Stepping up in group settings? Communicating clearly? You&#8217;re not looking for perfection, just signals that they&#8217;re thinking beyond their own work. If not, this is an excellent place to start. &#8220;Do the job you want&#8221; is common in management, and senior leaders want to see potential for management. Leading without authority is an excellent opportunity for them to practice management. </p></li><li><p><strong>Be real about the job:</strong> I think we all know that management isn&#8217;t coding plus meetings. It&#8217;s a shift away from solving problems yourself to helping others solve them. For some, it&#8217;s entirely just meetings and no code. (That&#8217;s my life!) A lot of new managers struggle with this transition from projects to people&#8212;not because they can&#8217;t lead, but because they miss the craft. Make sure this is something they&#8217;re willing to forego.</p></li><li><p><strong>Try a test drive:</strong> Give them a scoped opportunity to practice leadership: mentoring a teammate, owning a small project, running a retro. Then talk about what felt good and what didn&#8217;t. You&#8217;ll want to give them plenty of opportunities to see how they do and if it&#8217;s actually something they&#8217;re interested in.</p></li><li><p><strong>Talk about what&#8217;s next:</strong> Maybe the timing is right. Maybe it&#8217;s not. Either way, show them you&#8217;re invested. Support their growth, even if they stay an IC. Remember, promotions require a personal fit AND a business fit to move forward.</p></li></ul><p><em>(Kelly Vaughn / June 10, 2025 / The Modern Leader / <a href="https://modernleader.is/p/so-someone-on-your-team-wants-to-be-a-manager">permalink</a>)</em></p><h2>#3</h2><div><hr></div><p>There are at least three <strong>perspectives</strong> from which we can approach incentives:</p><ul><li><p>When cooperating with other teams</p><ul><li><p>Incentives and motivations.</p></li><li><p>KPIs (Key Performance Indicators).</p></li><li><p>OKRs (Objectives and Key Results).</p></li></ul><p>If something is unclear, nothing helps me more than having an honest conversation, where active listening plays a crucial role. You can directly ask the following questions to gain clarity:</p><ul><li><p>What is important to you?</p></li><li><p>What are your measures of success?</p></li></ul></li><li><p>When mentoring your team</p><ul><li><p>If recognition is their driving force, organising a company-wide event could address it.</p></li><li><p>If it's money that motivates them, providing them with opportunities to earn more may address it.</p></li><li><p>If their focus is on learning, ensuring they have ambitious goals that allow them to explore new technologies may address it.</p></li></ul></li><li><p>When planning your own career</p><ul><li><p>To shape our careers, it is important to understand what drives us.</p></li></ul></li></ul><p><em>(Micha&#322; Poczwardowski / May 26, 2025 / Perspectiveship / <a href="https://read.perspectiveship.com/p/incentives-at-work">permalink</a>)</em></p>]]></content:encoded></item><item><title><![CDATA[Notes: June 10, 2025]]></title><description><![CDATA[Professional growth, career ladders and how to create engineering roles that matter]]></description><link>https://www.softwareantifragility.com/p/notes-june-10-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-june-10-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Tue, 10 Jun 2025 07:39:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!dVWs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>#1 </h2><div><hr></div><p>10 career levels for software engineers </p><ul><li><p><strong>Engineer I:</strong> As a first-level engineer, you may be working as an intern or a junior software engineer. </p></li><li><p><strong>Entry-level software engineer II: </strong>Entry-level software engineers are usually considered to be at engineering level two. With this rank, a person must have the foundations of engineering, programming and software development. Engineers at this level typically spend two or three years developing their technical and professional skills before moving on or being promoted to a job or role as a mid-level software engineer.</p></li><li><p><strong>Mid-level software engineer III: </strong>Level three engineers, or mid-level software engineers, expand upon their foundational knowledge and develop an understanding of best practices for writing code and developing computer software. They can work independently and regularly assist level one or level two engineers with task-related or troubleshooting problems. People at this level of their careers often have three to six years of experience as software engineers.</p></li></ul><p><strong>Advancing on a technical career track</strong></p><p>When software engineers have between four and seven years of experience, they might be selected by their employer to move forward in their career and move up in level and job title.</p><ul><li><p><strong>Staff engineer IV: </strong>This is a high-level position, and people selected for this type of job need to have a comprehensive knowledge of software development practices, and they must have mastery over writing code and debugging code. Engineering at this level includes performing complex programming tasks and implementing software systems. The job is often highly collaborative and may include leading teams or mentoring more junior engineers.</p></li><li><p><strong>Senior staff engineer V:</strong> People working in these jobs typically have a minimum of seven or eight years of experience in their field. They should have the ability to perform programming tasks and large engineering projects with Independence and expertise. Level five engineers, or senior staff engineers, are often responsible for guiding or mentoring other staff members, and regularly lead technical projects for the clients that their companies serve.</p></li><li><p><strong>Principal engineer VI: </strong>Principal engineers hold the highest position or level on the technical engineering career track. They are highly advanced software engineers who make important product decisions regarding direction and scope. They make strategic decisions about which team members should work on which areas of a project and they provide technical and professional leadership for the engineers who report to them.</p></li></ul><p><strong>Advancing on a managerial career track</strong></p><ul><li><p><strong>Engineering manager IV: </strong>Engineering managers regularly lead teams or projects, and they provide support for initiatives throughout many areas within a company. They regularly have seven or eight years of experience in software development, and they must have a broad understanding of all aspects relating to the design, innovation and development of software products and solutions. They should be able to prioritize workloads, tasks and assignments to efficiently manage team projects.</p></li><li><p><strong>Director of engineering V:</strong> are responsible for managing multiple teams and coordinating with team leads or engineer managers. This person must have a keen understanding of the broad picture behind the company initiative and the company development goals. They must also have an expert-level understanding of programming, code languages, troubleshooting practices and innovative design theories. People in this position often have eight to 10 years of experience as software engineers or developers and should also have two or three years of experience in leadership positions.</p></li><li><p><strong>VP of engineering VI:</strong> A person in this role is a high-level executive who manages teams of software developers, programmers and technology assistants. These people are responsible for designing and delivering products and solutions that meet the needs of their clients. The vice president of engineering must also have tactical and strategic expertise, as well as strong interpersonal and leadership skills. Typically, a person in this role has over 10 years of experience as a software developer and team leader.</p></li><li><p><strong>Chief technology officer:</strong> Chief technology officer (CTO) is the highest executive position within the technology or engineering department of a company. The CTO handles all final products developed by the engineering staff and is responsible for the professional and technical development and career growth of all reporting employees. They must have programming, software development, innovative design and strategic management expertise.</p></li></ul><p><em>(Ref: <a href="https://www.indeed.com/career-advice/finding-a-job/engineer-level">Indeed</a>)</em></p><h2>#2</h2><div><hr></div><p>The framework relies heavily on radar charts to visually represent the different perspectives and expectations of a given position:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dVWs!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dVWs!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 424w, https://substackcdn.com/image/fetch/$s_!dVWs!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 848w, https://substackcdn.com/image/fetch/$s_!dVWs!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 1272w, https://substackcdn.com/image/fetch/$s_!dVWs!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dVWs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png" width="750" height="608" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:608,&quot;width&quot;:750,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:66120,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareresilience.com/i/165983282?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.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_!dVWs!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 424w, https://substackcdn.com/image/fetch/$s_!dVWs!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 848w, https://substackcdn.com/image/fetch/$s_!dVWs!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 1272w, https://substackcdn.com/image/fetch/$s_!dVWs!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffc33fad8-ae9e-4953-8033-b2654285c1ae_750x608.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The framework has 4 different ladders:</p><ul><li><p><strong>Developer:</strong> role also known as programmer or software engineer, requires a deep level of technical expertise</p></li><li><p><strong>Tech Lead:</strong> role also known as dev lead, is the owner of the system and requires a unique balance between hands-on development, architecture knowledge and production support</p></li><li><p><strong>Technical Program Manager:</strong> role responsible for coordinating and driving to completion initiatives that span multiple teams</p></li><li><p><strong>Engineering Manager:</strong> role also known as dev manager, is responsible for the consistent delivery, career growth and level of happiness of the team</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_!6XVZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6XVZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 424w, https://substackcdn.com/image/fetch/$s_!6XVZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 848w, https://substackcdn.com/image/fetch/$s_!6XVZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 1272w, https://substackcdn.com/image/fetch/$s_!6XVZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6XVZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png" width="1055" height="478" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:478,&quot;width&quot;:1055,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:59286,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareresilience.com/i/165983282?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.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_!6XVZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 424w, https://substackcdn.com/image/fetch/$s_!6XVZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 848w, https://substackcdn.com/image/fetch/$s_!6XVZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 1272w, https://substackcdn.com/image/fetch/$s_!6XVZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2aab3073-e98c-4486-a55f-3d5b801c0e4e_1055x478.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The chart shown above has the following 5 axes:</p><ul><li><p><strong>Technology</strong>: knowledge of the tech stack and tools</p></li><li><p><strong>System</strong>: level of ownership of the system(s)</p></li><li><p><strong>People</strong>: relationship with the team(s)</p></li><li><p><strong>Process</strong>: level of engagement with the development process</p></li><li><p><strong>Influence</strong>: scope of influence of the position</p></li></ul><p>The <strong>influence</strong> axis can be seen as a <em>different dimension</em> since it is orthogonal and applies to all the other axes.</p><p>Each axis has 5 different levels of performance. It is important to highlight that every level includes the previous one(s). For example, someone that <em>evangelizes</em> technology, <em>specializes</em> and <em>adopts</em> it as well.</p><p><strong>Tech Lead vs Engineering Manager</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_!UYTn!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!UYTn!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png 424w, https://substackcdn.com/image/fetch/$s_!UYTn!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png 848w, https://substackcdn.com/image/fetch/$s_!UYTn!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png 1272w, https://substackcdn.com/image/fetch/$s_!UYTn!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!UYTn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png" width="852" height="808" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:808,&quot;width&quot;:852,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:150053,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.softwareresilience.com/i/165983282?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.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_!UYTn!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png 424w, https://substackcdn.com/image/fetch/$s_!UYTn!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png 848w, https://substackcdn.com/image/fetch/$s_!UYTn!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.png 1272w, https://substackcdn.com/image/fetch/$s_!UYTn!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3b471f0f-6837-47fd-8744-25a3a9bb53f6_852x808.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>(Ref: </em><a href="https://www.engineeringladders.com/">engineeringladders.com</a><em>)</em></p><h2>#3</h2><div><hr></div><p><strong>tl;dr &#128071;</strong></p><p>Roles up to and including Senior, ladders are constructed around becoming the best at what one does that one might personally be.</p><p>At Staff level, the career expands to help others be successful with what you do and know, and scale yourself.</p><p>At Principal and beyond, you are trying to help others be the best that they can be, removing yourself and meeting others where they are.</p><p><strong>The Engineering </strong></p><ul><li><p>Engineer I</p></li><li><p>Engineer II</p></li><li><p>Senior Engineer</p></li><li><p>Staff Engineer</p></li><li><p>Principal Engineer</p></li><li><p>Distinguished Engineer</p></li><li><p>Misc: Tech Lead</p></li></ul><p><strong>Developer Experience</strong></p><ul><li><p>DX Engineer I</p></li><li><p>DX Engineer II</p></li><li><p>Senior DX Engineer</p></li><li><p>Staff DX Engineer</p></li><li><p>Principal DX Engineer</p></li><li><p>Distinguished DX Engineer</p></li><li><p>Misc: Tech Lead</p></li></ul><p><strong>Documentation</strong></p><ul><li><p>Technical Writer I</p></li><li><p>Technical Writer II</p></li><li><p>Senior Technical Writer</p></li><li><p>Staff Technical Writer</p></li><li><p>Principal Technical Writer</p></li></ul><p>+ Sarah Dresden is explaining the rational behind this career ladder system <a href="https://css-tricks.com/the-importance-of-career-laddering/">in this post</a></p><p><em>(Ref: </em><a href="https://career-ladders.dev/">career-ladders.dev</a><em>)</em></p>]]></content:encoded></item><item><title><![CDATA[Notes: May 24, 2025]]></title><description><![CDATA[GenAI, teaching and ethics]]></description><link>https://www.softwareantifragility.com/p/notes-may-24-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-may-24-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Sun, 25 May 2025 06:46:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JN9Q!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F42341aa2-880f-43a1-9fc0-2c3128482e54_256x256.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Today&#8217;s notes are from &#8220;Teaching Responsibly with AI&#8221;a course offered by GPTZero and ran by Sean Michael Morris, Head of Pedagogy at GPTZero.</em></p><h2>#1 </h2><div><hr></div><p>How do you distinguish between authentic human writing and GenAI generated text?</p><ul><li><p>Spectrum of Human-Synthetic (AI) Generated Writing</p><ul><li><p>Human writing</p></li><li><p>Human-in-the-loop writing (HITL)</p></li><li><p>Machine-in-the-loop writing (MITL)</p></li><li><p>Synthetic writing</p></li></ul></li><li><p>Before using AI Detectors (i.e. GPTZero), Consider:</p><ul><li><p>How do AI detectors support your learning outcomes and goals?</p></li><li><p>What&#8217;s the purpose of using AI detectors, and can you articulate this purpose to your students?</p></li><li><p>How might AI detectors disrupt or enhance trust and transparency in your student-teacher relationships?</p></li></ul></li><li><p>Avoid surveillance pedagogy. Use AI Detectors to start a conversation.</p></li></ul><pre><code>Notes:
- GenAI usage is invevitable in university nowadays.
- There's an ongoing debate on whether rules for using GenAI should be established in the context of semester assignments, theses and so forth.
- No official guidelines exist today on a university, national or international level to the best of my knowledge.
- "Avoid surveillance pedagogy. Use AI Detectors to start a conversation." -&gt; This is a really good approach. Education should push students to make good use of the available tools, not penalizing their use.
</code></pre><h2>#2 </h2><div><hr></div><p>How do you set the tone of the learning environment  in your classes?</p><ul><li><p>Music playing; while people come to class.</p></li><li><p>What uses of GenAI cause the following:</p><ul><li><p>Critical inquiry (reward to critical enquiry and course values).</p></li><li><p>Pain point (fails to meet our values and expectations, a minor inconvenience).</p><ul><li><p>i.e. Citations used in assignments by students do not exist due to AI hallucination.</p></li></ul></li><li><p>Harm (use violates our scholarly values, removes human from critical inquiry and problem solving).</p><ul><li><p>i.e. When the paper is fully done by AI this is a harm since no experience was gained by the student.</p></li></ul></li></ul></li></ul><pre><code>Notes:
- "Music playing; while people come to class." It is useful! I am playing Baroque music during the lectures as well and it seems to have helped students focus better.
- The challenge is to lead students (reward?) to want to use GenAI to benefit from it rather than "get the job done" and move on.</code></pre><h2>#3 </h2><div><hr></div><p>How might academic integrity complaints without thoughtful conversations with students, about inappropriate generative AI use, be the antithesis of engaged pedagogy?</p><ul><li><p>File complaints after a process of understanding</p><ul><li><p>the context of inappropriate use,</p></li><li><p>the student&#8217;s reflection on how GenAI use did or did not further the values of the learning community and</p></li><li><p>GenAI&#8217;s risk to student learning for self-actualization and world transformation</p></li></ul></li><li><p>How does the use of AI impact the learning of the student? </p><ul><li><p>i.e. if the student over-relies on AI, they don&#8217;t learn from experience.</p></li></ul></li><li><p>Rhetorical listening</p><ul><li><p>understanding the experience of someone&#8217;s perspective of the world to arrive at truth</p></li><li><p>the antithesis of passive listening, which often seeks to further evidence and win a conversation from your own single perspective</p></li><li><p>emphasizes understanding, diplomacy, and communicating across cultures to seek ethical and justice-informed decisions</p></li></ul></li></ul><pre><code>Notes: 
- The concept of "Rhetorical Listening" is interesting!</code></pre><h2>#4 </h2><div><hr></div><p>Other approaches:</p><ul><li><p>Metacognition</p><ul><li><p>Before using GPT Zero: Ask students to annotate their draft for you, focusing on the rhetorical choices</p></li><li><p>After using GPT Zero: Students who meet a threshold of suspected GenAI use (for example, 6% probability), revise and annotate their draft for you, focusing on the rhetorical choices they made along the way</p></li><li><p>Reminder: The benefit of college education is doing deep internal work about your failures and successes, not just getting work done.</p></li></ul></li></ul><pre><code>Notes:
- This seems to be a good first approach on solving the problem of not penalizing the use of GenAI but rather hold the student accountable for using it. 
- By using thresholds the educator legitimizes their potential request to the student for the essay to be re-written. 
- On the oter hand this tactic may lead the students to try and find better ways to "fool" the system, instead of doing the actual work.</code></pre><p>References: </p><ul><li><p><a href="https://moxielearn.ai/ai-literacies-framework">Framework for the Future: Building AI Literacy in Higher Education</a> (Moxie 2025)</p></li></ul><p></p>]]></content:encoded></item><item><title><![CDATA[Notes: May 23, 2025]]></title><description><![CDATA[product, strategy, organizational culture and how to pitch ideas in the SaaS world]]></description><link>https://www.softwareantifragility.com/p/notes-may-23-2025</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/notes-may-23-2025</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Sat, 24 May 2025 07:26:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JN9Q!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fbucketeer-e05bbc84-baa3-437e-9518-adb32be77984.s3.amazonaws.com%2Fpublic%2Fimages%2F42341aa2-880f-43a1-9fc0-2c3128482e54_256x256.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>#1</h2><div><hr></div><p>3 Crucial Questions to Define Your Product Strategy:</p><ol><li><p>Which customers or users do we want to target now?</p></li><li><p>Which of their problems do we want to solve with this project now?</p></li><li><p>When do we want to give those customers those solutions?</p></li></ol><p>While the product leader should answer these questions, they don't always know the answers. That&#8217;s why I like it when the project manager also asks these questions to create a successful project.</p><p><em>(Johanna Rothman / May 21, 2025 / ProjectManagement.com - PMI / <a href="https://www.projectmanagement.com/articles/1087201/3-Crucial-Questions-to-Define-Your-Product-Strategy">permalink</a>)</em></p><pre><code>Notes:

- How many times should these questions be asked as the requirement travels from the vision/strategy realm (usually top management) to the engineering department to be implemented?

- Why, while the first 2 questions are positioned in now, the 3rd one is about when?

- Is this about scope? Can the aforementioned questions - when repeatedly asked by different stakeholders as we move from requirement to be implemented feature - define scope better?

- If scope is identified correctly, could this help a company to better handle work in progress (WIP)? Could it perhaps lead to cleaner and more modular code? 

- How can we use them in our companies? Which roles of our Engineering department could ask these questions? Which roles in our companies (more broadly) could provide more clarity on these questions?
</code></pre><h2>#2</h2><div><hr></div><p>Next time you&#8217;re about to share an idea&#8212;whether in Slack, a meeting, or a doc&#8212;pause and ask yourself:</p><ol><li><p><strong>What&#8217;s the </strong><em><strong>point</strong></em><strong>?</strong><br>Write it in one sentence. If you can&#8217;t, you&#8217;re not ready to share it yet.</p></li><li><p><strong>Why should </strong><em><strong>they</strong></em><strong> care?</strong><br>Make sure the framing speaks to their priorities (not just yours).</p></li><li><p><strong>Is it </strong><em><strong>structured</strong></em><strong> clearly?</strong><br>Put the most important thing first. Then add context or supporting details.</p></li></ol><p><em>(Irina Stanescu / May 15, 2025 / The Caring Techie Newsletter (Substack) / <a href="https://www.thecaringtechie.com/p/getting-people-to-listen-is-a-skill">permalink</a>)</em></p><pre><code>Notes:

- I guess writing Slack posts are like talking to people for remote teams! So yeah, the above probably applies here as well... perhaps even more so than a face-to-face meeting...

- "Make sure the framing speaks to their priorities (not just yours)." Easier said than done. Sometimes the manager's audience includes diverse roles and yet the message and the medium (i.e. same generic Slack channel) are the same for every target group :/ 

- Call to Action: These points are gold for change management situations. I should revisit past announcements related to change management to see if my message was clearly and appropriately framed for each audience.</code></pre><h2>#3</h2><div><hr></div><p>Before you stand in front of an investor, you need to ask yourself a few key questions:</p><ol><li><p>Are you solving a real problem?</p></li><li><p>Do you have a solution that adds value?</p></li><li><p>Has anyone thought that before you?</p></li><li><p>Do you truly understand your market?</p></li><li><p>Do you have a strong team?</p></li><li><p>Can you tell a story?</p></li><li><p>Bonus: Pay attention to your visual image.</p></li></ol><p><em>(Odysseas Spyroglou / May 16, 2025 / The Generalist Papers (Substack) / <a href="https://generalistpapers.substack.com/p/ready-to-pitch-consider-this">permalink</a>)</em></p><pre><code><code>Notes: 

- Odysseas is giving advice to founders / makers / teams interested to receive funds from VCs. Which means we are mainly in the startup realm.
- What if the same advice can be used in the context of larger, corporate-level SaaS companies, that want to add new, innovative features to their products and potentially unlock a new market, or better position themselves in a market they are already targeting?
- How could these points internally help the company's stakeholders think and operate like 'startups', regardless of the size of their products or businesses?
- Can this pitching template be a guide to an aspiring product manager, business developer or sales representative that wants to propose a new feature or product to their leadership?
- How can a company nurture such a mentality internally? Occasional hackathon? Occasional 'pitch' or 'fund your idea' days?</code></code></pre><h2>#4</h2><div><hr></div><pre><code>Thoughts: 

&#10067; Are the kinds of agile methodologies at company practices, relevant / important today?

&#10067; Are the job titles or roles in engineering at tech companies, important or even relevant today?

&#10067; Is visibility of a product, an opinion, or its implementation a motivator for a team member?</code></pre><h2>#5</h2><div><hr></div><p>Let's briefly revisit the fundamentals. Westrum's typology classifies organizations based on how they process information:</p><ul><li><p><strong>Pathological</strong>: Driven by power and fear. Information is hidden, blame is rampant, and cooperation is scarce.</p></li><li><p><strong>Bureaucratic</strong>: Ruled by processes and policies. Safe but rigid. Problems get stuck in formalities.</p></li><li><p><strong>Generative</strong>: Focused on mission and performance. Information flows freely, mistakes are learning opportunities, and collaboration is high.</p></li></ul><p>DORA research has shown that organizations with generative cultures have 30% higher organizational performance.</p><p><em>(Mirek Stanek / May 19, 2025 / Practical Engineering Management / <a href="https://www.practicalengineering.management/p/westrums-organizational-culture">permalink</a>)</em></p><pre><code>Notes:

- Could it be that the 30% statistic is due to the sample consisting mainly of startup companies? 
- Could the generative model be efficient for larger software companies (complex in structure and encapsulating several departments and teams)? 
- When a company grows from a startup to a more mature or corporate institution, what is the balance between generative / bureaucratic elements?
- "Westrum's typology classifies organizations based on how they process information". (How) is information processing correlated with governance?</code></pre><p></p>]]></content:encoded></item><item><title><![CDATA[AI won’t save you from bad strategy]]></title><description><![CDATA[If AI can do the work of engineers, why lay them off instead of scaling innovation?]]></description><link>https://www.softwareantifragility.com/p/ai-wont-save-you-from-bad-strategy</link><guid isPermaLink="false">https://www.softwareantifragility.com/p/ai-wont-save-you-from-bad-strategy</guid><dc:creator><![CDATA[Apostolos Kritikos, Ph.D.]]></dc:creator><pubDate>Tue, 04 Mar 2025 15:02:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!6inG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6inG!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6inG!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6inG!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6inG!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6inG!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6inG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg" width="1456" height="988" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:988,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:4483139,&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://www.softwareresilience.com/i/158225154?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.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_!6inG!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg 424w, https://substackcdn.com/image/fetch/$s_!6inG!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg 848w, https://substackcdn.com/image/fetch/$s_!6inG!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!6inG!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38635a94-72b3-4bc0-9bcf-9ef80e6ef748_2840x1927.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">Scylla and Charybdis (1894) by Ary Ernest Renan. Credits: Artvee.com (CC0 license)</figcaption></figure></div><p>I recently participated in <a href="https://www.linkedin.com/posts/anton-zaides_if-you-have-100-software-engineers-who-can-activity-7301654975158378499-FcL9?utm_source=share&amp;utm_medium=member_desktop&amp;rcm=ACoAAAHYEiQBSzgmztDcxY5o-5JHa1Tkq5RIxSY">this fascinating discussion</a> on LinkedIn initiated by Mr. <span class="mention-wrap" data-attrs="{&quot;name&quot;:&quot;Anton Zaides&quot;,&quot;id&quot;:121956618,&quot;type&quot;:&quot;user&quot;,&quot;url&quot;:null,&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%2F9fa87af7-7089-4977-ab32-dbcae410c190_3847x3564.jpeg&quot;,&quot;uuid&quot;:&quot;6079682d-2f8f-464f-bb7c-39b043aea393&quot;}" data-component-name="MentionToDOM"></span>. Here are my key takeaways.</p><div><hr></div><p><strong>TL;DR: </strong><em><strong>If AI can do (fully or partially) the work of engineers, why lay them off instead of scaling innovation? </strong></em></p><p>For years, at technology companies, we struggled with hiring and retaining engineering talent. Developers were the lifeblood of product velocity. Organizations built processes, teams, and entire operating models to optimize their software development life cycle and get the most from their development team(s).</p><p>Now that AI is gradually taking its place in the software development life cycle (SDLC), we can expect that this will amplify productivity. So, what should companies do when we reach a point where a single engineer can do the work of five?</p><p>Should they see this as an opportunity for compounding innovation? Or should they see a good reason for cost-cutting and reducing headcount?</p><p>If engineering is no longer the bottleneck - since AI enhances skills and increases capacity without the need for new hires - why are profitable companies cutting developers instead of aiming to be more innovative?</p><div><hr></div><h2><strong>The Illusion of Efficiency Gains</strong></h2><p>Beware of this dangerous assumption: <strong>fewer engineers delivering the same output equals a more efficient company.</strong></p><p>This assumes that value is linear, that productivity equals impact, and that once a feature is shipped, the job is done. But software isn&#8217;t a factory assembly line; it&#8217;s a living system.</p><p>If engineering becomes 5X faster (e.g., through AI integration in the software development process), but the company lacks a clear vision, strategy, and well-aligned goals across departments&#8212;especially product, marketing, and sales&#8212;then increased development speed adds no real value.</p><p>Productivity and value creation are not the same thing. Just because an engineer can ship faster doesn&#8217;t mean the market can absorb 5X more features or that the company knows what to do with the excess capacity.</p><h2><strong>Short-Term Thinking is a Silent Killer</strong></h2><p>Beware of this dangerous trade-off: <strong>Short-term gains over long-term sustainability.</strong></p><ul><li><p><strong>Sometimes, quarterly earnings dictate decisions.</strong> A company is a business that needs to be financially healthy. But sometimes, striving to make numbers look good for the next financial report instead of innovating can lead to missing the &#8220;next wave&#8221;.</p></li><li><p><strong>Sometimes, we mistake maintenance mode for innovation.</strong> Many companies today exist not to build the future but to sustain the present. They maintain legacy systems, avoid risks, and operate in fear of disrupting their inertia.</p></li></ul><h2><strong>Hypothesis: What if, instead of shrinking engineering teams, we leveraged the extra capacity?</strong></h2><p>Companies that get this right will:</p><ul><li><p><strong>Align engineering with strategic business goals.</strong> The question shouldn&#8217;t be &#8220;Do we need fewer engineers?&#8221; but &#8220;How do we deploy their productivity in the most impactful way?&#8221;</p></li><li><p><strong>Empower engineers to solve business problems.</strong> Instead of cutting headcount, give engineers a seat at the table to rethink workflows, processes, and revenue-generating opportunities.</p></li><li><p><strong>Break the cycle of short-term decision-making.</strong> Layoffs might create a quick financial win, but they cost trust, momentum, and the very innovation capacity companies need to survive.</p></li></ul><p>Beware of this sad truth: <strong>the companies cutting engineers today are creating their own future competition.</strong></p><div><hr></div><p>We should look at AI as an accelerant, a high-tech prosthesis, if you like, that can upgrade the average professional&#8217;s skillset and give superpowers to a high performing professional. </p><p>AI, however, is not a replacement for good business thinking. This alongside strategy and good leadership, should come (for now) from the human factor!</p><p></p>]]></content:encoded></item></channel></rss>