Harry Wolff

You can't escape my laugh.

Ghost and Ember - Together At Last

Recently Ghost decided that its admin application was in need of an overhaul. Currently built on Backbone it has slowly become hard to maintain. Backbone Models and Collections are great - extremely powerful, well tested, and very robust - however its view layer leaves a lot to be desired.

As a result there was a great discussion about what front-end framework Ghost should use. Almost every current MVC framework had some advocate, however the Ember community truly shined in the attention they heaped upon the discussion. It was not misplaced as Ember emerged victorious.

Currently I know Backbone and AngularJS pretty thoroughly having developed with both for over a year and over eight months respectively. Now that Ghost has chosen to use Ember I realized that I'd need to do all I could to learn Ember as fast as possible.

I saw that there was an upcoming Ember NYC Meetup and seized on it as an opportunity to meet some folks in the Emberworld and get some help. I saw that @ebryn, an Ember core developer, was giving a talk so I reached out to him on Twitter, to which he kindly replied.

So Thursday came and I moseyed on over to the Meetup and settled in. There were three great talks at the meetup, all of which were great for me as a beginner. The first delved into the fundamentals of Ember Controllers, and the second was how Vine used Ember. I especially appreciated one slide from @jandet's Vine presentation where she discussed some of the things she wish she had known about Ember as she was starting out, things that are oh-so-relevant for me now.

The third talk was @ebryn's where he delved into the future of Handlebars, HTMLBars. Great presentation and very exciting to hear of all the improvements that are coming down the road.

After the Meetup I was able to talk directly to Ember people and pick their brain about how Ghost could best use Ember and what to look out for as I started developing. I learned about Ember's Resolver (how Ember knows where to find the files the application needs) and Ember's Container (where Ember stores instantiations of classes). I got to become a little more acquainted with the idioms of Ember and what assumptions Ember makes to make development easier.

I left the evening excited and looking forward to working with Ember and its community. The help they've already shown is incredibly impressive and I know that they'll do all that they can to ease Ghost's transition onto Ember. Personally I'm really looking forward to rounding out my knowledge of the major front-end MVC frameworks so next time a discussion comes around I can truly give an informative answer. That aside, it's gonna be fun as heck to hack on Ember. Can't wait.