Approximate Counting algorithms are techniques that allow us to count a large number of events using a very small amount of memory. It was invented by …
Arpit Bhayani
Slowsort is a sorting algorithm that is designed to be deterministically sub-optimal. The algorithm was published in 1986 by Andrei Broder and Jorge St…
Arpit Bhayani
Bitcask is one of the most efficient embedded Key-Value (KV) Databases designed to handle production-grade traffic. The paper that introduced Bitcask t…
Arpit Bhayani
One of the most important virtues of any distributed system is its ability to detect failures in any of its subsystems before things go havoc. Early de…
Arpit Bhayani
Encryption is a process of encoding messages such that it can only be read and understood by the intended parties. The process of extracting the origin…
Arpit Bhayani
Encryption is a process of encoding messages such that it can only be read and understood by the intended parties. The process of extracting the origin…
Arpit Bhayani
Iterables in Python are objects and containers that could be stepped through one item at a time, usually using a for ... in loop. Not all objects can b…
Arpit Bhayani
C language does not support inheritance however it does support Structure Compositions which can be tweaked to serve use-cases requiring parent-child r…
Arpit Bhayani
The RUM Conjecture states that we cannot design an access method for a storage system that is optimal in all the following three aspects - Reads, Updat…
Arpit Bhayani
Consistent Hashing is one of the most sought after techniques when it comes to designing really scalable distributed systems. In this article, we dive …
Arpit Bhayani
An integer in Python is not a traditional 2, 4, or 8-byte implementation but rather it is implemented as an array of digits in base 2^30 which enables …
Arpit Bhayani
Binary Search is an algorithm that finds the position of a target value in a sorted list. The algorithm exploits the fact that the list is sorted, and …
Arpit Bhayani