Introduction Picture two doctors updating the same patient record at the same time - one in São Paulo, the other in London. Both are offline. When connectivity returns, whose changes prevail? This is not a hypothetical. It is the everyday reality of distributed systems: multiple nodes, no shared clock, no guaranteed network. The conventional answer has long been locking - one node waits while an
Introduction Some code works. Some code lasts. The difference rarely comes down to typing speed, syntax mastery, or how many nights you're willing to push through. It comes down to how you think about a problem before you write a single line. Big-O notation is a mathematical framework that describes how an algorithm performs as its input grows. In plain terms, it answers one question:
Traditional search engines match keywords. If you search for "dog shelters around Gurgaon" and the indexed page says "animal shelters near Delhi," you get no results. The words do not overlap. Semantic search fixes this by converting text into vectors. Similar ideas end up close together in vector space, even when the words differ. An embedding model takes a word or sentence and produces a high-di
The first time I implemented Vamana from the DiskANN paper, my approximate nearest neighbor index was slower than brute force. On tiny test fixtures, brute force took 0.27 ms per query. My Vamana implementation took 22.98 ms. That sounds absurd. ANN exists to skip work. The problem was not the algorithm. It was how I mapped the paper's abstractions to actual data structures. The DiskANN pseudocode
If you use ChatGPT, Claude, Grok, Copilot, or Gemini daily, it feels like you're talking to a person. It remembers what you said three messages ago. It references the project details you shared yesterday. It feels like the model has a persistent brain that is learning about you. But it’s a lie. From an architectural standpoint, an LLM is the most "forgetful" piece of software you will ever use. Ev
Most symbolic systems rely on multiple primitives. Addition, multiplication, exponentials, logarithms — each plays a different role in structuring expressions. But what happens if you force everything through a single operator? This idea becomes concrete with the EML operator: eml(x, y) = exp(x) − ln(y) In theory, this operator can express all elementary functions. But theory doesn’t tell us what