<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Arpit Bhayani</title><description>Blogs on Database Internals, Engineering Explorations, and Career Growth by Arpit Bhayani</description><link>https://arpitbhayani.me</link><language>en-us</language><item><title>BM25</title><link>https://arpitbhayani.me/blogs/bm25</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/bm25</guid><description>There is a particular kind of respect reserved in engineering for the algorithm that outlives its era. BM25 is one of them. BM25 was born out of information retrieval research in the 1970s and 1980s, polished over decades, and eventually adopted as the default ranking function in Elasticsearch, Solr, and Lucene.</description><pubDate>Wed, 04 Mar 2026 00:00:00 GMT</pubDate></item><item><title>JOIN Algorithms</title><link>https://arpitbhayani.me/blogs/join-algorithms</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/join-algorithms</guid><description>When you write a SQL query with a JOIN clause, you probably do not think much about what happens next. You just expect the database to return the right rows. But this simple keyword forces your database to make one of the most consequential decisions a query planner makes: which join algorithm should it use?</description><pubDate>Tue, 24 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Venting at Work Comes at a Reputation Cost</title><link>https://arpitbhayani.me/blogs/venting-at-work</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/venting-at-work</guid><description>We all vent at work. That is normal. Tough sprints, messy decisions, frustrating meetings - it happens, and letting off steam is okay and, in fact, healthy.</description><pubDate>Mon, 09 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Why Half Your Skills Expire Every Few Years</title><link>https://arpitbhayani.me/blogs/half-life</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/half-life</guid><description>That is the half-life of knowledge in computer science and software engineering - the time it takes for half of what you know to be replaced by better tools, approaches, or understanding. For an engineering degree earned in 1930, the half-life was roughly 35 years. By 1960, it had dropped to about a decade.</description><pubDate>Sun, 08 Feb 2026 00:00:00 GMT</pubDate></item><item><title>Multi-Paxos - Consensus in Distributed Databases</title><link>https://arpitbhayani.me/blogs/multi-paxos</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/multi-paxos</guid><description>Distributed databases face an interesting challenge: how do you ensure that multiple servers scattered across different machines, data centers, or even continents agree on the order and outcome of database transactions? This is where consensus algorithms come into play.</description><pubDate>Tue, 27 Jan 2026 00:00:00 GMT</pubDate></item><item><title>MySQL Replication Internals</title><link>https://arpitbhayani.me/blogs/mysql-replication-internals</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/mysql-replication-internals</guid><description>MySQL replication enables data synchronization across databases, powering read scaling and even some complex distributed architectures. At the core lies the binary log (binlog), which is the authoritative record of all data modifications on a source server.</description><pubDate>Fri, 16 Jan 2026 00:00:00 GMT</pubDate></item><item><title>Bloom Filters</title><link>https://arpitbhayani.me/blogs/bloom-filters</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/bloom-filters</guid><description>A Bloom filter is a probabilistic data structure that answers a very specific question - have I seen this thing before? - while using almost no memory.</description><pubDate>Mon, 29 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Clock Synchronization Is a Nightmare</title><link>https://arpitbhayani.me/blogs/clock-sync-nightmare</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/clock-sync-nightmare</guid><description>Time seems simple. But we engineers lose sleep over something as basic as keeping clocks in sync. Here’s why…</description><pubDate>Tue, 23 Dec 2025 00:00:00 GMT</pubDate></item><item><title>When You Increase Kafka Partitions</title><link>https://arpitbhayani.me/blogs/kafka-partitions</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/kafka-partitions</guid><description>Partitions sit right in the middle of how Kafka works. They define ordering, parallelism, and how far it can scale. But what actually happens when you need more of them? How does Kafka grow that number, what happens to the data you already have, and which guarantees stay intact after the change?</description><pubDate>Sat, 13 Dec 2025 00:00:00 GMT</pubDate></item><item><title>Product Quantization</title><link>https://arpitbhayani.me/blogs/product-quantization</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/product-quantization</guid><description>Recommendation engines, image retrieval platforms, document matching services, and RAG pipelines all rely on finding the nearest neighbors to a given query vector in high-dimensional space. This is where vector similarity search comes in.</description><pubDate>Sun, 07 Dec 2025 00:00:00 GMT</pubDate></item><item><title>The Q, K, V Matrices</title><link>https://arpitbhayani.me/blogs/qkv-matrices</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/qkv-matrices</guid><description>At the core of the attention mechanism in LLMs are three matrices: Query, Key, and Value. These matrices are how transformers actually pay attention to different parts of the input. In this write-up, we will go through the construction of these matrices from the ground up.</description><pubDate>Wed, 26 Nov 2025 00:00:00 GMT</pubDate></item><item><title>The Day I Accidentally Deleted Production</title><link>https://arpitbhayani.me/blogs/deleted-production</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/deleted-production</guid><description>Back in 2015-16, I once accidentally deleted the &quot;entire production&quot; at Practo. Slight exaggeration, but here&apos;s what happened...</description><pubDate>Mon, 24 Nov 2025 00:00:00 GMT</pubDate></item><item><title>How LLM Inference Works</title><link>https://arpitbhayani.me/blogs/how-llm-inference-works</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/how-llm-inference-works</guid><description>When you enter a prompt into an LLM, the model converts your text into numbers, processes them, and returns a response one token at a time. In this article, we go through the journey of LLM inference and see how it works.</description><pubDate>Sat, 22 Nov 2025 00:00:00 GMT</pubDate></item><item><title>What are Blocking Queues and Why We Need Them</title><link>https://arpitbhayani.me/blogs/blocking-queues</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/blocking-queues</guid><description>Concurrent programming is one of the most interesting and challenging aspects of software engineering. When multiple goroutines need to share data, coordinating access becomes critical.</description><pubDate>Fri, 14 Nov 2025 00:00:00 GMT</pubDate></item><item><title>Heartbeats in Distributed Systems</title><link>https://arpitbhayani.me/blogs/heartbeats-in-distributed-systems</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/heartbeats-in-distributed-systems</guid><description>In distributed systems, one of the fundamental challenges is knowing whether a node or service is alive and functioning properly. Unlike monolithic applications, where everything runs in a single process, distributed systems span multiple machines, networks, and data centers. This becomes even glaring when the nodes are geographically separated. This is where heartbeat mechanisms come into play.</description><pubDate>Wed, 12 Nov 2025 00:00:00 GMT</pubDate></item><item><title>How Writes Work in Apache Cassandra</title><link>https://arpitbhayani.me/blogs/cassandra-writes</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/cassandra-writes</guid><description>Apache Cassandra is a distributed database designed for high availability and horizontal scalability. This write-up explores the complete write path in Cassandra, from the moment a client sends a write request to how data gets replicated across nodes in the cluster.</description><pubDate>Mon, 20 Oct 2025 00:00:00 GMT</pubDate></item><item><title>Redis Replication Internals</title><link>https://arpitbhayani.me/blogs/redis-replication</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/redis-replication</guid><description>One of the most fundamental design decisions in Redis replication is that it&apos;s push-based rather than pull-based. This means the master (or primary) actively sends data to replicas, rather than replicas polling the master for updates.</description><pubDate>Fri, 17 Oct 2025 00:00:00 GMT</pubDate></item><item><title>How to Handle Arrogant Colleagues at Work</title><link>https://arpitbhayani.me/blogs/arrogant-people-at-work</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/arrogant-people-at-work</guid><description>We&apos;ve all dealt with that colleague who dominates the room, dismisses ideas, and acts like the smartest person there. That&apos;s arrogance, but it doesn&apos;t have to ruin your day...</description><pubDate>Sun, 05 Oct 2025 00:00:00 GMT</pubDate></item><item><title>How Does a CDN Handle Content Replication</title><link>https://arpitbhayani.me/blogs/cdn-content-replication</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/cdn-content-replication</guid><description>Content Delivery Networks (CDNs) content replication is far more nuanced than most engineers realize. Let&apos;s dive deep into how CDNs actually replicate, distribute, and manage content across their global networks.</description><pubDate>Thu, 02 Oct 2025 00:00:00 GMT</pubDate></item><item><title>You Can&apos;t Fix Everything on Day One</title><link>https://arpitbhayani.me/blogs/cant-fix-everything-day-one</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/cant-fix-everything-day-one</guid><description>You will notice processes, tools, or practices that feel inefficient, outdated, or even wrong. Maybe the team uses Jira instead of Linear, Java instead of Go, MongoDB instead of MySQL (for a use case), or Tabs instead of Spaces. It will be tempting to point it all out immediately. Resist that urge.</description><pubDate>Mon, 29 Sep 2025 00:00:00 GMT</pubDate></item><item><title>When Emotions Spill Over at Work</title><link>https://arpitbhayani.me/blogs/emotions-at-work</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/emotions-at-work</guid><description>Emotional outbursts are natural. I&apos;ve been there too, and I&apos;ve seen teams struggle because of it. We all have moments when the pressure gets too much, and emotions spill out.</description><pubDate>Thu, 25 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Why gRPC Uses HTTP2</title><link>https://arpitbhayani.me/blogs/grpc-http2</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/grpc-http2</guid><description>When Google introduced gRPC in 2015, one of the most significant architectural decisions was building it on top of HTTP/2 rather than the widely adopted HTTP/1.1. This was just about following some trend, but a deliberate choice that fundamentally shapes how gRPC performs and behaves.</description><pubDate>Wed, 24 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Meetings With No Agenda Are a Waste of Time</title><link>https://arpitbhayani.me/blogs/meetings-with-no-agenda-are-a-waste-of-time</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/meetings-with-no-agenda-are-a-waste-of-time</guid><description>We&apos;ve all been in meetings where no one really knows why they&apos;re there or what&apos;s about to happen. Always attach an agenda doc or at least a clear description when you schedule a meeting.</description><pubDate>Mon, 22 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Growth Isn&apos;t About Doing Everything</title><link>https://arpitbhayani.me/blogs/growth-is-not-about-doing-everything</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/growth-is-not-about-doing-everything</guid><description>I follow a simple flow of questions that helps me stay focused, improve consistently, and make incremental impact at workplace. I&apos;m never running around like a headless chicken. Here are the questions I ask myself, and answer honestly, like really true to its core</description><pubDate>Thu, 18 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Career Longevity Beats Constant Job Hopping</title><link>https://arpitbhayani.me/blogs/career-longevity-vs-job-hopping</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/career-longevity-vs-job-hopping</guid><description>Frequent job switches can be great for short-term financial gains. I believed that early in my career as well, but here’s what I’ve learnt over the years.</description><pubDate>Sat, 13 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Stay Relevant at Higher Salary Levels</title><link>https://arpitbhayani.me/blogs/stay-relevant-at-higher-salary-levels</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/stay-relevant-at-higher-salary-levels</guid><description>Yes, higher compensation means you won&apos;t have as many options to choose from, but fewer does not mean none. As long as you can demonstrate measurable impact, there will always be opportunities at every compensation level.</description><pubDate>Mon, 08 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Why Distributed Systems Need Consensus Algorithms Like Raft</title><link>https://arpitbhayani.me/blogs/why-consensus</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/why-consensus</guid><description>Everything we interact with today is a &quot;distributed system&quot;. From microservices to cloud-native applications, from databases to message queues. We are constantly building systems that span multiple machines. But there comes a fundamental challenge - how do we ensure that all independent nodes agree on shared state?</description><pubDate>Sat, 06 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Why Do Databases Deadlock and How Do They Resolve It</title><link>https://arpitbhayani.me/blogs/database-deadlocks</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/database-deadlocks</guid><description>Database deadlocks are one of the most challenging concurrency issues encountered in production systems. Understanding why they occur and how databases handle them is important in building robust applications.</description><pubDate>Fri, 05 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Why and How Cache Locality Can Make Your Code Faster</title><link>https://arpitbhayani.me/blogs/cpu-cache-locality</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/cpu-cache-locality</guid><description>While we write code thinking about algorithms and data structures, the CPU is quietly making millions of decisions about what data to keep close and what to evict from its precious cache memory.</description><pubDate>Thu, 04 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Why Eventual Consistency is Preferred in Distributed Systems</title><link>https://arpitbhayani.me/blogs/eventual-consistency</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/eventual-consistency</guid><description>While strong consistency might seem like the obvious choice - given it keeps the data perfectly synchronized at all times - the reality is that eventual consistency has become the preferred approach for most large-scale distributed systems. But why so...</description><pubDate>Wed, 03 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Why does DNS use both UDP and TCP</title><link>https://arpitbhayani.me/blogs/dns-udp-tcp</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/dns-udp-tcp</guid><description>DNS is one of the most critical pieces of internet infrastructure, quietly translating human-readable domain names into IP addresses billions of times per day.</description><pubDate>Tue, 02 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Should You Do a Master&apos;s My Honest Take</title><link>https://arpitbhayani.me/blogs/masters</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/masters</guid><description>If you&apos;re aiming for research, go for a top school and squeeze every drop of value. If you want to switch domains or countries but can&apos;t break in otherwise (via job switches), a master&apos;s can help bridge that gap. But, doing it just because it feels like the “next step” is usually not worth it.</description><pubDate>Mon, 01 Sep 2025 00:00:00 GMT</pubDate></item><item><title>Empathy Makes Great Engineers Unstoppable</title><link>https://arpitbhayani.me/blogs/empathy-makes-great-engineers-unstoppable</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/empathy-makes-great-engineers-unstoppable</guid><description>Remember, your job is to solve a problem, not just write code. You are not a code monkey who just hammers the keyboard. You are on a journey to build something that millions use, and for that, you have to</description><pubDate>Tue, 29 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Good Mentors Build People, Not Just Skills</title><link>https://arpitbhayani.me/blogs/good-mentors-build-people</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/good-mentors-build-people</guid><description>Mentoring someone is one of the most satisfying ways to share what you&apos;ve learned and see someone grow because of it, but doing it well is what makes the difference.</description><pubDate>Mon, 21 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Why You Should Always Have Back-Burner Projects</title><link>https://arpitbhayani.me/blogs/always-have-back-burner-projects</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/always-have-back-burner-projects</guid><description>If you have more than 5 years of experience, always keep a few small projects ready on the back burner. These are ideas you can pick up and run with at any time.</description><pubDate>Mon, 14 Jul 2025 00:00:00 GMT</pubDate></item><item><title>Before You Push Back, Know What You&apos;re Standing On</title><link>https://arpitbhayani.me/blogs/before-you-push-back-know-what-youre-standing-on</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/before-you-push-back-know-what-youre-standing-on</guid><description>When participating in conversations, meetings, or discussions, we&apos;re often very confident in what we&apos;re saying and the points we&apos;re putting forward. But pause for a moment and ask yourself - do you truly know, or are you assuming, vaguely remembering, or guessing with confidence?</description><pubDate>Mon, 30 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Be the One They Can Count On</title><link>https://arpitbhayani.me/blogs/be-the-one-they-can-count-on</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/be-the-one-they-can-count-on</guid><description>Dependable always beats the brilliant; if people can&apos;t count on you, nothing else matters.</description><pubDate>Mon, 23 Jun 2025 00:00:00 GMT</pubDate></item><item><title>How Much Are People Willing to Bet on You</title><link>https://arpitbhayani.me/blogs/how-much-people-bet-on-you</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/how-much-people-bet-on-you</guid><description>If you are known for owning outcomes and driving results, leadership will trust you with higher-stakes work because the most important projects go to those who get things done.</description><pubDate>Mon, 16 Jun 2025 00:00:00 GMT</pubDate></item><item><title>How to Get Leadership to Say Yes to Your Project</title><link>https://arpitbhayani.me/blogs/how-to-get-leadership-to-say-yes-to-your-project</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/how-to-get-leadership-to-say-yes-to-your-project</guid><description>A few years back, I proposed a &quot;brilliant&quot; idea to my leadership, and it got rejected. That day, I learnt what turns an idea into a funded project.</description><pubDate>Tue, 10 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Don&apos;t Let Your Best Ideas Die in Silence</title><link>https://arpitbhayani.me/blogs/dont-let-your-best-ideas-die-in-silence</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/dont-let-your-best-ideas-die-in-silence</guid><description>Say you have an idea, something that could change your company&apos;s or product&apos;s trajectory and fast-track your career growth. What do you do?</description><pubDate>Mon, 02 Jun 2025 00:00:00 GMT</pubDate></item><item><title>Be the Person Everyone Wants to Work With</title><link>https://arpitbhayani.me/blogs/be-someone-others-want-to-work-with</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/be-someone-others-want-to-work-with</guid><description>Beyond a point, your reputation determines how high you will go in the career ladder. And it takes months, sometimes years, to build one that truly matters.</description><pubDate>Mon, 26 May 2025 00:00:00 GMT</pubDate></item><item><title>The XY Problem and How to Avoid It</title><link>https://arpitbhayani.me/blogs/dont-fall-for-xy-problem-ask-right-questions</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/dont-fall-for-xy-problem-ask-right-questions</guid><description>We often focus on the wrong problem when asking for help. Instead of describing what we actually want to achieve, we end up asking about a side issue, i.e., instead of asking about X, we end up asking about Y. Let me explain...</description><pubDate>Thu, 22 May 2025 00:00:00 GMT</pubDate></item><item><title>The Startup Hiring Lie Nobody Talks About</title><link>https://arpitbhayani.me/blogs/biggest-lie-startups-tell-engineers</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/biggest-lie-startups-tell-engineers</guid><description>The biggest lie startups tell during hiring is - We have a lot of problems, and you can pick whatever you want to solve.</description><pubDate>Mon, 19 May 2025 00:00:00 GMT</pubDate></item><item><title>You Won&apos;t Be Promoted Unless You Ask</title><link>https://arpitbhayani.me/blogs/promotions-are-proactive-not-reactive</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/promotions-are-proactive-not-reactive</guid><description>Chasing promotions is important, but it shouldn&apos;t consume all your energy. Even if it&apos;s your main focus, that&apos;s okay. Just make sure you&apos;re also growing, doing work you&apos;re proud of, and finding peace in what you do.</description><pubDate>Fri, 16 May 2025 00:00:00 GMT</pubDate></item><item><title>It&apos;s Not Enough to be Right; Learn to be Heard</title><link>https://arpitbhayani.me/blogs/not-enough-to-be-right-learn-to-be-heard</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/not-enough-to-be-right-learn-to-be-heard</guid><description>Once you&apos;re in the system and thinking deeply, you&apos;ll start to notice inefficiencies and gaps. You might see decisions being made that feel wrong. But instead of putting your point across bluntly, it&apos;s important to raise it thoughtfully.</description><pubDate>Mon, 12 May 2025 00:00:00 GMT</pubDate></item><item><title>Book Notes - What is Existentialism</title><link>https://arpitbhayani.me/blogs/book-notes-what-is-existentialism</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/book-notes-what-is-existentialism</guid><description>It&apos;s a collection of essays or short philosophical reflections on various existential themes like devotion, action, and more.</description><pubDate>Sat, 10 May 2025 00:00:00 GMT</pubDate></item><item><title>Book Notes - White Nights</title><link>https://arpitbhayani.me/blogs/book-notes-white-nights</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/book-notes-white-nights</guid><description>It&apos;s the story of a lonely man who meets a young woman, and through this encounter, we explore the emotional landscape of</description><pubDate>Wed, 23 Apr 2025 00:00:00 GMT</pubDate></item><item><title>No One Ships Great Software Alone</title><link>https://arpitbhayani.me/blogs/no-one-ships-alone</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/no-one-ships-alone</guid><description>The best engineers ask for help early and often. We all have blind spots - technical, architectural, and just plain human.</description><pubDate>Wed, 23 Apr 2025 00:00:00 GMT</pubDate></item><item><title>You Don&apos;t Win by Proving Others Wrong</title><link>https://arpitbhayani.me/blogs/not-every-mistake-needs-a-correction</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/not-every-mistake-needs-a-correction</guid><description>Don&apos;t be a nitpicker! Learn when to let small mistakes slide and build a positive team culture. Kindness drives progress, not constant correction.</description><pubDate>Mon, 14 Apr 2025 00:00:00 GMT</pubDate></item><item><title>Appreciate Generously; It Costs Nothing, But Builds Everything</title><link>https://arpitbhayani.me/blogs/build-influence-at-work</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/build-influence-at-work</guid><description>If there&apos;s one underrated superpower at work, it&apos;s giving credit - generously, and often. When your teammate goes out of their way to help, contributes meaningfully, or quietly ships something excellent, take a moment to recognize it, publicly.</description><pubDate>Wed, 09 Apr 2025 00:00:00 GMT</pubDate></item><item><title>Your Soft Skills Aren&apos;t Soft at All</title><link>https://arpitbhayani.me/blogs/your-soft-skills-arent-soft-at-all</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/your-soft-skills-arent-soft-at-all</guid><description>Of course, soft skills matter, but which ones? In my opinion, every engineer should be better at these two: active listening and clear communication.</description><pubDate>Mon, 24 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Before you form an opinion, experience it</title><link>https://arpitbhayani.me/blogs/experience-before-forming-opinion</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/experience-before-forming-opinion</guid><description>Don&apos;t just listen, experience! Form opinions based on firsthand understanding. Real impact in work and life demands seeing the full picture.</description><pubDate>Fri, 21 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Why You Need Both Curiosity and Action to Thrive</title><link>https://arpitbhayani.me/blogs/curiosity-and-high-bias-for-action</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/curiosity-and-high-bias-for-action</guid><description>Unlock your potential! Learn how curiosity and action combine to drive impact, avoid stagnation, and achieve real results in your career.</description><pubDate>Tue, 18 Mar 2025 00:00:00 GMT</pubDate></item><item><title>A Daily Worklog Changed Everything</title><link>https://arpitbhayani.me/blogs/worklog</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/worklog</guid><description>A worklog is just a set of things you did grouped by the day. I have been doing this for the last 12 years, and it has been extremely helpful.</description><pubDate>Mon, 10 Mar 2025 00:00:00 GMT</pubDate></item><item><title>How We Handle Mistakes Defines Us</title><link>https://arpitbhayani.me/blogs/mistakes-and-growth</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/mistakes-and-growth</guid><description>Instead of sweeping failures under the rug, own them. When we try to hide our mistakes, we miss out on growth opportunities. Owning up to what went wrong is the first step toward becoming a better engineer.</description><pubDate>Thu, 06 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Own Your Mistakes</title><link>https://arpitbhayani.me/blogs/own-it-instead-of-sweeping-it-aside</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/own-it-instead-of-sweeping-it-aside</guid><description>Learn to own your failures as an engineer. Reflect, take responsibility, and grow from mistakes to build a stronger career.</description><pubDate>Thu, 06 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Don&apos;t Wait. Step Up.</title><link>https://arpitbhayani.me/blogs/dont-wait-step-up</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/dont-wait-step-up</guid><description>We all encounter issues and blockers, and it&apos;s inevitable, but how well we respond to them says a lot about our effectiveness and efficiency. So, when you face a problem</description><pubDate>Tue, 04 Mar 2025 00:00:00 GMT</pubDate></item><item><title>Temporary Fixes Are Permanent</title><link>https://arpitbhayani.me/blogs/temporary-fix-is-permanent</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/temporary-fix-is-permanent</guid><description>Temporary fixes can become permanent problems. Invest in quality code now to save yourself (or others) headaches later. Ship it right!</description><pubDate>Tue, 25 Feb 2025 00:00:00 GMT</pubDate></item><item><title>Why Interviews Are Biased And What Sets You Apart</title><link>https://arpitbhayani.me/blogs/interview-bias-and-what-sets-you-apart</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/interview-bias-and-what-sets-you-apart</guid><description>Interviews are unfair and will remain so, no matter how hard we try they can never evaluate people 100% objectively with clear measurables; and the intuition and gut feel of the interviewer will always add a small bias.</description><pubDate>Tue, 18 Feb 2025 00:00:00 GMT</pubDate></item><item><title>Saying &apos;This isn&apos;t my problem&apos; is actually the problem</title><link>https://arpitbhayani.me/blogs/saying-this-isnt-my-problem-is-a-problem</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/saying-this-isnt-my-problem-is-a-problem</guid><description>You must show a high bias for action at work, take ownership, and make an impact. Here are some actions that you can apply right away at work to earn some brownie points</description><pubDate>Tue, 11 Feb 2025 00:00:00 GMT</pubDate></item><item><title>How to Write Effective OKRs</title><link>https://arpitbhayani.me/blogs/okr</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/okr</guid><description>Craft effective engineering OKRs with this practical guide. Learn best practices, avoid common pitfalls, and drive team alignment.</description><pubDate>Fri, 07 Feb 2025 00:00:00 GMT</pubDate></item><item><title>Never Lose a Battle due to Miscommunication</title><link>https://arpitbhayani.me/blogs/miscommunication</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/miscommunication</guid><description>At your workplace, keep people informed. Driving a project or working on an individual item, you should always keep the people informed about - progress, clarity, and timeline.</description><pubDate>Tue, 04 Feb 2025 00:00:00 GMT</pubDate></item><item><title>When In Doubt, Code It Out</title><link>https://arpitbhayani.me/blogs/when-in-doubt-code-it-out</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/when-in-doubt-code-it-out</guid><description>Prototypes are not only great for learning concepts better, but they are also great for doing highly reliable project estimations. Here&apos;s how ...</description><pubDate>Wed, 29 Jan 2025 00:00:00 GMT</pubDate></item><item><title>How to Follow Up Without Annoying People</title><link>https://arpitbhayani.me/blogs/follow-up-without-annoying-people</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/follow-up-without-annoying-people</guid><description>Working with people is hard, but making them prioritize your work is even harder. Hence, one of the key skills you have to build is getting things done by others.</description><pubDate>Mon, 13 Jan 2025 00:00:00 GMT</pubDate></item><item><title>Lead Projects That Land, Execution Over Everything</title><link>https://arpitbhayani.me/blogs/lead-projects-that-land</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/lead-projects-that-land</guid><description>If you are leading a project, your only responsibility is to ensure it is delivered, whatever it takes. Here are a few pointers that I have followed</description><pubDate>Tue, 07 Jan 2025 00:00:00 GMT</pubDate></item><item><title>Abstract Thinking Will Define Your Next Decade</title><link>https://arpitbhayani.me/blogs/abstract-thinking-skill-next-decade</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/abstract-thinking-skill-next-decade</guid><description>Stop searching for beginner-friendly content, because for hard topics, it doesn&apos;t exist.</description><pubDate>Thu, 12 Dec 2024 00:00:00 GMT</pubDate></item><item><title>We Engineers Suck at Task Estimation</title><link>https://arpitbhayani.me/blogs/we-engineers-suck-at-task-estimation</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/we-engineers-suck-at-task-estimation</guid><description>We engineers are terrible at estimating timelines. Here&apos;s a neat trick</description><pubDate>Wed, 11 Dec 2024 00:00:00 GMT</pubDate></item><item><title>Shiny Obect Syndrome in Tech</title><link>https://arpitbhayani.me/blogs/shiny-object-syndrome-in-tech</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/shiny-object-syndrome-in-tech</guid><description>With the tech moving and evolving so fast, every few years, evaluate the work you are doing vs what the world is doing. Do not let the gap widen.</description><pubDate>Tue, 10 Dec 2024 00:00:00 GMT</pubDate></item><item><title>When to Change Jobs - The 3P Framework</title><link>https://arpitbhayani.me/blogs/3p</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/3p</guid><description>Is it time for a career change? Use the 3P formula (Paisa, Power, Position) to evaluate your job and unlock your career growth potential.</description><pubDate>Sat, 19 Oct 2024 00:00:00 GMT</pubDate></item><item><title>Comfort and Competition - Know When to Switch Gears</title><link>https://arpitbhayani.me/blogs/leverage-the-equilibrium</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/leverage-the-equilibrium</guid><description>Discover the power of balanced leadership - blending comfort and competition to drive team success and avoid burnout.</description><pubDate>Wed, 02 Oct 2024 00:00:00 GMT</pubDate></item><item><title>Paper Notes - On-demand Container Loading in AWS Lambda</title><link>https://arpitbhayani.me/blogs/on-demand-container-loading-in-aws-lambda</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/on-demand-container-loading-in-aws-lambda</guid><description>Explore AWS Lambda&apos;s efficient scaling - block-level loading, deduplication with encryption, &amp; erasure coding for low-latency container startups.</description><pubDate>Sun, 15 Sep 2024 00:00:00 GMT</pubDate></item><item><title>Paper Notes - SQL Has Problems. We Can Fix Them Pipe Syntax In SQL</title><link>https://arpitbhayani.me/blogs/sql-has-problems-we-can-fix-them-pipe-syntax-in-sql</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/sql-has-problems-we-can-fix-them-pipe-syntax-in-sql</guid><description>Explore GoogleSQL&apos;s new pipe syntax for SQL - Improves readability, extensibility, and debugging with operators like ASSERT and LOG.</description><pubDate>Tue, 03 Sep 2024 00:00:00 GMT</pubDate></item><item><title>Paper Notes - NanoLog - A Nanosecond Scale Logging System</title><link>https://arpitbhayani.me/blogs/nanolog-a-nanosecond-scale-logging-system</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/nanolog-a-nanosecond-scale-logging-system</guid><description>Explore NanoLog&apos;s high-performance logging - compile-time optimization, lock-free buffers, and lightweight encoding for nanosecond speed.</description><pubDate>Wed, 28 Aug 2024 00:00:00 GMT</pubDate></item><item><title>Don&apos;t Wait, Learn - The Best Resource is Mythical</title><link>https://arpitbhayani.me/blogs/best-resource-is-mythical</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/best-resource-is-mythical</guid><description>Stop searching for the perfect resource! Focus on consistent learning, critical thinking, and adapting to new information for continuous growth.</description><pubDate>Mon, 26 Aug 2024 00:00:00 GMT</pubDate></item><item><title>Paper Notes - WTF - The Who to Follow Service at Twitter</title><link>https://arpitbhayani.me/blogs/wtf-the-who-to-follow-service-at-twitter</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/wtf-the-who-to-follow-service-at-twitter</guid><description>Explore Twitter&apos;s recommendation system - in-memory graph processing with Cassovary, random walks, and SALSA for user suggestions.</description><pubDate>Wed, 21 Aug 2024 00:00:00 GMT</pubDate></item><item><title>The Unexpected Benefit of Reading Random Engineering Articles</title><link>https://arpitbhayani.me/blogs/know-a-lot</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/know-a-lot</guid><description>Learn how a broad knowledge base, built through consistent learning, can make you a better engineer. Discover the power of cross-pollination and continuous growth!</description><pubDate>Tue, 13 Aug 2024 00:00:00 GMT</pubDate></item><item><title>Roadmaps Are Limiting Your Growth</title><link>https://arpitbhayani.me/blogs/out-of-syllabus</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/out-of-syllabus</guid><description>Don&apos;t let roadmaps limit your growth! Explore beyond the plan to deepen your understanding, boost adaptability, and truly excel as an engineer.</description><pubDate>Mon, 12 Aug 2024 00:00:00 GMT</pubDate></item><item><title>Stop Leaving Money on the Table - Negotiate Your Job Offer</title><link>https://arpitbhayani.me/blogs/negotiate-the-offer</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/negotiate-the-offer</guid><description>Negotiate your job offer like a pro! Learn key strategies, including leveraging your current salary and competing offers, for career and financial growth.</description><pubDate>Tue, 06 Aug 2024 00:00:00 GMT</pubDate></item><item><title>Never Bad-Mouth Your Past Employers</title><link>https://arpitbhayani.me/blogs/never-bad-mouth-your-ex-exployer</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/never-bad-mouth-your-ex-exployer</guid><description>Don&apos;t bad-mouth ex-employers in job interviews! Learn why it hurts your chances and how to discuss past roles professionally and positively.</description><pubDate>Wed, 31 Jul 2024 00:00:00 GMT</pubDate></item><item><title>Show You&apos;re a Culture Fit</title><link>https://arpitbhayani.me/blogs/culture-fit</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/culture-fit</guid><description>Ace your tech interview! Learn how to demonstrate culture fit alongside your skills to land your dream engineering role.</description><pubDate>Mon, 29 Jul 2024 00:00:00 GMT</pubDate></item><item><title>Quantify your resume, Know Your Numbers</title><link>https://arpitbhayani.me/blogs/quantification-in-resume</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/quantification-in-resume</guid><description>Stand out with your resume! Learn how to quantify your engineering achievements and showcase your impact with simple, effective templates.</description><pubDate>Tue, 23 Jul 2024 00:00:00 GMT</pubDate></item><item><title>The Importance of Being Likeable in Interviews</title><link>https://arpitbhayani.me/blogs/hiring-is-unfair</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/hiring-is-unfair</guid><description>Job hunting? Discover tips to make a great impression in interviews and improve your chances of landing the role, even if it&apos;s a close call.</description><pubDate>Mon, 15 Jul 2024 00:00:00 GMT</pubDate></item><item><title>Questions to Ask Your Interviewer</title><link>https://arpitbhayani.me/blogs/questions-for-interviewers</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/questions-for-interviewers</guid><description>Ace your interview! Discover 7 smart questions to ask the interviewer &amp; gain valuable insights into the company culture and role.</description><pubDate>Mon, 08 Jul 2024 00:00:00 GMT</pubDate></item><item><title>How to Build Trust Through Collaboration</title><link>https://arpitbhayani.me/blogs/collaboration-communication</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/collaboration-communication</guid><description>Build trust &amp; collaborate effectively! 3 simple rules I used leading engineering teams to foster ownership, execution &amp; better teamwork.</description><pubDate>Mon, 01 Jul 2024 00:00:00 GMT</pubDate></item><item><title>Do This, Once You Are Out of the Interview Cycle</title><link>https://arpitbhayani.me/blogs/out-of-vicious-interview-cycle</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/out-of-vicious-interview-cycle</guid><description>Break free from the interview cycle! Explore your engineering passions &amp; boost your skills. Find fulfillment and unlock new opportunities.</description><pubDate>Thu, 20 Jun 2024 00:00:00 GMT</pubDate></item><item><title>Stop Pitching Ideas, Start Pitching Projects</title><link>https://arpitbhayani.me/blogs/pitch-projects-not-ideas</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/pitch-projects-not-ideas</guid><description>Stop pitching ideas, start pitching projects! Learn how to get your engineering proposals approved by focusing on execution and planning.</description><pubDate>Mon, 17 Jun 2024 00:00:00 GMT</pubDate></item><item><title>Read Those Design Docs, Even the Ones That Seem Irrelevant</title><link>https://arpitbhayani.me/blogs/read-design-docs</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/read-design-docs</guid><description>Learn how reading design documents can make you a better engineer. Discover the benefits and practical insights hidden within your company&apos;s internal documentation.</description><pubDate>Mon, 10 Jun 2024 00:00:00 GMT</pubDate></item><item><title>The Best Engineering Lessons Happen During Outages</title><link>https://arpitbhayani.me/blogs/read-rca-docs</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/read-rca-docs</guid><description>Embrace on-call &amp; RCAs! Level up your engineering skills by learning from production outages &amp; real-world system failures. YouTube playlist included!</description><pubDate>Wed, 29 May 2024 00:00:00 GMT</pubDate></item><item><title>Great Engineers Start Broad</title><link>https://arpitbhayani.me/blogs/start-generalist</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/start-generalist</guid><description>Become a generalist engineer early in your career to build a strong foundation, then specialize later for expertise and impact. Learn how!</description><pubDate>Mon, 27 May 2024 00:00:00 GMT</pubDate></item><item><title>LLM Summaries are Ruining Your Learning</title><link>https://arpitbhayani.me/blogs/do-not-rely-on-summaries</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/do-not-rely-on-summaries</guid><description>LLMs summarize well, but summaries hinder deep learning. For engineers, relying solely on them creates a surface-level understanding.</description><pubDate>Tue, 21 May 2024 00:00:00 GMT</pubDate></item><item><title>Turn System Design Interviews into Discussions</title><link>https://arpitbhayani.me/blogs/structure-your-design-interviews</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/structure-your-design-interviews</guid><description>Ace your system design interview! Learn a structured 5-step approach to tackle open-ended questions and showcase your engineering skills.</description><pubDate>Mon, 06 May 2024 00:00:00 GMT</pubDate></item><item><title>Title Inflation</title><link>https://arpitbhayani.me/blogs/title-inflation</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/title-inflation</guid><description>Don&apos;t let inflated titles fool you! Focus on building real skills &amp; impact for lasting career growth in software engineering.</description><pubDate>Wed, 27 Mar 2024 00:00:00 GMT</pubDate></item><item><title>At Work, Find Your Own Projects</title><link>https://arpitbhayani.me/blogs/find-your-own-project</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/find-your-own-project</guid><description>Level up your engineering career! Learn how to generate innovative project ideas and become a proactive problem-solver.</description><pubDate>Mon, 11 Mar 2024 00:00:00 GMT</pubDate></item><item><title>6 Simple Strategies to Cracking Any Tech Interview</title><link>https://arpitbhayani.me/blogs/six-pointers-to-crack-coding-and-design-interviews</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/six-pointers-to-crack-coding-and-design-interviews</guid><description>Ace your next tech interview! Learn 6 key strategies - clear communication, smart solutions, and asking the right questions.</description><pubDate>Mon, 15 Jan 2024 00:00:00 GMT</pubDate></item><item><title>How to Remain Unblocked</title><link>https://arpitbhayani.me/blogs/keep-yourself-unblocked</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/keep-yourself-unblocked</guid><description>Stuck as a software engineer? Learn practical strategies to get unblocked, improve problem-solving, and boost your productivity.</description><pubDate>Thu, 16 Nov 2023 00:00:00 GMT</pubDate></item><item><title>Solving the Knapsack Problem with Evolutionary Algorithms</title><link>https://arpitbhayani.me/blogs/genetic-knapsack</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/genetic-knapsack</guid><description>Solve the Knapsack problem with a Genetic Algorithm! This guide offers a polynomial-time approximation for this famous optimization challenge.</description><pubDate>Mon, 07 Mar 2022 00:00:00 GMT</pubDate></item><item><title>Generating Pseudorandom Numbers with LFSR</title><link>https://arpitbhayani.me/blogs/pseudorandom-number-generation-lfsr</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/pseudorandom-number-generation-lfsr</guid><description>Explore LFSRs, a simple &amp; efficient pseudorandom number generator widely used in microcontrollers. Learn how they work with code examples.</description><pubDate>Mon, 21 Feb 2022 00:00:00 GMT</pubDate></item><item><title>Local vs Global Indexes in Partitioned Databases</title><link>https://arpitbhayani.me/blogs/how-indexes-work-on-partitioned-and-sharded-data</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/how-indexes-work-on-partitioned-and-sharded-data</guid><description>Explore indexing strategies for partitioned databases, focusing on local and global secondary indexes. Optimize query performance on non-partitioned attributes.</description><pubDate>Mon, 07 Feb 2022 00:00:00 GMT</pubDate></item><item><title>Partitioning Data - Range, Hash, and When to Use Them</title><link>https://arpitbhayani.me/blogs/some-data-partitioning-strategies-for-distributed-data-stores</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/some-data-partitioning-strategies-for-distributed-data-stores</guid><description>Partitioning - Learn how to scale your database reads and writes by horizontally partitioning your data. Explore range-based vs hash-based approaches.</description><pubDate>Mon, 31 Jan 2022 00:00:00 GMT</pubDate></item><item><title>Partitioning Strategies for Distributed Databases</title><link>https://arpitbhayani.me/blogs/data-partitioning</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/data-partitioning</guid><description>Learn database partitioning! Scale reads/writes &amp; improve availability by splitting your database. Explore horizontal/vertical strategies.</description><pubDate>Mon, 24 Jan 2022 00:00:00 GMT</pubDate></item><item><title>Leaderless Replication</title><link>https://arpitbhayani.me/blogs/leaderless-replication</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/leaderless-replication</guid><description>Explore leaderless replication - a fault-tolerant, strongly consistent data replication strategy. Learn how it works and its benefits.</description><pubDate>Sun, 16 Jan 2022 00:00:00 GMT</pubDate></item><item><title>Multi-Master Conflicts - How to Handle Them</title><link>https://arpitbhayani.me/blogs/conflict-resolution</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/conflict-resolution</guid><description>Explore conflict resolution strategies in multi-master databases. Learn to handle conflicts with unique IDs, database precedence, &amp; custom logic.</description><pubDate>Mon, 03 Jan 2022 00:00:00 GMT</pubDate></item><item><title>Multi-Master Replication - Why Conflicts Happen</title><link>https://arpitbhayani.me/blogs/conflict-detection</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/conflict-detection</guid><description>Understand conflicts in multi-master databases - Learn how to detect and resolve data inconsistencies for reliable systems.</description><pubDate>Sun, 28 Nov 2021 00:00:00 GMT</pubDate></item><item><title>Multi-Master Replication - Scaling Writes Across Geographies</title><link>https://arpitbhayani.me/blogs/multi-master-replication</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/multi-master-replication</guid><description>Explore Multi-Master replication - its benefits like load sharing and high availability, use cases, and key challenges to consider.</description><pubDate>Wed, 03 Nov 2021 00:00:00 GMT</pubDate></item><item><title>Monotonic Reads - How Asynchronous Replication Creates Wormholes</title><link>https://arpitbhayani.me/blogs/monotonic-reads</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/monotonic-reads</guid><description>Explore how asynchronous database replication creates &quot;wormholes&quot; in data consistency and how to fix it with monotonic reads.</description><pubDate>Sun, 03 Oct 2021 00:00:00 GMT</pubDate></item><item><title>Read-Your-Writes Consistency</title><link>https://arpitbhayani.me/blogs/read-your-write-consistency</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/read-your-write-consistency</guid><description>Explore read-your-writes consistency in distributed systems. Learn how to solve replication lag with strategies like synchronous replication.</description><pubDate>Wed, 22 Sep 2021 00:00:00 GMT</pubDate></item><item><title>What Happens When a Master or Replica Fails</title><link>https://arpitbhayani.me/blogs/handling-outages-master-replica</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/handling-outages-master-replica</guid><description>Explore Master-Replica architecture - handling node outages, replica recovery, and master failover strategies for robust systems.</description><pubDate>Tue, 07 Sep 2021 00:00:00 GMT</pubDate></item><item><title>Replication Formats - Statement vs Row-based</title><link>https://arpitbhayani.me/blogs/replication-formats</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/replication-formats</guid><description>Explore Master-Replica replication - Understand statement-based vs. row-based formats, advantages, and disadvantages for distributed systems.</description><pubDate>Sun, 15 Aug 2021 00:00:00 GMT</pubDate></item><item><title>Replication Strategies - Synchronous, Asynchronous, and Semi-Synchronous</title><link>https://arpitbhayani.me/blogs/replication-strategies</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/replication-strategies</guid><description>Explore synchronous, asynchronous, and semi-synchronous data replication strategies in distributed systems. Understand their trade-offs and implications.</description><pubDate>Tue, 10 Aug 2021 00:00:00 GMT</pubDate></item><item><title>Master-Replica Replication</title><link>https://arpitbhayani.me/blogs/master-replica-replication</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/master-replica-replication</guid><description>Explore the Master-Replica architecture - how it scales reads, handles writes, and recovers from failures. Examples included!</description><pubDate>Sat, 07 Aug 2021 00:00:00 GMT</pubDate></item><item><title>Decoding Durability - The D in ACID</title><link>https://arpitbhayani.me/blogs/durability</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/durability</guid><description>Explore database durability, the &quot;D&quot; in ACID. Learn how databases ensure data survives failures &amp; the role of transaction logs.</description><pubDate>Mon, 19 Jul 2021 00:00:00 GMT</pubDate></item><item><title>Decoding Isolation - The I in ACID</title><link>https://arpitbhayani.me/blogs/isolation</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/isolation</guid><description>Dive into database isolation! Understand its importance in maintaining data integrity during concurrent transactions with real-world examples.</description><pubDate>Wed, 07 Jul 2021 00:00:00 GMT</pubDate></item><item><title>Decoding Atomicity - The A in ACID</title><link>https://arpitbhayani.me/blogs/atomicity</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/atomicity</guid><description>Understand Atomicity (the &quot;A&quot; in ACID) in databases, file systems, and hardware. Learn how it ensures data integrity and prevents partial updates.</description><pubDate>Fri, 02 Jul 2021 00:00:00 GMT</pubDate></item><item><title>Decoding Consistency - The C in ACID</title><link>https://arpitbhayani.me/blogs/consistency</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/consistency</guid><description>Understand database consistency (the &quot;C&quot; in ACID) and its importance. Learn how databases maintain data correctness through rules and constraints.</description><pubDate>Fri, 02 Jul 2021 00:00:00 GMT</pubDate></item><item><title>Architectural Patterns for Distributed Systems</title><link>https://arpitbhayani.me/blogs/architectures-in-distributed-systems</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/architectures-in-distributed-systems</guid><description>Explore common architectures in distributed systems, including client-server, 3-tier, n-tier, and peer-to-peer. Understand their characteristics and when to use each one for optimal system design.</description><pubDate>Tue, 22 Jun 2021 00:00:00 GMT</pubDate></item><item><title>Fallacies of Distributed Computing Every Engineer Should Know</title><link>https://arpitbhayani.me/blogs/mistaken-beliefs-of-distributed-systems</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/mistaken-beliefs-of-distributed-systems</guid><description>Learn about the 8 common fallacies of distributed computing that can lead to critical system design flaws. Understand the realities of network reliability, latency, bandwidth, security, topology, administration, transport costs, and network homogeneity for building robust and scalable distributed systems.</description><pubDate>Thu, 17 Jun 2021 00:00:00 GMT</pubDate></item><item><title>Fork Bomb</title><link>https://arpitbhayani.me/blogs/fork-bomb</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/fork-bomb</guid><description>Online Coding Platforms and Code Evaluators are susceptible to this attack as they accept raw code from the user and execute it. So, if you are building one, do ensure you are protected against it and infinite loops.</description><pubDate>Wed, 09 Jun 2021 00:00:00 GMT</pubDate></item><item><title>Python Internals - Exploring Chained Comparison Operators</title><link>https://arpitbhayani.me/blogs/chained-operators-python</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/chained-operators-python</guid><description>Explore Python&apos;s chained comparisons (like a &lt; b &lt; c) and short-circuiting. Learn how they work under the hood and how to modify CPython!</description><pubDate>Wed, 28 Apr 2021 00:00:00 GMT</pubDate></item><item><title>Modeling Udemy&apos;s Categories in a Relational Database</title><link>https://arpitbhayani.me/blogs/taxonomy-on-sql</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/taxonomy-on-sql</guid><description>Model Udemy&apos;s taxonomy on a relational database. Learn efficient SQL queries, indexing, and design for optimal performance.</description><pubDate>Mon, 19 Apr 2021 00:00:00 GMT</pubDate></item><item><title>I Changed the Rules for the Python&apos;s Walrus Operator</title><link>https://arpitbhayani.me/blogs/the-weird-walrus</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/the-weird-walrus</guid><description>Explore Python&apos;s walrus operator ( -=) and its quirks! Learn why `a  -= 10` throws an error and how to modify CPython to allow it.</description><pubDate>Thu, 01 Apr 2021 00:00:00 GMT</pubDate></item><item><title>Fully Persistent Arrays</title><link>https://arpitbhayani.me/blogs/fully-persistent-arrays</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/fully-persistent-arrays</guid><description>Explore Fully Persistent Arrays - Understand how to implement arrays that preserve all previous versions, enabling auditing and historical access.</description><pubDate>Mon, 15 Feb 2021 00:00:00 GMT</pubDate></item><item><title>How Persistent Data Structures Work</title><link>https://arpitbhayani.me/blogs/persistent-data-structures-introduction</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/persistent-data-structures-introduction</guid><description>Explore persistent data structures - access historical versions, understand partial, full, and confluent persistence, and see real-world applications.</description><pubDate>Sun, 07 Feb 2021 00:00:00 GMT</pubDate></item><item><title>Constant Folding in Python</title><link>https://arpitbhayani.me/blogs/constant-folding-python</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/constant-folding-python</guid><description>Explore Python&apos;s constant folding - how it optimizes code by evaluating expressions at compile time. Dive into CPython&apos;s elegant implementation.</description><pubDate>Sun, 10 Jan 2021 00:00:00 GMT</pubDate></item><item><title>How Python Uses String Interning to Keep Runtime Efficient</title><link>https://arpitbhayani.me/blogs/string-interning-python</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/string-interning-python</guid><description>Explore Python&apos;s string interning - a compiler optimization for performance. Learn how CPython uses it to boost speed and reduce memory use.</description><pubDate>Sun, 20 Dec 2020 00:00:00 GMT</pubDate></item><item><title>Visualizing Recursion in Python with Just a Decorator</title><link>https://arpitbhayani.me/blogs/recursion-visualizer-python</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/recursion-visualizer-python</guid><description>Visualize recursion in Python! Learn to build a simple recursion tree visualizer using decorators and the recviz package.</description><pubDate>Sun, 13 Dec 2020 00:00:00 GMT</pubDate></item><item><title>Count Distinct With Minimal Memory - Flajolet Martin Algorithm</title><link>https://arpitbhayani.me/blogs/flajolet-martin</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/flajolet-martin</guid><description>Approximate count-distinct in streams using the Flajolet-Martin algorithm. Dive into its intuition, implementation, and applications.</description><pubDate>Sun, 06 Dec 2020 00:00:00 GMT</pubDate></item><item><title>The 2Q Algorithm - Addressing LRU&apos;s Sub-Optimality</title><link>https://arpitbhayani.me/blogs/2q-cache</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/2q-cache</guid><description>Explore the 2Q cache eviction algorithm, an improvement over LRU, used in databases like Postgres. Learn how it optimizes performance!</description><pubDate>Sun, 29 Nov 2020 00:00:00 GMT</pubDate></item><item><title>Israeli Queues</title><link>https://arpitbhayani.me/blogs/israeli-queues</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/israeli-queues</guid><description>Explore Israeli Queues, a unique priority queue variation where elements join friends already waiting! Learn how they optimize batch processing.</description><pubDate>Sun, 22 Nov 2020 00:00:00 GMT</pubDate></item><item><title>1D Terrain Generation</title><link>https://arpitbhayani.me/blogs/1d-terrain</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/1d-terrain</guid><description>Explore procedural 1D terrain generation for games using Python. Learn techniques like interpolation and superposition for realistic landscapes.</description><pubDate>Mon, 16 Nov 2020 00:00:00 GMT</pubDate></item><item><title>MinHash - Fast Jaccard Similarity at Scale</title><link>https://arpitbhayani.me/blogs/jaccard-minhash</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/jaccard-minhash</guid><description>Learn Jaccard Similarity and MinHash, a technique to efficiently estimate set similarity at scale for tasks like near-duplicate detection.</description><pubDate>Sun, 08 Nov 2020 00:00:00 GMT</pubDate></item><item><title>Time Series Smoothing for Anomaly Detection</title><link>https://arpitbhayani.me/blogs/ts-smoothing</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/ts-smoothing</guid><description>Learn how to optimally smooth time series data using kurtosis to highlight anomalies. Prioritize user attention with this smoothing technique.</description><pubDate>Sun, 01 Nov 2020 00:00:00 GMT</pubDate></item><item><title>Implementing LFU in O(1)</title><link>https://arpitbhayani.me/blogs/lfu</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/lfu</guid><description>Explore constant time LFU cache implementation using hash tables and doubly-linked lists. Learn how to achieve O(1) complexity!</description><pubDate>Sun, 23 Aug 2020 00:00:00 GMT</pubDate></item><item><title>Space-Efficient Counting - Exploring Morris&apos; Algorithm</title><link>https://arpitbhayani.me/blogs/morris-counter</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/morris-counter</guid><description>Learn about the Morris Algorithm, a probabilistic method for counting large events with minimal memory. Explore its math and implementation.</description><pubDate>Sun, 02 Aug 2020 00:00:00 GMT</pubDate></item><item><title>Why Slowsort is Hilariously Inefficient</title><link>https://arpitbhayani.me/blogs/slowsort</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/slowsort</guid><description>Explore Slowsort, the deterministically worst sorting algorithm! Learn how it works and its &quot;Multiply and Surrender&quot; paradigm.</description><pubDate>Sun, 26 Jul 2020 00:00:00 GMT</pubDate></item><item><title>Bitcask - A Log-Structured fast KV store</title><link>https://arpitbhayani.me/blogs/bitcask</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/bitcask</guid><description>Bitcask was introduced as the backend for a distributed database named Riak in which each node used to run one instance of Bitcask to hold the data that it was responsible for. In this essay, we take a detailed look into Bitcask, its design, and find the secret sauce that makes it so performant.</description><pubDate>Sun, 19 Jul 2020 00:00:00 GMT</pubDate></item><item><title>Phi Accrual Failure Detection Algorithm</title><link>https://arpitbhayani.me/blogs/phi-accrual</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/phi-accrual</guid><description>Explore Phi Accrual Failure Detection, an adaptive algorithm for detecting failures in distributed systems. Learn how it improves on heartbeats!</description><pubDate>Sun, 12 Jul 2020 00:00:00 GMT</pubDate></item><item><title>10x Engineer DNA</title><link>https://arpitbhayani.me/blogs/10x-engineer</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/10x-engineer</guid><description>Unlock 10x engineer potential - Simplify complex problems, own your work, and prioritize business impact. Learn key traits for career growth.</description><pubDate>Sun, 05 Jul 2020 00:00:00 GMT</pubDate></item><item><title>Breaking Repeating-Key XOR Encryption</title><link>https://arpitbhayani.me/blogs/decipher-repeated-key-xor</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/decipher-repeated-key-xor</guid><description>Crack repeating-key XOR ciphers! Learn how to find the key length using Hamming distance and frequency analysis in this crypto challenge.</description><pubDate>Sun, 05 Jul 2020 00:00:00 GMT</pubDate></item><item><title>ETAOIN SHRDLU - Using Letter Frequency to Decipher the Ciphered</title><link>https://arpitbhayani.me/blogs/decipher-single-xor</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/decipher-single-xor</guid><description>Crack single-byte XOR ciphers! Learn how to decipher encrypted messages without the key using frequency analysis and Python.</description><pubDate>Sun, 21 Jun 2020 00:00:00 GMT</pubDate></item><item><title>Making Integers Iterable in Python</title><link>https://arpitbhayani.me/blogs/python-iterable-integers</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/python-iterable-integers</guid><description>Dive into Python internals - Modify CPython to make integers iterable! Explore iterators, protocols, and why it&apos;s a bad idea.</description><pubDate>Sun, 14 Jun 2020 00:00:00 GMT</pubDate></item><item><title>Structure Composition and Emulating Inheritance in C</title><link>https://arpitbhayani.me/blogs/inheritance-c</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/inheritance-c</guid><description>Emulate inheritance in C using structure composition! Learn how it enables code extensibility, powering Linux Kernel &amp; Python.</description><pubDate>Sun, 07 Jun 2020 00:00:00 GMT</pubDate></item><item><title>The RUM Conjecture - Storage System Trade-offs</title><link>https://arpitbhayani.me/blogs/rum</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/rum</guid><description>Explore the RUM Conjecture - How Read, Update, and Memory overheads impact storage system design and performance trade-offs.</description><pubDate>Sun, 31 May 2020 00:00:00 GMT</pubDate></item><item><title>Consistent Hashing - What It Is and How to Implement It</title><link>https://arpitbhayani.me/blogs/consistent-hashing</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/consistent-hashing</guid><description>Consistent hashing is a hashing technique that performs really well when operated in a dynamic environment where the distributed system scales up and scales down frequently.</description><pubDate>Sun, 24 May 2020 00:00:00 GMT</pubDate></item><item><title>How Python Handles Integers Under the Hood</title><link>https://arpitbhayani.me/blogs/python-caches-integers</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/python-caches-integers</guid><description>Dive into Python&apos;s integer implementation! Explore how singletons and reference counting optimize performance for small integers.</description><pubDate>Sun, 17 May 2020 00:00:00 GMT</pubDate></item><item><title>Fractional Cascading - Speeding Up Multiple Binary Searches</title><link>https://arpitbhayani.me/blogs/fractional-cascading</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/fractional-cascading</guid><description>Explore Binary Search variations k-searches, unified search &amp; fractional cascading. Optimize search time in k sorted lists!</description><pubDate>Sun, 10 May 2020 00:00:00 GMT</pubDate></item><item><title>Copy-On-Write - When to Use It, When to Avoid It</title><link>https://arpitbhayani.me/blogs/copy-on-write</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/copy-on-write</guid><description>Explore Copy-on-Write (CoW) - Boost performance, manage resources, and enable versioning. Learn how it works with examples and trade-offs.</description><pubDate>Sun, 03 May 2020 00:00:00 GMT</pubDate></item><item><title>How MySQL Avoids Performance Hits from Table Scans</title><link>https://arpitbhayani.me/blogs/midpoint-insertion-caching-strategy</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/midpoint-insertion-caching-strategy</guid><description>Explore MySQL InnoDB&apos;s buffer pool and its midpoint insertion strategy for efficient cache management and scan resistance.</description><pubDate>Sun, 26 Apr 2020 00:00:00 GMT</pubDate></item><item><title>Modeling Finite State Machines with Python Coroutines</title><link>https://arpitbhayani.me/blogs/fsm-python</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/fsm-python</guid><description>Explore Finite State Machines (FSM) with Python coroutines. Learn to model FSMs for regex, divisibility, &amp; SQL validation.</description><pubDate>Sun, 19 Apr 2020 00:00:00 GMT</pubDate></item><item><title>Building Better Ratings with Bayesian Averages</title><link>https://arpitbhayani.me/blogs/bayesian-average</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/bayesian-average</guid><description>Learn how to create a robust rating system using Bayesian Average to rank items effectively. Explore its advantages over arithmetic mean and cumulative ratings, and see how it can be applied using the MovieLens Dataset.</description><pubDate>Sun, 12 Apr 2020 00:00:00 GMT</pubDate></item><item><title>Sliding Window Rate Limiting - Design and Implementation</title><link>https://arpitbhayani.me/blogs/sliding-window-ratelimiter</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/sliding-window-ratelimiter</guid><description>A rate limiter restricts the intended or unintended excessive usage of a system by regulating the number of requests made to/from it by discarding the surplus ones.</description><pubDate>Sun, 05 Apr 2020 00:00:00 GMT</pubDate></item><item><title>The Intuition Behind IDF</title><link>https://arpitbhayani.me/blogs/idf</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/idf</guid><description>Explore Inverse Document Frequency (IDF), a key concept in search &amp; text mining. Learn how it quantifies term rarity and its connection to probability.</description><pubDate>Tue, 10 Mar 2020 00:00:00 GMT</pubDate></item><item><title>Habits that Make a Great Programmer</title><link>https://arpitbhayani.me/blogs/better-programmer</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/better-programmer</guid><description>8 rituals to level up your programming skills! Learn how to code better, think faster, and build complex systems with these actionable tips.</description><pubDate>Fri, 28 Feb 2020 00:00:00 GMT</pubDate></item><item><title>Python Prompt Strings</title><link>https://arpitbhayani.me/blogs/python-prompts</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/python-prompts</guid><description>Customize your Python interactive shell prompt! Learn how to personalize and format your `&gt;&gt;&gt;` and `...` prompts.</description><pubDate>Fri, 21 Feb 2020 00:00:00 GMT</pubDate></item><item><title>Rule 30 - Generating Random Numbers with Cellular Automata</title><link>https://arpitbhayani.me/blogs/rule-30-cellular-automata</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/rule-30-cellular-automata</guid><description>Explore Rule 30, a cellular automaton, and its surprising application in pseudorandom number generation. Discover its chaotic patterns!</description><pubDate>Fri, 14 Feb 2020 00:00:00 GMT</pubDate></item><item><title>Python&apos;s Missing Feature - Function Overloading</title><link>https://arpitbhayani.me/blogs/function-overloading</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/function-overloading</guid><description>Explore function overloading in Python! Learn how to implement it using decorators and namespaces, despite Python&apos;s limitations.</description><pubDate>Fri, 07 Feb 2020 00:00:00 GMT</pubDate></item><item><title>Isolation Forest - Fast and Efficient Anomaly Detection</title><link>https://arpitbhayani.me/blogs/isolation-forest</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/isolation-forest</guid><description>Uncover anomalies with Isolation Forest, an unsupervised algorithm. Learn its core principles, tree construction, and scoring for anomaly detection.</description><pubDate>Fri, 31 Jan 2020 00:00:00 GMT</pubDate></item><item><title>Image Steganography</title><link>https://arpitbhayani.me/blogs/image-steganography</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/image-steganography</guid><description>Explore image steganography - Hide secret messages within images! Learn techniques, from LSB substitution to JPEG methods.</description><pubDate>Fri, 17 Jan 2020 00:00:00 GMT</pubDate></item><item><title>How Python Handles Gigantic Integers</title><link>https://arpitbhayani.me/blogs/long-integers-python</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/long-integers-python</guid><description>Explore Python&apos;s arbitrary-precision integers! Learn how it handles large numbers internally, from storage to operations like addition.</description><pubDate>Fri, 10 Jan 2020 00:00:00 GMT</pubDate></item><item><title>Python Internals - I Made Addition Unpredictable</title><link>https://arpitbhayani.me/blogs/i-changed-my-python</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/i-changed-my-python</guid><description>Explore Python internals by tweaking its source code! Learn how I made addition unpredictable and the challenges I faced.</description><pubDate>Fri, 03 Jan 2020 00:00:00 GMT</pubDate></item><item><title>Analyzing MongoDB Pagination Performance Differences</title><link>https://arpitbhayani.me/blogs/benchmark-and-compare-pagination-approach-in-mongodb</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/benchmark-and-compare-pagination-approach-in-mongodb</guid><description>Benchmark of MongoDB pagination strategies! See which method (_id vs skip/limit) performs best for large datasets. Find the code on GitHub.</description><pubDate>Fri, 24 Mar 2017 00:00:00 GMT</pubDate></item><item><title>MongoDB Pagination - Skip is Slow</title><link>https://arpitbhayani.me/blogs/mongodb-cursor-skip-is-slow</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/mongodb-cursor-skip-is-slow</guid><description>Is MongoDB `skip` slow? Understand when &amp; why `skip` impacts pagination performance. Learn efficient alternatives for large datasets.</description><pubDate>Thu, 23 Mar 2017 00:00:00 GMT</pubDate></item><item><title>MongoDB Pagination - Two Approaches You Need to Know</title><link>https://arpitbhayani.me/blogs/fast-and-efficient-pagination-in-mongodb</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/fast-and-efficient-pagination-in-mongodb</guid><description>Learn how to efficiently paginate MongoDB data using `skip/limit` and `_id`-based methods. Improve performance for batch processing &amp; UI display.</description><pubDate>Wed, 22 Mar 2017 00:00:00 GMT</pubDate></item><item><title>HTTP - The Hard Way with Netcat</title><link>https://arpitbhayani.me/blogs/making-http-requests-using-netcat</link><guid isPermaLink="true">https://arpitbhayani.me/blogs/making-http-requests-using-netcat</guid><description>Explore HTTP messages by building a simple Python webserver and interacting with it using Netcat. See requests in action!</description><pubDate>Tue, 12 Apr 2016 00:00:00 GMT</pubDate></item></channel></rss>