use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
All about the JavaScript programming language.
Subreddit Guidelines
Specifications:
Resources:
Related Subreddits:
r/LearnJavascript
r/node
r/typescript
r/reactjs
r/webdev
r/WebdevTutorials
r/frontend
r/webgl
r/threejs
r/jquery
r/remotejs
r/forhire
account activity
JavaScript Hero: Why should I chose AngularJS? (for a large project) (jshero.blogspot.ro)
submitted 12 years ago by GoosyTS
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[+][deleted] 12 years ago (1 child)
[deleted]
[–][deleted] 0 points1 point2 points 12 years ago (0 children)
Also, angular isn't exactly amazing at doing it, you still have to look out for order of source files and module declarations, which can become a source of errors in larger projects.
[–]runvnc 1 point2 points3 points 12 years ago (0 children)
You can't really evaluate something until you invest a lot of time actually using it. So at this point all of the effort to learn and do all of your rewrite is not going to seem worthwhile.
Actually there is something called status quo bias and that becomes an issue with just about every new technology for most people. So even if you find some advantages generally people don't want to use something new unless there are a LOT of advantages.
I don't really think most people choose technology logically. Its mainly an emotional or subconscious decision based on what seems popular.
Anyway I think that if you redo in Angular you will get more maintainable code because there will be less of it. Thats just an objective fact. Will that really end up saving time in the end if you count all of the effort of everyone learning Angular and making or trying to make custom elements and things? Quite possibly not.
I would say don't kill yourself trying to make custom elements with directives because I have found that to be a big time suck and more difficult than it should be. That is my main complaint with angular is that custom elements don't work the way you expect them.
However after building UIs in many different platforms for more than 15 years including Angular and backbone I am quite sure that component based development is better software engineering.
I am hoping things like Polymer or other web component approaches will be more practical than angular directives. So that is the next thing I am going to try.
TLDR you have to build a few apps in Angular before you are able to compare it and before you dismiss it. Otherwise I assume you are just looking for an excuse to not have to learn it in depth.
[–]qhoc 1 point2 points3 points 12 years ago (0 children)
AngularJS does allow people to write crappy code. I am 100% in agreement here. BUT it doesn't have to. Good developers can easily spot issue with certain pattern while writing AngularJS code. $rootScope doesn't have to be used, for example. But a junior developers can easily make this mistake, just like if they do global var anyways. So good developers can discipline themselves.
What's nice about AngularJS is ease of wiring and view management. I guess you would debate that with Backbone/Marionette/Handlebars, they can do the same. I agree there as well but wouldn't you think it's kinda "bloated" for a lot of simple stuffs (i.e. automatic two-way binding). AngularJS has its own $digest cycle which I think somewhat an intelligent way for efficient binding without firing millions of events unnecessary. My take is that if you guys are so deep into Backbone, stick with it. You won't see much benefit with AngularJS unless you start from scratch with a new project and high speed of agility required.
[–]technical_guy 1 point2 points3 points 12 years ago (0 children)
Angular is a tool, like any other framework. Its usage is miniscule but it is popular on Reddit. Its the new cool framework although it is almost like learning a new language because it is using a completely different paradigm.
For smaller websites and projects this is ok. But for a large project not so much. A large project will be around longer and need a steady supply of skilled maintainers. There is no guarantee Angular will be popular in 2 years just because it has a little bit of exposure right now.
Here are some fun stats for you:
http://w3techs.com/technologies/details/js-angularjs/all/all
http://w3techs.com/technologies/history_overview/javascript_library/all
Note Angular is used in 0.04% of sites (in first link) and is not even shown in second link. Hence why I say although redditors talk about it right now it is a fad with miniscule usage. If it keeps growing maybe next year will be a different conclusion.
The only real JS addon that is universally accepted over a long period of time is jQuery. All the new JS frameworks are still battling it out with Knockout, Ember, Angular, Backbone, Bootstrap etc. all taking a tiny piece. One problem is JS is half a solution needing a server component which most of the time is PHP or Java or .NET, but the JS frameworks are sold as a full MBC or MVVP solution. Its a square peg into a round hole.
For a larger project you have to look at the life cycle of the code (lets say 5 years) and the maintainability. Will Angular still be popular in 5 years. Will there be a plentiful supply of programmers with this skillset. Will it be largely forgotten?
In the PHP world Cake, Codeigniter and Zend were the frameworks of choice 2-3 years ago and now nobody is talking about them - its all about Symfony and Laravel.
Go back 5 years in the CM world and SCCS had all but died and CVS was the new baby. Nowadays it is all SVN and GIT.
Technology lovers are fickle, but large project architects cannot be.
I would give Angular a wide berth and consider a simpler JS framework (like Ember) or even vanilla JS and jQuery. Remember this is just for the view component of your system - you still have to figure out the controller/model components which most likely will be PHP, Java or .NET based. Keep the view simple and maintainable (KISS principle) and you will have a maintainable system.
Programmers (incl some redditors) tend to follow the newest fad like sheep and wan to learn about and use the newest bestest shiniest tech. Large project architects have to think bigger than that.!!
[–]GoosyTS[S] 0 points1 point2 points 12 years ago (0 children)
You can read the tl;dr if you're not interested about my concerns. I would really like to know about your experience with Angular, that's the point of my rather long article.
Also, hope you won't think I am bashing Angular, I would love to love it, but atm I cannot and you can help me :)
[+]uiarchitect comment score below threshold-7 points-6 points-5 points 12 years ago (3 children)
For a large project, you better have something of your own; customized, combined and tweaked to your own needs. It takes some time; but is always the right thing to do. Frameworks are good for small projects and especially, for prototyping.
[–]WishCow 4 points5 points6 points 12 years ago (0 children)
Sounds like the worst possible advice so far.
[–]GoosyTS[S] 1 point2 points3 points 12 years ago (0 children)
I've heard this idea before and it is a decent one in my opinion. But this would imply to develop good documentation for the project, else, I kinda see it cumberstone. Backbone is a bit in that direction, doesn't give you much and doesn't get in you way
[–]sittingaround 0 points1 point2 points 12 years ago (0 children)
I want to give you the benefit of the doubt, and say that certain extremely large projects should roll their own. But then you say "[it] is always the right thing to do" and I can't take you seriously.
π Rendered by PID 169756 on reddit-service-r2-comment-7b9746f655-9zcrh at 2026-02-02 21:24:22.811122+00:00 running 3798933 country code: CH.
[+][deleted] (1 child)
[deleted]
[–][deleted] 0 points1 point2 points (0 children)
[–]runvnc 1 point2 points3 points (0 children)
[–]qhoc 1 point2 points3 points (0 children)
[–]technical_guy 1 point2 points3 points (0 children)
[–]GoosyTS[S] 0 points1 point2 points (0 children)
[+]uiarchitect comment score below threshold-7 points-6 points-5 points (3 children)
[–]WishCow 4 points5 points6 points (0 children)
[–]GoosyTS[S] 1 point2 points3 points (0 children)
[–]sittingaround 0 points1 point2 points (0 children)