The jugaad of code Bobby Richter Right now, I’m at NID in Ahmedabad, India. Walls and closed windows are sparse, letting the noise of the city pour into workspaces. The city feels alive, and it’s full of makers, fixers, cooks, and entrepreneurs. Here, the way I write, and learn to write code feels very natural. It’s part of the process that I’ve been trying to instill in students since I started to help them with their own projects during the caravan. However, there was already a great colloquialism that described this problem solving method in one word: Jugaad. Asking someone to explain the concept is difficult and interesting, but it’s obvious when you get to see it or use it to build or learn something. At some point, learning any new piece of technology has to extend beyond the Wiki/manual etc. In fact, when I learn a new programming language, there’s a certain magic phase somewhere near the beginning where I know very little about what’s really going on, but I know enough to force pieces together until they do generally what I need: somewhere between running the interpreter/compiler and writing a tiny game. Then comes hours of teasing it apart, learning more about how each piece actually works. But, those first “Ah-hah!” moments are so gratifying: they are what inspire you to forge on and see what else you can do. They are also the reference frame for building things. Most of my first projects/experiments are new pieces of scaffolding stacked on top of old pieces of scaffolding. And every once in awhile, when I figure out a new trick, I iterate on things I’ve already done to make them better, smaller, and faster. I can’t think of a better way to learn something. The problem-solving environment that a text editor and a debugger provide is special: it lets you constantly make safe mistakes, and learn from them instantly (provided that you find the semicolon that you were missing). And when you have that sort of setup somewhere in life, it’s an incredible