Live data from Hacker News

Choosing the Right JavaScript Framework

airpair.com

31–40 of 91 posts

Re: Choosing the Right JavaScript Framework

#31

If you're just getting started with frameworks, I'd recommend Backbone. You can learn it in half the time it takes to understand Angular and it'll be a good introduction to MV*. This is probably why its more popular than Angular - its easier and its good enough. Angular has a lot of "magic" which can be intimidating and frustrating. Also writing JS logic in html just feels icky when separation was the manifesto for s…

IMO Backbone is overly complex and it's a lot harder to pervasively use data binding to templates. Didn't really feel like I realized huge productivity gains with that technique until I met Angular.

Re: Choosing the Right JavaScript Framework

#32

It seems like Backbone is dominant, but after a couple months of using AngularJS on an everyday basis I'm ready to switch and never look back. Hands-down best framework I've ever worked with. The pleasure I get from it reminds me of the early days of Rails, when the leap in productivity was palpable.

While Backbone's strength is its lack of assumptions and 'freeness', angular forces developers to strictly follow their constructs. Marionette [0] is an extension of backbone that also forces developers to follow constructs that lead to scalable, modular web apps. Marionette makes backbone feel like a tool to make prototypes. 0: http://marionettejs.com/

But how big is its community?

Re: Choosing the Right JavaScript Framework

#33

JS frameworks are absolute cancer. They do nothing but kill page load times and degrade user experience: since when is it a good idea to recompile the whole entire standard library each time a program is run? They're also completely redundant in the modern browser, since standard compliance has gotten much better and more features have been added to HTML/JS/CSS. It's just yet another api that developers have to learn…

First time page load is heavy, yes. Then after that, it's much faster, as all the server has to hand over is JSON, which can turn a 150-500ms page load to a 15-90ms page load.

Furthermore, it allows for easier data portability- when you can 'collect' data as you go and have API calls that much faster, it's okay to make more expressive UI decisions.

Not to mention, at the end of the day I like having a separation between my frontend and backend. Frontend testing from Rails or Django always feels a little dirty, a little off, and in many cases is even a discouraged practice("If you need to test your view, you should be using a helper" logic). I also like not ever having to make model method choices based on what my frontend desires might be- the concerns can be completely separate.

And lastly, I frankly can do a lot more interesting things much faster in Ember than I can in Rails from a UI standpoint. Ember turned my favorite part of software development, UI design, into the joy it used to be when I was just using pad and paper.

Re: Choosing the Right JavaScript Framework

#35

If you're just getting started with frameworks, I'd recommend Backbone. You can learn it in half the time it takes to understand Angular and it'll be a good introduction to MV*. This is probably why its more popular than Angular - its easier and its good enough. Angular has a lot of "magic" which can be intimidating and frustrating. Also writing JS logic in html just feels icky when separation was the manifesto for s…

> If you're just getting started with frameworks, I'd recommend Backbone.

Backbone only is not enough to do any serious kind of work today.One always end up with tons of plugins making it as complicated as EmberJS or AngularJS. There is no serious view layer,so one has to use React,Vue,or Ractive. The router sucks,frankly,so one has to replace it. The model layer doesnt handle relationships between model,so one ends up using something else...

There is nothing good in Backbone today frankly.It was one of the first successfull "clientside" framework ,yet refused to evolve(like underscore or coffeescript today),refused to incorporate good ideas from third parties that would have made it still relevant today.

There is no future in Backbone.Maybe there is still a place for a Backbone like framework that would still be based on jQuery and would incorporate a better view layer. But Backbone itself is dead.

I personally prefer AngularJS ,not because of its directives but because I strongly believe in IoC containers over any other way to build and wire objects. But I think EmberJS is as good.

Re: Choosing the Right JavaScript Framework

#36
post #16
post #9

No Durandal? http://durandaljs.com/

My reading of the roadmap is that Durandal is pretty much being absorbed into Angular 2.0

Yes, here's the announcement: http://blog.angularjs.org/2014/04/angular-and-durandal-conve...

If it reaches anywhere near its potential it's going to be awesome.

Re: Choosing the Right JavaScript Framework

#38
post #35

If you're just getting started with frameworks, I'd recommend Backbone. You can learn it in half the time it takes to understand Angular and it'll be a good introduction to MV*. This is probably why its more popular than Angular - its easier and its good enough. Angular has a lot of "magic" which can be intimidating and frustrating. Also writing JS logic in html just feels icky when separation was the manifesto for s…

> If you're just getting started with frameworks, I'd recommend Backbone. Backbone only is not enough to do any serious kind of work today.One always end up with tons of plugins making it as complicated as EmberJS or AngularJS. There is no serious view layer,so one has to use React,Vue,or Ractive. The router sucks,frankly,so one has to replace it. The model layer doesnt handle relationships between model,so one ends…

> There is nothing good in Backbone today frankly.It was one of the first successfull "clientside" framework

AngularJS was released in 2009 [1], whereas Backbone was released a year later in 2010 [2].

[1] http://en.wikipedia.org/wiki/AngularJS

[2] http://en.wikipedia.org/wiki/Backbone.js

Re: Choosing the Right JavaScript Framework

#39

Earlier quoted context omitted.

While Backbone's strength is its lack of assumptions and 'freeness', angular forces developers to strictly follow their constructs. Marionette [0] is an extension of backbone that also forces developers to follow constructs that lead to scalable, modular web apps. Marionette makes backbone feel like a tool to make prototypes. 0: http://marionettejs.com/

But how big is its community?

Marionette has a great community, and is super easy to get help with things. I've been involved in the marionette community for a while and it has always been absolutely wonderful. You can almost always get help directly from the core team on their gitter chat here (https://gitter.im/marionettejs/backbone.marionette), and I have met in person with all of the core team members at meetups, they are very smart, dedicated and friendly.

While angular has tons of beginner hype because of the bootstrap effect (don't learn a technology, just put it in your html tags!), I've found that marionette tends to attract a more mature developer crowd, and as a framework is much better suited to building large and complex apps anyway because of the strict modularity and separation of concerns. I say this from experience both seeing and working on very large and complex apps with marionette. And if you don't believe me, ask some of the developers at Etsy, who build with marionette.

The community is a hell of a lot smaller than something like angular, but I see that as a huge benefit, especially when that means no proliferation of beginner problems, and easy access to the core team for help or feedback.

Re: Choosing the Right JavaScript Framework

#40

If you're just getting started with frameworks, I'd recommend Backbone. You can learn it in half the time it takes to understand Angular and it'll be a good introduction to MV*. This is probably why its more popular than Angular - its easier and its good enough. Angular has a lot of "magic" which can be intimidating and frustrating. Also writing JS logic in html just feels icky when separation was the manifesto for s…

If you're doing any kind of rich-client js development without data binding, you're going to have a real bad time.

React will fit the bill here, and can be used with Backbone.

Post reply on HN