Blog

Karan Batra - Game Programmer
Karan Batra

I write about game dev, web, and shipping software — hope something here helps.

Know more →
Human Systems: The Body as I/O
You profile your code. You ignore the substrate running it. The body is a process with inputs and outputs, and most bad afternoons are downstream of bad inputs you've been treating as optional.
Routing Back to C [Part 3]: A Hash Table That Can Grow
Part 3 of Routing Back to C. A hash table in plain C with chaining, buckets, djb2, collisions, a working resize, and valgrind at the end to prove nothing leaks.
Routing Back to C [Part 2]: A Linked List, One Node at a Time
Part 2 of Routing Back to C. A singly-linked list in plain C, with diagrams for every malloc, every pointer move, and every free.
Routing Back to C [Part 1]: Judgment Is the Last Expensive Thing
LLMs killed the cost of typing code. The bottleneck is now judgment, and judgment needs to know what's underneath. Part 1 of a six-part series where I rebuild the things every language hides from you, in C.
FEN Strings: How Chess Positions Fit in One Line
FEN (Forsyth-Edwards Notation) describes any chess position as a single line of text. Here's how it works, field by field, with ASCII boards and worked examples.
PixelPunch LLP — Launching My Own Game Dev Studio
Why I started PixelPunch LLP, what we're building, and what's next for the studio.
My Time at SuperGaming: Indus, Battle Stars & Hypercasual
From a large-scale battle royale to a Google Play award-winning hero shooter and rapid-fire hypercasual titles. Here's everything I shipped at SuperGaming.