Architecture Weekly Issue #52. 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 as well.
It's already been 333 days since Russia's crazy, brutal and unjustified war against Ukraine. We condemn this war and want it to stop ASAP. We continue this newsletter so you can advance your skill and help the millions of Ukrainian people in any way possible. If you want to help directly, visit this fund.
Architect's Intro to Data Science and Machine Learning 🍼
I personally kinda afraid of Data Science and ML, because I think it requires a lot of math I am not really good at. However, you will hardly build a complex enough system without either of those. So you'd better understand the terms and underlying principles at least at a high level. Redhat wrote a post in their "Enable Architect" blog with what you as an architect should know about the Data Science and Machine Learning. The list includes courses and learning materials, data manipulation tools, programming languages, data pipelines, types of machine learning and more.
Relational Databases Explained 🤟
We use RDMS almost every day in our day to day jobs, but do we know enough? Do we know how do indexes work? Or how do dbs store data on the disk? What are the transactions and levels of isolations? Architecture Notes got you back with answers on those questions. You would be also appreciate my own Architecture Readings series on the YouTube channel as well.
Continuous Architecture Manifesto 🍼
As we mentioned previously, architecture activity evolved from big upfront design to no design at all. Although the spectre has long range, we can find ourselves in another point of it - the place where we do architecture continuously. It means targeting a long-term product vision, and not a short-term project; performing it by the whole team; using holistic approach and more!
Reading DDIA notes 🍼
Designing Data Intensive Applications is a classical book nowadays. Magda Miu started a series of posts where she shares her notes while reading the book. She explains what she got from the book chapters, provides illustrations and complements it with the links for the further readings. Don't hesitate to follow her blog as well!
#ddia #reading #distributedsystem
Introduction to Time-Series Databases 🍼
We face time-series on multiple occasions from monitoring data to IoT and financial events. In order to store this data efficiently, there are special databases: TSDBs. What are there advantages and why they fit well with this type of data, read in the article below.
Consider All Microservices Vulnerable 🍼
Microservices usually have one well-defined purpose and narrow API surface. It helps improving the security, but does not obviously eliminate the threat completely. One of the tactics to improve the security of microservices in particular is monitoring their behaviour. If the malicious irefular requests and irregular response times are detected, then we can detect or even prevent an attack at an earlier stage. More details inside.
Why Bolt use Node.JS? 👷♂️
Bolt uses exclusively Node.JS and Typescript for all the backend microservices, except ML and Data Science payloads. This is of course a architecturally significant decision which follows the business motivation of doing more with less. This week my coworker Denys Pysmennyi wrote a piece about this choice, it's consequences and drawbacks.
#backend #technology #nodejs
McDonald's Journey to Event-Driven Architecture
McDonald's is not only a set of restaurants for a quick break. It has rich IT infrastructure behind the scene. And the foundation for their systems is Event-Drivent architecture. In this post Derek Comartin shares some details from the McDonalds posts on how do they use Schema Registries, how they validate events and improve the messaging reliability.
Any Decision Record? Architecture, Design and Beyond
Decision Records again! This time Olaf Zimmermann "Patterns of API Design" published a 10-minutes read about the applicability of ADRs for capturing not only architecture decisions, but as well as managerial or organizational ones. He also reasons what actually an architecturally significant decision is, and why a programming language choice is a one(mind the previous article). Get a read!
Like the newsletter? Wanna receive new content earlier, than everybody else? Consider helping to run it at Patreon or Boosty. The funds go to pay for the hosting and some software like a Camo Studio license. Patrons and Boosty subscribers of a certain level also get access to a private Architecture Community and of course every supporter gets early access. Big thanks to Nikita, Anatoly, Oleksandr, Dima, Pavel B, Pavel, Robert, Roman, Iyri, Andrey, Lidia, Vladimir, August and Roman for already supporting the newsletter. Join them as well!