Hey, I’m Nitin 👋

Python backend • Flask/FastAPI • SQL. Short, well-explained code guides.

Day 1: Python Is Not Running Your Code (Execution Model Deep Dive)

You write Python. But Python is not executing your code the way you think. Today, you stop treating Python as magic. Today’s Goal By the end of today, you will: Understand how Python executes your code Learn what happens between .py to execution Build a mental model of the Python interpreter The Illusion You write: x = 10 y = x + 5 print(y) You assume: Python reads this line by line and runs it That assumption is wrong. ...

April 23, 2026 · 3 min · Nitin S Kulkarni

Day 2: Variables Don't Store Values (Python Memory Model)

If you think x = 10 means “x stores 10”… you are already misunderstanding Python. Today, we fix that. Today’s Goal By the end of today, you will: Understand how Python stores data in memory Learn references vs values Understand mutability Avoid hidden bugs The Illusion You write: x = 10 y = x You think: x and y both store 10 Wrong. What Actually Happens Memory: [10] ← object x ─────┐ ├──→ [10] y ─────┘ Variables do not store values. They store references to objects. ...

April 24, 2026 · 2 min · Nitin S Kulkarni

Day 3: Your Data Structures Are Not What You Think (Lists, Tuples, Sets Internals)

You think a list is just a collection of items. It is not. It is a memory-managed structure with real trade-offs. Today, you stop using data structures blindly. Today’s Goal By the end of today, you will: Understand how lists, tuples, and sets work internally Learn time and space complexity Choose the right structure based on behavior and cost The Illusion data = [1, 2, 3] You think this stores values. Reality: [ ptr | ptr | ptr ] -> references to objects A list stores references, not values. ...

April 25, 2026 · 2 min · Nitin S Kulkarni

Day 4: Dictionaries Are Magic (Until They Aren’t) — Hashing & Collisions

You think dictionary lookup is always O(1). That’s only half the story. Today, you understand how dictionaries actually work. Today’s Goal By the end of today, you will: Understand how dictionaries store data Learn how hashing works Understand collisions and their impact Know when O(1) breaks down The Illusion user = { "name": "John", "age": 30 } You think: This is just key-value storage Reality: This is a highly optimized hash table Dictionary Internal Model key -> hash(key) -> index -> slot -> value Dictionary does NOT scan all keys. It jumps directly using hash. ...

April 26, 2026 · 2 min · Nitin S Kulkarni

Day 5: Your Function Calls Are Not Free — Call Stack & Execution Flow

You think calling a function is cheap. It isn’t. Every function call has a cost. Today, you understand what actually happens when Python executes functions. Today’s Goal By the end of today, you will: Understand how function calls work internally Learn what a call stack is Visualize execution flow Understand performance impact of function calls The Illusion def add(a, b): return a + b add(2, 3) You think: Python just jumps into the function Reality: ...

April 27, 2026 · 2 min · Nitin S Kulkarni

Day 6: Imports Are Not Just Includes — Module System & Execution

You think import just brings code into your file. It does much more than that. Today, you understand how Python loads, initializes, and caches modules. Today’s Goal By the end of today, you will: Understand how Python resolves imports Learn module execution model Understand import caching Avoid common import pitfalls The Illusion import math You think: Python just loads math Reality: Python searches, loads, compiles (if needed), executes, and caches the module ...

April 28, 2026 · 2 min · Nitin S Kulkarni

Day 7: Errors Are Not Failures — Exception Handling & Control Flow

You think errors stop your program. In Python, they are part of control flow. Today, you understand how Python handles errors under the hood. Today’s Goal By the end of today, you will: Understand how exceptions work internally Learn stack unwinding Use exceptions correctly (and not overuse them) Understand performance implications The Illusion x = int("abc") You think: Program crashes Reality: Python raises an exception object and unwinds the stack What Is an Exception? An exception is: ...

April 29, 2026 · 2 min · Nitin S Kulkarni

Day 8: Stop Creating Lists — Iterators & Generators (Lazy Execution)

You think Python processes everything immediately. It doesn’t. Python can be lazy. Today, you understand how iteration really works under the hood. Today’s Goal By the end of today, you will: Understand iterator protocol Learn how generators work internally See how lazy execution saves memory Avoid unnecessary allocations The Illusion for i in [1,2,3]: print(i) You think: Python loops over the list directly Reality: Python asks for an iterator and pulls values one by one ...

April 30, 2026 · 2 min · Nitin S Kulkarni

Day 9: Your Functions Can Be Rewritten — Decorators & Runtime Behavior

You think a function is fixed once defined. It is not. In Python, functions are objects—and can be modified at runtime. Today, you understand how decorators actually work under the hood. Today’s Goal By the end of today, you will: Understand how decorators work internally Learn function wrapping Understand closures Use decorators for real-world patterns The Illusion def greet(): print("hello") You think: greet is just a function Reality: greet is an object that can be passed, modified, and replaced ...

May 1, 2026 · 2 min · Nitin S Kulkarni

Day 10: Python Is Not Parallel — Concurrency, Threads & Async Explained

You think Python runs things in parallel. Most of the time, it doesn’t. Today, you understand how Python handles concurrency, why it behaves the way it does, and how async actually works. Today’s Goal By the end of today, you will: Understand concurrency vs parallelism Learn about threads and the GIL Understand async/await internals Know when to use threading vs async vs multiprocessing The Illusion import threading def task(): print("running") threading.Thread(target=task).start() You think: ...

May 2, 2026 · 3 min · Nitin S Kulkarni