Live data from Hacker News

2 years with Angular

fse.guru

51–60 of 216 posts

Re: 2 years with Angular

#51
post #11
post #6

If Angular is not The Thing (a premise which I have no trouble believing), then what is a Good Thing to perform the task of, for example, consuming Django Rest Framework endpoints and making a frontend of them?

My front-end guy is totally sold on react/flux. He came to that decision just after we committed to angular... :(

At first I was pretty sold on react too.

Now I'm trying to figure out if the bad parts in Angular are worst than the bad parts in React. I don't have an answer yet.

The only thing I'm sure is that the virtual-DOM thing is a good idea and most frameworks are likely to converge here.

Re: 2 years with Angular

#52
post #48

I've got to build an SPA and I'm trying to choose between Angular and React, can you guide me a little, the app will : - create a big form based on an XML schemas, the form will be used to generate valid XML with the schemas - some schemas can be really big with more than 3000 elements, the whole thing won't be shown in full to the user directly but probably folded - because it is based on XML Schema, it must have in…

Angular will force you to convert all your rendering logic into its declarative API: ng-if, ng-repeat, ng-include etc. With React, you can simply write your program logic in Javascript and compose, reuse and pass around parameterized components with ease.

Try building a simple nested tree in both Angular and React to see how both feels.

Khan Academy has open-sourced their QA builder that supports creating questions and answers with graphs, radiobuttons, multi-selects, images etc. It is built in React. Take a look here: https://github.com/Khan/perseus

Re: 2 years with Angular

#53

While most of the arguments presented in this article are somewhat valid but I hope with the release of Angular 2.0 majority of the issues will be addressed (though does it make sense to make such drastic changes in the upcoming is another debate and already taken care of at: https://news.ycombinator.com/item?id=8507632 ) I'm currently working on a comparatively large webapp built in Angular and it was after about 7…

I think around 7 months into any project you start to realize the pitfalls of whatever technology you're using.

You've done the easy things after 7 months, and the hard things are always going to be hard.

Re: 2 years with Angular

#55
post #49

This seems to be the summary of every tech flame war ever, and applies rather well here: A: I've used tech X in a lot of Y contexts, and I find it's not great. I will generalise slightly imply that tech X is not the panacea that it has been presented as. B: Yeah? Well, I've used tech X in a lot of Z contexts, and I find it works fine! You're wrong! You're using it wrong! Maybe you're not wrong in context Y, but for m…

Yes, nothing new here.

"This technology contains trade offs and is complex at times."

Oh, you don't say?

Re: 2 years with Angular

#56
post #52
post #48

I've got to build an SPA and I'm trying to choose between Angular and React, can you guide me a little, the app will : - create a big form based on an XML schemas, the form will be used to generate valid XML with the schemas - some schemas can be really big with more than 3000 elements, the whole thing won't be shown in full to the user directly but probably folded - because it is based on XML Schema, it must have in…

Angular will force you to convert all your rendering logic into its declarative API: ng-if, ng-repeat, ng-include etc. With React, you can simply write your program logic in Javascript and compose, reuse and pass around parameterized components with ease. Try building a simple nested tree in both Angular and React to see how both feels. Khan Academy has open-sourced their QA builder that supports creating questions a…

Thanks, the idea to use code instead of a limited set of declarations to create the view is convincing.

Re: 2 years with Angular

#57
post #25

I recently wrote about my experience with Angular in a different forum. Sharing it here: I worked on Angular last year building an app with a few complex views. The initial days were full of glory. Data-binding was new to me, which produced much goodwill towards the framework. Things started falling apart as I had to inevitably understand the framework in a little more depth. They practically wrote a programming lang…

- Everything you need to know about Angular is explained in ng-book or the like. Trying to learn the framework by reading blog posts isn't going to work. There's just too much to know, and it's impossible to understand what's really going on unless it's presented in a logical and comprehensive way.

- Angular isn't designed to render large tables. Go with DataTables for jQuery instead, or if you don't need all the features there then maybe you can get away with ui-grid.

In general though if you're running into performance issues because you have too many bindings, then you're probably using it for things it wasn't designed for.

Also, don't forget 'track by' for improving ngRepeat performance:

http://www.codelord.net/2014/04/15/improving-ng-repeat-perfo...

Re: 2 years with Angular

#58
post #11

Earlier quoted context omitted.

My front-end guy is totally sold on react/flux. He came to that decision just after we committed to angular... :(

At first I was pretty sold on react too. Now I'm trying to figure out if the bad parts in Angular are worst than the bad parts in React. I don't have an answer yet. The only thing I'm sure is that the virtual-DOM thing is a good idea and most frameworks are likely to converge here.

>are worst than the bad parts in React

Which are...?

Re: 2 years with Angular

#59
I've been using Angular on-and-off in professional settings since 2012. Angular is a framework obsessed with testability that treats usability as an afterthought. That said I've found Angular to be more than flexible enough to meet the needs of your typical CRUD apps, and generally enjoy working with it.

One thing I agree with the author about is the importance of expertise for a successful Angular project. Some specialized knowledge is needed to get a decent fit and finish, and the results can be horrible without that.

Strongly discouraging globals goes a long way towards improving code written by inexperienced engineers, but Angular's provider system is still not clearly documented with practical examples, which makes those engineers more likely to shove everything into the unavoidable Angular constructs (controllers, directives, $scope).

The middling quality and small availability of third-party Angular libraries is a problem. I believe that greater awareness/better tooling for ngDoc would be a tremendous help there. Best practices are not well-presented anywhere in the Angular world, particularly for designing reusable Angular libraries.

The other big problem is the project source code which I find poorly organized and documented. If you want to get into the guts of Angular for debugging purposes, good luck!

Re: 2 years with Angular

#60
I'm currently enjoying angular after having spent a year and a bit working with it exclusively. I am keen to try out Flux and Mithril, but I've not had the time nor the opportunity. But as it stands, we're deploying several large projects into very demanding organisations that are stable, performant and easy to manage. We as a team owe lot to Angular in terms of our productivity. We're also a great team and that counts for a lot too.

The thing I would like to add to the debate is this: We've all learned that Angular is hard. It's a complex beast with it's own nuances and idiosyncrasies. It also offers plenty of ways to do things you probably shouldn't do (i'm looking at you expressions). But more than that, with Angular in the tool box, people push themselves to deliver products vastly more complex than would be feasible without it. And these two issues collide all the time. Learning a framework + the desire to deliver more; One should follow the other, but people tend to attempt both at the same time.

I personally don't think there's anything "wrong" with Angular, but people have to acknowledge that despite the marketing hyperbole, learning Angular means setting out on a long and difficult journey that will require the developer to rethink a lot of what they know about building web stuff. But that's web development in a nutshell. It's a different gig every year, and within an alarmingly short amount of time, Angular will probably be replaced with something better suited to the tasks that try to accomplish the thing we want to accomplish with mere HTML, CSS and Javascript.

There's also a lot to be said for how you organise your projects and what tools you use (eg Require or Browserify etc etc), but that's a very different kind of conversation.

Post reply on HN