I’ve got this theory.
The secrets to the universe and complete understanding are hidden everywhere and can be found in everything (hmmmm…..maybe this isn’t my theory after all….).
For the past 18 years (give or take) food has been my subject and I’ve delved deep into it.
I get the feeling that in any skill or subject, if you really dive deep, you begin to gain a certain wisdom and understanding that is pretty universal. I use food as a way to articulate theories or explain concepts, simply because it’s the subject that I know most about.
When I compare my knowledge of code and programming to my knowledge of cooking, it becomes vaguely terrifying to realise just how little I know of the subject.
I’ll elaborate by using Lasagne as an example (being a broadly understood concept of the physical world).
Fundamentally your average Lasagne breaks down into three components – the red stuff (Ragu), the white stuff (Béchamel) and the pasta layers. Often cheese plays a heavy part in this but lets just maintain the process of abstraction and keep it simple.
When teaching a typical early stage chef how to make this dish you would break it down into these elements. Later you may bore them to tears waffling about the intricacies of a crap Lasagne versus a great Lasagne (and I have to resist here) but in a nutshell you would talk about a really great ragu (meat or no meat) a technically perfect classic béchamel and even possibly freshly rolled pasta sheets.
However learning to crawl before walking would start with a process of chopping an onion and maybe some garlic to start the Ragu.
But hold on!
In this analogy of the dimensional crossover between cooking and code; what the hell is an onion…?
Ah yes, here learning to cook does have an advantage over learning to code. During childhood and generally growing up, most fortunate individuals have been introduced to basic ingredients that we are able to eat; fruit, vegetables, meat, fish etc. so we aren’t strictly starting at ground zero. Equally most of us will have at least a basic comprehension of a hob, pan or oven, maybe even a knife and its ability to chop stuff into smaller stuff. Our basic knowledge of physics – making stuff hot or cold, chemistry – burning stuff and bio-chemistry – getting fat from eating ice cream, is also an advantage.
Therefore, going back to the ragu, to chop an onion, some garlic and fry gently with a little oil in a pan is an algorithm many of us could perform to some degree – albeit with differing levels of refinement or success.
What I’ve come to realise is that in the world of computer programming, not only am I just being told what an onion is, I’m only just discovering that it’s something that I can eat.
Not only that but I’m yet to discover the hard way that it’s also much nicer to eat once the skin has been removed, the dirty root end has been sliced off and it has been gently sautéed for 15 minutes in a pan with some light olive oil, a pinch of sea salt and a bay leaf. Right now I’ve just got a dirty onion, I’ve no idea what the F%&* the other things are and as far the process of chopping, frying etc, I’d get a haemorrhage just having someone explain it to me.
A knife? Which one? What do you mean the sharp edge?
Bollocks I’m bleeding!
Apply heat…… you what? slow down.
Caramelisation…????? hang on, I’m confused.
This is stupid! It makes no sense.
We haven’t touched upon the other elements yet; slowly simmering the Ragu, making a pasta dough (what’s flour..?) or even turning the oven on.
This is what I’m beginning to grasp about learning code. So much is completely alien and new to me that it’s easy to feel overwhelmed and often, frankly pretty dumb. Strangely however this enlightenment gives me some confidence and also a little boost of enthusiasm and excitement. I’m so utterly at ground zero that my face is feeling the crumbs on the floor but looking upwards, I can see there is so much yet to see and experience.
In the world of food I’ve always loved the vastness of the world to explore and learn, now I’m fortunate to be embarking upon another adventure.
Just like teaching the fundamentals to a new Chef, the basics take time to learn and everything seems alien for the first time. However with patience, application and attention the skills do build and with them great rewards too.
In the world of coding and software development I plan on learning to make the best god damn lasagne ever!