Blogs

SOLID Design Principles

We want to design and write software that is well engineered, decoupled, reusable, and responsive to changing requirements. Obviously, we want to avoide writing bad code. But what exactly is bad code ? Following are some of the properties of bad code : Rigid: Is the code rigid? Does it have a …

Understanding Raft …

In Search of an Understandable Consensus Algorithm Raft is a consensus algorithm, meaning that it is designed to facilitate a set of computers agreeing on a state of the world (more on exactly how the state of the world is represented later), even when communications between the computers in the set …

GFS Paper Summary

The Google File System (2003) - Paper Summary Why are we reading the GFS paper? Incorporates many of the recurring themes in Distributed Systems: parallel performance, fault tolerance, replication, consistency. Successful real-world design. BigTable, MapReduce built on top of GFS. Well-written …