The Unbearable Weight of Architecture
M2 Jun 12, 2025, 11:30 AM - 12:20 PM
Most of modern software design and programming is characterised by tension and trade-offs. Making the wrong decisions often casts long shadows over a system and dooms it's maintainers to endless toil and strife. This leaves us stuck in a pendulum swing of system design techniques that are reduced to conversations about monoliths and microservices, rather than about the characteristics of the systems we're really building.
In this session, we'll cover techniques for understanding context, designing with trade-offs in mind, and building software that survives inevitable change, in non-controlled environments.
With examples from real-world systems, we will learn language that we can use to talk about design, so that we can design systems with Intentionality that are sympathetic to the humans that need to build them.
Finally, we'll cover the eternal relationship between design, architecture and programming - along with the different aesthetic viewpoints you need to help them coexist and evolve together.
"Intentional Code part 2: This time for architecture and design!"