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
Share this post
Arpit’s Newsletter
Pseudorandom Number Generation using LFSR
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Fork Bomb
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
A simple recursion visualizer for python
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Approximate Count-Distinct using Flajolet Martin Algorithm
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
2Q Cache Management Algorithm
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Israeli Queues
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
1D Procedural Terrain Generation
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Set Similarity using Jaccard Similarity Coefficient and MinHash
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Time Series Smoothing - Making aberrations stand out
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Constant Time LFU
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Morris's Algorithm for Approximate Counting
Copy link
Facebook
Email
Notes
More
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
Share this post
Arpit’s Newsletter
Slowsort - a pessimal sorting algorithm
Copy link
Facebook
Email
Notes
More
Share
Copy link
Facebook
Email
Notes
More
This site requires JavaScript to run correctly. Please
turn on JavaScript
or unblock scripts