Hacker News new | past | comments | ask | show | jobs | submit login

Angular should be noted as AngularJS.

https://angularjs.org/

Angular 2 should be noted as Angular.

https://angular.io/




While that's in line with what the Angular team has communicated to differentiate 1.x and 2+, I disagree. Since "Angular" is unnamespaced and "AngularJS" is not disambiguated enough from "that JS library called Angular", I think the numbers are important to outsiders.

My org has been dealing with Angular and AngularJs for the past two years and developers and non-developers alike get confused or unclear all the time when we try to communicate about the two. The only thing that's been successful has been to describe them as "Angular 1.x" and "Angular 2+".

On top of that, when doing searches for documentation and issues, it's still absolutely necessary to add "2" to searches for the right version of the framework.


oh god. what an absolute mess of branding.


It's pretty rough on newcomers as well as devs trying to find docs and blog posts, but in contrast to naming it something else, it was pretty effective at establishing a user base.

It would have been a lot easier on the world if 1.x was the last version of anything called Angular and Google named the new thing FooBarJS.

But Google knows how software teams work. Names and versions are easier to evaluate than trying things out or running comparative analysis.

Teams hire "Angular" developers which usually means "1 or 2" even though it very much shouldn't.

Teams will set aside time to "upgrade to Angular 2" more freely than they would set aside time to "switch to a different framework, FooBar.js", even though with Angular 2, those are the same.

Even if teams would set aside time to "Upgrade to new framework", they're much more likely to do a alternatives analysis if it's not just a version number changing.

That said, I think this hurts developers and teams, and I think it's loosely nefarious, but it was probably necessary for Angular 2 to get the adoption it has today.


It's going to be one of the case studies about why it is awful to go about creating a new version of a language/framework/library that has massive breaking changes but keeps the same name.


It's not a new version of the framework. It's a completely different framework and shouldn't have stole the name of an existing framework.


Honestly, this is just very confusing.


I agree.


For someone wanting to learn Angular , which should they pick first ? Angular 2 or Angular 4/5 ?


By wanting to learn Angular you're definitely riding against the ecosystem, as shown in the post, see: http://stateofjs.com/2017/front-end/results and note that most do not want to use it/or have used it and would not use it again. (Myself I am in the would not use it again camp). What makes you interested in Angular as opposed to other front end frameworks?


Honestly, I am more interested on learning React. I was only teasing about learning Angular for it was a complete framework unlike React. But, now that I've realized that we can integrate other components with React to outperform Angular, I'll definitely learn React.


Angular 4/5 is simply the continuation of Angular 2, so it's more like 2/4/5. The Angular router had been up to a major version 3 so they skipped Angular 3 as a whole in the interest of keeping all of the parts of Angular in version sync.

Starting with the latest version of Angular is generally the best idea, though you may be tied to earlier versions depending on what other modules you want to use. For example, the npm version of ng-bootstrap is still tied to Angular 4 (though one can easily build one that does from the github repo). I would recommend starting with ng-cli as most (older) books will start you off with some other build system (e.g., system-js, an older webpack plugin).


It depends what you already know.

If you don't know a ton of other frameworks, tools and the like AND need to get something built this quarter, learn the latest version of Angular 1.x

Otherwise, learn Angular 2, Typescript and all the other stuff that people use for building etc. all at once, focusing heavily on Typescript and core Angular concepts first.


Not confusing at all. How about just calling them Angular 1.x and 2.x?


The problem with the numbers is "Angular 2.x" is actually "Angular 2+"; they're currently up to Angular 5.x.


I don't understand. React and everything else doesn't suffer from this 'problem'.


Try google searching for anything Angular related.


when searching info about Angular (2+) is easier to avoid "angularjs" results than "angular 1".


Angular 5.x?


You should also never under any circumstances use Photoshop as a verb.

Those horses have left the barn.




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: