Stephen Froeber

Curious. Interdisciplinary. Creative.

Welcome! I love to create, teach and solve problems. Feel free to explore and enjoy! To listen to my music, watch my videos, or see my photography, use these links:

The Importance of Recognizing Long Term Growth

The Importance of Recognizing Long Term Growth

I was a composer, and audio specialist, for film and video games from 2012-2018. From 2015-2018, I did it full time as a freelancer.

I loved the work.

We lived in Germany at the time, and it was the most productive, creative season of my life so far.

As time has a tendency to do, we eventually came to a place as a family where we had to move on to the next season.

I had every intention of continuing in music. But as we took a pragmatic look at our potential new home, (St. Louis, MO) I realized that I was going to have to branch out and take a detour from music to make it viable for the family to have sustainable existence after the move.

Little did I know that I would be taking a longer break than I realized. I'd be lying if I said that hasn't made me sad in many ways. But, as I get deeper into this new path as a web developer, I'm realizing that for everything I miss about music composition, there is a very satisfying sometimes analogous challenge to become a better developer.

The skills that I needed as a composer seem, superficially, quite different.

But there are deep, conceptual similarities that are beautifully informative.

But, let's back up for a second.

While I was freelancing as a game audio professional, one of the critical skills was learning how to read code well enough to find your way through the game, and hook up your audio assets. Said differently, I didn't need to be able to write it from scratch, but I needed to be able to read it well enough to find my way around. Those who could write it had a distinct advantage.

So I went through several seasons of haphazardly learning the basics of Java, C#, and JavaScript, since those were the languages I was encountering on the projects I worked on. I've also learned HTML and CSS through the years, just as a hobby, and I used that to help build parts of my composer website.

By learning in this way, I had several knowledge gaps which hindered gaining a deep conceptual understanding of why the code worked.

During that time, I created this tutorial on using a specific music application, made by Apple, called MainStage.

One of the facets of my freelance business was teaching application lessons for musicians looking to learn how to use those tools in their own performances and productions.

The YouTube tutorials that I made are, thankfully, still bringing in people with interest in learning, even though music work has transitioned to a side hustle.

I recently had someone get in touch with me about that tutorial with specific questions.

I went back and re-watched it, to refresh what I had talked about. To my great surprise, I was able to finally see some long form growth.

At the time that I made this tutorial, I still had a gappy, linear understanding of scripts. I could make small edits to parameters, if the rest of the code was working, but I was totally lost trying to change core functionality.

With the hard-to-overstate changes we've been through in those 3 years since I made this video, it was really nice to have a moment to see that all of the formal, computer science training in my current degree program is starting to pay off.

I recognize things that were confusing to me then, that are glaringly simple now.

In watching the video for 3 minutes, a whole slew of ideas came to me for how I would do this tutorial better now.

With the wider world making it challenging to feel any kind of joy right now, I was deeply grateful to have a small sense of accomplishment in this domain.

The seemingly slow process of becoming a developer is paying off.

And that feels good.

Thoughts on the Open Web

Thoughts on the Open Web

I Don't Want to be Your Mentor

I Don't Want to be Your Mentor