Hacker News new | past | comments | ask | show | jobs | submit | lightblade's comments login

When you write JavaScript, you can only optimize it..as JavaScript. It still needs to be parsed, compiled, and optimized as JavaScript.

When you write templates, you get more room for optimization. Glimmer engine compiles templates to binary bytecodes to bypass JavaScript parsing. Vue3 inlines component fragments as part of the compilation step.


Not sure I follow.

Glimmer compiles to bytecode, but I am not sure how that “bypass[es] JavaScript parsing” as the bytecode is evaluated by a runtime written in JS (which is obviously parsed) and that translates the bytecode into JS calls. Basically one type of parsing has been replaced with another, which is fine though not obviously faster.

Likewise, I don’t see the point with Vue since again vue templates are translated into JS calls.

Or you could just make JS calls, like React does, no runtime translation required.


Yes, the runtime needs to be JavaScript.

It’s not obviously faster, but it’s been benchmarked to be faster. https://youtu.be/nXCSloXZ-wc

You can skip to 29:34 for the performance demo.


https://apple.news/AtfflfmCvRzublEC6RnuxmQ

Apple News link bypasses the paywall


> Standard / Official way of doing things

If you like that, why not go with Ember?


I would imagine this works in your terminal too.


Is eBay.com built with Marko?


Not sure how much it's used on ebay.com but from this presentation it seems to imply that it's used extensively on the site and other projects at the company.

https://www.youtube.com/watch?v=i6eZA8Y_GgA

(their front end stack is presented at about 4:00)

BTW it's a great introduction to Marko compared to React and Vue.


Yes, that is correct. The presenter in that video is Patrick Steele-Idem, the original creator of Marko. eBay.com is predominately built using Marko and Lasso https://github.com/lasso-js/lasso


Yes, most of eBay.com is built using Marko and Lasso: https://github.com/lasso-js/lasso


We use a combination of Atomics and BEM in our project.

Atomics offers single level specificity thus providing a strategy to combat the specificity problem that plagues many projects.

They are single purpose and infinitely composable, which complements very well with component oriented architecture that's popular today.

They are localized to single DOM node. When combined with its single purpose nature offers fewer surprises when making changes to your style sheet. For example, when you add a margin 15 Atomics to a DOM node, it is very hard to accidentally add another margin 15 somewhere else. Versus if you add a label class, it is much easier to accidentally add another label class and cause unintended consequences.


this, pretty much. it's as declarative and surprise-free as you can get in CSS and it works super well when abstracted into components.

I know it isn't the easiest to read and it seems counterintuitive at first, but in practice you can easily encapsulate long chains of inline classes into helper classes thus giving most projects a sort of sane middle ground.


I like to see some evidence of this claim. Certainly Alibaba.com is not built with Vue.


https://medium.com/the-vue-point/the-state-of-vue-1655e10a34...

Doesn't say anything about being sponsored by Alibaba, but Evan does indicate adoption there.


That's the thing. All claims of Alibaba's adoption of Vue comes from the author himself. I think it's reasonable to have doubt. I'm sure they use it. But to claim that they heavily invest in it may be exaggerated.


Yes, he has openly said he is funded through patreon. Now that the framework is super popular, he may have other sources of income, but it's not built by/for/in Alibaba afaik.


That's also why taking on Vue is a huge risk. The project has a high bus factor. If the main author burnt out and quit, the project is dead.


Vue is used by huge Chinese companies, and tons of Chinese startups. It's also adopted by Laravel, which is very popular in PHP land. It's not going anywhere soon.


That is the word on the street, but I have yet to see publicly visible evidence of it. You can inspect Facebook to see React is there. You can inspect Walmart to see React is there. You can inspect LinkedIn to find Ember there. I have yet to see flagship product of huge companies built on Angular or Vue. Is Alibaba.com built with Vue?



Most of Office 365 and Azure from the web side is Angular. That's a pretty good endorsement.


It definitely is not because not only are there other contributors but Alibaba and Monterail have also made meaningful contributions (the former also developing an analog to React-Native but with Vue).


Meaningful contribution in what way? This is Vue's contribution graph sorted by addition: https://github.com/vuejs/vue/graphs/contributors?from=2016-0...

The #2 person contributes only about 1% compared to the #1 person.

Compare to React's same graph: https://github.com/facebook/react/graphs/contributors?from=2...

The #2 person is at about 50% of the #1 person.

Compare to Ember's same graph: https://github.com/emberjs/ember.js/graphs/contributors?from...

The #2 person is at 75% of the #1 person.


Looks like the correct statement is that Alibaba mostly contributed to Weex: https://github.com/apache/incubator-weex/graphs/contributors.


Nurse is licensed though. That's instant credibility.


Exactly. Also, the supply of nurses is highly constrained in the Bay Area due to a very small number of people able to graduate. There's actually a lottery to enter a registered nurse program and last time I checked the odds were less than 30% to win the ticket. Besides that, hospitals lose state subsidies if their nurse/patient ratio drops below a certain threshold. It's really apples-to-oranges.


Not to mention "useful". Imagine nurses going on strike. Now compare that to lawyers, programmers or investment bankers going on strike ... no one cares.


What happens when IT for a hospital goes on strike?


Not to mention an airline. The recent British Airways debacle was caused by a technical problem, but if the IT workers had gone on strike, similar problems could have resulted.


Same thing that you do when nurses go on strike. You hire a bunch of scabs and muddle through.

The difference is that IT usually sucks so much that nobody notices.


If it's infrequent enough, reliability may go up as there's a moratorium on production environment changes.


It's just as much credibility as any college degree in computer science. There are still lots of crappy nurses that are licensed.


Correct me if I'm wrong, but Fiber sounds like a micro tasker for React? Ember had been doing this for years through Backburner run loop


With the ability to pause large updates in the middle without committing them to UI, doing some higher priority updates, and then "rebasing" lower priority updates on top of them and continuing the work. So it's a bit more sophisticated.


Does Fiber yield control back to the js engine when doing the "rebasing"? Or are all of these synchronous in one frame?


Yea, it does. We are using requestIdleCallback to do the work "while we can", and then yield the control back. Again, this won't be a part of React 16, but it's part of the bigger picture we are moving towards.

Relevant code if you're curious: https://github.com/facebook/react/blob/233195cb6bc632ade61a8...


Interesting...

Since requestIdleCallback leaves the scheduling out of your hand, how do you ensure nodes are still updated when you need it? Like tests?


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

Search: