WHY I CHOSE VUE OVER REACT AND WHY I'M NOT GOING BACK

Savoir Faire
12 followers
7 Video Views·Oct 27, 2022
Hey developers, today we're going to talk about Vue.js and why I chose that over React and other
JavaScript frameworks. But before we get too far in this topic, I just want to have a quick word
from our sponsor. Hey guys, when you're building your own website, whether it's for yourself,
your business, or a brand, one of the hardest things to do is to find that awesome domain name
that is short, relevant, and shows the world what you're all about. Which is exactly why I went and
got vuecourse.tech, which goes so seamlessly with my brand. I'm currently using it as a really great
website platform for my new vuecourse, and it's absolutely perfect. Join the likes of Viacom,
Intel, and CES, and get your very own .tech at a whopping 90% off on 1, 5, and 10 year domains
using the link go.tech slash eric. It'll be in the description below. Only this Black Friday.
The sale starts on the 26th of November, so you can pre-register now and get a further 10%
off on the same day sale. So make sure you go to go.tech slash eric in the link in the description
below, pre-register, and you can get an additional 10% off. Thanks. Hey, and if you don't know, my
name is Eric. I'm a full-stack software developer. I do tons of work in Vue.js, Angular, and have done
some work in React in the past. So this video will all be about Vue.js and how it compares to React
in my experience, and why I chose Vue.js. Let me start by saying I just recently was on this
podcast. It's the If Then Else podcast. Let me show you guys real quickly. So this is the If Then
Else podcast website. I was on it the second episode, and I was with Cassidy Williams. Mayuko
is the host of it, and so it's a really interesting podcast where we take two technologies
and we compare them, and essentially we're trying to convince a third-party person to either go with
Vue.js or React.js. In my case, I had the Vue side and Cassidy Williams had the React side,
and I have a lot of respect for Cassidy and a lot of respect for Mayuko. They're amazing
developers. Cassidy actually works for a training company, and she teaches React, and she's really
big on Twitter too. So it was really a pleasure talking to both of them and talking about why I
like Vue.js. One of the reasons I recommend Vue.js and one of the reasons I started with Vue.js
is just like the onboarding experience with Vue is pretty much second to none.
If you can find a developer that knows JavaScript, they can learn Vue.js real quickly. I really like
this tweet the other day by Sarah Diane. She said, how do I find a Vue.js developer?
And she said, don't hire a Vue.js developer, hire a JavaScript developer, then give them a day on
the docs and they'll be a Vue.js developer. So that's essentially, that's exactly what I see
with developers learning Vue.js. It's so simple that you could just throw them into the official
documentation and they'll learn it really super quickly. In fact, that's kind of how I learned.
A few years ago when I really started getting into Vue.js, I had never done Vue.js before. I was
mostly a Ember developer. I had done some jQuery, JavaScript, some PHP, and Java in my jobs, but I
was primarily doing Ember development. I actually started doing React development for quite a while.
If you look back in this channel, as soon as React CLI came out, I actually did a video on it. I
walked people through it. I was really going down that path of React. When I started getting
interested in Vue.js, I deep dived into the documentation and I found it so easy. In fact,
when I wrote my book, Vue.js in Action, I found that it was hard to improve upon the official
documentation in some ways. So I was like, the official documentation is so great, how do I make
it even better? How do I add real-world experiences? How do I put in aha moments? It was
a little bit more difficult because between all the different frameworks, Vue.js has just a really
great documentation. Actually, I really credit Chris Fritz for that, and I'll mention him again
in a minute. He's one of the Vue.js core team members and curator of the document. You can
take any sort of developer, they don't know Vue.js, give them a few days in the documentation,
they should be able to get started really quickly. And even the more advanced topics,
when you start getting to scope slots, advanced components, or there's something called the Vue
3 composition API, I still think it's just Vue has such a great foundation, it's not that hard
to learn those sort of things. The requirements for being productive in Vue is really easy. So
if you are familiar with React, you usually have to be pretty good at JavaScript because it mixes
in the JavaScript with the HTML and something called JSX. It's a little bit more difficult,
while on the other hand, Vue.js is really simple to get started because all you have mostly is just
HTML. You have these directives that you throw in that makes things really easy, and it's just
really easy to be productive right away. And you don't have to worry about advanced knowledge of
ES6 or how to get it all together. Now, the newest version of Vue 3, which isn't out yet,
will have this Vue 3 composition API. And some people will say, well, that's sort of like React
hooks. It's completely for Vue 3. It's completely additive. You don't have to use it. If you want
to use it for larger projects, fine, but you can still use the basic HTML, CSS syntax that you know
and love with the directives. In fact, it's just a way to organize. Composition API is just an
easier way to organize your data, but you don't necessarily have to use it. So I still really
think that you can start off a developer right away that can be really productive in Vue really
quickly. Another thing I really like is that there's a prescribed way of doing things. In the
React world, there's obviously, I think most apps now are being created through the React CLI,
if I'm not mistaken, but there's still some ways you can do different versions of classes. Some
people like inline CSS. Some people use CSS in JavaScript. There's different ways of doing it.
In the Vue.js world, there is very prescribed ways of doing things from there's a Vue router
that's recommended, obviously, that you should use. Vuex is like their state management system
that you should use. There's also things like directives, which are kind of the prescribed
way of doing it. Now you can kind of break out of the idiomatic way of doing Vue, and that's
the nice thing about it. If you don't like to do that, you can write a kind of a JSX type syntax
if you wanted to, and there's certain different render functions you can use, but for the most
part, it's very prescribed the way you do things, though it does give you the flexibility to leave
or get out of it. Another thing I really like about it is it's incrementally adoptable. Just
take Vue, put it in just an HTML file using a CDN and be instantly up and running. I really like
that about it. It's called the progressive framework because you can progressively add it in
and you don't have to go in with the CLI right away. That's the command line interface.
You can kind of incrementally adopt it into your apps and into your systems. Also, really,
one thing I really like about it is the community. I've had a chance to meet a lot of people in the
Vue community. In fact, I'll go back to a story. So when I first started learning Vue and creating
my book, I did some tutorials. I kind of got deeper and deeper into the Vue ecosystem,
and I got approached to do a book. And as I started writing it, when I got towards the
middle and the end, I needed to find someone to do the forward for it. So they usually write a few,
like a page, like, I don't know, a hundred words to describe, to give the reader some indication
of what the book's going to be about. And I really had the privilege of talking to Chris Fritz,
like I had mentioned earlier, and he did the forward for my book. And it's really nice and
kind of him because I had approached him. I didn't know Chris that well, and he was super
gracious to actually write the forward for the book for me, even though he didn't know me very
well. And it just really shows the type of community that we have. I met Divya Sasaradan
through the podcast too, and she was amazing. Between those people and a few others, it was
just like, wow, this Vue community really comes together. They really help each other out. And
I've never had any problems with it. And that's kind of how I do my videos too. I've been doing
a lot of polls lately, asking what you guys want to see. I hear people like, I want to learn more
about Quasar. I want to learn more about Nuxt and Firebase. And I've been really saying, I want to
give back to the community. And I've been doing a lot of videos based on everybody's feedback,
which is great. Yeah. So all those things together kind of shifted my opinion. I really liked too,
how Vue, you have this single file component where you have the HTML at the top. Then you have
a script tag and CSS. It's not necessarily having three different files. So for example,
in the Angular ecosystem, you literally have three different files, one for your CSS, one for your
HTML, and one for your JavaScript. On the other hand, the React ecosystem, it's almost like it's
all combined together. You can have one JSX function that has your CSS inline, the JavaScript,
everything together. While I think Vue has a nice difference between the two, where you have a single
file component, but everything is in different pieces. So your HTML isn't mixing with your
JavaScript. That's not mixing in with your CSS, but it's in one place. That's also a nice little
design choice. Of course, you can break the, if you didn't like that, that design, there is ways
you can create Vue files where they're all in different files too, if you really want it that
way. So, I mean, between all those things I just mentioned, the community just getting up and
running quickly, it really just pulled me in the direction of Vue. Being able to meet the
people and conferences and things like that, it's just proven that more and more. And one thing too,
is I actually went to React Rally this year, just because, you know, it's a small conference and not
too far away from where I'm at. And I still do enjoy React and I like the people in the React
community. And I thought it was funny, one of the slides that actually said, they're talking about
documentation and how they're internationalizing a lot of the different pieces of React. And they
had said that one thing that they did is when they were trying to look at internationalization
of the documentation, they looked to Vue first. It's kind of funny, these different frameworks are
all using each other's points. I mean, I think you would say Vue has been inspired by React in
some things, like the new composition API, which kind of reminds people of hooks. On the other hand,
no, React is looking for Vue. So I think that's really cool. The communities are kind of taking
from each other. One thing I really like too, is that Vue is still up and coming. It's still
gaining momentum. I mean, everything says it's going up and to the right. More and more people
are adopting it. More companies want to get Vue developers in. So I just wanted to show you a
couple more things. One thing I'm really excited about is VueConf that's coming up in March of
this year. You see here, there's some really great speakers. Speaking about Chris Fritz, he's going
to be one of the workshop and training and Divya is going to be doing a workshop too. I highly
recommend those. And then yeah, just amazing people doing speakers, speakerships. So I'm
really excited about some of these different Vue talks that are going to happen at VueConf. I'm
going to be there and hopefully if you're interested in Vue and you see me in the hallway, just say hi
and maybe we could talk for a few minutes. That'd be really cool. So thank you for watching. If you
made it all the way to the end, I appreciate it. Make sure you click like on this video and click
subscribe. That really helps me out. Take care.
