Elm vs Vue/React which one do you prefer to use with Phoenix, and why?

I’ve been playing with Svelte and Stencil these days and they work very well outputting a tiny and optimized bundle. While React.js and company are very popular and well-established, I’m starting to think about the Virtual DOM as an unnecessary evil, since we are paying a tax for using those kind of libraries.

Virtual DOM’s performance isn’t a problem (at least from a medium-size application perspective), however the truth is that we need to add new fancy tools to our workflow in order to speed up things on mobile devices. But desktop devices also suffer a lot when the application is huge, one example is the new Facebook, the engineers faced a lot of problems to get the new page working smoothly, it seems to be a SPA powered by React and Relay, here’s the video.

I don’t plan to abandon React, it’s a nice skill to have for getting job opportunities, but it’s also interesting to see how the Virtual DOM is hurting performance, also having to interact with the Virtual DOM is such a pain, e.g. using React along with another library to manipulate the DOM (like D3 for data visualization).

1 Like