
The Only Unbreakable Law
About this video
Casey Muratori's lecture, originally given at the Technical University of Madrid, arguing that Conway's Law is the only viable candidate for a true law of software architecture. He explains how software mimics the organization over time, using examples like Windows' multiple volume controls.
Why it appears in the archive
HN treats it as the definitive explanation of Conway's Law and links it in almost any thread about org structure shaping software.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
Some great examples in "Conway's Nightmare" [VIDEO] My favorite from memory is that Windows now has five completely different volume control UIs, each of which can be traced directly to distinct product teams and their organizational dynamics across time. This video makes goes futher and says that the evidence for Conway's law is not only strong but has yet to be disproven; the closest we can get to a fundamental law in computer science. Given that software is always created for a social purpose (there are some users or beneficiaries of the technology), it's sort of a tautology that social dynamics are going to strongly influence design.
Read original comment ↗Casey Muratori has an excellent lecture on this same topic, which draws many of the same conclusions as this article but goes into more depth on why it happens and what it means to you in a practical sense. ( [VIDEO] , skip to 15:30 as the beginning is about setting up the idea of software laws, discussing other candidates for strong software laws, and the history of the law.) The Cliffs notes if you don’t have time for 45 minutes of video: Conway’s Law is pithily stated as “org charts reproduce themselves in the product”, or more comprehensibly as “the software architecture will resemble the org chart of the company producing it”*. The mechanism of this effect is communication bandwidth. Communicating inside a team is high bandwidth; between teams is low bandwidth and multiple lossy hops, with the problem getting worse the further teams are away in the org chart. What this means for you is that when you set down an org chart (which you have to do at least a little bit before even getting started), or when you change an org chart, you are eliminating any potential architectures that don’t look like that org chart. There If you split your teams into frontend and backend, you are ruling out potential architectures that would mix or closely intertwine the two. Any architecture like that would require the two teams to work together intimately, taking steps in tandem, which they cannot do because the low bandwidth cross-team communication cannot support it. Later in the video he a
Read original comment ↗If you want to dig into Conway's law and its implications, I can't recommend this video essay by Casey Muratori enough: [VIDEO] Fair warning though, you'll lose all hope that companies like Microsoft will ever manage to produce anything that they don't then ruin.
Read original comment ↗A good illustration of The One Unbreakable Law [VIDEO] (Conway's Law, but do watch the talk for more context)
Read original comment ↗Funny, just watched Casey Muratori cover the same topic on his channel: [VIDEO] I thought he covered it well. He considered the temporal aspect of orgs, which meant that software, over the years not only mimic the org, but every org that had ever been there over time. edit: oh, and unexpectedly, he's still around and on twitter. [LINK]
Read original comment ↗Great article. I also suggest watching Casey M. recent video[0] about Conways Law. How organization in your company determines what you can/will do and how organization of your code follows the same principles. Starting with just the handlers and introducing layers as you make sure its time is great way. [0] [VIDEO]
Read original comment ↗> the major foot-gun that got a lot of places in trouble was the premature move to microservices I sometimes wonder if the move to microservices isn't just a weird consequence of Conway's law in reverse: make a department of each developer, let them have their thing. (See also this amazing video about Conway's law: [VIDEO] )
Read original comment ↗I remember seeing a great explanation of Conway's Law by Casey Muratori: [VIDEO] (The whole talk is good but Conway-s law starts at 11:37)
Read original comment ↗