@anonymouskid, I'm 31 and have been working since I was 16. From 16 to 25 years old I did various construction jobs (tiling, roofing, etc) and always worked for peanuts - many times I wouldn't get paid on time and sometimes they wouldn't pay me at all. Including the US, I have lived in three countries and had to learn the language and adapt at each country from scratch.
As a self-taught programmer in the Bay Area (no college degree) I made around 145K at my last job - my dream job! Yet I quit and went on a trip for a few months to refuel. Now that I'm back in the Bay Area, I'm trying to start from scratch once more and it's scary. However, I have faith in myself that I-will-figure-it-out! I don't know how yet, but I know I will. After all, that was the whole point of the refueling, to put myself in uncomfortable situations and see if I can figure it out!
Sometimes you might feel burnt out, scared, angry, or confused. It's totally normal - all these feelings are as important as happiness for a diverse life. I have found that sometimes all I need is some refueling. Other times I've needed to make drastic changes in my life - for example starting a new career, moving to a different country, or committing to a hobby that has nothing to do with programming or computers.
Life is all about trying different things. The other option is that it happens on its own. When I complained to a manager once about a task, she reminded me that "It's not rainbows everyday"... and indeed it's not.
I worked with Ember for a few months and I like it a lot - it definitely deserves more recognition. One thing that frustrated me a lot in Ember was the run loop. The docs suggest that you don't have to worry about the run loop at all and its merely an implementation detail, yet we had to constantly us Ember.run, Ember.run.schedule, etc. all over the app. But of course in order to know which Ember.run methods to use, you end up diving deeply into the implementation details of the framework itself.