The core of Modern Software Architecture, The Write Last, Read First Rule, Coding by Parallel AI Agents. Architecture Weekly #187
Architecture Weekly Issue #187. Articles, books, and playlists on architecture and related topics. Split by sections, highlighted with complexity: 🤟 means hardcore, 👷♂️ is technically applicable right away, 🍼 - is an introduction to the topic or an overview. Now in telegram and Substack as well.
DISCLAIMER: The newsletter will be soon moved to Substack. Please subscribe there to continue receiving it.
Highlights
The Core of Modern Software Architecture 🍼
Designing upfront does not work: predicting the future is impossible. Omitting design completely does not work either: spontaneous decisions are seldom optimal. Eoin Woods coins the middle-ground: follow Continious Architecture, establish the decision flow and stick to first principles. Great article!
#architecture
The Write Last, Read First Rule 🤟
Given we need traceable and consistent properties in the system with 2 storages: source of truth and reference system, the rule to grant those properties is "The Write Last, Read First". When querying a record, read for source of truth first; when writing: write to reference storage first, the source of truth last. This way guarantees will be satisfiy. The article by Dominik Tornow elaborates.
#db
Programming by kicking off parallel AI agents 👷♂️
We leverage AI to move faster and better. Smart autocomplete, feature code, unit tests - AI can help with many tasks, but the results requires reviewing. Surprisingly, you can move even faster launching multiple coding agents simultaneously. We are not at this level, but I personally can work with one agent locally and spawn others to fix know bugs through Cursor Agent. Follow the article by Gergely Orosz.
#ai #coding
Follow-Up
How Bolt simplified fraud checkpoints 👷♂️
With 4 business verticals and 150+ millions of clients and hundreds of thousands of partners, the fraud is a very real problem. Fighting it apparently requires 60+ fraud analysis flows. How do you design and evolves such system? Jarsolav Judin shows it in this article.
#fraud #casestudy
How we Uncovered a Race Condition in Aurora RDS 🤟
As a fresh software developer you learn that if your program does not work correctly blame your code first - seldom the compiler to blame. When you design systems, blame your approach first - the underlying platform usually works solid. Not always the case though. Kartik Pitale shares they found a race condition in failover mechanism in Aurora RDS - which is still yet to be patched.
#casestudy #aws #distributedsystems
Are Lambda-to-Lambda calls really so bad? 👷♂️
There are 3 ways of lambda-to-lambda communication: sync call, async call and queue trigger. Are they all awful altogether? Apparently not. Each call type has it's own set of pros and cons, which Yan Cui breaks down in this explanation.
#serverless #lambda
Terraform vs Pulumi vs Crossplane 🍼
We use Terraform at Supplied for IaC; however that's not the only choice. One finds Pulumi, Crossplane and AWS CDK too. How to choose one? Mallory Haigh explains the difference between the first 3 options.
#iac
The Guardrails Your LLM Needs: Reliable Agent Based Systems 👷♂️
Everyone talks about milti-agent development mentioning it's biggest issue: how to make sure it does not break anything and actually does what is intended in the appropriate style? Mercedes(yup!) explains how they do that using Koog framework from JetBrains themselves.
#ai #coding
Big thanks to Nikita, Constantin, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August, Roman, Egor, Roman, Evgeniy, Nadia, Daria, Dzmitry, Mikhail, Nikita, Dmytro, Denis and Mikhail for supporting the newsletter on Patreon!