Architecture Weekly

Share this post

Architecture Weekly #81 - 27th June 2022

www.architecture-weekly.com

Architecture Weekly #81 - 27th June 2022

Oskar Dudycz
Jun 27, 2022
3
Share this post

Architecture Weekly #81 - 27th June 2022

www.architecture-weekly.com

Welcome to the new week!

Last week was special for me; I debuted as a speaker at the Domain-Driven Design conference with the talk “Keep your streams short! Or how to model event-sourced systems efficiently”. I explained how the fact that adding a new event after each business operation impacts our domain model design. In Event Sourcing, events are grouped into a sequence of events called streams. The more events we append, the longer streams get. Even though event stores are pretty good at reading long streams, it may impact our application performance. Snapshots are shown as a potential saviour, but they’re just postponing when we learn that we screwed our design. Then it’s usually too late. The essential is to think about the model in the temporal context and break it down into smaller slices (e.g. stream per cashier shift instead of stream per all transactions in cashier register). The feedback was positive, so I’m happy that I’ve made it, especially in the context that I was right after COVID and didn’t have as much time for preparation as I’d like to. If you want to see the recording of my rehearsal, join the paid version of Architecture Weekly, and I’ll send it to you.

This year I also did an extended relation showing what was happening, trying to bring some of the conference vibes. See the thread of threads with coverages from all of the conference days.

Didn’t I tell you that I was busy? I also wrote a new article about Unobvious things you need to know about key-value stores.

OK, enough about me!

Yet, if you’re not fed up with temporal thinking, check

  • Adam Furmanek - Ordering the chaos - cleaning logs and ordering events in microservices

I’ve seen this talk live last year, and it’s a superb explanation of time aspects in software design.


If you’d like to see extraordinary storytelling and an unusual way of speaking about the tech, check:

  • Jessica Kerr - Systems Thinking for Developers

In a similar spirit, so explaining how our systems evolve and how we can predict that using tools like Wardley Maps, check:

  • Susanne Kaiser - Building Adaptive Systems For a Fast Flow of Change

Btw. boundaries, Context Maps, Wardley Maps and aligning that with teams structure were among the leitmotifs of the DDDEU. We’re getting more tooling around strategic thinking and design, which is excellent. Especially since they’re based on real-world heuristics, they’re not just buzzwords anymore.

Speaking about tooling, I just realised that Mermaid supports the C4 model:

  • Mermaid - C4 Diagrams

Keeping in mind, that Mermaid diagrams are supported natively by GitHub Readme’s and even C# Interactive, it’s slowly becoming a standard for static diagrams.

Last but not least, have a listen on:

  • The Hanselminutes podcast - 3D Movie Maker Forever with Foone Turing

It’s a short and funny one, talking about the joy of programming and digging out the old (almost) forgotten tools. Yet, it also has more layers, e.g. how the big enterprise companies like Microsoft decision-making process works, about the changes (with reasoning) in dev tooling, and also even philosophical of what’s nostalgia. Must listen!

Check also more links below!

Cheers
Oskar

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. This is a great 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.

Architecture

  • Jessica Kerr - Systems Thinking for Developers

  • Susanne Kaiser - Building Adaptive Systems For a Fast Flow of Change

  • Adam Furmanek - Ordering the chaos - cleaning logs and ordering events in microservices

  • Gandalf Hudlow - The value destroying effect of arbitrary date pressure on code

Databases

  • Oskar Dudycz - Unobvious things you need to know about key-value stores

  • Azure Cosmos DB - Data modeling & partitioning: What every relational database dev needs to know

  • Amit Kapila - Logical Replication Improvements In PostgreSQL-14

DevOps

  • Yacht - A web interface for managing docker containers with an emphasis on templating to provide 1 click deployments

  • Skaffold - Easy and Repeatable Kubernetes Development

Testing

  • Mark Seemann - Some thoughts on naming tests

  • Ian Cooper - TDD Revisited

  • James Shore - Acceptance Testing Revisited

  • Aslak Hellesøy - BDD is not test automation

Azure

  • Microsoft - New API backend options in Azure Static Web Apps

Java

  • Java - Structured Concurrency

.NET

  • Sean Killeen - .NET OSS Maintainer Support Survey – The Results!

  • Jérémie Chassaing - eskv - In-memory key/value and event store, for educational purposes

  • Domn Werner - C# discriminated union source generator

  • Nick Chapsas - .NET-Backend-Developer-Roadmap

Rust

  • Rust - Rustlings - Small exercises to get you used to reading and writing Rust code!

Tools

  • Mermaid - C4 Diagrams

  • MinJae Kwon - Diagrams - Diagram as Code for prototyping cloud system architectures

  • Helix - A post-modern modal text editor

Coding Life

  • Thierry de Pauw - On the Evilness of Feature Branching - A Tale of Two Teams

Product Design

  • Joe Procopio - This Is Why Your Customers Hate Your Minimum Viable Product

Trivia

  • Scientific American - Record-Breaking Voyager Spacecraft Begin to Power Down

  • The Hanselminutes podcast - 3D Movie Maker Forever with Foone Turing

Share this post

Architecture Weekly #81 - 27th June 2022

www.architecture-weekly.com
Comments
TopNewCommunity

No posts

Ready for more?

© 2023 Oskar Dudycz
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing