The concept of a stream of events with sources, sinks, and processors is one of the most powerful abstraction in computer science.
Category: Design & Architecture
Software Metaphors
The software architecture metaphor puts the emphasis on the structural properties of software systems. Other metaphors - city, garden, or biology - can help explain other properties of software systems better.
BATBern43
The slides from our talk at BATBern, focused on « event-driven architectures ».
Do You Need an Architect?
You might need an architect to have a clear owner of the architecture, to coordinate, or to mentor. But maybe, you will be just fine without one.
Conceptual Integrity at Scale
Large systems are collaborative effort and it's a challenge to maintain the overal coherence. Some techniques might help you scale consistency, but some inconsistencies are also inevitable.
In Defense of Design Before Coding
Too much up front design is a waste of time, but some design up front definitively has its place.
Why a Calendar App is a Great Design Exercise
Implementing once a calendar app is a great design exercise, because this domain is simple enough for an exercices, but also subtely tricky.
Things You Can’t Abstract
You can abstract functionality, but not performance and failure modes.
Become a Domain Expert
Building the thing right is as much important as building the right thing. For this, you need domain expertise.
Small, replaceable, composable
Software design is a fractal activity, where you aim at components that are small, composable, and replaceable at each level of abstraction.