Architecture Weekly #173 - 1st April 2024
Welcome to the new week! Let’s start with a big bang, at least for me. I'm no longer a Marten maintainer. As you know, sometimes in the project's lifetime, there's a moment when either you need to settle things or make hard decisions. Unfortunately, the latter occurred here. I'm not happy that this is ending not as I hoped. Marten was a big part of my life: over 6 years as a contributor and over 5 years as a co-maintainer. Yet, the current collaboration model has ended, and the new didn’t emerge. I'm not leaving the Event Sourcing and Event-Driven space. I plan to continue what I was doing, so if you need any help, feel free to reach out to me. The closest goals are the workshops on Techorama and DDD Europe. Then, I'll think about what's next and how much I need to adjust my course. Read more: Did you feel that you need to debug your mind? Did your (or your colleague's) biases impact your decision-making? How to improve it? How do you reason about the reasoning? Laïla Bougriâ shared with us practical thoughts and the results of their research backed by the history of her projects. She gave us the talk she gave as the keynote at NDC London 2024 as our webinar. You can watch the recording now. This talk gives good mental tools to reason, investigate, and do the sanity check BEFORE, which is a basis for evolutionary architecture and good enough design. As always, after the talk, we had a nice Q&A during which Laïla shared additional heuristics. I’m really happy that Laïla agreed to join us and share her experience with us! Check also Diana Montalion's talk from this month’s Explore DDD conference. In a similar spirit to Laïla’s webinar, she nicely explained how systems thinking can help analyse and understand what’s happening in our projects. She underlined the importance of understanding what’s behind our daily struggles, noticing patterns, and how analysing structures and building mental models can help us make better decisions. CNCF announced a new database: Valkey! Well, almost, what’s Valkey? It’s a fork of Redis triggered by the change in their licence we discussed last week.
Did you notice Microsoft missing? Yup, probably because they just released Garnet, their own Redis clone. All that sounds splendid and backed by higher values, but frankly, if they were doing it because of that, they’d support the Redis creators and contribute back, making their development sustainable instead of benefiting from their work. Still, all of that doesn’t look back from Redis. It sounds like they didn’t have a proper plan for what was next. I think the only solution for databases to survive such scenarios is to have managed service providing a high value to their customers. It also requires early investment in your own user base and community to be built around your product instead of just outsourcing it to the cloud providers. We see more and more cases where the original tooling that became popular is getting some bottlenecks or trying to be used in scenarios where it wasn’t initially envisioned. For instance, databases were originally designed to be run on the bare-bone server with a dedicated disk, etc. That’s still a valid and probably the most performant usage, but in today’s industry, that’s not enough. Sometimes, we want to optimise for cost or other things. That made AWS create AuroraDB and Google AloyDB, so it used the Postgres engine and replaced the storage driver to store the files on cheap blob storage like S3. Confluent is investing most of its effort in making Kafka Cloud-native and optimised for the Cloud. It’s not easy to change tools that were built traditionally. They created Kora, their cloud-only Kafka engine. They also have Apache Iceberg, the open table format for analytic datasets. Now, they came up with Tablefow. They observed that even though messages piped through Kafka can have any schema, they typically have structure and share a similar schema, especially since they pushed to use their Avro Schema Registry. Given that and the need for cheaper, easier-to-replicate, and process storage, they thought, "Why not unify stream processing and batch processing?”. So they did. It’s not a revolutionary idea, but it’s also an intriguing case study of how pure tech solutions can shift their approach once they understand their domain, how users use it, and their needs. It also shows (with pushed by Confluent Apache Flink) that SQL is not dying but doing well. If you’re not yet on board with Kafka, it’s worth understanding it; the good starting point is a nice walkthrough Claudio Gargiulo: If you’d like to learn more about innovative databases, check DuckDB; it can also use Apache Parquet files (with columnar storage format) just like Confluent’s Tableflow. Read more about how Spanner is dealing with the CAP Theorem. It’s an interesting read to understand the guarantees they provide: If you’re putting your bets on RedHat, you should reconsider their bets; it sounds like they started a partnership with McKinsey. I’m interested in knowing if they want to use practices from McKinsey’s report on developer productivity. We should buy some popcorn for the next news around it. Ok, truly, this was a joking introduction for yet another try at measuring developer productivity. This time on Martin Fowler’s blog by Abi Noda and Tim Cochran: They proposed “qualitative metrics”:
And added benefits that the benefit of using them are:
The article is long and worth reading, but I think it won’t give you actionable metrics, but it should give you inspiration for working with your teams. I think that we just should stop calling those metrics. It’s worth analysing trends and trying to understand what it means in your organisation's context to be a good engineer. Trying to measure something that, by definition, is claimed as subjective and unmeasurable will still be a gut feeling. And gut feeling of experienced people can be a better indicator than dumb metrics, but it’s still gut feeling, so why cheat ourselves by calling that measurement? Last but not least, I’d like to give big KUDOS to the tool that I’ve been a happy user of in the last few months: Lazy Git. I’m using Linux on my developer workstation for over a year, but I’m not a console-first user. I still like the desktop; I don’t want to cast the invocation or a spell; I just want to get stuff done. I was using TortoiseGit and Git Kraken, both nice tools, but I didn’t feel they were my ultimate choice. Git is the base tool nowadays for developers, but it’s not user-friendly. It’s easy to do wrong rebase and break your work. I was really scared to do interactive rebases in the console or even resolve merge conflicts without the UI tool. But since I tried Lazy Git, I’m not scared anymore. Together with a plugin for VSCode, it helped me build a better developer flow while working on my Node.js projects like Emmett. Try it, really, if I didn’t persuade you, check this article: 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
Databases
TestingAIJavaJavaScript.NET
ToolsManagementIndustrySecurityYou're currently a free subscriber to Architecture Weekly. For the full experience, upgrade your subscription. |
Older messages
Webinar #18 - Laïla Bougriâ: Debug your thinking
Friday, March 29, 2024
Watch now (87 mins) | Did you feel that you need to debug your mind? Did your (or your colleague's) biases impact your decision-making? How to improve it? How do you reason about the reasoning?
Architecture Weekly #172 - 25th March 2024
Monday, March 25, 2024
This time, we did an all-around journey from understanding where money comes from, so budgeting. Then we followed the money and discussed OSS sustainability issues on the example of Redis and their
Architecture Weekly #171 - 18th March 2024
Monday, March 18, 2024
We started by checking why May may be the month of Event Sourcing. Then we discussed Figma's way of dealing with database horizontal scaling and saw what new database improvements can bring WASM
Architecture Weekly #170 - 11th March 2024
Monday, March 11, 2024
This time, we took a deep dive into being Secure By Design. We analysed and compared Google's and the White House's recommendations. We looked at the Event Interception pattern and discussed if
Architecture Weekly #169 - 4th March 2024
Monday, March 4, 2024
Today, We did a roundtrip through the big tech case studies: Uber, Doordash, Stripe and more. We compared their takes on the emerging trends like cell-based architectures, we discussed Stripe's
You Might Also Like
Re: Hackers may have stolen everyone's SSN!
Saturday, November 23, 2024
I wanted to make sure you saw Incogni's Black Friday deal, which is exclusively available for iPhone Life readers. Use coupon code IPHONELIFE to save 58%. Here's why we recommend Incogni for
North Korean Hackers Steal $10M with AI-Driven Scams and Malware on LinkedIn
Saturday, November 23, 2024
THN Daily Updates Newsletter cover Generative AI For Dummies ($18.00 Value) FREE for a Limited Time Generate a personal assistant with generative AI Download Now Sponsored LATEST NEWS Nov 23, 2024
📧 Building Async APIs in ASP.NET Core - The Right Way
Saturday, November 23, 2024
Building Async APIs in ASP .NET Core - The Right Way Read on: my website / Read time: 5 minutes The .NET Weekly is brought to you by: Even the smartest AI in the world won't save you from a
WebAIM November 2024 Newsletter
Friday, November 22, 2024
WebAIM November 2024 Newsletter Read this newsletter online at https://webaim.org/newsletter/2024/november Features Using Severity Ratings to Prioritize Web Accessibility Remediation When it comes to
➡️ Why Your Phone Doesn't Want You to Sideload Apps — Setting the Default Gateway in Linux
Friday, November 22, 2024
Also: Hey Apple, It's Time to Upgrade the Macs Storage, and More! How-To Geek Logo November 22, 2024 Did You Know Fantasy author JRR Tolkien is credited with inventing the main concept of orcs and
JSK Daily for Nov 22, 2024
Friday, November 22, 2024
JSK Daily for Nov 22, 2024 View this email in your browser A community curated daily e-mail of JavaScript news React E-Commerce App for Digital Products: Part 4 (Creating the Home Page) This component
Spyglass Dispatch: The Fate of Chrome • Amazon Tops Up Anthropic • Pros Quit Xitter • Brave Powers AI Search • Apple's Lazy AI River • RIP Enrique Allen
Friday, November 22, 2024
The Fate of Chrome • Amazon Tops Up Anthropic • Pros Quit Xitter • Brave Powers AI Search • Apple's Lazy AI River • RIP Enrique Allen The Spyglass Dispatch is a free newsletter sent out daily on
Charted | How the Global Distribution of Wealth Has Changed (2000-2023) 💰
Friday, November 22, 2024
This graphic illustrates the shifts in global wealth distribution between 2000 and 2023. View Online | Subscribe | Download Our App Presented by: MSCI >> Get the Free Investor Guide Now FEATURED
Daily Coding Problem: Problem #1616 [Easy]
Friday, November 22, 2024
Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Alibaba. Given an even number (greater than 2), return two prime numbers whose sum will
The problem to solve
Friday, November 22, 2024
Use problem framing to define the problem to solve This week, Tom Parson and Krishna Raha share tools and frameworks to identify and address challenges effectively, while Voltage Control highlights