4 Ways House Music Taught Me to Code
Tags: beginners, writing
Published: 2022-03-19 17:46:37

**Before joining Flatiron Software Engineering program, I wore a few different hats**. Graphic designer, day trader , branding manager, digital marketer , and my favorite, music producer. Just to name a few. 
They all have indirectly contributed to my growth as a software engineer. But music production has made the path of software engineering feel very familiar. 

**For context**. Let's rewind to May of 2016. I graduate from university with a BA in Economics, with no ambition to pursue the career path I spent the last 4 years building. My greatest fear is of regret. The life-long regret I'd experience if I never pursue my passion of becoming a music producer. For the next 4 years , I learned the ins and outs of EDM music production. 

**Here's how my affinity for house music has prepared me to become a software engineer**

![Ableton Live & VSC](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8agqq60j6a3xzulsukwe.gif)

**1 | Workspace and Workflow**
Just like code editing, there are a few industry standard workspaces to choose from. My DAW (digital audio workspace) of choice is Ableton Live. For code editing, I prefer Visual Studio Code. Both interfaces are very similar. Folder and file management exists on the left-hand side. The main display is used for building and arrangement. This area is a visual representation of the actual project you are creating, including its molecular anatomy.

**2 | Task Packaging**
Mix Busing and effect chains in Ableton are much like algorithms and functions. Effect chains and buses group a set of effects, or ways to manipulate a sound (data) , in a specific sequence which produces a new sound. The predictability of the chain is dependent on the effects used. Mix busing is normally used as a tool to merge multiple tracks into one, to make them sound cohesive. 

**3 | Information Manipulation**
At its simplicity, sound is a form of data interpreted by our hearing faculties. Much like any coding language, Ableton provides many tools to manipulate this data. Ableton allows for looping specific sections of a song, parameter automation, file linking , and much more. You can even create your own tools to implement across different projects. Very similar to a script library.

**4 | Learning**
This section is much less about the actual tools , and more about the process of mastery in both endeavors. I have spent thousands of hours in Ableton, production forums , Youtube tutorials , and communities learning and sharpening my abilities as a producer. Most of us are fortunate enough to have the answer to every question through the power of the internet. 

**The greatest takeaway from music production I have is to finish out every project you start. Your first projects are not going to be a home run, and that's okay. Learning to start and finish a project is an important skill all in itself**.There was a time where I'd create a 16 bar loop in Ableton, and it would sound amazing. But I'd get stuck and move onto another idea. I had all of these great loops, but no finished songs. Finishing a project is a skill that requires training. The only way to create your 50th app is to create 49 more before it.


I'm sure the parallels between music production and coding will continue to develop as my experience as a software engineer develops.