<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Concepts on Lorbic</title><link>http://localhost:1313/categories/concepts/</link><description>Recent content in Concepts on Lorbic</description><generator>Hugo</generator><language>en</language><lastBuildDate>Wed, 22 Jul 2026 12:00:00 +0530</lastBuildDate><atom:link href="http://localhost:1313/categories/concepts/index.xml" rel="self" type="application/rss+xml"/><item><title>Cache-Driven Development: Saving Your Database From Itself</title><link>http://localhost:1313/cache-driven-development/</link><pubDate>Wed, 22 Jul 2026 12:00:00 +0530</pubDate><guid>http://localhost:1313/cache-driven-development/</guid><description>&lt;p>There is a moment in every backend engineer&amp;rsquo;s life when their database starts refusing connections.&lt;/p>
&lt;p>Picture 2 a.m. on a Tuesday. The app is operating under normal traffic, nothing unusual. But the database connection pool is saturated. Queries are timing out. The monitoring dashboard shows 50,000 database operations per second, far beyond what the system should be handling.&lt;/p>
&lt;p>When someone pulls the slow-query logs, the pattern is immediately clear. The same query appears thousands of times:&lt;/p></description></item><item><title>What Couchbase Taught Me About System Thinking</title><link>http://localhost:1313/what-couchbase-taught-me-about-system-thinking/</link><pubDate>Tue, 18 Nov 2025 02:20:06 +0530</pubDate><guid>http://localhost:1313/what-couchbase-taught-me-about-system-thinking/</guid><description>&lt;h2 id="couchbase-internals-indexes-queries-consistency-and-performance">Couchbase Internals: Indexes, Queries, Consistency, and Performance&lt;a class="anchorjs-link" href="#couchbase-internals-indexes-queries-consistency-and-performance" aria-label="Link to section: Couchbase Internals: Indexes, Queries, Consistency, and Performance">&lt;/a>&lt;/h2>&lt;h3 id="introduction">Introduction&lt;a class="anchorjs-link" href="#introduction" aria-label="Link to section: Introduction">&lt;/a>&lt;/h3>&lt;p>Over the last few years I&amp;rsquo;ve lived deep inside backend systems, and for the past year and a half Couchbase has been my daily companion. Working with Go services that depend on Couchbase taught me that the real lessons aren&amp;rsquo;t in the marketing slides or quick‑start guides. They&amp;rsquo;re in the internals: how indexes are built, how queries are planned, how consistency flags change the story, and how durability levels quietly decide whether your system survives a failure or not.&lt;/p></description></item><item><title>What Facebook's Memcache Taught Me About Systems Thinking</title><link>http://localhost:1313/scaling-memcache-facebook/</link><pubDate>Mon, 07 Jul 2025 14:03:00 +0000</pubDate><guid>http://localhost:1313/scaling-memcache-facebook/</guid><description>&lt;p>What Facebook&amp;rsquo;s Memcache Taught Me About Systems Thinking&lt;/p>
&lt;blockquote>
&lt;p>&amp;ldquo;The probability of reading transient stale data is a tunable parameter&amp;rdquo;. - Scaling Memcache at Facebook (NSDI, 2013)&lt;/p>&lt;/blockquote>
&lt;p>There&amp;rsquo;s a moment in every engineer&amp;rsquo;s life when a seemingly simple component like a cache, suddenly becomes the most complex piece in the stack. For me, that moment arrived reading Facebook&amp;rsquo;s paper on scaling Memcache.
I didn&amp;rsquo;t expect a key-value store to challenge my understanding of systems architecture. But this paper wasn&amp;rsquo;t about cache keys or TTLs. It was about what happens when infrastructure hits the limits of scale, physics, and human reliability.&lt;br>
What follows isn&amp;rsquo;t a summary. It&amp;rsquo;s a set of systems insights that stayed with me, principles that go deeper than code and that I now see everywhere.&lt;/p></description></item><item><title>Bitmasking In Go</title><link>http://localhost:1313/bitmasking/</link><pubDate>Thu, 17 Apr 2025 02:20:00 +0000</pubDate><guid>http://localhost:1313/bitmasking/</guid><description>&lt;h1 id="bitmasking-in-go">Bitmasking in Go&lt;a class="anchorjs-link" href="#bitmasking-in-go" aria-label="Link to section: Bitmasking in Go">&lt;/a>&lt;/h1>&lt;p>Bitmasking is one of those computer science tricks that feels like wizardry, until you realize it&amp;rsquo;s just some clever shifting and binary math. This blog explores the idea, shows how we use it in Go, and why it&amp;rsquo;s surprisingly useful when working with databases like Couchbase.&lt;/p>
&lt;hr>
&lt;h2 id="whats-bitmasking">What&amp;rsquo;s Bitmasking?&lt;a class="anchorjs-link" href="#whats-bitmasking" aria-label="Link to section: What&amp;rsquo;s Bitmasking?">&lt;/a>&lt;/h2>&lt;p>A &lt;strong>bitmask&lt;/strong> is just an integer where each &lt;strong>bit&lt;/strong> (0 or 1) represents a flag or state. Instead of storing multiple booleans in a slice or map, you cram them into a single &lt;code>int&lt;/code>. Fast to compute, fast to store, and great for indexing.&lt;/p></description></item></channel></rss>