Wednesday, October 10, 2012

Rewind

Origin

I started this blog a little over two weeks ago after getting stuck for an hour on a really simple Ember.js task which didn't require any knowledge that I hadn't already used successfully (or so I thought).  This was after a month of hard learning and developing!

So I threw up my hands and decided to start back at the beginning with a simple "Hello World" Ember app and explicitly test all of my assumptions about Ember setup, initialization, and various basic concepts.  And if I was going to do all that work, I might as well document it.  Thus was this blog born.

Prologue

While the setup/init post was the first one I had in mind, I naturally had to open with a generic "who am I/what's this blog" inaugural post.  After that, it made sense to first make 2-3 survey posts using all the notes I had accumulated about the libraries, docs, and other community resources, as well as some basic debugging tools.

By the time I was ready to start in on debugging (after four Tools & Resources posts), I realized I wasn't going to be able to cover Firefox/Firebug/JavaScript/Handlebars/Ember all in one post.  So I broke Debugging out into a separate series.

Going Backwards

Three posts later, I was finally ready to actually talk about Handlebars/Ember debugging tips.  Except it's silly to cover that before covering the basic elements of Ember itself, which those features build on.  And if you really want to learn Ember well, you first need to dig into Ember Metal, which provides a bunch of important generic features/libraries on top of basic JavaScript, and sits underneath the Ember application framework (kind of like ActiveSupport for Rails).

But if you want to understand Ember Metal and appreciate what it's doing and why, you first need a solid grasp of core JavaScript — how it works, what it offers, and what it's missing.

The Beginning

...and that brings is to this post, which is titled Rewind.  In two weeks this blog has gone from mere whim to the product of 120+ hours of customization, research, writing, expansion, and promotion.  With so much invested, and so much opportunity, I want to take the time to do this right.

Starting with the next post, I'm going to begin a detailed pre-journey through JavaScript essentials.  I hope this isn't disappointing to those of you who are already comfortable with JavaScript and want to get to Ember right away.  As a JavaScript noob, I've learned the hard way how an evening of studying the basics can prevent many long evenings of pain and frustration.  The mission statement of this blog is to document my journey to help others avoid that same pain.

(Time to press Play.)

No comments:

Post a Comment