Discover more from Architecture Weekly
Architecture Weekly #118 - 13th March 2023
Welcome to the new week!
Most of us transfer our habits to each new environment, and that’s dangerous. Take Event Sourcing, for example; it’s a storage pattern. What will happen if we take routines from modelling relational databases? Disaster.
Each storage pattern has its practices, relational databases - normalisation, document databases - denormalisation, and Event Sourcing - keeping streams short.
I talked about all of that in my talk at the Domain Driven Design conference last year. It was one of the most talks I’ve given so far, as this is an area that, unfortunately, is an extreme shortage of good resources.
How to handle two commands? or How to change two aggregates in one transaction? are one of the questions I'm asked most often.
The easiest answer is: "you don't". But it'd not only be a douche-like answer but half the truth. Why? Contrary to the common belief presented in the conference talks, we don't have only projects that have to scale.
I tried to cover dos and donts and show the thought process on how to tackle that in my new article:
Still, we’re not living and breathing, only patterns and practices. Design and planning are essential, but we won’t succeed without proper execution. It’s worth checking how others selected their tooling and analysing their journey and phase. It can give us food for thought on how to prepare our steps. See the journey that Discord went with their storage to support the extreme load they have:
Have a look also at a decent case study of scaling PubSub to the limits:
Finding the title for the talk is always fun; with the talk, I linked above, I’ve made an easter egg setting the longest title I could come up talking about keeping event streams short. Also, some people noticed my posh look, which was a bit unusual, but my friend Yves dared me to look like on my social avatar. I took the challenge.
I’m not sure what was the origin of the title that Greg Young did, but it’s the weirdest title I’ve seen so far. Yet, it’s also one of the best talks I’ve seen about a bi-temporal aspect of our systems and how Event Sourcing fits that. Must watch:
Last week we had World International Women's Day. Unfortunately, we still have a big diversity gap in our industry. It’s not as easy to just say, “well, it’s like”. It wasn’t always like that. I feel that we need to do more. Not just for the sake of the greater good but also because diversity makes better teams. The best teams I’ve been to were the most diverse ones. It’s not an accident; diversity builds creativity, a chance to clash ideas, to see different perspectives, and thus come up with better outcomes. Read more in:
Yaml doesn’t play well with anything. But it’s even worse in Norway? Why? See:
Check also other links!
p.s. I invite you to join the paid version of Architecture Weekly. It already contains the exclusive Discord channel for subscribers (and my GitHub sponsors), monthly webinars, etc. It is a vibrant space for knowledge sharing. Don’t wait to be a part of it!
p.s.2. Ukraine is still under brutal Russian invasion. A lot of Ukrainian people are hurt, without shelter and need help. You can help in various ways, for instance, directly helping refugees, spreading awareness, and putting pressure on your local government or companies. You can also support Ukraine by donating, e.g. to the Ukraine humanitarian organisation, Ambulances for Ukraine or Red Cross.