More I cook, bigger the chances…

Ricardo Lapão
Reflective Practice on Life
3 min readMay 7, 2021

I love cooking, it’s relaxing, creative and even a spiritual kind of experience — specially when I am “in the zone”. One of the things that I love about cooking is that although I have a dish/result in mind and notion of a a path to follow, I allow myself to explore the intuitions that arise in process, and sometimes I end up with a slightly-better different dish of what was my inicial goal.

At the some time, I am far from being a patient person. I noticed that after some time of cooking my inner alarm clock starts to poke me to speed up and finish things (probably because I’m hungry).

What I noticed from that process is that, for my own criteria, there is an optimal duration for the process. If it’s too short thing get raw, if it’s too long everything gets over-spiced, and it’s like everything tastes the same. As a result, it kills the pleasure of tasting it. Also, sometimes I end up with a very different dish and flavour that was not what I wanted to eat which makes me frustrated. It’s like a curve.

Sometimes, I realise that I’m going down that path in the middle of it, but it’s usually too late. I’m already drunk in the world of flavours. Sooner I stop, less is lost.

I found my self wondering about how that is analogous to programming, or even other creative tasks in my life.

When I have a programming “task” to do, more than what I wished for, things get complicated, for many different reasons (new requirements, unseen problems, new opinions, etc.), and when I don’t have ability or the possibility to stop those interferences, things get fuzzy, and “everything ends up tasting the same”.

What I’ve learned (probably “learn” is still a wishful word) is that the more I “cook” in a programming “task” higher are risks of getting away from what “I” wanted to cook. So, the mirage of opportunity cost often increases the risk for frustration, and future problems.

At the same time, I notice that as I get further way from my “optimal time” it kills my te(a)sting desire (probably I’m hungry), which often leads me to a place where I just want to finish the task, and postpone for a future time to lead with eventual bugs or unforeseen scenarios. As in cooking I notice that the pre-preparation is a crucial factor for this.

All those things were not completely foreign to me, but after some more thinking I noticed another thing. That the more I extend the task, the harder it gets to have a bodied notion of what I have done. The connection between the goal and the result gets fuzzier and somehow purposeless — it’s like everything gets over spiced and tasting the same.

Another unexpected insight was that not only the “overcooking” leads to a higher probability of bugs, but it also leads to harder bugs to find and solve, since I’ve moved away from that initial clear perspective and bodied feeling of what I am doing.

One big difference between cooking and programming is that in the end I eat what I eat, and if it’s a little raw or over spiced everything is fine, not sure clients want to eat an overcooked dish.

--

--