10 ms·
Introducing Aurelia
- skrowl 12y agoSo this is why he bailed on the Angular team?
- muraiki 12y agoHe wrote a blog post explaining his reasons for leaving: http://eisenbergeffect.bluespire.com/leaving-angular/ http://eisenbergeffect.bluespire.com/leaving-angular/ "I am not saying that Angular 2.0 is going to be a bad framework. What I am saying is that it is no longer fundamentally the same thing I was originally hired to help build nor is it compatible with my vision for the future. It is no longer the best path ahead for the existing Durandal community and it also isn't the best choice for anyone who has used my other frameworks and wishes to migrate to the web."
- coreyoconnor 12y agoAfter reading through a lot of blah: http://aurelia.io/docs.html http://aurelia.io/docs.html
- niix 12y agoBeen using Durandal for awhile in production, looking forward to the next chapter.
- sunsu 12y agoMy wife's name is Aurelia and its really weird to see a web framework named this. Its like naming a framework: "Thomas". Example: Me: What tools/framework did you use to build the app? You: Aurelia. Me: Oh cool, I used Thomas. You: Yeah, I thought about using Thomas, but stuck with Aurelia because it offered better features.
- greenpizza13 12y agoMy wife is named Julia. . . . And my brother is named Lisp, so it gets weird. :).
- agumonkey 12y agoLess than a sibling called PHP though.
- yuchi 12y agoPlease don’t get me started on my cousin. His first name initials are BF, so…
- zem 12y agohttp://ars.userfriendly.org/cartoons/?id=20010831 http://ars.userfriendly.org/cartoons/?id=20010831 (i've always wondered if their not recognising "miranda" as a language was a miss or a subtle joke on illiad's part)
- aeontech 12y agoWell, as another example, Mercedes was a feminine given name originally. The company was named after the founder's daughter. Now it is associated almost solely with automobiles, at least in anglophone world.
- enqk 12y agoOne ex-colleague of mine is named Aurelia and I got the same reaction.
- hexasquid 12y agoWe make these jokes with the documentation for the Julia language. "The easiest way to learn and experiment with Julia is by starting an interactive session".
- thom 12y agoOkay, so I'm the only one that immediately thinks of an Mtg card. http://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=366448 http://gatherer.wizards.com/Pages/Card/Details.aspx?multiver...
- brentvatne 12y agoThis looks a bit like Angular 1.3 and 2.0 to me - DI, binding and repeats look like ng-model and ng-repeat.. I'm curious to see more when the full docs are out though. No mention of isomorphism or a virtual DOM, seems to be a bit behind the zeitgeist.
- ZenoArrow 12y agoI don't know why you missed it, but it mentions both isomorphism (code that can be run client side or server side) and the virtual DOM (web components, etc...).
- rabbyte 12y agoCorrect me if I'm wrong but web components can use the native DOM without depending on a virtual DOM.
- ZenoArrow 12y agoNot as far as I know. What I can tell you is that web component polyfills like Polymer end up partially recreating the shadow DOM, and that's a lot of work, unlikely to have been undertaken unless it was necessary.
- brentvatne 12y agoThis is not mentioned in either the blog post or the docs, at least not easily findable with a cmd+f "Use some of the libraries on the server with NodeJS. i.e. DI." - some, and I'd expect an explicit mentioning of isomorphism if it were possible at the moment to render it on the server side. Shadow DOM != Virtual DOM. I mean the React-style Virtual DOM.
- ZenoArrow 12y agoWhat are the main differences between the shadow DOM and the virtual DOM?
- 12y ago
- dkarapetyan 12y agoThat's how you do a client-side framework or any framework for that matter, forward thinking with backwards compatibility and no custom nonsense tying it to a specific language (AtScript).
- watty 12y agoCompletely agree on backwards compatibility but AtScript isn't required for Angular 2.0.
- TheSisb2 12y agoIs this backwards compatible? I thought Evergreen browsers meant IE10+
- dkarapetyan 12y agoI meant in terms of the design of the framework and the emphasis from day 1 on making everything modular and interoperable with the rest of the JavaScript ecosystem, e.g. jQuery, Knockout.js, etc.
- bigethan 12y agoIs this like Angular in that it can't be run on a Node/io.js server to generate HTML? Any isomorphic plans for it's future?
- egeozcan 12y agoI'm excited to see this. Durandal was (and actually still is) a joy to use and coming up with something this advanced with a possible migration path is amazing. Small confusion: They chose to use 6to5 and jspm but jspm depends on Traceur and there is even an issue[1] for supporting 6to5 on jspm issue tracker. (Edit: Just discovered that they were answering questions on Gitter[2]) [1]: https://github.com/jspm/jspm-cli/issues/354 https://github.com/jspm/jspm-cli/issues/354 [2]: https://gitter.im/Aurelia/Discuss https://gitter.im/Aurelia/Discuss
- ttrashh 12y agoWe use Durandal as our SPA framework and we love it. So glad to see this. Rob knows how to write a framework.
- alxbrun 12y agoNo pun intended against Aurelia, but this reminds me... https://twitter.com/iamdevloper/status/540481335362875392 https://twitter.com/iamdevloper/status/540481335362875392 "I think I've had milk last longer than some JavaScript frameworks."
- davej 12y agoWhere's the pun? This is the new version of a framework that has been around since 2012. I have no milk in my fridge from 2012.
- chrisdone 12y ago"areola"
- fhars 12y agoSeems to be a common feeling... http://geek-and-poke.com/geekandpoke/2014/11/8/frameworks http://geek-and-poke.com/geekandpoke/2014/11/8/frameworks
- moomin 12y agoRob has been around a while, but was most recently working on Angular 2.0. However, he's had technical differences with the team and has returned to a framework that matches his approach better.
- bronson 12y agoThe video, the intro, the docs, ... None of them seem to mention testing. That's a disappointment. Anyone got a link on how to test an Aurelia app?
- hardwaresofton 12y agohttp://phantomjs.org/ http://phantomjs.org/ http://jasmine.github.io/ http://jasmine.github.io/ Not trying to snark, but if you need to test javascript, use jasmine. If you want to acceptance/integration testing (depending on your definition of those terms) as a user clicking around your site to make sure the things you think happen are actually happening, use phantomjs (I'd also suggest using nightmarejs on top)
- bronson 12y agoPhantom is unreliable, barely maintained, and brutally slow. I think one of the reasons Angular has seen such remarkable adoption is because it made testing easy, quick, and idiomatic.
- hardwaresofton 12y agoA little more detail please? Unreliable What version of phantom are you referring to? Do you have any specific examples? Barely maintained They do have a lot of tickets open, but in uses of phantom (wrapped by nightmarejs), I have not run into many issues that even required filing tickets/requiring maintenance. 90% of the use case of something like phantom is rolling around the page and clicking on stuff/filling out fields/evaluating some javascript, and it does that fantastically most of the time. Maybe I haven't done enough ambitious things with phantom. Brutally slow Compared to what? Selenium? I hope you're not comparing to the testing included with angular, because those are two different kinds of tests. Also, in the end, I think the most important kind of test is the kind of test you write with something like phantom/selenium because it requires that the system (at a macro level) does what it's supposed to do. If you make a todo app, you can have all your unit tests pass and the app still be broken. You definitely can't have your integration/end-to-end test pass if the app doesn't actually work (though the functions may be terrible, buggy, etc. Personally (I have no data to back this), but I doubt Angular has seen remarkable adoption because of easy testing. [EDIT] - I just noticed that you ignored the mention of Jasmine -- Maybe Angular shouldn't require it's own testing strategy at all, that seems like a pretty good indicator of a monolith (which Angular is, so I guess that's not really an interesting point).
- nwah1 12y agoFrom a development standpoint, it reminds me of Silverlight and WPF. I'm very happy to see this. MVVM is a simple but powerful pattern.
- moomin 12y agoIf you used Caliburn, it should. The same guy is behind both.
- netfire 12y agoLooks interesting. It would be nice if they were more specific about what browsers the framework supports though. There's a phrase that you can "Leverage the technology of the future but target today's Evergreen Browsers." That's a nice bit of copywriting, but it doesn't instantly tell me which browsers are supported. It would be nice to have an official supported list.
- sanderjd 12y agoHere's[0] an article from the author of the OP defining the term. It just means "browsers that auto-update without user intervention". [0]: http://eisenbergeffect.bluespire.com/evergreen-browsers/ http://eisenbergeffect.bluespire.com/evergreen-browsers/
- shadowmint 12y agoBasically not IE.
- shruubi 12y agoI hate to sound jaded and cynical, but am I the only one who feels weird about a new framework announcement containing information for getting training and consulting? I understand that there is no money in releasing free frameworks, but it seems a little soon to be selling consulting and training on an early-access preview...
- hardwaresofton 12y agoI think this might have something to do with the fact that he is the CTO of Durandal (which seems to be based off of durandal.io, or maybe the other way around). I assume that he's currently the CTO of a very small company (of maybe even just him), and one of the ways to do that profitably, while building things you love, is to consult/provide training on the things that you have built that others want to use
- DigitalSea 12y agoI guess it isn't too early when you consider who is actually behind Aurelia: Rob Eisenberg. If you have used Durandal before, then you will know what I am talking about. I have no doubt in my mind that Aurelia is going to shake things up. Just having a play with it earlier gave me a sense of excitement that I remember getting when I first used Angular all those years ago. I get the impression we're dealing with a framework that is based in part on Durandal, so it is not an entirely new framework in certain aspects (I could be wrong). And on the plus side, Rob has proven himself as an effective leader on projects like this and during his time on the Angular 2.0 team, he was doing some great work.
- d357r0y3r 12y agoI would actually prefer that a framework be backed by some kind of business. When it's just a guy moonlighting, you never know when he might disappear and you've now got a production app that's being supported by "the community".
- niix 12y agoHe has been doing the same thing for his other framework that has been around for much longer. I assume the note about training is directed towards those who have use his Durandal training/consulting and may be interested in doing the same for this new framework.
- Linell 12y agoThis seems really nice. Just looking through the first few links and pages, it seems to have all of the nice things I enjoy about Angular. It looks like it may have less of a learning curve too, which would be very nice.
- optimusclimb 12y agoYET. ANOTHER. Javascript framework. This is what people are talking about in countless blog posts (that also make their way to the front page of HN.) So glad I'm not a front end dev trying to keep up with this world.
- huragok 12y agoSame can be said for Ruby, Python, C#, etc. A lot of people have a lot of ideas, preferences and time to burn creating/learning new client side frameworks.
- judah 12y agoThere are two sides to it: yes, new frameworks and new stuff to learn, and that can be overwhelming. On the other hand, rapid evolution leads to better ideas, keeps your mind fresh as your learning never ceases, and an opportunity to improve yourself, keep your career in demand, and generate more income for yourself. Example: when I started web dev, client-side code was basically a giant function containing browser-specific DOM manipulation. Today, client-side code is arranged in modules with single responsibility, well-defined application architecture, easy to test, easy to modify or extend, the app logic cleanly separated from the UI. Rapid evolution also keeps the mind fresh. You're continually learning new concepts, absorbing new ideas. This helps me enjoy my job; I'm always learning. Rapid evolution keeps my skills in demand, too. My last 2 gigs have been because I learned Angular. I'd be hard-pressed to find work if I was still building web apps like it was 1998.
- d357r0y3r 12y agoI don't really see why this is a problem. When my team started using Durandal, the learning curve wasn't very steep, and in the end, it became way faster to create new pages/features. If a framework learns from the mistakes of the past and builds on previous success, then I welcome it.
- niix 12y agoI can agree that it is a bit overwhelming to keep up with the new 0day hotness. But in all honesty it's also exciting. Things are changing constantly, and mostly for the better. I am particularly glad to be a front end developer and enjoy the constant strive to learn the newest thing.
- hardwaresofton 12y agoIf I read/watched correctly, what's really different about this framework is: 1. Large focus on ES6/ES7 2. JSPM 3. MVVM as made popular by libraries like KnockoutJS (which Durandal was built upon). I think this is awesome. While I don't plan on rewriting an app I'm already working on in it, I think the interface to the framework is very very simple (which is refreshing), due in large part to the tight ES6 integration. Also, I think MVVM is preferable to MVC (mostly because "controllers" are an overloaded term and end up being VMs anyway), but that's just a personal opinion (as is everything else I wrote).
- monk_e_boy 12y agoHaving tried nearly all the JS frameworks, I really like KnockoutJS. There are a few bits missing from it, but for someone like me who doesn't want a 1 page app knockout fits into a many page website really well. You can enhance pages as you go. Add a few nice GUI bits, some ajax to load and save... knockout makes it all very lovely. But all the frameworks, the view syntax/binding gubbins is horrid. Hard to debug, easy to make syntax errors. Bleugh :(
- pygy_ 12y agoHave you tried Mithril? The views are defined in JS, eschewing the "syntax/binding gubbins" you appear to dislike. http://lhorie.github.io/mithril/ http://lhorie.github.io/mithril/
- hardwaresofton 12y agoAbsolutely agree. Every time I start a new project, I start with knockout, then realize I need more of the bits, and then migrate to something else with more "built-in". On an app I'm currently developing, I've actually adopted the pattern of using knockout with some other libraries (directory, for routing, mainly) and actually have found relative success. One thing I have been tossing around in my head though is creating a web development pattern (I'm really just avoiding using the word "framework" here) that does this by default (and intentionally). My vision for it is to be a marrying of knockout (for data-binding & templating & components), director.js (for routing, I think pager.js, while well intentioned, is too complex), and requireJS for async loading, with everything but knockout being optional. I'm thinking of calling it chainmail (because the power is in the combination/linking together of the small libraries) -- would you be interested in something like that? Also, have you checked out the components feature of knockout lately? it's awesome
- j_baker 12y agoHow good is the ES6 transpiler used for this? My experience with ES6 transpilers thus far hasn't been great. The feature support seems to be very spotty.
- spankalee 12y agoDespite the claim of supporting "WebComponents" I can't see any evidence in the source that it actually does. There are no calls to document.registerElement() in the framework or templating repositories, and it looks like any element registration is happening against a proprietary registry, so that Aurelia components won't be available in standard web pages outside of the Aurelia framework, which would be the exact same situation we already have with Ember, Angular, React, etc. Can someone from the Aurelia team clarify this?
- Offler 12y agoAnd Polymer.
- spankalee 12y agoUnlike the frameworks I listed, Polymer creates true W3C custom elements, which are instantiated by the browser, not the framework. Polymer custom elements are interoperable with raw html, Mozilla X-tags, IBM Delite, Bosonic, etc.
- EisenbergEffect 12y agoYes. We support web components. That doesn't mean we are built with Web Components at the core. The WC specs have a number of design flaws, in my opinion, and they don't work as efficiently as possible with databinding solutions, etc. I can expound more on this in a blog post. But our binding system works fine with Web Components. So, you can import a Web Component and use it inside a view with databinding and even attach additional behaviors to it without any problems. Web Components are not yet a standard. They are primarily being pushed by Google without taking much feedback from other vendors. I spent almost a year working with building frameworks around them...and decided there was no real advantage to using document.registerElement for an Application Framework. Again, if you want to build Web Components or use Polymer...that is fine. You can use that with Aurelia. But Aurelia's custom elements aren't built that way. As a side note, Aurelia will be able to "export" its custom elements to Web Components. So, before we hit v1 you will be able to do that and then take an Aurelia Web Component into a non-Aurelia app and use it, the same way you would use a Polymer element. We haven't done that yet because we are focused on the application experience first and foremost.
- whatsgood 12y agovs enyo.js?
- hmans 12y agoWe've reached a point where I don't even need to open links named "Introducing [fancy sounding name]" to know that it's yet another Javascript framework.
- mp3geek 12y agoNot an impressive site.. Error 1008 Ray ID: 1af3b92032e50713 • 2015-01-27 08:54:00 UTC Access denied What happened? The owner of this website (blog.durandal.io) has banned your IP address
- deleted 12y ago[deleted]
- kin 12y agoThis is a small thing to point out but I wish they picked a name that were easier to type out. aurelia-* is so much more verbose than ng-