What does Photography, Cooking, and Software Engineering have in common?

Ashcir
6 min readApr 9, 2021

“‘…cause it’s levels to this s**t” — Meek Mill

For those of you who are not familiar with the work of the rapper, singer, songwriter, and activist, Meek Mill, he wrote a song back in 2013 titled “Levels”.

FULL DISCLAIMER, it’s an explicit song and not safe for work, so play at your own risk.

The premise of the song is that there are different levels, brackets, or lanes to the star lifestyle. At first pass, the song might seem simplistic and crude, but overtime I began to interpret it differently.

Before I continue any further, I must warn you that this post will be a different format compared to my previous posts. I won’t be writing a listicle, nor will I be suggesting tips to improve your life. This post will be me sharing some of the musings that occur in my overactive mind. If you’re willing to follow me on this whimsical adventure please continue, if not, then this is where we’ll part until next time.

With that disclaimer out of the way, let’s get back on track. If you’ve read my past post, you’d know that I’m on a journey to combat my depression by developing new hobbies and exercising my creativity.

I’ve started learning photography, began cooking more, and working on side projects. Prior to this, I was heavily focused on either academia or work. Both of which revolved around software engineering. As I started to diversify my interests, I’ve noticed similarities between my newfound hobbies and my profession. This was surprising to me because from a cursory glance I would never have thought that there would be a relationship between them. This epiphany is what motivated me to write this post, and I want to share my realizations with you. With that being said let’s hit the start button and commence this escapade.

Let’s circle back to Mr. Mill’s lyric, “…cause it’s levels to this s**t”.

While participating in my activities, I began noticing that that there was a commonality between them. Each discipline employed the use of levels or layers in some form or another.

Photography, uses layers to differentiate between foregrounds, backgrounds, and lighting. Cooking uses layers to separate flavor profiles and to 5combine ingredients. Software uses layers to design efficient and maintainable architectures.

Let’s delve deeper into my realizations and into the levels within my mind.

Layers in Photography

When I began learning photography I did what many of us do to learn new things these days. I Googled the hell out of it. “Photography for beginners”, “Photography tutorials”, “How to take quality photos with an iPhone” quickly flooded my browser history. After days of research, I kept noticing two common themes: Lighting and Composition.

Lighting was pretty obvious because the etymology of “photography” means “drawing with light”, but composition was a concept I neglected prior to my studies. I started to incorporate rules for taking more aesthetic pictures such as, the rule of thirds and the Fibonacci spiral into my shots. Another concept I learned was appropriately balancing and layering my shot.

You want to find an interesting subject for your foreground, and complement it with a subtle middle ground and background. Composing a great shot was step one in creating beautiful and captivating photographs. In order to take my photographs to the next level I had to learn how to use editing software for post-production, Adobe Lightroom and Photoshop specifically.

Lightroom utilizes layers to edit photographs. It breaks down lighting in pictures into highlights, shadows, whites, and darks. Photoshop uses layers to separate aspects of images, and compose them to create new images. I learned how to manipulate these values to add dynamism to my photographs. Learning how to apply layering with both tools taught me how to create captivating images.

Layers within Adobe Lightroom

Layers in Cooking

I’ve been cooking for a few years now. Leaving the comfort of my family’s nest and going to college forced me to fend for myself.

I started with the basics: pastas, rice, grilled chicken, etc. At that point in time I was cooking for survival, but fortunately I’m at a comfortable place in life where I can cook for more recreational purposes.

I have a goal for 2021 to improve my culinary skills and to learn a new recipe each month. Similarly to my photography goal, in order to achieve this, I started my Google research. My new query deluge consisted of “Tips to improve cooking skills”, “Proper knife techniques”, “What are the fundamental cooking skills”. After returning to the surface of my research, I discovered the concept of flavor profiles, and layering flavors.

Just as there are complementary colors in art, there are complementary flavors in cooking. Sweet & sour, bitter & sweet, and salty & sour are some of the combinations I started to deliberately pay more attention to. Layering these flavors upon one another brought out a new level of depth to my dishes.

In addition to utilizing these flavor profiles, I also focused on the core principles of cooking such as manipulating salts, fats, acids, and heat and the science behind them to improve my intuition in the kitchen.

Learning these rules and principles helped elevate my meals to the next level. While we’re on the topic of cooking, I’d be remiss to not take this opportunity to segue into talking about software engineering. Are you a bit perplexed what food has to do with this? Just hold on a bit, you’ll see. Here’s a clue if you’re a bit impatient 😊.

Photo by Micheile Henderson on Unsplash

Layers in Software

I hope you got the clue, it’s PASTA! Specifically lasagna in this case.

If you’re not familiar with software engineering, you’re probably wondering what do nerds writing code have have in common with a chef making pasta? Allow me to paint a picture in your mind.

Close your eyes and envision what a plate of cooked spaghetti looks like (meat and sauce are optional). Now imagine if I asked you to organize the spaghetti on your plate so that you can find the start of a noodle, link it to another noodle, and continue until you’ve organized the entire plate. You’d probably think I was either a madman, or a sadist. If you repeat the above exercise, but replace the spaghetti strands with code (or logic) you’d end up with the same result.

To the uninitiated, code can look intimidating or like a foreign language. Perhaps in the early days of the profession this was the case, but nowadays, many coding languages allow us to write code which is closer to natural language. Don’t believe me? Take a look below.

Were you able to follow the logic behind what this block of code did? I’d hope so. Clean/great code is written when its intent is clear, and non-technical people can read it.

Now let’s take a look at this code below.

Which one was easier for to grasp? Hopefully it was the first snippet.

Both snippets set out to achieve the same functionality, baking a cake. But based on how the logic was layered or organized, your initial understanding may have differed.

Code snippet 2 is what I’d consider spaghetti code, Messy and unintuitive. Code snippet 1 is what I’d consider lasagna code, layered and layered.

Despite these snippets being a few lines, we can extrapolate on the concept. A software application is the aggregation of such snippets. Well-architected applications comprise of lasagna snippets organized into bundles/packages working in concert to provide a greater functionality.

Based on this concept you can imagine how frustrating and cumbersome an application designed and built like code snippet 2 must be to maintain.

As high-caliber engineers and craftsmen, we should strive for lasagna code and architecture.

Conclusion

I hope I didn’t bore you with my musings. I just found it fascinating how knowledge can come together, and I wanted to share it.

Hopefully this piece inspired you to make associations between your hobbies and career. Hopefully it helps to motivate you and spur ingenuity with your endeavors.

Again, to circle back to the beginning, Mr. Mills might not have intended for my interpretation of his music, but that’s part of the beauty of art, right? So yes, Meek you are indeed correct, there truly are levels to this s**t. But in the fashion of the fellow rappers within your career, allow me to remix your lyrics.

There are layers to this s**t. — Ashcir

--

--

Ashcir

Software engineer by trade; engineering & life blogger; landscape photographer; and teacher by passion. Born and raised Jamaican living in an American world.