Hey, let’s build a retro synth music player! (Part 1)

Just for fun, I’m going to build up a synth music player from the ground up. The goal will be to come up with a functioning music player that can play music as you’d hear it on something like an old NES from ’80s.

In the end, we’ll have working code that can play music like this:

I made that video from 2011, so I’ve tackled this before. I want to re-do it because I love good design principles and figured this would be a great way to help others who are learning about software development.

Software development is not just about good design, but good planning and good engineering. We have to make trade-offs as we build anything, and in this blog I’ll try to illustrate how we make these trade-offs to get good results quickly and efficiently. I’m a big fan of Lean Software Development principles, so my decisions will be driven by those principles.

This will take several blog posts, of course, and hopefully you’ll learn something along the way. Stay tuned!

Oh yeah, you’ll find all the code here: https://github.com/allenu/Synthie