Architecture Weekly #111 - 23rd January 2023
Welcome to the new week! On Friday I wrote probably one of the lengthiest articles so far. Funnily enough, I did that by accident. I wanted to write a short example, but the first introductory paragraph changed into Guide to Projections and Read Models in Event-Driven Architecture. Projections are transformations of information we get from events into other data. We can look at the past and analyse the data, finding even new business models. Thanks to that, we can get business insights and view data from different perspectives. In article, I showed a foundational building block from a big-picture view. Even though it ended up as a lengthy article, there are still things to expand. I hope this article is a decent starting point for you to know how to deal with them and what to watch for. Don’t miss also Einar W. Høst article about craftsmanship, or its death: I can fully sign on it, as it’s pretty much my story, also. Still, it’s always intriguing how language context changes the meaning. I titled myself “rzemieślnik” for some time, which in the Polish language means craftsman. Yet here where I live, it’s typically used pejoratively. Rzemieślnik is someone capable of doing what they were told to do, but not someone that would invent something or even design. I stopped saying about myself like that when I understood that I was saying that as a software developer. Then it’s a much different meaning than what was my intention. It’s much more pompous and less about what’s important. My intention for calling myself “rzemieślnik” was the opposite. To highlight that I’m here just to solve someone else intention, so business case and do it best I can. So the meaning of craftsman in our industry is more like a medieval mason rather than just a person here to do the job. I still believe we should master our skills and be realistic about what we’re here for. Less bravado, more focus on what’s important, so understanding the case we need to solve. And that we’re just a piece in the whole software delivery process. Embracing that can be quite a relief. A good way to do that is to learn modelling and collaboration techniques. If you'd like to start with EventStorming, I recommend Kenny Baas-Schwegler's talk: It’s informative and actionable. I also like putting Event Storming in a broader context together with other tools like Example Mapping. The other combination that helps me zoom in and out is Event Storming + C4 model. It helps to make theories and evaluate them around the technical design and tools composition. Still, modelling is not only about sticky notes; you can also type it. For that, see a detailed example of the thought process that you can apply using a proper type system together with collaboration with business: If you’re looking for a thorough and well-thought explanation of the various layered architecture concepts, check out those talks:
As you might know, I’m not a fan of layered architecture. I prefer to cut as many layers as possible. Still, those architectures have their place, and if you work with them, it’s worth understanding how to do it right. To do that, we need to understand their origins, context and assumptions that shaped them. Uber is a bad example in many cases, but they’re a decent example of how you need to adapt your organisation depending on the product phase you’re into. They started by not maintaining the old code. No rewrites. They just wrote the new version of the service. Initially, they were focused on technicalities but then learned Domain-Oriented Architecture. Because they also learned the domain and embraced that they’re not just about technology. Now they came into the mono repo and remote dev environments. See: I’m not sure yet if that’s the correct decision. I’m trying to say here that we should constantly reevaluate architectural, people and organisation decisions. We should not be trying to build the perfect model. There are no such. We should make mistakes in a controlled way and learn from them. That’s how we’re making progress. Of course, sometimes it’s better to stand smartly than run blindly, but that’s for another story. Bored with ChatGPT? Me too, but hey, even Nick Cave wrote about that: Check, also other links! Cheers 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
DevOpsDatabasesAWSAzureJava.NET
Coding LifeManagementProduct DesignIndustry
SecurityTrivia |
Key phrases
Older messages
Architecture Weekly #110 - 16th January 2023
Friday, January 20, 2023
Architecture Weekly - links and resources to boost your knowledge and developer skills!
Architecture Weekly #109 - 9th January 2023
Monday, January 9, 2023
Architecture Weekly - links and resources to boost your knowledge and developer skills!
Architecture Weekly #108 - 2nd January 2023
Monday, January 2, 2023
Architecture Weekly - links and resources to boost your knowledge and developer skills!
Architecture Weekly #107 - 26th December 2022
Monday, December 26, 2022
Architecture Weekly - links and resources to boost your knowledge and developer skills!
Architecture Weekly #106 - 19th December 2022
Monday, December 19, 2022
Architecture Weekly - links and resources to boost your knowledge and developer skills!
You Might Also Like
Tuesday Triage #200 and giveaway
Tuesday, May 14, 2024
Your weekly crème de la crème of the Internet is here! The 200th edition featuring annual subscriptions giveaway, thoughts on nearly four years of ...
🎮 How AI Tools Are Changing Game Development — Grab a Pixel 8a Instead of Waiting for Pixel 9
Tuesday, May 14, 2024
Also: Sharing Your Google Maps Trip Progress, and More! How-To Geek Logo May 14, 2024 Did You Know In a bid to keep the ingredients secret, WD-40 was never patented. 🤖 The New GPT It's Tuesday!
Meta shuts down Workplace
Tuesday, May 14, 2024
Plus: Everything that happened at Google I/O and AWS CEO steps down View this email online in your browser By Christine Hall Tuesday, May 14, 2024 Hello, and welcome back to TechCrunch PM. The team
Flattening Lists of Lists, Python 3.13, Sets, and More
Tuesday, May 14, 2024
Flattening a List of Lists in Python #629 – MAY 14, 2024 VIEW IN BROWSER The PyCoder's Weekly Logo Flattening a List of Lists in Python In this video course, you'll learn how to flatten a list
Daily Coding Problem: Problem #1441 [Easy]
Tuesday, May 14, 2024
Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Google. UTF-8 is a character encoding that maps each symbol to one, two, three, or four
Noonification: 3 Quick Ways to Optimize RecyclerView
Tuesday, May 14, 2024
Top Tech Content sent at Noon! Get Algolia: AI Search that understands How are you, @newsletterest1? 🪐 What's happening in tech today, May 14, 2024? The HackerNoon Newsletter brings the HackerNoon
Using 97 fewer cores thanks to PGO
Tuesday, May 14, 2024
Plus an HNSW indexed vector store library, a new Go game hits the Steam store, and is 'ok' ok?. | #507 — May 14, 2024 Unsub | Web Version Together with Stytch logo Go Weekly Reclaiming CPU for
Ranked | The Top 6 Economies by Share of Global GDP (1980-2024) 📈
Tuesday, May 14, 2024
Gain a unique perspective on the world's economic order from this graphic showing percentage share of global GDP over time. View Online | Subscribe Presented by: Data that drives the
Free online event this Thursday: Getting ahead with time series data
Tuesday, May 14, 2024
Free Online Event Do you know how your competitors use time series data to get ahead? Join us on Thursday, May 16 at 10am PT/1pm ET for a free, hour-long online fireside chat called “Unleash the Full
Here's the deal
Tuesday, May 14, 2024
We wanted you to be among the first to know about our plans to relaunch the Gigantic training courses that Product Collective now powers! Here's the deal: From May 20th - May 31st, anybody that