Architecture Weekly

Share this post

Architecture Weekly #113 - 6th February 2023

www.architecture-weekly.com

Architecture Weekly #113 - 6th February 2023

Oskar Dudycz
Feb 6
2
Share this post

Architecture Weekly #113 - 6th February 2023

www.architecture-weekly.com

Welcome to the new week!

Want to learn about 2nd-day issues of using Event-Driven projections and read models? Great! Last Thursday, we did the next webinar for paid subscribers community.

It’s almost 2 hours of practical knowledge on how to deal with challenges like eventual consistency, idempotency, testing, rebuilds, etc. Watch it here 👇


Validation is a thriving concept. It enables incredible creativity in developers implementing it in various ways.

In ASP.NET, the validation is often conflated with parsing and model binding. Historically, .NET devs got accustomed to doing it all at once. It may sound like a brilliant idea, but it's also a pit of performance issues and nasty production bugs to debug.

It all goes well until we remember the conventions and follow them precisely. Yet, the number of permutations we may find makes it hard to tame.

It doesn't have to be like that. In my recent article, I explained how explicit validation and the latest .NET improvements could help with that:

  • Explicit validation in C# just got simpler!


Observability, resiliency and dealing with unknowns in the colourful distributed systems are challenges. The only thing we can be sure of is that we cannot be sure about anything. Thus, understanding the patterns, tooling, and learning from others’ approaches is critical nowadays. Check more in extensive resources:

  • Bilgin Ibryam, Roland Huß - Kubernetes Patterns. Reusable Elements for Designing Cloud-Native Applications

  • SigNoz - 30+ Observability User Stories

  • Tim Deschryver - Adding OpenTelemetry to an Angular Application


We can be also sure following laws and principles:

  • Mel Coway’s Law: “Organizations, who design systems, are constrained to produce designs which are copies of the communication structures of these organizations”.

  • W. Edwards Deming quote: “A Bad System Will Beat a Good Person Every Time”.

  • Peter Principle: “An employee continues to receive promotions to work in higher ranks up to that point where he reaches a level of incompetence”.

  • Gerald Weinberg: “It's always a people problem”.

At least, in my opinion, solving technical challenges is much easier than organisational ones. I’m not trying to deprecate the importance of technical execution, yet much more often, they fail because people cannot deal with each other than technology failing.

I’m happy that this, together with empathy, is something that we finally hear louder. Check more in:

  • Mel Conway - How do committees invent?

  • Molly Dishman & Martin Fowler - Agile Architecture

  • James Lewis - Team Topologies, Software Architecture & Complexity

  • Andy Hunt - Why Are There So Many Misconceptions Around Agile?

  • Ruth Malan - Technical Leadership Masterclass


I'm trying to notify you that the fight has been ongoing in my resources since the Russian Invasion of Ukraine started. I feel that it’s my responsibility to explain that to others as I live in this part of Europe. Yet, Ukraine is not the only country fighting for its freedom.

Many Iranians want to live in a country where they can make their own decisions. They’re fighting with an oppressive regime. And yes, the regime also uses IT tooling to spy and infiltrate people. Check more in the Citizen Lab report:

  • The Citizen Lab - You Move, They Follow Uncovering Iran’s Mobile Legal Intercept System

I mentioned empathy in the previous paragraph. We should work more also on ethics and responsibility in our industry. Tech is and will be used not only for a good cause, and we need to learn how to behave when we face such dilemmas.

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

  • Martin Fowler - Making Architecture Matter

  • Molly Dishman & Martin Fowler - Agile Architecture

  • James Lewis - Team Topologies, Software Architecture & Complexity

  • Rob Smallshire - Predictive Models of Development Teams and the Systems They Build

  • Isaac Abraham - Domain modelling made simple: Functions and Values

DevOps

  • Bilgin Ibryam, Roland Huß - Kubernetes Patterns. Reusable Elements for Designing Cloud-Native Applications

  • SigNoz - 30+ Observability User Stories

Databases

  • SQL Bolt - Learn SQL with simple, interactive exercises.

Frontend

  • Tim Deschryver - Adding OpenTelemetry to an Angular Application

Testing

  • Liran Tal - Advanced usage patterns for taking page element screenshots with Playwright

Azure

  • Marilag Dimatulac Svennevig - Message Brokering and Event Driven Architecture on Azure

JVM

  • Sacha Coppey - GraalVM Native Image meets RISC-V

Node.js

  • pgwire - PostgreSQL client library for Deno and Node.js that exposes all features of wire protocol

.NET

  • Oskar Dudycz - Explicit validation in C# just got simpler!

  • JoĂŁo SimĂ”es - Immutability and Entity Framework Core

  • David Masters - Entity Framework Core 7: Strongly Typed Ids Together With Auto-Increment Columns

  • Steven Giesel - No, No, No - Tasks are not threads and they are not for performance!

WebAssembly

  • MDN - Web Assembly docs

Coding Life

  • Corecursive Podcast - Shipping Graphing Calculator With Ron Avitzur

Management

  • Andy Hunt - Why Are There So Many Misconceptions Around Agile?

  • Ruth Malan - Technical Leadership Masterclass

  • Ruth Malan - Decisions

  • Mel Conway - How do committees invent?

  • Strategic and Heuristic IT Management - One-way and Two-way Door Decisions

Industry

  • Semafor - OpenAI has hired an army of contractors to make basic coding obsolete

Security

  • The Citizen Lab - You Move, They Follow Uncovering Iran’s Mobile Legal Intercept System

  • ArsTechnica - ChatGPT is enabling script kiddies to write functional malware

Thank you for reading Architecture Weekly. If you like it, share it with your friends!

Share

Share this post

Architecture Weekly #113 - 6th February 2023

www.architecture-weekly.com
Comments
TopNewCommunity

No posts

Ready for more?

© 2023 Oskar Dudycz
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing