Architecture Weekly #67 - 21st March 2022
Welcome to the new week.
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, putting pressure on your local government or companies. You can also support Ukraine by donating e.g. to Red Cross, Ukraine humanitarian organisation. You may also consider joining Tech for Ukraine initiative.
Last week released the first part of exercises from the self-paced "Introduction to Event Sourcing" workshop for FREE. It took me two weeks of full focus, plus all the hours I spend in the past years. I created it for the private workshop but, as always, decided to open source it. You can do the workshop as a self-paced kit. That should give you a good foundation for starting your journey with Event Sourcing and learning tools like Marten and EventStoreDB.
You can get it on my GitHub repository: https://github.com/oskardudycz/EventSourcing.NetCore/tree/main/Workshops/IntroductionToEventSourcing.
From the other links, I especially recommend:
The 6 Figure Developer Podcast - Fundamentals of Software Architecture with Neal Ford
Alex Klibisz - Optimizing Postgres Text Search with Trigrams
Red Monk - What is Developer Experience? a roundup of links and goodness
github-action-benchmark - GitHub Action for continuous benchmarking to keep performance
Andrew Carr - Comparing Apache Kafka, Amazon Kinesis, Microsoft Event Hubs and Google Pub/Sub
Check also other links.
Stay healthy and safe.
Oskar
Architecture
The 6 Figure Developer Podcast - Fundamentals of Software Architecture with Neal Ford
Cedric Pontet - EventStorming – From Big Picture to Software Design
Red Monk - What is Developer Experience? a roundup of links and goodness
Mark Hinkle - Is Serverless Just a Stopover for Event-Driven Architecture?
Distributed Systems
Andrew Carr - Comparing Apache Kafka, Amazon Kinesis, Microsoft Event Hubs and Google Pub/Sub
Elliot West - Handling Incompatible Schema Changes with Avro
Databases
Lev Kokotov - PostgreSQL pooler with sharding, load balancing and failover support
Alex Klibisz - Optimizing Postgres Text Search with Trigrams
DevOps
Go
Java
Bartłomiej Słota - Concurrency control in REST API with Spring Framework
Minel Aydın - Spring Boot — Accessing Data with JPA Hibernate and PostgreSQL
CK Gan - A True Atomic Microservices Implementation with Debezium to Ensure Data Consistency