Fork me on GitHub
#architecture
<
2023-04-25
>
tengstrand10:04:32

I watched https://www.youtube.com/watch?v=5IUj1EZwpJY presentation for the first time today. He reasons about Conway’s Law and he draws several interesting conclusions. This is a snippet from it:

5
donaldball20:04:26

I really appreciated the realization that Conway's Law applied to long-lived software has a time component that really hurts. I'm not sure I buy his conclusion that interfaces necessarily are bad, if often necessary though. I think that overstates the case, even if it's quite often true.

tengstrand05:04:35

This is taken from 48:03: “...now things are only getting worse unfortunately. Libraries, engines, package managers, containers, virtual machines, Microservices, all of these things are ways of introducing more org charts, more boundaries between things, that cannot be optimised across, because the people cannot communicate with each other rapidly or at all. And again, when people say that any of this is good, it’s very important to recognise that it’s not good. Objectively speaking for the end product, these are all bad, because every single one of these implies that we are under optimising our eventual product, because we have a priority decided what we will not consider to work together and to optimise together and to merge". I think this is an important observation, that it has a price when dividing things in a way that you can't easily put them back together again. When he uses the word optimise, he means optimising the user experience of the end product.

💯 2
tengstrand17:05:26

Yes, I agree.

ehernacki08:05:03

IMO there's a related issue with Cornway's Law, which are well-explored in the Teams Topologies book from the presenter (and another): https://www.youtube.com/watch?v=ctEGTBOR1JY