Thomas Fuchs
Hi, I'm Thomas Fuchs. I'm the author of Zepto.js, of script.aculo.us, and I'm a Ruby on Rails core alumnus. With Amy Hoy I'm building cheerful software, like Noko Time Tracking and Every Time Zone and write books like Retinafy.me.
   Want me to speak at your conference? Contact me!

European vs American cooking habits and why it matters for programming

March 7th, 2012

Measuring spoons (cc) yukino

Once upon a time I lived a quietish life in Vienna, Austria. I cooked a lot for friends and myself. I really enjoyed it and more importantly I just knew that I’ve learned everything there is about making meals from my friends and family and from what you “just know” about cooking when growing up in Austria.

But guess what? A lot of “it is done like it is done” is just outright wrong, incomplete or could be much better with little tweaks.

Once I got introduced to American-style cooking by my awesome wife Amy Hoy, I’ve learned lots of new stuff and unlearned old things. I’ve come to love things that I, without questioning, considered stupid before.

  • American measurement units are really convenient to use when cooking, because they are volume-based instead of weight-based, so you just need measuring cups and spoons instead of a weighing everything. (In Europe, we use volume-based units only for liquids.)
  • Even more importantly, measurement units are human-derived instead of being arbitrary set metric units. It sure is convenient to use grams in mathematical formulas, no doubt, but it’s a different story to weigh 75.6g. Just use 5 1/3 tablespoons—so much better.
  • There’s a “subculture” of (near-) scientific cooking; most importantly this book: The New Best Recipe. These guys dissect recipes and make them better by iteratively optimizing for best results. I’ve never seen done this by anyone in Austria or Germany. (This is a very important cultural differences, striving to be better versus striving to uphold the current/past state of affairs. Wouldn’t it be great to have even more delicious Strudels and Schnitzels?)
  • I’ve learned that cold coffee (even from a day ago) is still decent when you microwave it for a minute.[1] (In Europe, Microwaves are considered evil.)
  • Big American fridges, ’nuff said. (People in Austria used to lol about them; now the the same sizes are getting popular there.)
  • Eggs that aren’t refrigerated don’t go bad instantly. Amazing. (Once you do refrigerate them, they need to stay refrigerated, however.)

Note: there are many things that Europeans do better—for example the quality of raw ingredients like milk, butter, eggs, and so on is often higher than what you can (easily) get in the US. And I wish I could get my hands on Austrian bread when I’m in the US.

So what this all have to do with programming?

It doesn’t matter if it’s cooking or programming or doing whatever, really—you can learn from other people and how they do things differently from you. Don’t dismiss them outright. Hear what they have to say. Here’s one concrete example for myself that I’ve stumbled upon: I dismissed the meaningful indentation in Python, but later I’ve come to like it in CoffeeScript.

However, if something doesn’t hold up to the claims, or is doing things objectively wrong—it’s OK to be dismissive. It’s good to be opinionated. Just think about it for a second first, and better yet try it out. You might be surprised about what you fall in love with that at first seemed outlandish or stupid to you.


[1] Coffee nerds, kill me now.