Git for Real People: From Your First Commit to Surviving Merge Conflicts

I’ve been using Git for about four years now and I still occasionally do things that make me go “what the hell was I thinking?” This is not that kind of guide. You know the ones — they exist by the thousands and most of them are written by people who assume you’ve never used a terminal before or — more annoyingly — people who assume you already know everything and just need a cheatsheet. This is somewhere in the middle. ...

June 19, 2026 · 9 min · Sanjay Upadhyay

Pi.dev: The Coding Agent You Actually Control

Pi is a coding agent that doesn’t tell you how to work. Terminal-native, extensible via TypeScript, with 15+ providers and four operating modes. Here’s how it works, what makes it different from Cursor and Claude Code, and how to build your first extension.

June 3, 2026 · 7 min · Sanjay Upadhyay

Docling vs. Qwen2-VL: How to actually get text out of PDFs

I spent the weekend comparing IBM’s Docling and the Qwen2 Vision Model for document extraction. One is a structural architect, the other is a creative genius. Here is which one you should actually use.

December 5, 2025 · 4 min · Sanjay Upadhyay