I have, in front of me, a stack of paper napkins from your average stereotypical fast food joint. There’s nothing special about them. No words or designs; just plain white napkins. And they’re awesome. Let me explain.
Some things just work best when written on napkins. I know this may sound more like a Douglas Adams joke than anything approaching the truth, but I find it to be true. Napkins are small and inviting. They’re not imposing. You never start to sketch out something on a napkin and think “Oh no, I’m getting in over my head.” Whereas if I start with a full sheet of paper and you only cover the upper left corner, some sort of bizarre OCD-like impulse is urging, “Noo! You must write more!” But napkins are versatile. They are small and inviting, yet if you really need more room to think out a problem, they unfold to reveal more space. And if you still need more space, you can unfold them again and then again! It’s like magic. Only with folding.
Napkins are pleasing to write on. Paper is hard and occasionally grating. Napkins are soft, inviting, even comforting. And napkins are around in many places where normal paper isn’t. It’s the perfect object to take notes on or quickly figure something out. So I keep a stack of paper napkins by my computer keyboard. Just yesterday, I was working out some tricky modular arithmetic rules for a sliding window network transport algorithm. It gets to be rather tricky when you’re limited to only two times as many sequence numbers as the size of the window itself.
I pored and stared over the code for a good fifteen minutes, not really coming up with a solution that worked in all instances. So I switched over to a napkin, and within five minutes, I had sketched out a couple examples and figured out the exact equations that I needed. Every programmer should keep a stack of napkins by their computer. It puts you in a different frame of mind in approaching the problem, a frame of mind that can be extremely helpful. I can’t say whether it’s the aesthetic characteristics of writing on napkins or just the physical size limitations that force one to use small, structured sketchings, but prototyping on napkins really is useful.