Author: Dave Farley Publishing/Release Date: December 3, 2020 Watched/Read: January 27, 2021 Link: https://www.dropbox.com/home?preview=Dave+Farley+-+Scaling+Software+Development+(2020-12-03+at+12_03+GMT-8)+-+talk.mp4

The complexity in engineering is not in “production”. Code compiles into a stream of bytes which can then be deployed fairly trivially, with relatively low cost.

![](work/xero/book-club/notes/chapter-4-comments/Untitled 1.jpg)

![](work/xero/book-club/notes/chapter-6-objects-and-data-structures/Untitled 2.jpg)

![](work/xero/book-club/notes/chapter-6-objects-and-data-structures/Untitled 3.jpg)

![](work/xero/book-club/notes/chapter-6-objects-and-data-structures/Untitled 4.jpg)

![](work/xero/book-club/notes/chapter-6-objects-and-data-structures/Untitled 5.jpg)

On Loose Coupling, he notes, a more accurate idea would be appropriate coupling, as modules with high cohesion can naturally be more tightly coupled.

On Good Design:

Good design is moving the things that are more closely related close together, and the things that are not closely related far apart - Kent Beck

These are not the things that we train junior developers to worry about.

![](work/xero/book-club/notes/chapter-6-objects-and-data-structures/Untitled 6.jpg)

If you are trying to scale up a company, the same ideas about concurrency and coupling are just as applicable.

![](work/xero/book-club/notes/chapter-6-objects-and-data-structures/Untitled 7.jpg)

![](work/xero/book-club/notes/chapter-6-objects-and-data-structures/Untitled 8.jpg)

Control the variables:

  • Version control
  • Infrastructure as Code
  • Deployment pipelines in the context of continuous delivery
  • Automated testing

All of the above allow us to make evidence-based decisions e.g. trying things out with a level of repeatability and reliability.