Published on May 7, 2021
Battle of the Titans
Vice vs Netflix…hmmmm.
We code in both, so we don’t prefer one over the other. But it’s important to understand what both offer so that you can make a more informed choice about front-end development. The two popular frameworks do the same thing: they offer developers creative ways to build web applications. There are subtle differences we need to account for, however.
There is a David vs Goliath feel to the epic battle of Vue vs React, having mostly to do with how each was developed. In this version, Goliath would be React, since it was created by Facebook (Jordan Walke was the lead) in 2013 to meet the growing need for applications on social media. React is open-source, though, not proprietary, and thus a flourishing landscape of third-party solutions has grown up with it.
Vue, on the other hand, has a David vibe, since it was created in 2014 by one person, Evan You, who wanted to figure out how to build apps easier and faster. He borrowed from React and Angular (among others) to improve on existing JS tools. He did it the old-school Silicon Valley way, by making Vue truly open-source from the start. Somewhere Steve Wozniak is smiling…
Nuts and Bolts
At a technical level, Vue and React differ in how each builds the “view layer,” or the visible part of an application a user interacts with. For many of us, this is the only element of Web development that really matters.
Vue is more conventional in that it uses HTML templates and has a more traditional separation of HTML, CSS, and JS, though you can code in JSX as well. The consensus is that it’s easier to learn Vue (anywhere from a few hours to a few days) as long as you have a working knowledge of JS. Because of the HTML templates, developers can build apps quickly in Vue, without much time wasted on boilerplate coding. Each version of Vue has seen it become more lightweight and agile.
The User Is Always Right
Because of its architecture, React delivers top-flight UX. Web pages load quickly because of how React renders them, and in turn, fast load times help with Google page ranks. React offers developers a chance to work with a wide array of UX, from buttons, forms, and text boxes, that are very well-constructed and easily used, and won’t slow down performance. React is also supported by major corporations and a vocal chorus of developers, meaning that is frequently updated and analyzed and improved.
Vue seems to be the choice if you want an app that has the wow factor and is heavy on interaction. But let’s face it, both frameworks use a virtual DOM (document object model) that doesn’t re-render entire web pages, just the objects that have changed. That is the secret to why successful companies use them. They work really well at delivering killer UX.
Vue and React are both frequently used by developers and are growing in market share. React especially has touched the lives of millions of people around the world, which implies that it is best suited for developing highly complex apps at the enterprise level. But that doesn’t mean developers don’t use it for single-page apps. In fact, one of its strengths is that React has lots of toys to play with (called libraries) and you can experiment with them (and easily test the results). If you want to stream video, React is definitely the way to go, as Netflix has shown.
Without question, Vue’s greatest strength is that existing projects can be integrated with it. So let’s say you want to take an existing app and add animation or spice it up, Vue is the best solution. It’s progressive, in that you can gradually add it without having to invest heavily in development. If you are a startup on a tight budget, Vue might be the answer to your prayers because you can get shovel-ready fast and can extend the functionality of an existing app. But don’t assume that Vue isn’t as scalable as React–Vue performs well and can handle the traffic at an enterprise level (just ask Vice).
Basically, you can’t go wrong with either
This post was last updated on May 10, 2021