These are the four variables that must be recognized and related during the performance of an important act in human life. The act, cooking of course! I was first introduced formerly to the art of cooking by my mother just prior to moving into my new bachelor pad. I figured I would have to acquire the skill to cook amazing Haitian dishes like "diri avec sauce poi" and "boulettes" if I was to get over my home sickness for my mothers food. Unlike most sons belief that their mother cooks better than any other, in my case there is a special circumstance...namely, it is true! Okay, well I suffer from the same preference out of nepotism that most sons exhibit but my mother can really cook in the kitchen. I remember watching her prepare for a big cooking operation, the entire kitchen would be packed with items ready to be washed, cut, boiled and stewed and by the end, delivered to each plate a veritable symphony for the pallet. Beethoven in edible form served with a Caribbean flair. Back then I seldom thought about trying to break down the process of cooking from the apparent chaos to the actual underlying order that was behind the task.
Cooking , just like programming and engineering and art is an object oriented skill, one that proficiency can be gained by simply recognizing how the operative objects (the raw materials) inter operate in order to render the final result. As I've talked about in the past, object orientation finds itself expressed in everything. It works to encapsulate the complexities of various operations from a given task in order to allow focus on the task without being mired in conditions that at the moment may be irrelevant. It was only after I started taking my formal lessons on how to cook from my mother over 5 years ago that I was fully able to abstract the operations and steps involved and distill the entire creative act to the dance between the 4 attributes indicated at the start of this post.
Obviously, this is very important and in cooking is used to perform critical acts. Heat serves to catalyze chemical reactions between ingredients, serves to thaw ingredients that were previously frozen, serves as a tool for breaking down cellular structure. The knowledge of just how much heat affects a particular ingredient is critical to timing inclusion or removal of ingredients as well as determine when the dish is ready to eat.
It is very easy to ruin a meal by not properly judging the amounts of the various ingredients that are put together to create the final creation. Measure at various points(Time) during the preparation and cooking process can make or break a meal by determining how ingredients combine both to produce a desired final texture and as well to produce a pallet pleasing experience. Measure acts like a metronome, to the timed delivery of lingual experience of the various ingredients, without proper measure , temperature may be ineffective to provide the desired level of chemical or physical change to realize a pleasing texture in the given cooking time.
Anyone who has over cooked a pot of rice (something not as easy to avoid as most first timers think) knows the importance of time. In combination with temperature , time is a key determining factor of the final texture that the dish will have. Humans have a desire to both have their food taste and feel good and time is critical to allowing or providing the texture preferred. However measure and Temperature are critical here as well, as if the measure of ingredients exceed the specified time they may not properly be prepared, similarly temperature of preparation can put the breaks on a good meal if not matched to the cook time correlated to the measure and temperature needed to perform given actions...
The difference between pasta al dente' and sticky-getti can determine if a person will even eat some foods. Texture is something people are very finicky about, but the right texture may be difficult to realize without paying attention to measure, time and temperature depending on the ingredients of course. So another variable must be factored into the overall cooking act in order to ensure that the final meal both tastes and feels as preferred by those about to ingest the meal.
These four concepts weaved together with a growing experience library of ingredient and how they feel after being combined in various quantity, when subject to heat for a given time. Each session in the kitchen fills our experience library with these lessons and we learn to make better music (if we are paying attention) over time. In the same way, coding practice leads to experience recognizing the variables here. In this case there are new concepts to inter operate, class objects and variables, memory, processor speed, bandwidth, algorithms but the process of interaction is similar to that of cooking. We design classes to minimize memory utilization and or processor speed, we constrain object interactions to conserve bandwidth, we employ clever algorithms to efficiently collect, sort or iterate objects and variables. The same game of making music out of the ingredients through our experience and knowledge of the various bits is involved and similarly through practice we can yield a final dish that is exceedingly pleasing to the pallet, metaphorically speaking of course. ;)