Shared Libraries - Design and Best Practices
Microservices architecture has brought many benefits to software development, such as faster scaling and development, but also introduced difficulties like communication and code duplication. Shared l...
The Future of Rendering in React
The popularity of React as a UI building library has been rapidly increasing over the past few years, and in this article, we’ll be exploring Reacts current rendering patterns, their problems, and how...
Expert Talk: Cloud Chaos & How Contract Tests Can Help • Holly Cummins & Kevlin Henney • GOTO 2022

Holly Cummins, senior principal software engineer on the Quarkus team at Red Hat, discusses the challenges that come with cloud adoption in her upcoming GOTO Amsterdam 2022 talk titled Cloud Chaos and...
Locknote: Programming’s Greatest Mistakes - Mark Rendle

The speaker addresses the audience of the NDC Oslo conference, thanking the crew, caterers, technical staff, sponsors, and volunteers for their hard work. He then proceeds to talk about the greatest m...
Modelling vs Diagramming Software Architecture
When it comes to developing software, communication is key. Tools such as diagrams and models aid in understanding and sharing ideas about software architecture. While standalone diagrams are great fo...
The Visual Collaboration Platform for Every Team | Miro
Miro is the ultimate tool for remote collaboration. With Miro, you can easily create and collaborate on visual content with your team, no matter where you are. Miro offers a range of features, includi...
arc42 - All-in-one template for software architecture documentation
arc42 is a proven and pragmatic approach to construct, communicate and document software architecture. It provides a flexible but systematic template for documentation and communication that supports ...
Making React Fast and Reactive by Default: Solving the Fundamental Flaw
React has many benefits, but its default behavior of re-rendering everything makes it slow and complex. To solve this, an approach is proposed that makes React faster and easier to use. The solution i...
Software Engineering Best Practices: Documentation, Test Data Creation, and Database Migrations
In this post, Simon Willison discusses some recommended software engineering practices for development teams. He emphasizes the importance of internal documentation, and how storing documentation in t...
Java 19 Is A Game Changer
After LTS 17, Java 19 offers concise and easy to use solutions for problems that other programming languages struggle with. Its approach to concurrency, through a new formation called structured task ...
The Lost Art of Architecting — Part 1
In this article, Nicholas Frush shares his thoughts on the lost art of architecting software systems. He argues that the rise of the cloud has not eliminated the need for paying attention to how you d...
The One Person Multiple Personalities Problem with Microservices Architecture
In this article, Itiel Maayan discusses the challenges of managing a person who appears and is managed as multiple entities in a system, worsened by the move to microservices architecture. Maayan prop...
Event Notification vs. Event-Carried State Transfer - Key Architectural Decisions to Make in Distributed Systems
In a world where distributed systems are becoming the norm and monoliths the exception, one of the important architectural decisions to make is around the mechanics of inter-service communication. Thi...
Improving Next.js app performance with BlurHash
Next.js offers a flexible React framework to build fast web applications, both server-side rendering and static web apps. However, improving app performance is essential to provide a better user exper...
Microsoft Teams’ Infrastructure and Azure Communication Services’ Journey to .NET 6
Microsoft Teams’ infrastructure team, or Intelligent Conversation and Communications Cloud (IC3), aspires to be the industry leading platform with reliable and high-quality audio and video calling, me...
Unlimited Access & Directly Support Writers with Medium Membership
Become a Medium member to enjoy unlimited access to every story in our entire library across all your devices without any paywalls, story limits or ads. Moreover, a portion of your membership will dir...
Problem Solving Strategies for Microservice Architecture Part I
In this article, Metin Barkın Narin discusses the distributed transaction management problem in microservices architecture and suggests two approaches for addressing the problem: two-phase commit (2PC...
Behind the scenes: McDonald’s event-driven architecture
Discover McDonald’s journey in developing a unified platform enabling real-time, event-driven architectures. This two-part post walks you through the implementation journey, explaining how it works an...
System Design Mind Map for Building Distributed Systems
This article discusses how system design is foundational in building software architecture for distributed systems, and covers essential knowledge areas necessary for preparing for a system design int...
Design Principles For Microservices Architecture
Microservices architecture is a service-oriented architecture that structures an application as a collection of small autonomous services designed around a business domain. This blog covers the fundam...