title: Backbone.js fetch collection from it's initialize method
body: <p>someone building an app for us, provided me the code so I could go through it,
  and I noticed this, which at first seems OK, and even nice to let the collection manage his data
  but after a while I started thinking about the possible pitfalls in this idea</p>
  
  <p>so: 
  is it good practice to fetch a collection's data from it's own initialize method.</p>
  
  <p>for example:</p>
  
  <pre><code>var Book = Backbone.Model.extend({});
  
  var Books = Backbone.Collection.extend({
  
      url: '/books',
  
      initialize: function(){
          // do some logic here
  
          // if collection is empty, fetch from server
          if(this.size() == 0)
              this.fetch();
      }
  
  });
  </code></pre>
  
  <p>i ask this because i feel it might be a problem in the following situation:</p>
  
  <p>suppose we are in a routeAction:</p>
  
  <pre><code>books: function() {
      var books = new Books();
      var bookList = new BookList({ collection: books });
  }
  </code></pre>
  
  <p>isn't this situation possible failure, if the fetch would be faster than the initialization of the view, where the view would have bound to a reset event, the reset would have triggered way before the initialize of the view had been executed?</p>
  
  <p>am I wrong on this, or should I submit a ticket to get this fixed.</p>