

AngularJS: A Retrospective - jonahbailey
http://www.mutuallyhuman.com/blog/2014/03/25/angularjs-a-retrospective/
Taking a look back after working with AngularJS for a year.
======
warfangle
When you use an unblessed language derivative like Coffeescript for your
examples, please give alternate examples (even if they are simply generated by
your coffeescript translator). Especially in this case, since Angular isn't
targeted specifically at Coffeescript developers.

~~~
lucisferre
Is this just an anti-coffeescript rant or are you actually struggling to
follow the examples?

~~~
awj
I think it's a legitimate concern about the ability to read examples. Using
nonstandard tools to showcase a concept limits the people who are able to
follow along. Not everyone has invested the time to learn the ins and outs of
CoffeeScript, why hinder understanding with it when "talking about
CoffeeScript" isn't the point of the article?

~~~
ulisesrmzroche
It's really not a big deal in this case. Code is not doing anything tricky.
Just add some ugly curly braces and parenthesis and it's es6 JS with the
arrow.

------
PascalW
Nice article but IMHO it's missing the most important pieces of a
retrospective, e.g. "what went wrong" and "what can be improved".

~~~
lucisferre
Yeah I was hoping for a little more insight. This was mostly a brief tour.

------
j_baker
> When starting out, forgo writing directives. You need a deep knowledge of
> AngularJS' internals to debug directives when they misbehave. Instead, start
> by writing a small controller and view. You can refactor these into a
> directive later when it feels right.

No. Controllers _should not_ be used for DOM manipulation. Angular directives
take some learning, but they're great. It basically turns DOM node selection
into a matter of Dependency Injection. I think it's an exaggeration to say
that directives require "deep knowledge of AngularJS' (sic) internals".

~~~
vedant
Why the "(sic)"? Is "AngularJS" not the preferred stylization?

~~~
mattwad
not sure if it's what he meant, but the correct possessive should be
AngularJS's

------
geuis
One of the few places where Angular falls down is its use of a single ng-view.
This makes doing something as simple as a two column layout frustratingly more
complicated than it should be.

Use ui-router. It allows multiple views and uses states for URL routing. It's
a little tricky to understand at first, but once you internalize how states
work it makes structuring your app very easy. Be prepared to rewrite parts of
your projects multiple times until you actually get it.

~~~
lucisferre
There's also this project: [http://angular-route-segment.com/](http://angular-
route-segment.com/)

The $resource service is also not as well designed as it could be. I'm
thinking of moving to restangular.

~~~
saurabh
I am using Restangular & ui-router in a project I am working on currently and
its working great. Highly recommended.

------
AdrianRossouw
I think angular's future is more interesting than it's past or present.

getting rid of the dirty checking? yes please. etc..

------
keda
I think it's miss-using the service in this example. The example should be
using factory: .factory('RemoteResource', function($http){ return {retrieve:
function(){ $http.get("url"); }} })

Service should be like this: .service('RemoteResource', function($http){
this.retrieve = function(){ $http.get("url"); } })

See Stackoverflow: [http://stackoverflow.com/questions/15666048/angular-js-
servi...](http://stackoverflow.com/questions/15666048/angular-js-service-vs-
provider-vs-factory)

------
udfalkso
A factory vs. service example would help the article out some.

