Why Discourse uses Ember.js


Nice guide got there +1 over angularjs guide


Im totally with Manuel. I started a month ago and find it hard to solve my problems when i m stucked. The documentation doesnt help with anything. I miss some more detailed examples and better for new users. It seems to me that the guide are written for people that have a good knowledge of Ember anyway. Fundamental knowledge is preconditioned. No detailed guide about the initialization, common property access or debugging.


http://stackoverflow.com/quest... . Discourse is avoiding that problem.


you talk about traversing the DOM when using jQuery and how that makes you dependent on DOM structure, and then you do this:

this.set('parentView.parentView.modalErrorsView.errors', errors);

any comments on that?


I see. Been learning ember.js for a few days now and it looks really nice but the lack of good examples is making it so hard. Glad that I found this blog post


Ember guides links to a 404 http://emberjs.com/guides/gett... maybe AngularJS documentation isn't that bad after all :) j/k

But to be fair, and this isn't to get into a EmberJS vs. AngularJS - I found it much easier and quicker to understand Angular than Ember.

I think though your battling the wrong people - it doesn't matter if Ember/Angular/Knockout/Backbone - the real argument is 'client side mvc' - supports of this need to show how it's better than a server side implementation.

I'd rather hear more on that than attacking the js frameworks ;)


doesn't help much.


I coped some time with MVC frameworks, and found that no one is suitable to build business applications, because they all lack data service part integrated with the framework.
The use of the loop control (like the foreach loops) in the templates clutters UI and couples logic with it.
Previously i used Microsoft Silverlight to create LOB applications, and it fits very good for this purpose. Its MVVM databindings style is clean. i think all the logic belongs to javascript , not to UI.
And why to bother with templates compiling, when in MVVM framework all is done much simpler. Take HTML string (it is a template), use divEl.innerHTML to assign that html string (the template) as a content, and then process databindings in that materialized to DOM content. No need to compile anything.

But at least there had been added one new framework - jRIApp which is very close to Silverlight's style of development.
There's demo of Single Page Application https://www.youtube.com/watch?...

on youtube which uses that framework.


Yes MVVM is great, but underdeveloped in knockout.
But at least there had been added one new framework - jRIApp which is very close to Silverlight's style of development, and it is MVVM framework.
There's demo of Single Page Application https://www.youtube.com/watch?...


This is exactly what I thought. Just given the documentation and no web development background, I wasn't able to clearly see the application areas for such a framework.
After a friend showed me an app he developed with Ember, and pointed out its helpfulness in the source code, I was completely convinced of it. So these questions were not answered by the documentation: "What parts of a web app can Ember help with?", "What are the advantages over just using jQuery and modifying the DOM?". And another, still open question for me, "How can I properly debug an Ember web app?".


Thanks for sharing your PoV. I searched in google "Why use ember" and "Why use MVC JS frameworks" and fell here. I'm already testing Discourse as we speak and participating in meta. It's a fantastic piece of software but JS Frameworks are still dramatic for me. Thank you again for the arguments.


is discourse like disqus?


As an aside, Battlelog is just horrible for the end-user. Not knocking it on a technical level, but as an idea– not one of EA's best.


In comparing the documentation to Angular, I'd like to point out that Google is know to be slow on the documentation side of things. When I was working on Android apps, we weren't surprised to find documentation to be 6 months out of date. I'm sure the documentation will improve, but it will be a sloooow process!


How do you include the JSON payload in the initial page load? Do you serve the html from Rails? I can't imagine doing this by serving the html directly from nginx.


For Rails developers, probably Ember is a better choice since it shared many common concepts with Rails.


Thanks for the article, much appreciated. I am beginning the research on js frameworks for my browser based app and would love anyone's comments on what to go for - although I know what your advice would be eviltrout :) essentially it is a drag/drop web page editor, although not to create web sites only pages. The final output though is html/css/js. I intend it be be a collaborative environment where a teams can work on the same 'document'. So need to manage states/syncing between teams and it would be cool to use the browser back button as an undo function. I am proficient using jQuery however I think it is probably not the best use case for this scenario. I have been narrowing down to Angular or Ember... I would appreciate any thoughts.