Dev Log - Guitar Trainer - Introduction

When I was first learning Ember, I didn't really know anything about MVC, and my first project was something I wanted to do because the Web Audio API had just come out, and I'd recently gotten an electric guitar and was trying to learn with Rocksmith.  Rocksmith is a good product, and it comes with a lot of exercises for things like chords and scales, but it didn't have anything for arpeggios, so that seemed like something I could make.

Ember was young at the time, and didn't have a lot of the niceties it has now.  I also misused a lot of its features, but I also had a weird use case.  It's great for CRUD apps, but the view classes it had at the time weren't built for 3D.  I basically just used the Ember Object and computed properties, had an index route, and freestyled the rest of the structure.  

I got something working, but it was very barebones, difficult to work with, and I couldn't really make changes to it without a ton of worrying about breaking things mysteriously, because the cowboy architecture and the lack of tests.

Since then, the frontend framework world has settled on more component based architecture, and Ember's no exception.  Ember's testing story has also greatly improved, my understanding of the need for testing has improved, and the general tooling around Ember is much better, with Ember-CLI.

So I wanted to revisit the project, and document at least some of the process.  I'm not shooting for a beginner's tutorial for Ember, as this is still a weird use case, and Ember's still not built for 3D, but I at least wanted to document some of the decision making processes, and weird spots where I might have to shoehorn something in to make it work.

>