<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: backbone</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/backbone.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2012-01-03T18:54:00+00:00</updated><author><name>Simon Willison</name></author><entry><title>Are there any performance drawbacks when rendering DOM views at runtime with JavaScript, rather than rendering server-sent HTML?</title><link href="https://simonwillison.net/2012/Jan/3/are-there-any-performance/#atom-tag" rel="alternate"/><published>2012-01-03T18:54:00+00:00</published><updated>2012-01-03T18:54:00+00:00</updated><id>https://simonwillison.net/2012/Jan/3/are-there-any-performance/#atom-tag</id><summary type="html">
    &lt;p&gt;&lt;em&gt;My answer to &lt;a href="https://www.quora.com/Are-there-any-performance-drawbacks-when-rendering-DOM-views-at-runtime-with-JavaScript-rather-than-rendering-server-sent-HTML/answer/Simon-Willison"&gt;Are there any performance drawbacks when rendering DOM views at runtime with JavaScript, rather than rendering server-sent HTML?&lt;/a&gt; on Quora&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Yes, there is quite a significant impact on first-load performance. The browser has to pull down all of the linked scripts before it can display any content - if you're using a library like jquery that's a sizeable chuck of code that has to be loaded and executed just on its own.&lt;/p&gt;

&lt;p&gt;Modern browsers may be screamingly fast at executing JS, but modern devices aren't: mobile phones are significantly slower than desktop devices for this kind of thing.&lt;/p&gt;

&lt;p&gt;There's a trade-off in the other direction as well of course - if you are loading subsequent content via ajax performance on further clicks will be better than if you were doing full page refreshes.&lt;/p&gt;

&lt;p&gt;To summarise: yes it absolutely affects performance, but that doesn't mean you should avoid it.&lt;/p&gt;
    
        &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/web-development"&gt;web-development&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/quora"&gt;quora&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/backbone"&gt;backbone&lt;/a&gt;&lt;/p&gt;
    

</summary><category term="javascript"/><category term="web-development"/><category term="quora"/><category term="backbone"/></entry><entry><title>Annotated backbone.js</title><link href="https://simonwillison.net/2010/Oct/13/literate/#atom-tag" rel="alternate"/><published>2010-10-13T17:24:00+00:00</published><updated>2010-10-13T17:24:00+00:00</updated><id>https://simonwillison.net/2010/Oct/13/literate/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://documentcloud.github.com/backbone/docs/backbone.html"&gt;Annotated backbone.js&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Literate programming.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/backbone"&gt;backbone&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/recovered"&gt;recovered&lt;/a&gt;&lt;/p&gt;



</summary><category term="javascript"/><category term="backbone"/><category term="recovered"/></entry><entry><title>Backbone.js</title><link href="https://simonwillison.net/2010/Oct/13/backbonejs/#atom-tag" rel="alternate"/><published>2010-10-13T17:23:00+00:00</published><updated>2010-10-13T17:23:00+00:00</updated><id>https://simonwillison.net/2010/Oct/13/backbonejs/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://documentcloud.github.com/backbone/"&gt;Backbone.js&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
As should be expected for a DocumentCloud project, Backbone is a concise, elegant and educational take on the JavaScript MVC pattern. Depends on Underscore.js and plays well with jQuery.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/documentcloud"&gt;documentcloud&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/javascript"&gt;javascript&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/jquery"&gt;jquery&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mvc"&gt;mvc&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/underscore"&gt;underscore&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/backbone"&gt;backbone&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/recovered"&gt;recovered&lt;/a&gt;&lt;/p&gt;



</summary><category term="documentcloud"/><category term="javascript"/><category term="jquery"/><category term="mvc"/><category term="underscore"/><category term="backbone"/><category term="recovered"/></entry></feed>