Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>I recently gave a talk on this very topic, here are some links: <a href="https://www.youtube.com/watch?v=ca3pQWc2-Xs" rel="nofollow">Video</a> · <a href="https://github.com/samselikoff/talks/tree/master/4-apr2014-using-d3-backbone-angular-ember" rel="nofollow">Code</a> · <a href="http://slides.com/samselikoff/big-data-intro-to-d3-jan-2014#/" rel="nofollow">Slides</a></p> <hr> <p>I've done some smaller projects using similar methods to meetamit, but have recently started exploring Ember + D3. I haven't done much yet, but I think Ember has a lot to offer that could simplify building these types of app. Some things that come to mind:</p> <ul> <li><p><strong><a href="http://emberjs.com/guides/object-model/computed-properties/" rel="nofollow">Computed properties</a></strong>: you'll often be displaying aggregates, so slicing your data using computed properties means you just have to call your chart's update function whenever the data changes, and you're good to go. No more worrying about sending off an event to every view that will change when one specific part of your data changes. Plus, these will probably be properties on your controllers, instead of being calculated within a specific chart or view, which will make reuse much easier. </p></li> <li><p><strong>Storing state</strong>: I had a tough time figuring out the best way to store state in Backbone. I started out trying to coordinate everything via events, but in the end landed on having a separate State model which acted as the brains of the whole system.</p> <p>I didn't get around to using Backbone's router much, but Ember's router + focus on state has made this design challenge easier for me so far. If you build within the system, you can click around your filters and controls, and everything just works. It may be possible to do exactly the same thing in Backbone, but there's something to be said for seriously reducing your cognitive load. You can also explicitly use a <a href="http://emberjs.com/api/classes/Ember.StateManager.html#sts=Ember.StateManager%20Class%20packages/ember-states/lib/state_manager.js:219" rel="nofollow">StateManager</a> object - there may be some really interesting solutions here, though I haven't explored them yet.</p></li> </ul> <p>Again, my experience with this combo is shallow, but if my instinct is right there are going to be many gains from building visualizations within Ember's conventions.</p> <p>If you haven't already come across this, <a href="http://corner.squareup.com/2012/04/building-analytics.html" rel="nofollow">Square put up an article</a> briefly covering their experience building an interactive dashboard with Ember + D3.</p> <p>Keep us up to date on your progress + any insights you come across, and good luck!</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload