I am a fan of the Big Nerd Ranch. If you are not familiar with them, you should check out their courses and their books. I took their Ruby on the Server course a few years ago, and it was terrific. Since that time, I have purchased a few of their books on iOS development. Recently, they announced a new book on Front-end Web Development and I preordered it then started watching for that sweet, sweet shipping notification from Amazon.

The book shipped and I read it. Promptly. It was terrific, and I felt like it was a book I wish I had before I collected the emotional scars that accompany the way I learned front-end web development. Scars are cool though, and they carry a great story…stories for another post I guess.

What is in the “Front-End Web Development” book (accurate appellation is “The Big Nerd Ranch Guide”)? Chris Aquino and Todd Gandee introduce all the basics:

  • Implement responsive UIs
  • Access remote web services
  • Architect apps with Ember.js
  • Debug and test your code with cutting-edge development tools
  • Harness Node.js and today’s powerful npm open-source modules

Shamelessly copied bullets from the official site.

The intention of the book is to give the reader a collection of technologies that can be used together to make great applications. The book reads well, and like most books that need to convey core skills that progressively build to more complex topics, you build a nice little application about Otters. If Otters are distasteful to you, you can pretend they are large river rats or small sea lions with an authoritative Wilford Brimley mustache.

Anyway, the book covers the core skills like CSS and Javascript so you can design responsive web applications that will look great on any size screen. If you don’t know Bootstrap or Ajax, you will learn those so you can handle forms, validation and processing. The Ajax material is very good for learning how to work with web services.

You will build lots of applications as you make your way through this book. This is something I really liked about the Ruby course I took — you learn by doing and you make applications that are really great examples of how to use the technologies, like a web sockets chat application using the latest iteration of ECMAScript (ES6). Side note: ES6 is so new, that most browsers don’t even support it yet, but ES6 code can be converted to ES5 and understood now.

Once you have a grasp on Javascript in the browser, it is time to tackle Node.js — Javascript outside of the browser! Node and its package manager, NPM, warrant a deep dive on its own, but if you haven’t used it before, this book builds a nice foundation for you.

The final topic in the book is Ember.js, and it builds upon the Node.js material. Unfamiliar with Ember.js? Think Model-View-Controller (MVC) application framework and then as quoted in the book,

“As described on Ember’s homepage (emberjs.com), Ember is “a framework for building ambitious web applications.” In contrast to a library like jQuery, a framework like Ember informs your app’s structure and often includes scaffolding tools, which are scripts to create boilerplate files in the correct directories.”

The idea here is to provide a feature-rich framework that is also standards based. There is a lot to this, so I will come back to Ember later.

Check out the book, it is great. If you have a Safari Books subscription, all The Big Nerd Ranch Guides are available there as well. If you are interested, The Big Nerd Ranch now offers a week-long course that covers the material from this book as well.