Chaos and Order in Software Development

<p>In this post, I want to share one of the most important ideas I heard in the last few years &mdash; that most companies are too well-run.</p> <p><img alt="" src="https://miro.medium.com/v2/resize:fit:700/1*e3tV_pce--UrDOmEuxrBsw.jpeg" style="height:467px; width:700px" /></p> <p>Photo by&nbsp;<a href="https://unsplash.com/@sickle?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText" rel="noopener ugc nofollow" target="_blank">Sergey Pesterev</a>&nbsp;on&nbsp;<a href="https://unsplash.com/photos/6KCnl-EgbiU?utm_source=unsplash&amp;utm_medium=referral&amp;utm_content=creditCopyText" rel="noopener ugc nofollow" target="_blank">Unsplash</a></p> <h1>Chaos, Order, and Productivity</h1> <p>The original formulation of the idea&nbsp;<a href="https://www.youtube.com/watch?v=G4hL5Om4IJ4&amp;t=1467s" rel="noopener ugc nofollow" target="_blank">comes from Jim Keller</a>&nbsp;who explained it with a seemingly trivial chart of productivity vs. organizational order.</p> <p><img alt="" src="https://miro.medium.com/v2/resize:fit:700/1*SuNcttcVYADojkMTKy9k8Q.png" style="height:350px; width:700px" /></p> <p>In the chaos, nothing can be done. Priorities change overnight, untested code gets deployed to production, databases fail with no backup, and there are five different languages and three libraries for any single task.</p> <p><strong>When there is a sensible order, productivity is at its peak</strong>. People can focus on the actual goal at hand, have time to do it properly, release it, and have it just work.</p> <p>But when the order is perfect, nothing can be done again. Writing a line of code requires three planning meetings, four approvals, and a separate team to deploy it. Anything remotely novel needs a couple of Ph.D. theses to even try.</p> <p><a href="https://medium.com/@vladimir.prus/chaos-and-order-in-software-development-19ab77470575"><strong>Click Here</strong></a></p>