Live data from Hacker News

Why you should not use AngularJs

medium.com

1–10 of 48 posts

Re: Why you should not use AngularJs

#3
After ~1 yr of experience with Angular, I have to say I fully agree. Debugging is a pain, for a start, and so is delving into the source code. Plus, it's incredibly complex and opinionated and still it leaves it really easy to slip into really poor practices and untestable code (observe the complexity and verbosity of this best practice guide: https://github.com/mgechev/angularjs-style-guide). The real deal breaker is, however, performance in complex pages.

I much prefer to write my own controllers and models and use Reactjs for the views.

Re: Why you should not use AngularJs

#4
Takes all sorts. I put in some time at an office where the team struggled immensely with Ember but found Angular much easier to pick up and produce results with.

The scaling thing is just one of the hurdles you have to manage in this framework. Every system has them. Once you learn where the limits are the tools exist to manage it:

https://www.exratione.com/2013/12/considering-speed-and-slow...

Like all frameworks, Angular isn't suited to every task. If you are rendering massive tables, to pick the obvious example, then you probably shouldn't be using any of the modern binding-based frameworks for that part of your application.

Re: Why you should not use AngularJs

#6
While I'd be the first to agree that Angular does a bunch of things I think are a bit crazy, articles like this don't really move the needle for me. The author doesn't like the design of Angular and feels it isn't efficient enough. OK, that's OK! However, there's not some massive conspiracy here - go ahead, use React/Ember. In my own experience, Angular is performant enough for most web applications, and the convenience the framework offers makes up for a lot of the crazy, weird things it does to achieve that API.

But to each his own.

Re: Why you should not use AngularJs

#8
In my experience, it's very easy to shoot yourself in the foot with Angular, performance-wise. But this is most often due to poor understanding of how the underlying update model works (people abusing deep watches would be a prime example).

Of course, the generally poor documentation does not help newcomers...

Re: Why you should not use AngularJs

#9
post #6

While I'd be the first to agree that Angular does a bunch of things I think are a bit crazy, articles like this don't really move the needle for me. The author doesn't like the design of Angular and feels it isn't efficient enough. OK, that's OK! However, there's not some massive conspiracy here - go ahead, use React/Ember. In my own experience, Angular is performant enough for most web applications, and the convenie…

"there's not some massive conspiracy here - go ahead, use React/Ember" I wish it were the case; whilst for my own projects I certainly follow such advice, I've found that in industrial settings Angular is seen like a framework that delivers quickly and "if you don't like it probably you don't understand it", and therefore trying to oppose its choice raises eyebrows ("ah you want to bill us more days", or "duh! our consultant wants us to make exotic||obsolete choices"), more than it triggers any objective discussion.

Re: Why you should not use AngularJs

#10
I don't know if I agree with everything that this post says, but I do agree with the bit about two way data-binding being a problem. Two way data-binding definitely gives a "Wow that was easy" impression in a tutorial app or something not too complex, but once you get into the realm of a seriously complex app, it becomes an anti-pattern. You need to know which direction the data is flowing and in many situations there can not be two sources of truth that are always in sync with each other. I'm working with Ember and I'm really glad that they are moving away from using two way data binding by default.
Post reply on HN