I have heard from my fellow programmers about cooking, the more they are able to handle abstract problems at work, the better they are at cooking. Cooking here in the context is not just about making a tasty dish, but cooking a meal that is tasty, healthy in the long run and maintaining the kitchen well to keep it ready for subsequent meals.

A majority of the us just concentrate on a single (or two or three) nice meal in the taste and quantity aspect as great cooking, but do not see it as a sustainable thing that we will do it on and on. Why I drew parallels with programming is what I learnt at work while coding that was applicable in the kitchen, following are a few.

  • Always leave the code better than how you found it, (Campsite rule).
    • Leave the kitchen in a condition that you can cook your next meal immediately. Don’t leave it in a mess for someone else to cleanup.
  • Abstractions help you to concentrate on things as a whole, instead of the simple sum of the parts. You know how things work at ground level as well as how it looks when seen from high above.
    • This concept is key to mix and match, new recipes can be born and improvisations based on the abstract taste. Substituting Almonds for coconut, ripe tomato for tamarind. Understanding how things blend with each other makes a good cook.
  • Lessening feedback time, fail fast.
    • Taste well if possible involve another person when trying new dishes. This will help to avoid throwing away a dish cooked for two hours.
  • Use of automations for mundane repeatable things.
    • Use electronic devices with timers for mundane activities like boiling milk, water, rice cooking, grilling, baking, roasting, washing so that mind is free to concentrate on things that need attention. Cleaning spilt hot milk due to forgetfulness sometimes takes as much time as cooking a meal.
  • Acknowledge when you don’t know and reach out for expert opinion even if the manual says it to do obvious things.
    • Whatever we read about cooking and then scientifically do it, there are still many artistic aspects that needs to be done to be a good cook. Listen to people who cook well and do it as they say.
  • There is a routine that helps, keep it sustainable so that you will come back next day with enough energy to go through that day again and again.
    • You can plan a great feast, but then you should give a break to recover to your normal rhythm of running the kitchen. Over time you will learn to cook a lot in a less amount of time.
  • Shortcuts give you that edge, but that is an easy way out that will lead you back into mess again.
    • It is very tempting to use taste enhancers, chemical preservatives etc to get most out of our cooking but it will be damaging in the longer run to our health

The reverse also is true, those who manage to cook well, will be good programmers.