Modelling and Documenting the Software Architecture
This article discusses the 4+1 view model and C4 model for modelling and communicating software architecture to stakeholders. It delves into different perspectives of the system including logical, pro...
The Smartest Code Architecture
In this article, David Rodenas explores the concepts of intelligence and architecture, and how they relate to software engineering. Drawing on his experience as a passionate software engineer and stor...
Using LocalStack with Microsoft Tye
LocalStack is a platform that facilitates the development of cloud-based applications by hosting locally a series of replicas of AWS services. In this post, we’ll see how to configure Tye to use Local...
ZeroQL - C# GraphQL client adds fragments support
ZeroQL is a C# native graphql client with a Linq-like interface with no compromises on the performance. In this article, the support for fragments is presented. Fragments allow defining a set of field...
Getting Started with Pandas
This tutorial provides a clear introduction to Pandas, a Python library to manipulate tabular data. You will discover its many possibilities and get a concise overview. It covers the basics of working...
Removing Switch-Case Statement and using Pattern Matching in C#
In this article, we discuss the problems with switch-case statements, including the difficulty in maintaining and modifying them, as well as the issue of mixing data and behavior. We then explore how ...
Designing Bomberman with an Entity System: Which Components?
This article discusses the design of Bomberman game using an entity system. It provides rules of thumb for designing components in a game based on an entity system. The author lists behaviors and data...
Kafka Retries and Maintaining the Order of Retry Events
In a microservices system, retries are crucial especially when a service goes down. But with an event-driven architecture and Kafka consuming events, retry strategies become more complex. This article...
Open Data Structures (in pseudocode) Edition 0.1G by Pat Morin
This book offers an introduction to data structures and their use in algorithm design. The focus is on the mathematical analysis of these structures, including their time and space complexity. Beginni...
PlantUML layout and styles tutorial
With PlantUML, you can create diagrams as plain text code. This tutorial explains how to customize the layout and styles of your diagrams while using PlantUML. It covers topics such as flow and arrow ...
Real World PlantUML
This JSON structure contains information about different types of diagrams created using PlantUML. The summary includes details about the different types of diagrams such as Sequence, Use Case, Class,...
ZeroQL - C# friendly GraphQL
ZeroQL is a C# friendly GraphQL client that provides a Linq-like interface for building queries. It offers type-safe API for simplifying integration between app parts. With an excellent performance eq...
The Difference Between TypeScript Unions, Enums, and Objects
In this guide, we explore the similarities and differences between TypeScript unions, enums, and objects. We discuss when to use each feature, and why unions and objects should be the backbone of most...
A Deep Dive Into Idempotence: What it is and how to use it
In this article, Yuchen Z. explains the concept of idempotence - what it is, how it works, and how to use it properly in your software development projects. Starting with a simple use case in a single...
Onion Architecture: A Flexible Approach to Developing Software
Domain-driven design is an approach to developing software thats connected to an evolving model of core business concepts. Onion architecture is built on this concept, with layers connected through in...
Automatic C4 diagrams for a distributed microservice ecosystem with GitHub Actions
Documenting components and their relations in a distributed microservice ecosystem is crucial to maintain clarity and avoid confusion. The C4 Model provides a compact and clear way to describe the sys...
Principles & Best practices of REST API Design
This best-practices article provides guidelines for developers to create reliable and consistent RESTful Web services across multiple service suites, positioning them for rapid public adoption by inte...
Top 10 Architecture Characteristics / Non-Functional Requirements with Cheatsheet
In this article, Love Sharma explores the top 10 characteristics of software architecture, also known as non-functional requirements, and provides a cheatsheet for implementing them. Just like with bu...
Architecture as Code with C4 and Plantuml
Bertrand Florat discusses the use of C4 model to represent the architecture of a large microservices-based project. The article covers different architecture views, including the application view, sof...
How to Document Software Architecture?
Every application has an architecture that constantly evolves. Its important to not only pass everything related to it to the team but also keep the information up to date. This article focuses on how...