What Javascript Framework should you be using?

What Javascript Framework should you be using? This seems to be the question everybody is asking … and everybody seems to have a different answer. I’m here at ng-conf 2015. Is AngularJS the answer?

Angular has a particular opinion about how to build a Javascript application. But other popular alternatives exist. Ember.js prescribes a set of conventions that help build large-scale web applications. React and Flux provide composable view components that can be assembled together to build a solution. And it seems like a new Javascript framework is released every few minutes that touts some amazing new feature (which, of course, has led to Framework Fatigue).

At ng-conf, however, a thought occurred to me. We saw presentations that discussed topics like:

  • how the Angular team discusses plans for Angular 2.0 and the existing 1.x versions in public, open forums with lots of input from the community.

  • how the Angular team didn’t have the right tool to measure performance, so they built their own benchmark tool and showed actual numbers for performance improvements.

  • how the Angular team, having already built unit testing (Karma) and end-to-end (Protractor) testing tools, wanted to also include accessibility testing, to ensure all users of various abilities could use the web applications that Google and others are building.

  • how the Angular team not only has thousands of tests around the source code that are automatically run in a continuous integration environment, but that when they push out releases of Angular, they also run tests for many of the internal Google applications built on Angular to ensure that changes haven’t broken functionality.

  • how the Angular team works with other members of our diverse community, like the TypeScript team or the Ember team, to see where there are opportunities to work together.

Consider how much care and craftsmanship is going into Angular as an open-source project. Perhaps there are other projects that operate at this level, but it’s probably the exception not the rule.

No one is saying that AngularJS is the right answer to every problem. But if I am an organization trying to make a decision on what Javascript framework I should use, how could I ask for more diligence from a project that I will use as a cornerstone to build my own application? I don’t think you can go wrong with choosing Angular and its popularity is rightly justified.