Learning to Code is like Learning to Cook

How learning changes when the subject matter requires creativity

Sarah Cohen
4 min readOct 4, 2018

Writing code is an area that I am determined to master, but for somebody like me, this is a daunting task. I’m impatient, I struggle thinking computationally and have a hard time with spelling. I have always excelled in creative, right-brained subjects but have had to truly work to understand systematic, left-brained or mathematical subjects. This even transposes to my hobbies.

For example, when learning to sew, I despised having to “measure once and cut twice.” I never wanted to stop and fix the machine when it was jammed. In contrast, my boyfriend, an engineer, loved fixing the machine and helping me work out the math for patterns. I didn’t want to sit and practice skills without context- I just wanted to make things.

This metaphor made me think about why I learn the way I do. It’s obvious. I am a creator, I want to make things. I approached this process in the wrong way initially. I was looking at it as an academic challenge, trying to understand the concepts and the “why” behind every rule. I was reading hours of material and taking notes for every concept. It’s not like that process wasn’t working- it was just extremely slow. Enter creative coding.

Coding does not have to be black and white. There are several paths to get to the same answer. It can be a creative outlet, and the possibilities are endless. This week has shown me that coding is not necessarily meant to be learned in the same way as other subjects. In fact, it reminds me of learning to cook.

I am a terrible cook. The last time I baked brownies, I set them on fire. Yes, actual fire. And they were boxed brownies. I was ambitious and added marshmallows on top- great idea in theory but poorly executed. But I was determined to salvage them and ended ups scraping off the charred tops and eating the bottoms. (Hey, you gotta do what you gotta do.) My family never lets me live it down.

But in the same vein, a few years ago, I successfully made risotto for my boyfriends birthday. It is his favorite. For those of you who don’t know, it’s a tedious process and requires some time. I was not aware of that fact when I picked the recipe, bought the ingredients or turned on the stove. But I dove in and gave it a try, and by some miracle, it turned out delicious.

Writing code and cooking are both expressive, complex activities that require some basic knowledge of how things work. However, you can’t learn either skill without doing. Each skill is learning to piece elements together in order to build something out of nothing. You wouldn’t be a chef if you never practiced in the kitchen, regardless of how much reading you did. Being an excellent chef requires tasting the food, getting your hands dirty and making a mess of the kitchen.

I may be a terrible cook, but learning to cook is fun for me. Failures are laughable and there isn’t much pressure on the outcome. I love spending time on Pinterest browsing recipes or watching shows on the Food Network. Nothing is more motivating than seeing what you have the potential do. So I set out for some inspiration.

There is a vast amount of amazing work out there. This website might be the coolest thing I have ever seen. I scrolled through libraries and frameworks for hours. I found an awesome library called OriDomi, which I felt would play well into my final project.

So I played around. I eventually came up with this.

It is nowhere near done, but I am excited about continuing development on this concept. The idea is that eventually, you will be able to inflate and pop the balloon, as well as write your own message on the paper.

These libraries are the equivalent of a Blue Apron to me, tempting me with beautiful visuals, unique flavors and an easy to use, well-documented process. Jumping into creative coding has enabled me to make things instantly. You do not have to understand every kitchen technique to be a functional cook. You don’t even need to understand the ingredients in a recipe to end up with something that tastes good.

Of course, I know this isn’t a Blue Apron situation. I still need to learn the fundamentals and have a vast amount of work to do when it comes to learning to code. But at least now I am not afraid to dive in, burn some brownies and eat them anyways.

Link to repo: https://github.com/sarahcohendesign/assignment-4

--

--

Sarah Cohen

Experience Design Student | CMCI Studio, CU Boulder | Inspired by good coffee, sunny weather and passionate people.