14 comments

[ 3.0 ms ] story [ 46.5 ms ] thread
LONG.LIVE.REACT
His name is Robert Paulson.
Im calling the police!
That wasn't much of an interview.

A real pity, too, since Vue 2 is amazing. I've done all web development in it since fall. I support Evan on Patreon.

Let the anger flow through you, and sign onto the righteous rebellion against obese build tooling[1], meaningless triple-decker abstractions, and crippling boilerplate crapola. I've got a fever, and the only prescription is more Vue!

[1] Don't worry, you're still pretty much stuck with webpack as the most likely way to use Vue. So if you need your fix of bewildering complexity and 800 NPM dependencies just to get small things done, you will still have it.

What are the differences between Vue and React? I use Angular unfortunately, and ideally I'd like to be able to learn some non-SPA stuff too. I've only really looked at React and it seems nice.

I'm not a web dev by choice, I get dragged into it with work. So I'm not that aware of all the options. Would you say Vue and React are even comparable?

Vue is more like Angular 1. Not sure about Angular 2 and higher - never used them. So if you are familiar with Angular, you'll get into productive development with Vue much easier than with React.

I think all of these libs and frameworks are trying to solve the same problem. So I wouldn't bother much on trying to understand what is the best one. It's more a matter of preference, project and team requirements.

React has a bigger community and ecosystem, but Vue is getting mature very fast and also has a lot of necessary tools and libs around it.

I really like Vue and use it in my pet projects. It's easier to get started imo and it's self-sufficient. When React is saying that "this is just view library", in reality it is used with a lot of additional libs, which you need to get familiar with. And it makes it harder to learn for me, because there are tons of alternatives among those libs.

I may be biased though because React was the first library I learned and Vue was the next one.

I previously did Angular 1, and I agree that an Angular 1 background is highly complementary to grasping Vue quickly.

However, Angular is very highly opinionated about how to structure your application and demands exacting tribute to its mandatory "design patterns" of "services", "factories", "providers" and all this other nonsense. Consequently, the minimally viable boilerplate for even a small Angular 1 app goes up considerably.

My favourite thing about Vue is that it's not opinionated in that manner. You are free to write your own JS as you please and structure your application however you like, using as little or as much of Vue as you like. While it scales well to large projects, for small projects, which are the vast majority of my projects, you don't have to do all this _crap_ just to get started.

Angular 2 is criminal insanity from a practical perspective. It's the worst of J2EE-style monstrosity-building. When you need tools just to generate untold amounts of boilerplate just to get to Hello World, you've crossed the boondoggle event horizon.

(comment deleted)
Vue is react, but with:

- a much lower entry cost

- friendlier doc

- better perfs

- no obligation to fully opt in (you can avoid components, do progressive enhancement, etc)

- suited to small and big projects

- lighter to dl

I personnaly find it also more elegant. The naming and conventions appeal more to me, and I enjoy the many small details the authors added for real world usage such as the ".prevent" directive suffix, the console warnings, the class mapping or the <template> tag.

I think you've nailed it. The suitability to small projects particularly tickles me, since most of my web development projects are small — I'm not a web developer by trade, it's rather a side effect of the actual work I do.

I think another big selling point of Vue is that the core functionality you fundamentally need is all _in_ Vue. There are third-party components out there, but they are really ancillary, much like third-party Angular 1 components. Fundamentally, the core Vue library is all you need to know. React, in contrast, is really a many-headed beast with tons of separate libraries that go into what could be reasonably deemed "core" functionality.

I'm not a web dev by choice, I get dragged into it with work.

That's very much true of me as well, and is a key reason for using Vue. It's a very pragmatic choice for getting things done in a modern JS/SPA way without making a career of front-end development.

As far as the differences, others have already answered better than I can. :-)

Thinly veiled product placement
I like the VueJS much more than ReactJS because I didn't really like HTML in JS thing. As a rails developer who has worked with html.erb templates, js in html feels much more similar and straight forward.

The only reason I'm putting effort in learning ReactJS instead of VueJS is ReactNative is that I'm seeing significant increase in jobs looking for ReactNative skill.