9 ms·
The Future of AngularJS
- antihero 13y agoWhen ECMAScript 6 "happens" (any idea when that will be?), will we actually be able to use it or will we have to stick to old things due to browser compatibility?
- nailer 13y agoNeato. Angular reimplementing it's own module system (when many developers already have a large body of code in existing module formats, particularly AMD) was one of the things that turned me off when first looking at it. Do ES6 modules have all the dependency injection stuff the Angular developers wanted?
- avty 13y agoYes
- camus 13y agoModule system =/= Dependency injection. AngularJS modules =/= CommonJS modules Module system = way to FIND object definitions physically(files) or logically(name). Python has one, NodeJS has one. Dependency injection = way to WRITE objects by creating dependencies between them in order to separate concerns. RequireJS = gives Javascript a module system ( fetching files according to the module name to find module definitions ),which is configurable since JS doesnt have one. AngularJS = instanciate objects according to their defintion and the definition of its dependencies => doesnt look for files in a path to find the definitons. And ES6 definetly DOESNT DO dependency injection, ES6 gives JS a module system which is configurable. When ES6 gets it's module system , people wont need require JS anymore, but it has nothing to do with AngularJS.
- nailer 13y agoPlease read posts before replying to them. - Nowhere in my post did I say a module system was dependency injection - Nowhere in my post did I say angular JS modules were CommonJS. Please don't use uppercase for emphasis, see http://ycombinator.com/newsguidelines.html http://ycombinator.com/newsguidelines.html Explaining in further detail: a feature of some module systems is dependency injection (yes, dependency injection can also be performed outside a module system, but the slides discusses module systems so we will too). DI gives module systems the ability to instantiate objects using different dependencies. This is handy for things like testing, where eg, a name that would normally resolve to a network API module would instead be resolved to a stub module with pre-canned responses, so any calls to that network API module return consistent responses. Lack of dependency injection in existing JS module systems (you can do it in AMD, but using file paths so it's kind of hacky) is cited in the angular docs as the reason Angular includes its own unique module system. Weather people still use AMD or CommonJS or Angular modules after ES6 modules really depends on the feature set of ES6 modules. Hence asking about the feature set of ES6 modules.
- coldtea 13y ago>- Nowhere in my post did I say a module system was dependency injection Let me remind you then: "Do ES6 modules have all the dependency injection stuff the Angular developers wanted?" >Explaining in further detail: a feature of some module systems is dependency injection An orthogonal, non relevant feature, that has nothing to do with the core role of a module system. That some module systems have this frankensteinian stuff included doesn't mean much.
- nailer 13y agoThe statement you are bizarrely quoting quite clearly does not equate dependency injection with module systems. Again, read HN guidelines, your account is quite new and it's very obvious you haven't done so yet.
- Kiro 13y agoI don't know. In a large AngularJS application I want the Angular module system separated from other JS modules. They are completely different things if you ask me.
- augustl 13y agoYou have to sign in with a Google account to access the content. All I get is a login page, at least. Anyone got a link that is publicly accessible?
- HNJohnC 13y agoI don't understand why people link to raw slides. Are we meant to waste our time trying to read meaning from them like tea leaves? Surely there is something to go with this slideshow?
- taude 13y agoI don't know...these slides seem to make sense and only took a minute to go through them. But I understand your complaint in general, because there's some slides that don't make sense out of context of the speaker's presentation.
- BigChiefSmokem 13y agoI'm guessing someone at Google marketing posted this. Slides are useless without the actual presentation that goes along with it.
- sanderjd 13y agoYeah but I don't like watching actual presentation videos, because then there is audio and they move at their own pace. I'd love to see more slides + detailed notes though.
- teleclimber 13y agoYou can open speaker notes by clicking on the cog at the bottom. Some slides are nicely annotated. (I won't go into the annoyance of having my focus split between the slide and the separate notes.)
- debacle 13y agoI would usually agree with you, but these slides provide some good context.
- jeduan 13y agoNow whenever I see The Future of <something>, I asume such thing is getting killed.
- smrtinsert 13y agoso true, maybe someone can write a script to grab similar titles from HN for comparison.
- samuelclay 13y agoSame with "Security at <something>" meaning something bad happened. There's another story on the HN homepage right now where I assumed it was a break-in, when in fact is was a preemptive strike.
- bsaul 13y agoDo we have more clues as to what migrating an angularjs directive into a webcomponent will look like ?
- pspeter3 13y agoThis is my biggest fear with Angular
- jemeshsu 13y agoIs there a release schedule for ES6?
- camus 13y agoI heard end of 2013 a year ago , unlikely , their spec has too many stuff. The only things devs need urgently is the module system , let , const , proxies and the new data types ( sets , maps , weakmaps , etc ... ), the rest can wait IHMO.
- gumpieza 13y agoI really cannot understand why this whole phase of "posting my slides" is becoming a big thing. Powerpoint presentations are useful in context. This link was of no use to me apart from some bullet points
- JDDunn9 13y agoUnfortunately, I didn't see improved documentation in their future vision... I'm not sure how a lot of those ideas will work with compatibility with older versions of IE. You already have issues using the element tags for new attributes.
- palmer 13y agoYou can get around the IE problem by using classes to call your directives rather than element tags. <div class="ng-view"></div> isn't as pretty, but it works in IE8. http://docs.angularjs.org/guide/ie http://docs.angularjs.org/guide/ie Agree that the documentation is still lacking.
- yoshokatana 13y agoAttributes also work for directives, though I like using ng-cloak as a class. I think in the future (next year, when my company will probably drop ie8 support) I'll start using custom tags.
- teleclimber 13y agoThere is a limit to how long developers will support these old browsers, even if they sell to corporations and institutions with backwards IT policies. Some companies and even healthcare institutions are seeing the light and upgrading their systems. As more and more do, it makes less and less business sense to support old browsers (fewer companies still using them, and it only gets harder to make a modern web-app work on them). There is a huge cost to supporting old browsers. There IS a tipping point where it's just not worth it anymore. So the companies/institutions that don't upgrade will soon enough be left behind. That's just the way it is.
- saidajigumi 13y agoIf you must support outdated versions of IE then your future is grim. The working tools you have today are all you will ever get. An expectation for ongoing framework support for these legacy environments is wholly unrealistic.
- 13y ago
- alexandros 13y agoWhat I don't understand is all the whining about posting slides. This is fresh off the presses, answers hot questions in the angular community, and obviously people are upvoting it. If you're aware of what's happenning in Angular, every slide stands on its own and has useful info. Can we please give all the moaning about format a rest please?
- kops 13y agoYeah I don't understand it either. This is very much in line with cryptic style of communication by AngularJS :-)
- tbergeron 13y agoI 100% agree, I just started using AngularJS and I'm very happy to see a preview of what I'll have to learn in the future and how current practices will change.
- 1qaz2wsx3edc 13y agoI wouldn't call this fresh off the presses. The angular team talked about many of these points back in June. http://www.youtube.com/watch?v=W13qDdJDHp8 http://www.youtube.com/watch?v=W13qDdJDHp8 It's really exciting. This is a good summary of the future though.
- DigitalSea 13y agoTo be fair, this is the first time I've seen this. Not everyone gets to see everything as it comes out and I would argue that June (3 months ago) isn't exactly old news. Having said that I am really excited to see the future of Javascript isn't as ugly and hacky as it currently is.
- emp_ 13y agoThe Shadow DOM seems like beautiful for reading/blocking output but I see most of my time with the "Expand Shadow DOM" option in the dev tools to see what the heck is actually going on during development.
- dmak 13y agoI was really excited when I saw the multiple responses possible for a given request
- drivebyacct2 13y agoI hate choosing between Angular and Polymer.
- adelevie 13y agoBeing able to avoid $scope.$apply() will certainly be nice. As it stands now, if you want to leave the Angular reservation and use something like the Parse JS SDK (which is a customized set of Backbone models) your code will be littered with $scope.$apply(). Not very DRY, and also adds, from the dev's point of view, a needless level of nesting functions.
- ctvo 13y ago... how does this have anything to do with DRY? You're calling $scope.$apply because you're re-entering AngularJs with new data and need to start off the dirty checking process. This isn't repeated logic. This is a core function of the framework that's meant to be used exactly like that. It's meant to be called that many times if you're doing that many things outside of Angular and need to sync your models.
- GeneralMaximus 13y agoParse.com has a perfectly capable REST API[1] that you can use with Angular's $resource. If you use Restangular, then your life becomes even easier. It won't be as convenient as using their JS SDK, but your code will end up looking much cleaner. --- [1] https://www.parse.com/docs/rest https://www.parse.com/docs/rest
- adelevie 13y agoI've spent my fair share of time pouring over Parse's REST docs[1][2]. It's a fairly large undertaking to fully support all REST features, so it's still a decent trade-off to just use the JS SDK. If there are any Parse + Angular REST client projects, I'd be happy to contribute some code. [1] https://github.com/adelevie/parse_resource https://github.com/adelevie/parse_resource [2] https://github.com/adelevie/parse-ruby-client https://github.com/adelevie/parse-ruby-client
- olegp 13y agoWhat I want to know about the future of AngularJS is: what is the state of server side rendering? We have some of our own ideas as to how this could work at https://starthq.com https://starthq.com but I am hesitant to start implementing anything so as to avoid duplication of effort.
- rcsorensen 13y agoYou should take a strong look at http://github.com/airbnb/rendr http://github.com/airbnb/rendr . I'm sure non-backbone adapters would be appreciated.
- olegp 13y agoI couldn't find info on these adapters. From what I can tell this is very Backbone specific. Can you point me in the right direction?
- ryankshaw 13y agodoes anyone know if there was a presentation that went along with these slides. it would be great to be able to see it. @briantford if you see this, we'd love to see more of the meat behind the bullet points. cool stuff though!
- na85 13y agoAm I the only one who thinks the name "Angular JS" is nonsensical and, frankly, a little silly?
- scorpion032 13y agoLooks like that.
- saiko-chriskun 13y agoYep.
- arbus 13y agoAs long as the name is unique and not offensive, what does it matter?
- hannibalhorn 13y agoI would guess it was originally "ng" for next generation, and then they wanted to come up with some kind of pronounceable name when they made it public. I'm just glad it's easy to google!
- Bahamut 13y agoPersonally, I liked that the slides are up there publicly, even if I don't get to see the talk to go with them - they function nicely as a brief overview to the future of Angular, letting good devs fill in the rest. Much of this isn't new, but I liked seeing some example code snippets comparing current and future syntax.