you also have to somehow manage the lifecycle of your views, cleaning up after their event bindings and such. See this stackoverflow question[1] for more about this.
Thoughtbot wrote a lib that they bundled up as a gem that does this for you called Backbone Support. It's an easy way to get started, but you'll likely want to tweak it later :)
I always get nervous when I see tons of JavaScript. Frankly it's hard enough to deliver a consistent experience in the browser just from a style and layout perspective.
I haven't dug into how it's done, but I feel like JavaScript apps are harder to test and verify. It's not like running unit tests on your server code. To truly verify you need to test the entire application in each supported browser.
i found javascripts lack of weak references extremely problematic when trying to develop a larger backbone app