21 ms·
Angular 2 Core
- AndrewDucker 12y agoIs there anywhere with further detail on this? (Because it looks fascinating, but I'd like to see some detailed documentation and examples on how it's going to work.)
- inglor 12y agoYes, if you go to the AngularJS GitHub it's full of design documents and debates about 2.0, for example - here is 2.0 change detection for the data binding: https://github.com/angular/watchtower.js/ https://github.com/angular/watchtower.js/ It's not proper documentation but debates and design documents but it's all there. Of course - not to forget https://github.com/angular/Angular2.design https://github.com/angular/Angular2.design
- Ironballs 12y agoI don't know exactly how many of the Durandal & Angular convergence[1] features made it into Angular 2.0, but it looks like lazy module loading and a better component syntax did, which is fantastic [1] http://angularjs.blogspot.fi/2014/04/angular-and-durandal-converge.html http://angularjs.blogspot.fi/2014/04/angular-and-durandal-co....
- inglor 12y agoThe problem I see with this is that it's very different from Angular 1 to the point people using Angular would have to learn it all over again. Breaking how the framework looks this drastically is both very brave and very risky. Especially since from discussions with Angular core (and as you can see from the presentation) - Angular 2.0 relies heavily on ES6 features and syntax which are not yet supported in any browser and worse - are not known by most web developers anyway.
- Spiritus 12y agoI don't know, somebody has to be first though. Also, from what I've heard it's like two years away anyway.
- tracker1 12y agoI'm only guessing that it'll be another year or so before Angular 2 is in a release-ready state... It's a huge break from the prior version, and imho a good one. The tooling will be the most interesting to me, I can only guess that they'll use node and traceur for building the output in a project to something a browser can use. I've been moving towards React (and Flux) as it lines up well with the way I've been developing with node. This just takes it a step farther. As for the features that aren't well known, this will change and have to be learned. There's enough in the ES6 stuff that I'm running new development against Node 0.11 so that I can get generator support and some other language features in place. Though still using the CommonJS/Node style require() statements. I do hope, that like React and its' tooling that the Angular guys have a compelling case and support for shared server/client logic and rendering as well as support for Browserify and Webpack+hot-reload. Though I like Webpack I think it goes too far from the node system, it is really nice however and I can see why others use it. It's all really interesting... I'm curious to see where Polymer goes from here as well...
- cageface 12y agoAgreed. This looks almost like a complete rewrite, which seems like a good thing because IMO Angular 1 is overly complex. But it does make me wonder if I should bother to really learn Angular 1 at all. The main thing pushing me towards Angular has been the size of the community but if they're wiping the slate then I might just go with React after all.
- tracker1 12y agoAngular has some huge support and momentum behind it... there has also been a lot of job postings around it as well. That said, I couldn't get past some of my issues with it, and that server rendering (shared code) was not really a good option there... The issues with dependency injection is another issue, and testing pretty much requires a browser. These are the reasons I'm using flux/react now. I'm really looking forward to following the development of Angular 2 now, and may just be my tool of choice for new development in a couple years.
- nawitus 12y agoGoogle is developing AtScript, which compiles down to ES5. I don't think that's the right way to go, though..
- dragonwriter 12y ago> Angular 2.0 relies heavily on ES6 features and syntax which are not yet supported in any browser Which is why part of the project is a compiler which compiles ES6 (actually, an ES6 superset) to ES5, which is supported by every browser. https://github.com/google/traceur-compiler https://github.com/google/traceur-compiler
- tracker1 12y agoI am literally working on a new project, starting to code the front end as of a day ago... I using Flux+React (nearstack.io, plug) around the Yahoo implementation of Flux's model. The down side, is this will be how things are for the next 3-5 years for the life of the site/application. Angular 2 looks really cool... they seem to be embracing the shadow-dom concepts (like polymer) as well as es6-style import directives and expansion. I still think I made the right decision, but this is really cool and looks to be something that can work really well on current/next-gen browsers, but maybe not so well on currently supported browsers such as limited support for IE8 in my case :-( I've been saying for a while that React/Flux is probably the best solution today for web applications, and that something similar to Polymer would be the best option in 3-5 years. I'll be watching this with great anticipation as Angular 2 actually changes most of my complaints about the framework today, and is really something that will come to work well. Though, I'm not sure if they have or plan on a server-side component to handling server rendering, which is a huge part of why I went with React+Flux. -- adding to my post -- More Info: http://ng-learn.org/2014/03/AngularJS-2-Status-Preview/ http://ng-learn.org/2014/03/AngularJS-2-Status-Preview/ Looks like they are indeed using Traceur as a migration path, and embracing many ES6 features. Not sure how they will go with Promises, or if they'll wind up going down the generator path. There's definately some interesting reading and watching for the next year or two on this. Also, really curious where Polymer is heading in the light of this as well.
- bsimpson 12y agoFWIW, React will be in ES6 (with native classes and imports) before they tag 1.0. In fact, React 0.12 has some breaking changes to prepare for that transition.
- tracker1 12y agoInteresting... though not surprising... Honestly, I'm not a big fan of class hierarchy in JS. It tends to weight things down imho more than it helps. I'm generally in favor of decorating against object literals, which has some overhead, but less so than deep inheritance chains.
- pedalpete 12y agoI'm not sure I've seen a framework with such a drastic API change, particularly such a young API. I find that very threatening. Having spent a considerable amount of time learning and working with Angular.js, not only does this appear to be massively breaking changes, but it would also break 3rd party directives which has been a great benefit to building the Angular community. This makes me think that Angular didn't think through their API for the 1.0 release. I would have thought Angular could have been written to improve the performance where needed without such drastic changes to the framework.
- tracker1 12y agoAngular was started 5 years ago.. Node was barely a proof of concept, and the JavaScript tooling at the time was centered around jQuery.. version 2 looks to be 1-2 years away, and the changes they make are really nice. I've chosen React + Flux for my current development, but in 2-3 years may well be looking to Angular 2. There's a lot to by critical about Angular... least of which is that it's own dependency system doesn't play well with others. The reliance of jquery is pretty heavy (since most wind up including the full version, and the light version is loaded). There's a lot of extra boilerplate that the new design will tear down. With node's tooling in current JS development, package management and modularization have become really easy to do. Testing has also gotten easier with this. Yes, browserify and traceur add some overhead to the mix, but it's still lighter than using the mega tooling stuff like jQuery. And don't get me wrong, I like jQuery a lot, and it's a really nice toolkit... but sometimes you only need a screwdriver, and an adjustable wrench for a job, not the whole huge craftsman toolbox. Another issue is simply that the current angular would be unlikely to have a story around server-side rendering, and I think that's especially important for any next generation tools.
- Cthulhu_ 12y ago> Angular was started 5 years ago.. quoted just to remind people that Angular as we know it is older than most other single-page app frameworks - even if it only became popular a year or two ago.
- 12y ago
- grose 12y agoTook some digging but I found a video: https://www.youtube.com/watch?v=S8fE-w2DL8U#t=54m12s https://www.youtube.com/watch?v=S8fE-w2DL8U#t=54m12s Edit: They took it down, sorry :\
- mrwnmonm 12y agoThis video is private.
- omegaworks 12y agoIgor posted on his twitter there'd be a video soon. Surely OP will deliver... https://twitter.com/IgorMinar/status/525807334099288064 https://twitter.com/IgorMinar/status/525807334099288064
- adamors 12y agoThis looks like a completely new framework, version 1.0. I don't think I'll use Angular for any new projects, they basically flushed every library and documentation (1st and 3rd party) down the drain.
- IkmoIkmo 12y agoOuch, just spent this month learning Angular... And now 'RIP angular.module, controllers, $scope' etc. Does anyone have some idea about when this launches and when it can be sort of considered stable for building apps beyond mere prototyping? Curious about the timeframe :) Thanks
- purpletoned 12y ago> Ouch, just spent this month learning Angular I've found that no knowledge I've gained from learning technology/framework/language etc has ever gone to waste. Somewhere down the line, the insights gained previously come in really handy or even make something that I thought wasn't possible, realizable.
- swombat 12y agoLooks like your learning is still valid for another couple years - this isn't being released any time soon, and in fact won't run in most of today's browsers. Two years in internet-time is a long time! For all you know, civilisation as we know it will have ceased by then.
- gasping 12y agoAngular 1 developers should see this as an opportunity to abandon Angular and move on to React. React is by far and away the best the market has to offer right now. From my perspective client-side applications are a solved problem thanks to React.
- purpletoned 12y agoNot to mention, it's much simpler than Angular. You can get upto speed with React in 2 or 3 days. Once you make the shift to specifying single states for your interactions and letting React rebuild the DOM on changes, you'll never go back to anything else.
- gasping 12y ago> you'll never go back to anything else. React completely changed the way I thought about rich clients. It took me a little longer than 2 days, I went into React with an absolute hatred of anything Javascript and came out 2 weeks later loving it. There is something to be said for a library that can wash away over 10 years of built up anger for a particular technology. It's not just another revamped library thrown into the frying pan, it's a complete rethink of how rich clients can be developed almost effortlessly with code that anyone can read. When I got into react, all I could think was "yes, this makes sense, this is how it should have been all along." Moving into the future I expect most libraries will unify under the concepts introduced by React in the same way that most web applications frameworks are different flavors of MVC.
- bryanlarsen 12y agoYou are absolutely right. Which is why I'm so excited about Angular2. It's the first post-React client-side framework to come along. (as opposed to React which is more of a library than a framework, although it definitely pushes the boundaries of that...)
- colinramsay 12y agoTechnically you're right - it is post-React. But in order for it to really have learned from React I think we'd have to wait a little while longer, because the industry is still learning what React and Flux can really bring to the table. For me, one of those things is simplicity, and that's something that I feel Angular sorely lacks.
- deleted 12y ago[deleted]
- emilis_info 12y agoGuys, relax and stop whining. You are probably wrong about what is going to happen with Angular, because you underestimate how massive Angular has become. I recently began searching for a new JavaScript job. I don't like Angular at all and I am skipping all positions that mention it. I have to skip ~90% of all ads. Think of it – 90% of companies that are expanding their web development use Angular. So, even if this change will kill Angular, it will probably take years. It has become too big to fail. If you like Angular, get excited about it. Look at how .NET or Java guys accept everything coming from Microsoft or Oracle. You are in a similar ship now. No one got fired for choosing Angular. No one will.
- colinramsay 12y agoIs this right? I can't believe for a millisecond that 90% of all new JS jobs relate to Angular, it's a horrible and overblown framework with a high barrier to entry. Were you looking at a particular subset of jobs, a particular industry or in a particular location?
- ggregoire 12y ago> it's a horrible and overblown framework with a high barrier to entry Actually if you have several years of experience in programming and a good knowledge of JavaScript and classical design patterns like observer and singleton, it's not that hard. Angular is to build web applications, it's necessary more complicated to use than jQuery whose purpose is to build web pages.
- ycitm 12y agoI've just been looking for JavaScript work in the UK. Certainly the majority (maybe not 90%, but definitely > 50%) of jobs mention Angular. It's difficult to tell how many of these are just "put something cool on the advert to attract the hipsters" and how many are actual "we use or will use angular heavily in production" though.
- bshimmin 12y agoUK here too, and this sounds about right. I would say that most of these shops are not using Angular "heavily in production" right now - either they will have some portion of an existing project that they're trying to move to Angular or a greenfield project for which they're evaluating Angular and think anybody with that skill would be a valuable addition to the team, whether or not they end up using Angular. In terms of roles I see posted on LinkedIn in the UK (which may or may not be representative of the industry as a whole, but it's all I've got to go on), there's a lot of Angular, a lot of "Angular or similar (eg. Backbone)", and a lot of "MVC (eg. Angular, Backbone)". Many of those same roles do also mention jQuery, but not with the same sort of billing it might have had two years ago. I'm not sure I've ever seen a role specifically mentioning Ember. Like quite a few others in this thread, I'm an Angular naysayer for the standard reasons, and would generally prefer to avoid it, but the market does rather dictate what we end up doing sometimes, for better or for worse.
- allworknoplay 12y agoI knew there was a reason I put off learning angular.
- clubhi 12y agoI'm not so sure. I think it will take about 5 years for angular 1.x to lose momentum.
- andrewstuart 12y agoIntresting, but WHY are these approaches better. Is that adequately explained?
- swalsh 12y agoI think this is the problem with posting slides, and not a video. For most presentations slides are bullet points. It's like ordering a cheese burger without the burger.
- skore 12y agoTo everybody trying to make this into a tech fight about Angular vs. React/whatever, I've been repeating this like a mantra and even mentioned it in a talk on javascript once[0]: You can argue about the minor details of the tech stack till you turn green and blue, but Angular wins because it succeeds in the only metric that really counts. jQuery: (for reference) 5,656 commits 7 branches 122 releases 199 contributors React: 3,003 commits 10 branches 18 releases 226 contributors Ember: 7,490 commits 35 branches 90 releases 412 contributors Angular: 5,988 commits 12 branches 111 releases 1,044 contributors <--- I have made a bet on Angular two years ago and the reason was: They understand how to herd cats. They get community right and at the end of the day, that's the only thing that really counts (no matter how much nerds like to pretend that it doesn't and it's all about technological purity or what have you). I am absolutely confident that they are making good calls and the way they have handled the transition periods so far (and the way they are going about these new "big" changes) only increases my confidence. I would be very surprised if in a few years, Angular wasn't on the same level of "you can basically assume that it's loaded" as jQuery is. [0] https://www.flickr.com/photos/valanx/14136669418/in/set-72157644551467698 https://www.flickr.com/photos/valanx/14136669418/in/set-7215...
- mateuszf 12y agoReact is just newer. Give it some time.
- robert_tweed 12y agoIndeed. If number of contributors is the only metric that counts then, since React has more contributors than jQuery, I guess that means we shouldn't bet on jQuery. Nobody's gonna be using that fly-by-night project in a year!
- skore 12y agoThat's why I wrote "for reference". jQuery, of course, is a different kind of library. A proper argument would be: jQuery has about three times the contributors that mootools has. If I had to decide between mootools and jQuery, I'd pick the second because of that metric alone, yes. (And this is how the market ended up playing out.) Angular (born Jan 2010) has 2.5 times the number of contributors of ember (born Apr 2011), 5 times of React (born May 2013). I'm not just trying to find a reason to dismiss React and I do realize that it is still young. From a business standpoint, though, the choice couldn't possibly be any clearer. I do agree that React has gathered a sizable crowd in a short time and it's definitely on my list of projects that I keep an eye on. But it's simply too young to warrant the same kind of investment that I have personally made into Angular.
- Cthulhu_ 12y agoI want to be excited, but at the moment there's just so much new and unknown stuff I'm seeing that I'm just not sure. I don't like the new template syntax; html attributes with parentheses and whatnot just look non-standard and I don't really see why they did all that. I really need to dig into the design documentation and find out the whys behind all of these new features. ES6 is also new, of course; when I first saw Angular 2.0 code, I didn't like it - mostly due to DI, which instead of a single argument in a simple function, now consisted of three different statements to have one service injected, which just feels non-DRY.
- nateabele 12y agoI've spent some time with di.js [0], and it actually allows a few different ways of handling injection, one of which is simple type annotation, i.e.: class Foo { constructor(bar: Bar, baz: Baz) { ... } } There's also syntax for using @Inject annotations inline in the constructor to provide more flexibility. The architecture may be coming together, but it sounds like there's still a long way to go before it's a fully-realized framework with more friendly conventions. If anything, I think the upshot is that DOM handling has been pushed further to the edges, and the emphasis is on pure composition of classes and data structures, with less boilerplate, hand-waving, and framework-centricity. [0] https://github.com/angular/di.js https://github.com/angular/di.js
- EugeneOZ 12y agoI disagree. New syntax actually gives much more for compatibility with other technologies and IDE integration. Also clean visual difference between events and properties - big thing. Not valid HTML... Well, not so high price.
- acjohnson55 12y agoThat's a fair point. Being able to differentiate complex directives from attributes greatly helps separate the concerns visually.
- realusername 12y agoI'm quite disappointed by this presentation, I see only new syntax everywhere for approximately zero benefit. There is not even any mention to the Object.observe integration which would be the most exiting feature to improve Angular apps. Angular looks and feels now like a Java framework, with ugly decorators and bloated APIs, that's really sad...
- kuni-toko-tachi 12y agoAgree 100%. Things like dependency injectors have no real place in JavaScript, where programmatic wiring and modules already solve the problem in an idiomatic way. Angulars modules factories services etc are absurd and attempt to reinvent what the language naturally provides.
- Bahamut 12y agoIt isn't quite a solved problem in the regular ecosystem. Currently importation is rigid - you end up testing the functionality of what you are importing instead of purely the logic of your modules. The tests are polluted with logic that really tests both the details of how an api provided by another library functions under the hood. DI is the solution to that. It has every place in a language like JS, and I am excited with having it available.
- nilliams 12y ago>> where programmatic wiring and modules already solve the problem in an idiomatic way Can't agree with that. Not sure what you mean by 'programmatic wiring' as it sounds vague, but certainly modules do not solve the same problem that DI solves. Modules, (assuming you mean stuff you require() or equivalent), provide module-level dependencies but do not provide object instances. For example, if an instance of House requires a Door it is not enough to just require('Door'). You still have to do the equivalent of `new Door()` in your House module to get an instance. By doing so within the House module you just tightly coupled House to Door (your House now knows how to create Doors). DI allows you to provide an object with object instances it depends on without tightly coupling said object to those dependencies (pass a Door instance into a House instance, advantage being you can pass in any type of Door and House doesn't need to care - thanks polymorphism)! I'm not sure that's a great explanation, but it's worth trying every now and then right? You seem to be making the argument that the language provides alternatives, and it's true that in dynamic languages you can eschew some of the benefits of DI by doing monkey patching instead (e.g. to mock out an object's 'tightly coupled' dependencies during testing), but to myself and many OOP proponents DI leads to cleaner design and simpler tests.
- dodyg 12y agoThis is what is shit with JavaScript frameworks, no respect to backward compatibility. Imagine if these kind of API churning happens in C++ or other languages.
- binocarlos 12y agoI'm sat right now coding a bunch of new stuff in angular 1.2 - it was feeling sweet until I read this - now it feels old and outdated. Time to just ignore the massive race to reinvent the framework and just get some stuff done I think.
- Narretz 12y agoSince when is C++ a framework?
- Wintamute 12y agoEvery large opinionated framework is "overblown" (aka "scary") until you actually take the time to learn it and code a few large non-trivial projects with it. I've learnt more MVC frameworks than you can shake a stick at and Angular is hands down one of the best. Once you're comfortable with it you can fly and code things so quickly and cleanly, and it scales well into complex apps too. Angular is largely designed the way it is to promote small, encapsulated, testable components. But if you're not practising TDD, or don't test your code at all, (which I suspect is the case for many of the framework's detractors) then it possibly is somewhat over architected - by all means pick a simpler framework, but don't knock it from a position of ignorance.
- purpletoned 12y agoWe're not saying Angular's bad, just that React's approach is better :) I've tested both (and quite a few other MVVM libraries actually) before I came to this conclusion. Of course, I gain nothing by someone choosing Angular over React or vice versa. I'm just sharing my experience and leaving them to make their own choice.
- trumbitta2 12y agoTBH, I'm both amazed by the power and simplicity of Angular && mad at how difficult and unpredictable is to unit test services that use promises and/or depend on other services.
- Wintamute 12y agoYou can fully mock out those services and pass them into the component under test. Those mocks could return an immediately succeeding (or failing) promise for example. Hey presto, no uncertainty or weird promise handling code in your tests.
- jbergens 12y agoI think promises are hard to test regardless of framework. As a side note most Angular examples seems to do more functional testing than unit testing since they don't mock many other services.
- joeevans1000 12y agoI think it's hilarious how javascript frameworks are beginning to resemble java frameworks. This new release is really starting to look like Spring, including annotations. The increasingly complex DI is also looking like Spring.
- paulojreis 12y agoYeah, in IT we tend to go full circle. Or full retard. :)
- ggregoire 12y agoI fixed your sentence for you: "javascript frameworks are beginning to resemble serious frameworks". I used a few of frameworks in my life and all of these have annotations. Symfony for example and even C#.NET (not with the @ syntax but with []). About DI and singleton, this is also a classical design pattern used by a lot of frameworks and languages. I dont know why you do a fixation about comparing JS and Java.
- hippich 12y agooriginal author came from Java server-side background I believe, that probably explains why you see similarities.
- rdtsc 12y agoI that is what I thought too. I believe in a couple of years we'll be hearing jokes about the "fat" frameworks we used and shot ourselves in the foot. Kind of like how people make fun of Enterprise Java Beans' FactoryFactory... methods.
- swalsh 12y agoThere have been so many binding frameworks, with a few varieties of approach. It has always been clear that it's "experimental". But it's been a few years now, and the mature(er) frameworks are focusing themselves. This is a good thing! I'm glad they're learning, and willing to make it better. In my career I've gone from ASP -> PHP -> ASP.NET Web Forms -> ASP.NET MVC -> Angular/knockout/react. We're developers, if you can't flow with change you should move on to one of the more established engineering disciplines.
- dodyg 12y agoIt's not about you, the developers. You can easily move on and jump from frameworks to frameworks. Your clients or employers suddenly have to worry about one extra thing because their newly developed applications/systems suddenly become 'out of date' simply because the crazy churn in on JavaScript frameworks API. It is not a good thing. We are invalidating people's investments, time and money for no good reason.
- peteypao 12y agoI don't think this is a bad thing. The angular they built will still be working, just like C++ that was written 10 years ago will still be working.
- dodyg 12y agoDon't invest in a framework that does not respect your time commitment and existing implementation. They break compatibility between 1 and 2. It is most likely they will break 2 and 3 as well. Don't be that programmer that leave shit all over the place for his/her successor to pick up due to bad choice of technology stack.
- swalsh 12y agoHonestly, that's why you don't develop a new production system in a framework that's just a few years old. I had a coworker suggest using Angular on our main product that pays our bills. My reply was, it looks great... i'm excited about it, but I think we should use it on less critical systems until it matures. There's too many unknowns. There's no reason every new platform you develop needs to be using literally the latest tech. Actually, there's really good reasons not to.
- hellbanTHIS 12y agoIs this just a proposal or something?
- marknutter 12y agoIt's sad to see a post on HN specifically devoted to Angular utterly devolve into framework flame wars. If the title were "Why Angular 2 will be better than React" I could understand, but this is just a sneak preview of features to come. Can we please just choose the tools we prefer and build stuff instead of nursing our insecurities about the choices we've made?
- personZ 12y agoAs someone at the inflection point of choosing a single-page framework, I find these "flamewars" incredibly useful. Further I find the notion that this is evidence of insecurity itself evidence of insecurity -- why feel threatened that people discuss alternatives and merits/detriments? When new language features of C# or other languages (e.g. Go) are brought up on here, inevitably those features and benefits will be contrast against other languages. And they should. Because we aren't hammers and everything isn't a nail, and even if we happen to use tool A today, we usually have the capacity to move to tool B tomorrow if it made sense.
- watty 12y agoSurely you don't really find "off topic" complaints an insecurity. This article is about Angular 2.0, I would expect to read about thoughts/pros/cons about Angular 2.0 when reading the comments. It's similar to reading comments on a Halo (Xbox) post on Reddit. Over half the comments are flame wars about PS4 > Xbox. There have been many "framework vs. framework" potss already on HN, let's keep the flamewars contained.
- personZ 12y agoWhat is the scope of an on-topic pros and cons discussion, though? It seems that the relative comparison should include competitors, especially given how large of a change this apparently will be. For a current user of Angular it isn't a certainty that will make them a user of 2.0.
- joshkpeterson 12y agoNo, sometimes you don't really know what something is without holding it up to a yardstick. Flamewars are annoying, but this isn't a flamewar. Carry on.
- spir 12y agoAs somebody with little experience writing web applications, having just used ember for a my last project, these Angular 2 Core highlights seem way behind ember.
- tschellenbach 12y agoI tried both EmberJS and Angular. To me it seems Ember is years ahead, the main advantages: - clean model abstraction, which prevents soo much boilerplate - clean templates - components, partials, great re usability
- danieltrembath 12y agoI've built one significant project in Ember, and three in Angular (multi-month projects with a small team; requiring maintenance for the next 3-4 years; < $100k USD). Ember 'feels' so much more right to me. I really enjoyed working with it and it reminded me of the desktop frameworks I used to work with. It's not without it's faults, but what is. But sadly Ember just doesn't seem to be holding it's head up in the ongoing swell of JS frameworks. I think that is a great pity. But time goes on and they'll all be forgotten in a few years.
- danieltrembath 12y ago"its"
- jamilb 12y agoI need to re-sign in with my password to view this document. Why does everything have to be associated with my Google account. Sigh.
- davidholmesnyc 12y agoI feel that Angular changes too much in HTML to be considered useful for long term projects.The new syntax is also disturbing. My ideal MVC for front end utilizes regular javascript and html tags. At most just add data-ang-click="" something like that instead of "(click)" the latter isn't even valid HTML. Sometimes I think Angular is mainly popular because it's supported by Google. If any regular developer made these drastic changes in HTML with non valid tags and attributes people would not be happy with that project. I know Angular has a lot of community support and I have built some side projects in Angular but I feel now too bloated with having their own standards instead of following normal HTML standards. That's just my 2 cents on it and i'm sure there are a ton of reason to use Angular but I just don't know if I can continue supporting a project that makes so many drastic changes to a standard. I don't want to make it sound like I have Angular hate here but i'm a big vanilla fan and it seems in order to build anything useful in Angular you have to throw out vanilla and use Angular's way even if vanilla is better. On most projects handlebars and correct proper design patterns in code is enough to keep HTML out of javascript and keep basic organization.
- uptownJimmy 12y agoWould you be able to embrace Angular if it became a de facto standard? Because it seems pretty close to doing that. Interesting stuff.
- rimantas 12y agoNo way. And I very much doubt it is anywhere close to becoming any kind of standard.
- fetbaffe 12y agoIf Angular would become standard then the fast paced progress in browser technologies will definitely grind to a halt. It will be Pax Microsoft all over again.
- uptownJimmy 12y agoThis was my thought, as well. On the one hand, I want to position myself where the jobs are plentiful. It's not a choice, but a necessity. On the other hand, I lived through Pax Microsoft and it was often not pretty. It's interesting living through times of viciously fast change in one's field of endeavor.
- vayarajesh 12y agoIt took a lot of time for me to get the hang of AngularJS 1.x and now AngularJS 2 seems very promising but shifting along with the new syntax, programming logic is really painful.. They should provide a path to easily shift programmers thinking from 1.x to 2 (hopefully it is already in their roadmap)
- vanadium 12y agoIIRC, in the larger Google Doc cache of their Core documentation for Angular 2.x, they've stated in the manifesto of sorts that, well, that "easy shift" may just not be possible. Primarily when it comes to migrating existing applications.
- vayarajesh 12y agoAlthough I am looking forward to the Angular 2.x mainly to see what it has in store in terms of performance.. i had had faced performance issues with Angular regularly
- zak_mc_kracken 12y agoEven though this is still called "Angular", this new version has barely any resemblance with the previous one, it's really a totally new framework. It's a bit sad to think that all this knowledge I have of Angular 1 is now obsolete but I'm excited to dive into this new framework. If it's half revolutionary as Angular 1 was, it's going to be a pretty interesting time.
- Varcht 12y agoI think it is pretty exciting, in a way it is about the migration off the desktop. Over the last year we have transitioned from WPF thick clients to a SOA with a SPA front end using Durandal. Using Durandal along with knockout felt very natural to us. We chose Durandal in a large part because it was written by someone that thought like us and leveraged years of desktop best practices and applied it to what we viewed as the "wild west" that is web development. Glad to see Durandal concepts will be making it into a great project like Angular [0], Hope it is a peaceful revolution. [0] http://eisenbergeffect.bluespire.com/angular-and-durandal-converge/ http://eisenbergeffect.bluespire.com/angular-and-durandal-co...
- mcbutterbunz 12y agoI have to agree. Will there be backwards compatibility? If not, upgrading to angular 2 is going to require so much work and we'll probably end up switching frameworks. This could end up like Python 2 & 3.
- dodyg 12y agoIt is not an upgrade if your old stuffs stop working. Man, 1.0 used to mean something.
- GhotiFish 12y agoReally? Well when it came to programs, one used to expect that older versions of the files used with that program would themselves be upgraded, or would just work. However, when it comes to languages, the major version number is used to indicate breaking changes. So where does angular lie on that continuum?
- desireco42 12y agoI love how they use attributes, I've been impressed by attribute modules for CSS. The only thing I am surprised, I would think that this would include significant overhead, yet you claim it is way faster. Most likely previous scanning of the dom was even slower. I think this is excellent use of attributes and good way to refactor things. What others pointed out, this is different framework :)
- marani 12y agoNew syntax is ok, quite cool actually, but I'd rather see more improvement on things like route, high performance repeat. Hope they bring some goodness from Angular 2 to Angular 1x as well. Also, not sure how the old directive/plugin ecosystem would fit in, is there any rewrite needed?
- omarelamri 12y agoIs he using TypeScript or ECMAScript 6? Also, is it just me, to does this seem like a completely different framework than Angular 1?
- novaleaf 12y agoTypescript is ECMAScript6, with additional (typing) features. I'd venture it's ecmascript 6 being used, as Google suffers NIH syndrome too..
- omarelamri 12y agoYeah, it definitely is EcmaScript 6. They've added the "class" and "constructor" keywords. Typescript is very mush modeled after EcmaScript 6 anyways, so technically it can be both. But I'm sure it's EcmaScript6, because that's what Angular 2 is written in.
- joshkpeterson 12y agoSee the post about Google's AtScript that was on HN yesterday.
- omarelamri 12y agoSo is this basically TypeScript with annotations and types available at runtime?
- jarek-foksa 12y agoI wouldn't call TypeScript an "ECMAScript 6 with types". It feels more like a superset of ECMAScript 5 as it introduces non-standard features such as static class properties and public/private scoping while major ES6 features such as proxies, symbols, generators, modules or block scoping are not supported.
- novaleaf 12y agois there a video of this? viewing these slides is like reading every-other page of a book :(
- calinet6 12y agoSo... upgrade path is nonexistent? Looks like it's great if you're starting from scratch though!
- EGreg 12y agoIn your face Angular fans, who said that all the angular stuff was the best way. They scrapped most of it!
- TheMagicHorsey 12y agoWhat does Angular win you beyond what you get in Web Components? I haven't used Angular, so this is curiosity, not a challenge being issued.
- joeevans1000 12y agoCan anyone suggest which practices can be added to the use of 1.3* to ease the transition to 2.0? For instance, if I start using grunt-ng-annotate or gulp-ng-annotate now, will that help ease the transition? If it would, I'd be curious what other things I could do to make the switch less abrupt.
- Bahamut 12y agoI think the biggest win would be to start using ES6 and getting used to using the import/export syntax.
- ChrisCinelli 12y agoI understand wanting to appeal to the same user base and tell that it was develop by the same team. It's a brand decision. Nevertheless Angular 2 "deserve" a completely new name. It has no resemblance of Angular 1.x. Welcome to a new framework.
- finalight 12y agotime to find another framework to work with or best is, just scrape client side MVC framework, and fallback to server MVC framework
- joeyspn 12y agoI'm now wondering what will happen to other projects that have placed a huge bet in Angular 1.x, like the Ionic Framework for example...
- toblender 12y agoIs this for real? Is this the official direction for AngularJS 2? Seems like a very big leap considering people are just getting use to the way AngularJS 1 works ($scopes etc).
- ChicagoDave 12y agoAfter looking at the doc, my first reaction is that all HTML should be schema compliant. Using non-standard HTML in the constructs will screw up a lot of tooling and validation. It's also safe to say this is just too big of a change without public commentary. Way too big.
- taskstrike 12y agoThis is a change for the far worse, someone branch this please and maintain a backward compatible branch with the same syntax.
- dandv 12y agoFrom http://jaxenter.com/angular-2-0-112094.html http://jaxenter.com/angular-2-0-112094.html: > the framework will be “drastically different looking”, meaning users will need to get to grips with a new kind of architecture. It’s also been confirmed that there will be no migration path from Angular 1.X to 2.0. > Currently Angular is aiming for a release by the end of 2015 – but early 2016 seems more realistic given the drastic changes that are planned. This essentially makes investing in Angular pointless, when there are far more capable and easier to learn frameworks out there - Meteor primarily, and also Derby.js, though it's got about 1/10th of the momentum of Meteor, which launched 1.0 two days ago, and had 20k GitHub stars without backing from some giant company. BTW, Meteor never broke compatibility with earlier releases in such drastic ways as Angular will.
- donsw 12y agobye bye angular. need new framework due to 2.0 if I have to rewrite then I might as well look at others.
- sproutkey 12y ago1. For developers, change is usually a good thing in regards to our careers. If you aren't learning and growing, it's not Angular that will go away, it's you. 2. They are following the http://semver.org http://semver.org definition of a major version change perfectly fine "MAJOR version when you make incompatible API changes". 3. If anyone is bothered by the complete shift, fork Angular at version 1.3 and maintain it yourself. That's the joy of open source. You might even be a hero to many other developers.
- stardrive 12y agoGreat to see HTML5 growing so rapidly during the past few years! That said, I'm not a huge fan of frameworks, they do not work so well except for basic pattern apps. When you have an app worth building you consider very carefully what foundation stones to use. I ended upright on my feet and happily dancing using React as one of the stones.
- kvirani 12y agoNothing surprising or disappointing here in my opinion. It was my understanding from day 1 that ng was Google's experiment and attempt in transforming and mutating HTML into a language for web apps instead of web sites.