Integrating React With Backbone

There are so many JS frameworks! It can get tiring to keep up to date with them all.

But like any developer who writes JavaScript, I try to keep abreast of the trends. I like to tinker with new things, and rebuild TodoMVC as often as possible.

Joking aside, when it comes to choosing frameworks for a project, emerging frameworks just haven't been battle-tested enough for me to recommend to clients in most cases.

But like much of the community, I feel pretty confident in the future of React. It's well documented, makes reasoning about data easy, and it's performant.

Read More

Caching Asynchronous Queries in Backbone.js

I was working on a Backbone project with fellow Quick Left-er Bob Bonifield recently, when we came across a problem. We were building an administration panel to be used internally by a client, and there were a couple of views that needed to display the same information about users in a slightly different way. To prevent unnecessary AJAX calls, we decided to cache the result of Backbone.Model#fetch at two levels of our application. The result: less network time and a snappier user experience. Here's how we did it.

Read More

Sprintly Performance Update

This was originally posted on the blog about how we spent the last few months helping the Sprintly team land a massive performance refactor.

Last week we helped Sprintly launch a dramatic increase in front end performance. We are built on Backbone.js and, over time, our rendering times have slowed down. Luckily, using some of the great tools in the latest versions of Chrome and a few additional tools for instrumenting how the Sprintly frontend was performing, fixing it was dramatically easier than it would have been just a few months ago.

Read More

Adapting Backbone.ajax in a Crossrider Browser Extension

We're working on a browser extension that needs to be deployed across Chrome, Firefox, and Internet Explorer. Crossrider is a platform that enables exactly this: write your extension in JavaScript using their API calls, and they'll convert the codebase to the various browser extension packages.

To reliably use cross-domain AJAX in your extension, you have to go through Crossrider's request.get() and APIs. Simple jQuery AJAX requests won't cut it due to browser portability problems. This means we needed to adapt Backbone to use this proprietary API for its persistence calls, like .save() and .fetch(). Here's how we overwrote Backbone.ajax to swap in the Crossrider API:

Read More

Backbone.js Tutorials for Beginners: Training Workshop with Quick Left

You asked, and we answered. We're bringing sexy back to Backbone.js. Sign up today for our Intro to Backbone.js workshop July 25 at Galvanize in Denver. Early bird pricing on registration ends tomorrow! Space is limited.

Eventbrite - Intro to Backbone.js Training Workshop

Learn to use the Backbone.js library to organize your JavaScript, simplify data handling, and speed development. Implement Backbone to provide structure to web applications by creating models, collections, and views, and connecting them to your existing API over a RESTful JSON interface.

Read More