Arpit’s Newsletter
Subscribe
Sign in
Home
Career Growth
System Design
Deep Dives
Papers and Musings
Outage Dissections
About
Papers and Musings
Latest
Top
Discussions
Pseudorandom Number Generation using LFSR
A few essays back, we saw how pseudo-random numbers are generated using Cellular Automaton - Rule 30. This essay takes a detailed look into random…
Feb 21, 2022
•
Arpit Bhayani
5
Fork Bomb
In this essay, we explore a simple yet effective DoS attack called Fork Bomb, also called Rabbit Virus.
Jun 8, 2021
•
Arpit Bhayani
3
A simple recursion visualizer for python
One programming paradigm, that is hardest to visualize, as almost every single programmer out there will agree on, is Recursion. We usually use pen and…
Dec 13, 2020
•
Arpit Bhayani
3
Approximate Count-Distinct using Flajolet Martin Algorithm
Measuring distinct elements from a stream of values is one of the most common utilities that finds its application across the spectrum. Most of these…
Dec 6, 2020
•
Arpit Bhayani
3
2Q Cache Management Algorithm
LRU is one of the most widely used cache eviction algorithms suffers from a bunch of limitations especially when used for managing caches in disk-backed…
Nov 29, 2020
•
Arpit Bhayani
3
Israeli Queues
A queue is a data structure that holds up elements for a brief period of time until a peripheral processing system is ready to process them.
Nov 22, 2020
•
Arpit Bhayani
7
1D Procedural Terrain Generation
Terrains are at the heart of every Computer Game - be it Counter-Strike, Age of Empires, or even Minecraft.
Nov 16, 2020
•
Arpit Bhayani
3
Set Similarity using Jaccard Similarity Coefficient and MinHash
Set similarity measure finds its application spanning the Computer Science spectrum; some applications being - user segmentation, finding near-duplicate…
Nov 8, 2020
•
Arpit Bhayani
2
Time Series Smoothing - Making aberrations stand out
Time series is a collection of numerical data points (often measurements), gathered in discrete time intervals, and indexed in order of the time.
Nov 1, 2020
•
Arpit Bhayani
4
4
Constant Time LFU
A common strategy to make any system super-performant is Caching. Almost all software products, operating at scale, have multiple layers of caches in…
Aug 23, 2020
•
Arpit Bhayani
3
Morris's Algorithm for Approximate Counting
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…
Aug 2, 2020
•
Arpit Bhayani
3
1
Slowsort - a pessimal sorting algorithm
Slowsort is a sorting algorithm that is designed to be deterministically sub-optimal. The algorithm was published in 1986 by Andrei Broder and Jorge…
Jul 26, 2020
•
Arpit Bhayani
3
This site requires JavaScript to run correctly. Please
turn on JavaScript
or unblock scripts