System Design

System Design is the process of planning and structuring a software application to ensure it meets functional requirements, scalability, and performance needs. It involves defining system architecture, data flow, components, and interactions between services while considering factors like security, reliability, and maintainability. A well-designed system balances efficiency and flexibility, making it easier to scale and adapt over time.

Why your database needs an ACID trip to stay in control?

Ā·
November 12, 2024
Why your database needs an ACID trip to stay in control?

Our trip starts with a small historical background of the ACID properties. Developed in the 1970s by computer scientist Jim Gray, emerged from the need for robust transaction management as databases evolved to handle increasingly complex and critical data operations. At the time, databases were transitioning from simple file systems to sophisticated rel…

BASE of distributed systems

Ā·
December 13, 2024
BASE of distributed systems

Traditional ACID-compliant relational databases struggled to handle the demands of distributed environments. To address these challenges, CAP theorem postulated that distributed systems could only guarantee two of three properties: Consistency, Availability,

CRUD: The four essential moves every database loves

Ā·
Feb 2
CRUD: The four essential moves every database loves

When you interact with any app - whether it’s browsing products, updating your profile, or deleting a post - you’re relying on the core operations known as CRUD: Create, Read, Update, and Delete. These four actions are the foundation of how apps manage and manipulate data, making them essential for software development. Let’s break down each operation a…

CAP Choices: Pick two and hope for the best

Jan 8
CAP Choices: Pick two and hope for the best

The ā€žunsolvable Rubik’s cube of distributed systemsā€ emerged at a time when the tech world was wrestling with the complexities of scaling systems across unreliable networks. It was the dawn of the 21st century, and the internet’s rapid growth demanded architectures that could handle global traffic without skipping a beat. In this landscape of ambition a…