Everyone seems to have an intuitive understanding of ‘architecture’ as the process and product of planning, designing, and constructing. The problem is most people don’t have the same understanding which leads to disagreements about what the process and product entails. The transition from software shipped on physical media to software delivered as services further complicated the conversation as operating services introduces other factors that must be considered on an ongoing basis. These misunderstandings have only been exacerbated as greater speed and scale create new problems necessitating novel emergent solutions. This presentation will attempt to highlight the need for new language with dense semantics about the emerging architectures (because just saying ‘microservices’ is causing more problems than it solves) while also pointing out that many of the struggles people have delivering software are rooted in architecture.
25. @littleidea
if the per service cost of deployment and
management of each service is not negligible…
gl;hf
the best way to drive down the cost of deployment… architecture
34. @littleidea
prelude: relate to coarse patterns
declaration: a statement of value
narrative: prose about the pattern
continuity: relate to fine grain patterns
A Pattern Language
35. @littleidea
If I had an hour to solve a problem I'd spend
55 minutes thinking about the problem and
5 minutes thinking about solutions.
— Albert Einstein
52. Differentiated Value Line
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem
53. @littleidea
I’d rather be able to fix a bug in the kernel and not need to,
than need to fix a bug in the kernel and not be able to
57. @littleidea
prelude: relate to big picture
declaration: a statement of value
narrative: prose about the pattern
continuity: relate to details
A Pattern Language
62. How do people gain confidence about their work?
What do they enjoy?
What do they dread?
How do people perceive the difficulty of their work?
What do they learn through conversation alone?
How do engineers learn “on-the-job”?
Bonus Allspaw Slide
63. “Well”-adapted work occurs with a facility that
belies the difficulty of the demands resolved and
the dilemmas balanced.
Joint Cognitive Systems, Patterns in Cognitive Systems Engineering.
Woods, Hollnagel, 2006
Law of Fluency
Bonus Allspaw Slide
68. @littleidea
In Summary
• This cloud thing is really going to be changing everything
• We develop pop cultures as practitioners
• Architecture is generally poorly understood
• Qualitative and quantitative understanding would benefit everyone
69. @littleidea
Call To Action
• Continuously Expand Your Understanding
• Share Your Understanding With The Global Community of Practice
• Develop Shared Metaphors and Sociolects
• Please Someone Write This Book For Me (So I don’t have to)
71. Differentiated Value Line
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem
Someone Else’s Problem