Discover more from Architecture Weekly
Architecture Weekly #95 - 3rd October 2022
Welcome to the new week!
I’m writing to you from the hotel room in Bergen. Last week I was at the NDC Oslo conference and prolonged it a bit to take the opportunity to see a bit more of charming Norway’s nature. If you’re here, take the train from Oslo to Bergen, you won’t regret it! I need a bit to recharge, as the last week was super busy for me.
At NDC Oslo, I did a short (2h) workshop with a practical introduction to Event Sourcing. It’s not an easy format to give people to get their hands dirty and also explain the foundations. It seems that it worked out, as some participants wanted to do a photo with me after it was finished.
If you want the full experience, feel invited to join the online workshop I’ll be giving in November with DDDEU academy.
On Friday, I built an event store in one hour live at the NDC Oslo stage. It’s not something you should try to do for production usage; using some existing, mature solutions is better, but it’s a lot of fun. If you want to try that on your own and your code in C#, try my self-paced kit that you can find in my repository.
If you want to see also see all my observations from NDC Oslo, check this Twitter thread.
I told you that I was busy, right? We also had a webinar discussing the CQRS in a nutshell, untangling common myths and showing the practical way of transitioning from CRUD. You can watch it by joining the paid subscribers community.
I also write a blog article that matches the idea behind the abovementioned activities: Dive a bit deeper, look a bit wider. We should strive to understand our tool and try to break through the marketing sold by their authors. Let’s not base our design on gut feeling and question hype and what we read on the blog. To be a decent programmer, we should look at least one level lower than the one we work on daily. So if we use ORM, apart from understanding it, let’s also understand the basics of relational databases. If we are doing a frontend, let’s understand the rules of building a sound WebApi and how the backend roughly works.
Speaking about basics, it’s always surprising for me to see how people skip the foundational patterns and want to just tech-around-the-problem. For many people, outbox pattern, sharding, etc. are like enigmas. That’s also why it’s never enough to explain basic concepts like:
With proper modelling and understanding of the business process, we can try to make proper tradeoffs and know when to cut corners. Good design is not created in a vacuum. If we understand our business goal and usage patterns, then we can create simpler solutions instead of complex, byzantine ones. See more in:
While being an architect, it’s important to focus on the trends in the industry. Even if they don’t seem related to our regular scope of responsibility, we need to understand them because they may impact us sooner than later. See:
If you want to read some crazy tech-related story, there you have it:
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 Red Cross, the Ukraine humanitarian organisation. You may also consider joining Tech for Ukraine initiative.