Falling Out of Love with AngularJS

Posted: December 6, 2014 under JavaScript

Like many frontend developers these days, I've found myself very enamored with JavaScript frameworks. Among all the myriad choices, however, AngularJS has been the standout.  AngularJS is very easy to love. You can create really cool applications quickly, add to your bag of developer tricks (decoupled Drupal, for example) and generally have a lot of fun working with JavaScript. Plus, it's backed by Google, so what's not to love?

So, in between my Drupal theming projects over the past four or five months, I've been reading quite a bit on Angular, creating a few trivial projects and generally trying to understand the framework more deeply before tackling a substantial project for a client.

Not All Sunshine and Roses

It's pretty easy to find Angular tutorials that leave you fired up about building an app. Some of the best AngularJS tutorials I have found are by Todd Motto - try here and here for a couple of his best resources. He goes beyond the simple, 'Hello World' type examples you'll often find and talks more about how to build an app that will work in a professional team environment.

But very recently things have hit a snag with me and my budding love affair with AngularJS. It turns out that Angular can be rather slow (the ease of use comes with a price), it is difficult to debug, and with the upcoming Angular 2.0, the whole project is starting over. As in, zero backwards compatibility. So the big investment you make in learning Angular today - or worse yet, the investment you make in building your application - will have a very short shelf life.

Read These Before You Commit to a Framework

Here are a few links that I have come across that really helped inform my thinking about AngularJS and other JavaScript frameworks. These are all really good, "food for thought" type of posts that go into more detail on the potential drawbacks of AngularJS that I briefly touched on above.

Understand, I'm not trying to bash AngularJS or any other framework with this post. My feeling is simply that as a frontend developer, I'm faced with an overwhelming number of new tools, frameworks and processes, each vying for my attention and support. If I'm going to invest my time in learning to use any of these in my work, there needs to be a long term payoff that will help me move my career forward. As cool as it is, I'm not sure that describes AngularJS anymore.

About the Author

John Hannah

I’m John Hannah, a front end developer at Lullabot . When I'm not building websites, I travel as much as possible and enjoy hanging out with my wonderful family. My favorite place to spend my coffee breaks is Twitter, so please feel free to connect with me there.