from Hacker News

My View after working with AngularJS for 1 week

by ericthegoodking on 12/5/14, 1:06 PM with 9 comments

Hey everyone,

I just started programming in Angular JS and my conclusion is that it is just too hard for nothing, making it a horrible framework for app developers who are constrained on time.Does Any one here share my views on this?

  • by tynman on 12/5/14, 6:24 PM

    It's a painful learning curve, but that doesn't mean it isn't worth it. I used to do all my apps in jQuery and was pretty adept at cross-component communication using events. Angular made me think about SPAs in a completely different way, and I'd never go back.

    It's very popular to deride a framework or a language because it's too hard to learn. My experience is that I grow as a developer if I can think about problems from different perspectives. As an old professor used to remind us, "It's good for the soul."

    As for speed, now that I'm fluent in Angular I can do a lot more in less code. Since Angular is opinionated on structure and there's been a strong community effort toward standardizing architecture and style, the tooling (seed projects and generators) has come a long way in the past couple of years.

  • by ponyous on 12/6/14, 10:14 AM

    Everyone is mentioning how angular is to hard, how its learning curve is really steep. But I felt completely the opposite when I started, it was much simpler than backbone or some other tool - this is why I fell in love with it... I also came from jQuery.
  • by chatmasta on 12/5/14, 7:36 PM

    Too hard for nothing huh? Wish it was hard for more things? ;)

    Double negatives aside, I tend to agree with you. I haven't done much frontend programming, but am about to undertake a medium sized project architected as a single page webapp. So my perspeftive in evaluating these frameworks is one of a fairly experienced non-frontend programmer. I can learn one easily, it's just a question of which I want to learn.

    I looked at Angular and I really like the composability of directives. It seems like frontend frameworks have been maturing along a trend of composability. First jquery was popular because it eased the pain of manipulating individual elements of the DOM, then backbone was (and still is) popular because it introduced reactive components at a time when server side JS was growing in popularity, so it was a natural fit. Recently, angular grew in popularity for the same reactive advantages. There's something really attractive about the idea of cleanly separated code for each physical element/region on a page. That's why people liked directives, and angular was definitely onto something.

    However, it seems like React accomplishes all of the same feats as angular, and offers the same advantages, but does it in a much cleaner fashion. JSX is far more intuitive than the Angular directive syntax, yet maintains all the composability advantages. It also has a natural place in a full stack arxhitecture if you choose to drink the look aid and implement a flux-like design. To me, React seems like the next step in the evolution of reactive frontend frameworks. Angular is the homo erectus to React's homo sapiens. :)

    If you're starting a new project now, it seems to make far more sense to go with react over angular, especially if you're primarily interested in the east composability patterns. Also, the momentum in developer communities is clearly trending toward React, especially with the recent changes announced for Angular, and the continually improving support of react.

    I was also introduced to Pete Hunt, core contributor to react, a few years ago. He was smart as hell and honestly that's enough of a reason for me to prefer React over Angular.

  • by joshschreuder on 12/5/14, 3:15 PM

    I haven't used React / Backbone / the other frameworks in this space, but I started using Angular about a year and a half ago and felt a bit frustrated when I first started too (coming from a basic jQuery background).

    There are a number of different ways of thinking around Angular that might be confusing at first but I have grown to really enjoy writing in it, despite its flaws (which have been discussed here at length recently).

    I don't know whether it's appropriate to learn if you are in a time crunch, but go back to it when you have a bit more time to kill because you may end up enjoying some of the concepts and features.

  • by debacle on 12/5/14, 3:42 PM

    If you want to use Angular but don't want to drink the Kool-aid, Knockout.js provides a good balance between "Here's some MVVM stuff." and "Everything you do must be Angular."
  • by silveira on 12/5/14, 4:02 PM

  • by jf22 on 12/7/14, 7:47 PM

    Could you share your javascript experience level, how many years you've been programming?

    Have you used MVVM style or MVC javascript components before?

    What exactly did you try to do in one week?