My Blogs#
Welcome to my blog section, where I share in-depth articles, technical insights, and perspectives on various topics in technology, software engineering, AI, and innovation. These are explorations of ideas, technical deep-dives, and experiences from my journey in the tech world.
The Elevator Problem The Elevator Problem is a classic scheduling and optimization challenge that models how multiple elevators coordinate to serve passengers efficiently. It demonstrates load balancing, scheduling algorithms, optimization trade-offs, and decentralized coordination. Unlike many concurrency problems, it focuses on real-time decision-making and multi-objective optimization.
The Scenario A building has:
N elevators moving between floors M floors Passengers arriving at random floors with random destinations Call buttons (up/down) on each floor Destination buttons inside each elevator The goals:
...
The Bully Election Algorithm The Bully Algorithm, proposed by Hector Garcia-Molina in 1982, is a classic leader election algorithm for distributed systems. It’s called “bully” because the highest-numbered process always wins and “bullies” the others into accepting it as leader.
The Scenario A distributed system needs a coordinator:
N nodes in a network Each node has a unique ID (priority) One node must be elected as leader When the leader fails, a new leader must be elected Rule: The node with the highest ID wins The protocol:
...
I spent my first year as a developer learning from the wrong people.
Not bad people. Just the wrong people for where I was and where I wanted to go.
My learning sources:
YouTube tutorials from people who’d been coding for 6 months Reddit advice from anonymous strangers A bootcamp instructor who’d switched careers 18 months prior Other junior developers at my skill level What I learned: How to copy-paste solutions. How to feel productive while making minimal progress. How to stay stuck in tutorial hell.
...
The Fairness Problem We’ve seen two extremes:
Readers preference: Writers can starve Writers preference: Readers can starve The fair solution ensures no starvation - everyone gets served in the order they arrive.
The Solution: FIFO Ordering Key idea: Use a queue to serve requests in arrival order. This prevents both reader and writer starvation.
Arrival Order: R1, R2, W1, R3, R4, W2 Execution: R1+R2 → W1 → R3+R4 → W2 (batch) (excl) (batch) (excl) Consecutive readers can still batch together, but writers don’t get skipped!
...
The Byzantine Generals Problem The Byzantine Generals Problem, proposed by Leslie Lamport, Robert Shostak, and Marshall Pease in 1982, is one of the most important problems in distributed systems. It addresses the challenge of achieving consensus when some participants may be faulty or malicious.
The Scenario Byzantine army divisions surround a city:
N generals command their divisions They must coordinate: attack or retreat They communicate via messengers Some generals are traitors who send conflicting messages Goal: All loyal generals must agree on the same plan The challenge:
...
The Readers-Writers Problem The Readers-Writers problem is fundamental in concurrent systems where data is shared between multiple threads:
Readers: Can access data simultaneously (read-only, no conflicts) Writers: Need exclusive access (modifications can’t overlap) The challenge: Maximize concurrency while maintaining data integrity.
Real-World Applications This pattern is everywhere:
Databases: SELECT queries (readers) vs UPDATE/INSERT (writers) Caching: Cache reads vs cache updates Configuration: Reading config vs reloading config File systems: Multiple readers, exclusive writes Web servers: Read sessions vs update sessions Readers Preference Solution In this variant, readers get priority:
...
The Drinking Philosophers Problem The Drinking Philosophers Problem is a generalization of the classic Dining Philosophers Problem, proposed by K. M. Chandy and J. Misra in 1984. Unlike the dining version where philosophers share forks with immediate neighbors in a circle, drinking philosophers share bottles with arbitrary neighbors based on a conflict graph. This makes it much more realistic for modeling real-world resource allocation.
The Scenario The drinking party has:
...
The Model Context Protocol (MCP) Server represents a paradigm shift in how AI systems interact with tools and data sources. As we move deeper into the age of AI-powered development, understanding MCP and its implications is crucial for developers, architects, and technology leaders.
What is MCP Server? MCP (Model Context Protocol) is an open protocol developed by Anthropic that standardizes how AI assistants connect to and interact with external tools, data sources, and services. Think of it as the USB standard for AI-a universal way for AI models to plug into any tool or service without needing custom integrations for each combination.
...
You don’t need venture capital to steal good ideas. Here are battle-tested practices from exceptional companies that you can implement tomorrow, regardless of your team size or industry.
From Amazon: The Narrative Memo What They Do:
Amazon banned PowerPoint in 2004. Every meeting for important decisions starts with 20 minutes of silence, reading a six-page memo written in full sentences.
What to Steal:
You don’t need six pages. Start with one page. The format:
...
To all software engineers: if you’re not learning agentic workflows, you’re falling behind fast!
Not learning agentic workflows in 2025 as a software engineer is like refusing to learn Git in 2010.
The landscape is shifting rapidly, and those who adapt will thrive while others struggle to keep up. Agentic workflows aren’t just a trend-they’re becoming the new standard for efficient software development.
Exciting Agentic Frameworks and Tools You Should Explore Here are some cutting-edge tools that are revolutionizing how we write code:
...