41554 blogs · [ { "id": "01a0872e-9ce8-70fc-8967-1b8b4383dc54", "title": "Slop Debt", "url": "https://arpitbhayani.me/blogs/slop-debt", "published_at": "2026-08-21T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b43d3da55", "title": "What AI First Engineering Orgs Look Like", "url": "https://arpitbhayani.me/blogs/ai-first-org", "published_at": "2026-08-06T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4463a256", "title": "Three Claude Skills I Think Every Org Should Have", "url": "https://arpitbhayani.me/blogs/three-skills", "published_at": "2026-07-31T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b44fbab8d", "title": "G-Eval, Explained", "url": "https://arpitbhayani.me/blogs/g-eval", "published_at": "2026-07-14T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b45704320", "title": "AI Workflows Need Topological Sort", "url": "https://arpitbhayani.me/blogs/ai-topological-sort", "published_at": "2026-06-01T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b45c8921b", "title": "Embedding Models Make Or Break Your Ai App", "url": "https://arpitbhayani.me/blogs/embedding-models-make-or-break-your-ai-app", "published_at": "2026-05-28T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4628be4d", "title": "Temporal Primer - Building Long-Running Systems", "url": "https://arpitbhayani.me/blogs/temporal-primer", "published_at": "2026-05-20T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b464287b0", "title": "What Matters in Production RAG", "url": "https://arpitbhayani.me/blogs/rag-production", "published_at": "2026-05-15T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4666cafe", "title": "Structure of Every LLM Chat", "url": "https://arpitbhayani.me/blogs/structure-of-llm-chat", "published_at": "2026-05-13T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4690d3bb", "title": "How LLMs Really Work", "url": "https://arpitbhayani.me/blogs/how-llms-work", "published_at": "2026-05-12T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b473fe5f0", "title": "Your Monolith Is Already A Distributed System", "url": "https://arpitbhayani.me/blogs/monolith-is-distributed-system", "published_at": "2026-04-28T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b474eb92a", "title": "The Curse of Dimensionality", "url": "https://arpitbhayani.me/blogs/curse-of-dimensionality", "published_at": "2026-04-23T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b482b8f49", "title": "Databases Were Not Designed For This", "url": "https://arpitbhayani.me/blogs/defensive-databases", "published_at": "2026-03-08T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b48f9f887", "title": "BM25", "url": "https://arpitbhayani.me/blogs/bm25", "published_at": "2026-03-04T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b496a09d0", "title": "JOIN Algorithms", "url": "https://arpitbhayani.me/blogs/join-algorithms", "published_at": "2026-02-24T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4a4f5251", "title": "Why Half Your Skills Expire Every Few Years", "url": "https://arpitbhayani.me/blogs/half-life", "published_at": "2026-02-08T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4b14b1c5", "title": "Multi-Paxos - Consensus in Distributed Databases", "url": "https://arpitbhayani.me/blogs/multi-paxos", "published_at": "2026-01-27T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4c0e0071", "title": "MySQL Replication Internals", "url": "https://arpitbhayani.me/blogs/mysql-replication-internals", "published_at": "2026-01-16T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4c8d8892", "title": "Bloom Filters", "url": "https://arpitbhayani.me/blogs/bloom-filters", "published_at": "2025-12-29T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4d602332", "title": "Clock Synchronization Is a Nightmare", "url": "https://arpitbhayani.me/blogs/clock-sync-nightmare", "published_at": "2025-12-23T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4dafe095", "title": "When You Increase Kafka Partitions", "url": "https://arpitbhayani.me/blogs/kafka-partitions", "published_at": "2025-12-13T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4e7fb959", "title": "Product Quantization", "url": "https://arpitbhayani.me/blogs/product-quantization", "published_at": "2025-12-07T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4f355871", "title": "The Q, K, V Matrices", "url": "https://arpitbhayani.me/blogs/qkv-matrices", "published_at": "2025-11-26T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4f53b838", "title": "How LLM Inference Works", "url": "https://arpitbhayani.me/blogs/how-llm-inference-works", "published_at": "2025-11-22T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4f6741c4", "title": "What are Blocking Queues and Why We Need Them", "url": "https://arpitbhayani.me/blogs/blocking-queues", "published_at": "2025-11-14T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b4fe38cdc", "title": "Heartbeats in Distributed Systems", "url": "https://arpitbhayani.me/blogs/heartbeats-in-distributed-systems", "published_at": "2025-11-12T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b5028c848", "title": "How Writes Work in Apache Cassandra", "url": "https://arpitbhayani.me/blogs/cassandra-writes", "published_at": "2025-10-20T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b5114f2ee", "title": "Redis Replication Internals", "url": "https://arpitbhayani.me/blogs/redis-replication", "published_at": "2025-10-17T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b52016005", "title": "How Does a CDN Handle Content Replication", "url": "https://arpitbhayani.me/blogs/cdn-content-replication", "published_at": "2025-10-02T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b52eef8ea", "title": "Why gRPC Uses HTTP2", "url": "https://arpitbhayani.me/blogs/grpc-http2", "published_at": "2025-09-24T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b5398003b", "title": "Why Distributed Systems Need Consensus Algorithms Like Raft", "url": "https://arpitbhayani.me/blogs/why-consensus", "published_at": "2025-09-06T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b543a7133", "title": "Why Do Databases Deadlock and How Do They Resolve It", "url": "https://arpitbhayani.me/blogs/database-deadlocks", "published_at": "2025-09-05T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b55013010", "title": "Why and How Cache Locality Can Make Your Code Faster", "url": "https://arpitbhayani.me/blogs/cpu-cache-locality", "published_at": "2025-09-04T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b553481d2", "title": "Why Eventual Consistency is Preferred in Distributed Systems", "url": "https://arpitbhayani.me/blogs/eventual-consistency", "published_at": "2025-09-03T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b55edf210", "title": "Why does DNS use both UDP and TCP", "url": "https://arpitbhayani.me/blogs/dns-udp-tcp", "published_at": "2025-09-02T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b55f64305", "title": "How to Write Effective OKRs", "url": "https://arpitbhayani.me/blogs/okr", "published_at": "2025-02-07T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b56cc3e17", "title": "Theta sketches: set algebra over massive streams", "url": "https://arpitbhayani.me/blogs/theta-sketches", "published_at": "2025-01-01T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b57300bb8", "title": "When to Change Jobs - The 3P Framework", "url": "https://arpitbhayani.me/blogs/3p", "published_at": "2024-10-19T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b5824e97e", "title": "Paper Notes - On-demand Container Loading in AWS Lambda", "url": "https://arpitbhayani.me/blogs/on-demand-container-loading-in-aws-lambda", "published_at": "2024-09-15T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b58ceb418", "title": "Paper Notes - SQL Has Problems. We Can Fix Them Pipe Syntax In SQL", "url": "https://arpitbhayani.me/blogs/sql-has-problems-we-can-fix-them-pipe-syntax-in-sql", "published_at": "2024-09-03T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b599a1e72", "title": "Paper Notes - NanoLog - A Nanosecond Scale Logging System", "url": "https://arpitbhayani.me/blogs/nanolog-a-nanosecond-scale-logging-system", "published_at": "2024-08-28T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b59c34857", "title": "Paper Notes - WTF - The Who to Follow Service at Twitter", "url": "https://arpitbhayani.me/blogs/wtf-the-who-to-follow-service-at-twitter", "published_at": "2024-08-21T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b5a475c3f", "title": "Turn System Design Interviews into Discussions", "url": "https://arpitbhayani.me/blogs/structure-your-design-interviews", "published_at": "2024-05-06T00:00:00+00:00" }, { "id": "01a0872e-9ce8-70fc-8967-1b8b5b2f0ed0", "title": "How to Remain Unblocked", "url": "https://arpitbhayani.me/blogs/keep-yourself-unblocked", "published_at": "2023-11-16T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1b006400", "title": "Solving the Knapsack Problem with Evolutionary Algorithms", "url": "https://arpitbhayani.me/blogs/genetic-knapsack", "published_at": "2022-03-07T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1b3d61ed", "title": "Generating Pseudorandom Numbers with LFSR", "url": "https://arpitbhayani.me/blogs/pseudorandom-number-generation-lfsr", "published_at": "2022-02-21T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1b69b42a", "title": "Local vs Global Indexes in Partitioned Databases", "url": "https://arpitbhayani.me/blogs/how-indexes-work-on-partitioned-and-sharded-data", "published_at": "2022-02-07T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1bf5efca", "title": "Partitioning Data - Range, Hash, and When to Use Them", "url": "https://arpitbhayani.me/blogs/some-data-partitioning-strategies-for-distributed-data-stores", "published_at": "2022-01-31T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1c77c3b4", "title": "Partitioning Strategies for Distributed Databases", "url": "https://arpitbhayani.me/blogs/data-partitioning", "published_at": "2022-01-24T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1d5e3e47", "title": "Leaderless Replication", "url": "https://arpitbhayani.me/blogs/leaderless-replication", "published_at": "2022-01-16T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1da7f4ba", "title": "Multi-Master Conflicts - How to Handle Them", "url": "https://arpitbhayani.me/blogs/conflict-resolution", "published_at": "2022-01-03T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1e9b0bdd", "title": "Multi-Master Replication - Why Conflicts Happen", "url": "https://arpitbhayani.me/blogs/conflict-detection", "published_at": "2021-11-28T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1eae4ed2", "title": "Multi-Master Replication - Scaling Writes Across Geographies", "url": "https://arpitbhayani.me/blogs/multi-master-replication", "published_at": "2021-11-03T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1f70eadf", "title": "Monotonic Reads - How Asynchronous Replication Creates Wormholes", "url": "https://arpitbhayani.me/blogs/monotonic-reads", "published_at": "2021-10-03T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1fda6e16", "title": "Read-Your-Writes Consistency", "url": "https://arpitbhayani.me/blogs/read-your-write-consistency", "published_at": "2021-09-22T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa1fedc4c6", "title": "What Happens When a Master or Replica Fails", "url": "https://arpitbhayani.me/blogs/handling-outages-master-replica", "published_at": "2021-09-07T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2088cf53", "title": "Replication Formats - Statement vs Row-based", "url": "https://arpitbhayani.me/blogs/replication-formats", "published_at": "2021-08-15T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa21688a19", "title": "Replication Strategies - Synchronous, Asynchronous, and Semi-Synchronous", "url": "https://arpitbhayani.me/blogs/replication-strategies", "published_at": "2021-08-10T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa21e78674", "title": "Master-Replica Replication", "url": "https://arpitbhayani.me/blogs/master-replica-replication", "published_at": "2021-08-07T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa228bbeeb", "title": "Decoding Durability - The D in ACID", "url": "https://arpitbhayani.me/blogs/durability", "published_at": "2021-07-19T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa232a6c22", "title": "Decoding Isolation - The I in ACID", "url": "https://arpitbhayani.me/blogs/isolation", "published_at": "2021-07-07T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa23ff05b6", "title": "Decoding Atomicity - The A in ACID", "url": "https://arpitbhayani.me/blogs/atomicity", "published_at": "2021-07-02T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa240ea129", "title": "Decoding Consistency - The C in ACID", "url": "https://arpitbhayani.me/blogs/consistency", "published_at": "2021-07-02T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa249f1cbe", "title": "Architectural Patterns for Distributed Systems", "url": "https://arpitbhayani.me/blogs/architectures-in-distributed-systems", "published_at": "2021-06-22T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa255688f1", "title": "Fallacies of Distributed Computing Every Engineer Should Know", "url": "https://arpitbhayani.me/blogs/mistaken-beliefs-of-distributed-systems", "published_at": "2021-06-17T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa25fe3fd9", "title": "Fork Bomb", "url": "https://arpitbhayani.me/blogs/fork-bomb", "published_at": "2021-06-09T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa26bb9ba8", "title": "Python Internals - Exploring Chained Comparison Operators", "url": "https://arpitbhayani.me/blogs/chained-operators-python", "published_at": "2021-04-28T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2723d795", "title": "Modeling Udemy's Categories in a Relational Database", "url": "https://arpitbhayani.me/blogs/taxonomy-on-sql", "published_at": "2021-04-19T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa272c54db", "title": "I Changed the Rules for the Python's Walrus Operator", "url": "https://arpitbhayani.me/blogs/the-weird-walrus", "published_at": "2021-04-01T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa273a3749", "title": "Fully Persistent Arrays", "url": "https://arpitbhayani.me/blogs/fully-persistent-arrays", "published_at": "2021-02-15T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa282c2250", "title": "How Persistent Data Structures Work", "url": "https://arpitbhayani.me/blogs/persistent-data-structures-introduction", "published_at": "2021-02-07T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa288bf95c", "title": "Constant Folding in Python", "url": "https://arpitbhayani.me/blogs/constant-folding-python", "published_at": "2021-01-10T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa28ecdfd4", "title": "How Python Uses String Interning to Keep Runtime Efficient", "url": "https://arpitbhayani.me/blogs/string-interning-python", "published_at": "2020-12-20T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2903829a", "title": "Visualizing Recursion in Python with Just a Decorator", "url": "https://arpitbhayani.me/blogs/recursion-visualizer-python", "published_at": "2020-12-13T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2935ee66", "title": "Count Distinct With Minimal Memory - Flajolet Martin Algorithm", "url": "https://arpitbhayani.me/blogs/flajolet-martin", "published_at": "2020-12-06T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa29567a2a", "title": "The 2Q Algorithm - Addressing LRU's Sub-Optimality", "url": "https://arpitbhayani.me/blogs/2q-cache", "published_at": "2020-11-29T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa29ad2dd8", "title": "Israeli Queues", "url": "https://arpitbhayani.me/blogs/israeli-queues", "published_at": "2020-11-22T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2a2674ba", "title": "1D Terrain Generation", "url": "https://arpitbhayani.me/blogs/1d-terrain", "published_at": "2020-11-16T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2a32f883", "title": "MinHash - Fast Jaccard Similarity at Scale", "url": "https://arpitbhayani.me/blogs/jaccard-minhash", "published_at": "2020-11-08T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2af80c9a", "title": "Time Series Smoothing for Anomaly Detection", "url": "https://arpitbhayani.me/blogs/ts-smoothing", "published_at": "2020-11-01T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2b6530b5", "title": "Implementing LFU in O(1)", "url": "https://arpitbhayani.me/blogs/lfu", "published_at": "2020-08-23T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2bff6829", "title": "Space-Efficient Counting - Exploring Morris' Algorithm", "url": "https://arpitbhayani.me/blogs/morris-counter", "published_at": "2020-08-02T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2c4c6611", "title": "Why Slowsort is Hilariously Inefficient", "url": "https://arpitbhayani.me/blogs/slowsort", "published_at": "2020-07-26T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2cd645c0", "title": "Bitcask - A Log-Structured fast KV store", "url": "https://arpitbhayani.me/blogs/bitcask", "published_at": "2020-07-19T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2dd31518", "title": "Phi Accrual Failure Detection Algorithm", "url": "https://arpitbhayani.me/blogs/phi-accrual", "published_at": "2020-07-12T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2e66099d", "title": "Breaking Repeating-Key XOR Encryption", "url": "https://arpitbhayani.me/blogs/decipher-repeated-key-xor", "published_at": "2020-07-05T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2eb3be98", "title": "ETAOIN SHRDLU - Using Letter Frequency to Decipher the Ciphered", "url": "https://arpitbhayani.me/blogs/decipher-single-xor", "published_at": "2020-06-21T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2f937b84", "title": "Making Integers Iterable in Python", "url": "https://arpitbhayani.me/blogs/python-iterable-integers", "published_at": "2020-06-14T00:00:00+00:00" }, { "id": "01a0872e-9ce9-71a9-9b05-54aa2fd15796", "title": "Structure Composition and Emulating Inheritance in C", "url": "https://arpitbhayani.me/blogs/inheritance-c", "published_at": "2020-06-07T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf6e94a06", "title": "The RUM Conjecture - Storage System Trade-offs", "url": "https://arpitbhayani.me/blogs/rum", "published_at": "2020-05-31T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf70eb9c2", "title": "Consistent Hashing - What It Is and How to Implement It", "url": "https://arpitbhayani.me/blogs/consistent-hashing", "published_at": "2020-05-24T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf7e22ed7", "title": "How Python Handles Integers Under the Hood", "url": "https://arpitbhayani.me/blogs/python-caches-integers", "published_at": "2020-05-17T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf7eb6e69", "title": "Fractional Cascading - Speeding Up Multiple Binary Searches", "url": "https://arpitbhayani.me/blogs/fractional-cascading", "published_at": "2020-05-10T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf840e69a", "title": "Copy-On-Write - When to Use It, When to Avoid It", "url": "https://arpitbhayani.me/blogs/copy-on-write", "published_at": "2020-05-03T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf88a11bc", "title": "How MySQL Avoids Performance Hits from Table Scans", "url": "https://arpitbhayani.me/blogs/midpoint-insertion-caching-strategy", "published_at": "2020-04-26T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf8b46571", "title": "Modeling Finite State Machines with Python Coroutines", "url": "https://arpitbhayani.me/blogs/fsm-python", "published_at": "2020-04-19T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdf92f10f4", "title": "Building Better Ratings with Bayesian Averages", "url": "https://arpitbhayani.me/blogs/bayesian-average", "published_at": "2020-04-12T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdfa0f841d", "title": "Sliding Window Rate Limiting - Design and Implementation", "url": "https://arpitbhayani.me/blogs/sliding-window-ratelimiter", "published_at": "2020-04-05T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdfaeeebe9", "title": "The Intuition Behind IDF", "url": "https://arpitbhayani.me/blogs/idf", "published_at": "2020-03-10T00:00:00+00:00" }, { "id": "01a0872e-9cea-72f0-b955-adcdfb16b328", "title": "Habits that Make a Great Programmer", "url": "https://arpitbhayani.me/blogs/better-programmer", "published_at": "2020-02-28T00:00:00+00:00" } ] posts Claim your blog
Back to arpitbhayani.me
Blog · corpus.blog/blogs/arpitbhayani.me/posts

arpitbhayani.me

arpitbhayani.me

2026

2025

2024

2023

2022

2021

2020