Thank you. Definitely a concern. Let's see, which one? Right, let's do this one. Isn't testing missing in your vision? I didn't include VTest in the graph, and I apologise to Vladimir, who's the lead maintainer of VTest. But VTest is a very important piece of the toolchain as well, and it'll be able to leverage the same underlying parts that we're building for VT, because VTest is built on top of VT. Yes. All right, perfect, so shoutout to them.
With a growing community, sponsors and other stakeholders, how do you align on new ideas and determine the direction that Vue is heading towards? We mostly focus on the needs of the community. The thing about Vue's sponsorships is, we don't have these single big sponsors that would be able to dictate the technical direction of Vue. The source of sponsorships we get is very evenly distributed, so no single sponsor actually has a say on what we should do next. It's pretty much no strings attached, and we're very explicit about it, so if you sponsor the Vue project, we won't really do anything special just for your needs. We want to be mostly focused on what the users need, and trying to also gauge what the general trend of where the ecosystem is moving towards, so we want to make Vue stay modern, stay competitive, but also focus on the real problems that are reported by the users.
How difficult was it to let go and accept that other people have opinions and also want to contribute to your projects? I think in the early days, definitely when I first started out, you tend to think, of course my framework is the best, and anyone who thinks it's not the case is wrong, and I will debate them on the internet, but, you know, after a few years, you realise the web is very huge, the ecosystem is huge, it's very diverse, people have different opinions, people have different preferences. Some people come from a Java background and they just like things that look like Java. Some people coming from a functional programming background, and they just want to have functional components, and some people starting with simple HTML CSS will find Vue more familiar and more friendly to get into, right? So I think it's really futile to try to convince people who are just not your target audience to agree with you, and I think that's pointless. The goal for all these frameworks to co-exist is for each of them to find their happy audience, so that their users will be on a happy path with their chosen framework, and everyone gets more productive. I think that's the good outcome we want to see, right? So it's not about converting people who doesn't even like your stuff to become a user. That's pointless.
How do you see the future of Vue? Do you have any web assembly inside? Unfortunately, no web assembly. I think people have asked about would you allow people to write Rust and let it run in the browser. I think in general, the performance scale that we've seen from all the experiments just doesn't really justify the complexity added on top, especially when you think about Rust compiled to or other languages compiled to web assembly, it's already slower than actual native binaries and it's also not really comparable to the real native level performance you'd want. And then there's the overhead of communicating between web assembly and the DOM because the DOM is always going to be there and it's always going to be a major bottleneck. And then, for example, if you run virtual DOM diffing in the web assembly thread, there's a lot of data you will need to pass between web assembly and the JavaScript main thread, and that's the realisation of the cost offsets a lot of the performance gains, and now you're left with a lot of extra complexity in your build set-up and distribution, but not really noticeable performance gains for probably the most day-to-day use cases. There are good places where, for example, you want to do video encoding in the browser, you probably should, you know, leverage something like web assembly, but using it to write your day-to-day component code? I don't think that's a good idea.
Thank you so much for answering all of these questions, and thanks, everyone, for asking questions. Please keep asking everyone questions throughout the event. This is great.
Comments