Architecture Weekly

Share this post

Architecture Weekly #109 - 9th January 2023

www.architecture-weekly.com

Architecture Weekly #109 - 9th January 2023

Oskar Dudycz
Jan 9
3
Share this post

Architecture Weekly #109 - 9th January 2023

www.architecture-weekly.com

Welcome to the new week!

Looking for an exciting coding exercise? Or learning a new pattern? Why not build an event store, then?

I showed that in my talk at NDC Oslo, and now summarised together with the self-paced kit, exercises and other resources. Check below to see more and watch the recording.

  • Oskar Dudycz - Let's build event store in one hour!

Once you’re done, please don’t use it on production; rather, use some mature solutions. Maintaining it won’t be sustainable if it’s not your core business.

Event stores are databases. Just like you won’t say: “hey, let’s build the relational database for our project”, you should not do that with an event store.

Still, it’s a lot of fun, nothing too time-consuming to build a simple one and an excellent exercise in understanding how Event Sourcing works.


Learning usually goes bottom-up or top-down. Different people choose different styles of learning.

In recent years I’m concluding that the more important is to be able to zoom in and zoom out, so going back and forth from the big picture to implementation details.

You need to have a vision of the solution, but then you need to execute it. A grand vision with poor execution won’t succeed. The same thing goes otherwise. I’m a fan of proof of concepts, so doing a quick dive into the code/tools to evaluate assumptions and make sure that they’re not show-stoppers before moving forwards.

That’s also why I am so often picky about understanding patterns and tools as they are. In a nutshell and isolation.

One of the most essential tools to make such judgements is System Thinking. Check more in:

  • Donella (Dana) Meadows - Lecture: Sustainable Systems

  • John Ousterhout - A Philosophy of Software Design


Having the weapon, so proper thinking, we can make concious architectural decisions. For instance, around tech debt:

  • Adam Tornhill - Prioritizing Technical Debt as If Time & Money Matters

Boundaries:

  • Ted Neward - You Want Modules, Not Microservices

  • Udi Dahan - Finding Service Boundaries – illustrated in healthcare

Performance and agility:

  • Maciej "MJ" Jedrzejewski - Why Good Software Architecture Matters: The Impact on Performance and Agility

We should also check how others are doing and apply critical thinking by doing a lot of “what if I…?” analysis.

  • T. Winters, T. Manshreck, H. Wright - Software Engineering at Google

  • Natan Silnitsky - Troubleshooting Kafka for 2000 Microservices at Wix

  • Charles Fitzgerald - “Supercloud” RIP

Yet, remember that’s easier to scale computer systems than scaling yourself and not getting mad:

  • Scott Hanselman - Scaling Yourself

Check, also other links!

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. 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.


Architecture

  • Ted Neward - You Want Modules, Not Microservices

  • Donella (Dana) Meadows - Lecture: Sustainable Systems

  • John Ousterhout - A Philosophy of Software Design

  • T. Winters, T. Manshreck, H. Wright - Software Engineering at Google

  • Adam Tornhill - Prioritizing Technical Debt as If Time & Money Matters

  • Maciej "MJ" Jedrzejewski - Why Good Software Architecture Matters: The Impact on Performance and Agility

  • Charles Fitzgerald - “Supercloud” RIP

  • Alistair Cockburn - Simplify Software Design (1st draft)

  • Udi Dahan - Finding Service Boundaries – illustrated in healthcare

  • Ian Cooper - Managing Event Driven Architectures

DevOps

  • Natan Silnitsky - Troubleshooting Kafka for 2000 Microservices at Wix

  • Mary Branscombe - Kubernetes for Windows

Databases

  • Oskar Dudycz - Let's build event store in one hour!

Frontend

  • Szymon Chmal - The Role of Transpilers in Web Development

Testing

  • Adam Furmanek - Testing at scale

  • JetBrains - HTTP Client CLI – Run Requests and Tests on CI

AI

  • Meta - Teaching AI advanced mathematical reasoning

Azure

  • Stephane Eyskens - The Azure Networking Map

.NET

  • James Shore - The Problem With Dependency Injection Frameworks

  • bflat - C# as you know it but with Go-inspired tooling

  • David Glassborow - A brief introduction to WebAssembly in .NET and F#

  • Phillip Carter - Microsoft doesn't hate F#

Python

  • Szymon Miks - The outbox pattern in python

Coding Life

  • Scott Hanselman - Scaling Yourself

  • Kim Maida - How to Measure the Value of Developer Relations

  • Eric Sink - SQLitePCLRaw and open source sustainability

Industry

  • Stanford News - Why are there so many tech layoffs, and why should we be worried?

Security

  • BleepingComputer - Google Home speakers allowed hackers to snoop on conversations

Thank you for reading Architecture Weekly. This post is public so feel free to share it.

Share

Share this post

Architecture Weekly #109 - 9th January 2023

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