Who Should Go?

Choose this training session if you're an intermediate web developer with a good understanding of HTML, CSS, and JavaScript. Prior experience with Ember is not expected, but you should have a strong understanding of working with the DOM using jQuery.

You should already be experienced with web development, but have a desire to ramp up your skills to create more "application-like" experiences.

We expect participants in this course to be fluent in JavaScript. The pace of the course is designed for those who have had significant hands-on experience using JavaScript. If your JavaScript skills are not strong, consider first taking a course on JavaScript, like Foundations of Programming with JavaScript from our friends at Bocoup.

What We'll Teach

Ember is a JavaScript framework for creating ambitious web applications that eliminates boilerplate and provides a standard application architecture.

Learn more at emberjs.com

Course Breakdown

Scalable Application Architecture

You'll learn how to use the MVC (Model-View-Controller) pattern to manage the complexity of your application as it grows. By separating code into distinct objects that work independently, you can test, debug, and collaborate more easily.

You’ll also learn best practices for organizing your source code in a way that makes it easy for your team to understand each other's code.

Views & Templates

Discover how to build advanced user interfaces with composable views that bind to your model data and always stay up-to-date.


Ember's router puts the URL front and center. We'll show you how to map URLs to templates and models, which makes your apps shareable, as well as serving as the scaffolding that allows your application to grow without collapsing in on itself.

DOM Integration

Most of the time, you'll be using Ember objects and templates to keep your UI up to date as things change. We'll teach you how to integrate directly with native browser features, like the <audio> tag so that your UI can seamlessly take advantage of continued improvements to the web platform.

Actions and Events

You'll learn how to use actions and events to communicate between the components of your application.


Syncing data with a backend server is one of the most challenging aspects of writing a web application. We’ll cover different techniques for retrieving, updating, and deleting records in a way that’s fast, flexible, and maintainable. You’ll also learn how best to handle authorizing users in single-page applications.


Ember.js includes a powerful object model that brings many advanced features to the browser. You’ll learn how to best use these tools to share common code, describe relationships between objects, and react asynchronously to changes in your data, with:

  • Objects
  • Observers
  • Computed Properties
  • Mixins


After isolating your application into its constituent MVC components, learn best practices for testing each of these in an automated way. We’ll show you how to use QUnit to reduce bugs in your application and catch regressions. These concepts are easily applicable to the testing framework of your choice.


Go in-depth with web developer tools to learn how to troubleshoot problems in your application. We’ll survey the landscape of available software, as well as cover Ember.js-specific tips and tricks that will shave hours off your debugging time.

Trainer Information

Yehuda Katz

Yehuda Katz

Yehuda Katz is one of the creators of Ember.js, a member of the Rust Core Team, and a retired Ruby on Rails and jQuery Core Team member. At Tilde he works on Skylight, the smart profiler for Rails, and does Ember.js consulting. He's best known for his open source work, which also includes having created projects like Thor, Handlebars and Bundler. He travels the world doing open source evangelism and web standards work, and has written several successful technology books.

Tom Dale

Tom Dale

Tom is a member of the Ember.js Core Team, and was previously on the SproutCore team. He's a former Apple software engineer who gained expert front-end JavaScript skills while working on the MobileMe and iCloud applications. He's a super hipster, and still isn't sure if it's serious or ironic.

Book Training