DEV Community

Cover image for Why React but not Vue!!
Youssef Abdulaziz
Youssef Abdulaziz

Posted on

Why React but not Vue!!

I am a Vue developer and recently started to learn React.It's the first time I write code while being angry at it πŸ˜‚πŸ˜‚, I wonder why would someone choose the scramble(in my opinion) of React over the convenience and organisation of Vue.

I want to hear your opinion about this if you have experience in React or vue or both of them.

Image description

Top comments (22)

Collapse
 
troy5890 profile image
Troy Harris

I'm still learning HTML CSS and JavaScript, but I plan on going for VueJS since I tried Angular and it wasn't really my cup of tea. React sounds like it might be similar, but only one way to find out...

Collapse
 
systemsvanguard profile image
Ryan Hunter • Edited

If I may humbly share 3 bits of advice Troy?

First: Whatever time you invest in learning CSS, HTML, and especially JS, will pay off in spades later on; 'front-end' development sits atop this trifecta. Frameworks come & go, but this trio IMHO has stood the test of time. (SQL is another long lived tech with a low learning curve; for you to consider later).

Second: French proverb (paraphrased) - 'he who chases 3 geese, catches none'. Don't spread yourself too thin trying to learn multiple competing technologies simultaneously (UNLESS you are forced to at work or by boss). Master one, THEN branch out and pick up another ... but only after months of practice in one, and allowing that one to take hold deeply in your head. Dive deeply into Vue (if that's your choice) then come back to React after you are decently competent with Vue.

Third: Eventually (after a year maybe) still try to learn React. Many employers if you do contracting will ask for it. When you get to the interview, IF you find there is no specific reason the manager chose React, you can sell them on using the tech you prefer, especially if the dev team is small. Normally however, companies want to stick with a popular tech for many valid, and even more invalid reasons, IMHO ... but hey, if the boss is happy paying me by the hour for his preferred tech even after I have clearly shown I can be much faster in my preferred tech, then I am not going to argue with him. In short, in due time, learn both!

Just my $0.05. Cheers & good luck Troy

Collapse
 
troy5890 profile image
Troy Harris

I can't tell you how great this advice is. Thank you for sharing such great information and advice. I have a list of 23 projects I'd like to implement and make into PWA's as I continue learning.

I planned on making a few projects strictly with HTML, CSS and JavaScript, learn VueJS and master that framework for years, pick up React and see what the fuss is about, but it's odd I already see VueJS job offers in my area. I'll still learn both though, but eventually I'd like to go with a server side rendering framework like NuxtJS or NextJS as well.

I get so excited thinking about these possibilities and what to make, but I'll look at this the next time I sit and wonder why I'm still learning HTML and CSS for so long. I'm almost ready for JavaScript in a course I'm taking, but I plan on making a small project before I advance to JavaScript.

Thread Thread
 
systemsvanguard profile image
Ryan Hunter

Happy to know this helped Troy.
I'm wondering if these Vue.js resources might be helpful for you? Enjoy
BezKoder (free blog | bezkoder.com/category/vue/ ) and Vue School (commercial | vueschool.io/ ). Udemy.com is also a compendium of tutorial vendors of varying quality ; your "mileage will vary" and they have 70% off sales every 3 or 4 weeks regularly.

When the difficulties of coding wears on you, I hope these 3 quotes will help?

  1. "It's not that I'm so smart, it's just that I stay with problems longer" - Albert Einstein
  2. "Patience, persistence, and perspiration make an unbeatable combination for success" - Napoleon Hill
  3. "If it were easy, everybody would do it. Hard is what makes it great." β€” Tom Hanks, A League Of Their Own

Cheers!

Thread Thread
 
troy5890 profile image
Troy Harris

Woah these will definitely come in handy on top of the two Udemy course I'm going through. Seriously going to pin these on my desktop ASAP. So glad I found a place like this, I can't thank you enough!

Collapse
 
sem1colons profile image
Youssef Abdulaziz

You won't regret it,good luck

Collapse
 
troy5890 profile image
Troy Harris

Thank you very much!

Collapse
 
saravanasai profile image
Saravana Sai

I have worked on both of them for building small projects but i loved *Vue.js **because of it is simple & more easy to understand what is happening but with **React.js * i am feeling like over engineering things but both have pros & cons but if you asked me to start a new project i would prefer vue.js because of its simplicity.

Collapse
 
sem1colons profile image
Youssef Abdulaziz

Exactly what is on my mind.

Collapse
 
systemsvanguard profile image
Ryan Hunter • Edited

I feel your pain Youssef and see your point. Why do I use (not prefer) React (or Angular) over Vue? .... Jobs! From Indeed.ca for my city Toronto, here are some numbers to contemplate: Vue.js 163 jobs, Angular 1,116 jobs, and React ... oh React ... the "undisputed heavyweight champion" ... 1,565 jobs! You get my point.

Ironically, my personal portfolio and pet projects are done in Vue. (Yes, a bit hypocritical) However, as a corporate contractor (especially for mid sized to large Canadian companies), I keep my React and Angular skills sharp.

Hope this helps.

Collapse
 
sem1colons profile image
Youssef Abdulaziz

Yeah exactly. 2 days ago I had interviewer asking all important questions about Vue, since I told them (in my resume) that I'm pretty good. He made sure that I had a solid understating of the framework then told me "We use React, GraphQl and react-native", I found myself obligated to tell him I'll learn it because I don't want to lose the job after months of searching as a fresh grad.

Collapse
 
systemsvanguard profile image
Ryan Hunter

Congrats on the interview & potential job Youssef. Lots of learning to do! You will probably become fast friends with Udemy.com (tutorial site) if you aren't already; they have steep discount sales roughly every 3-4 weeks. Cheers!

Thread Thread
 
sem1colons profile image
Youssef Abdulaziz

Yeah sure I know it, I literally live inside UdemyπŸ˜‚πŸ˜‚.Thanks for the heads up.

Collapse
 
snakepy profile image
Fabio

I also have worked with React and Vue. The thing I love about react is JSX and hooks. The way I can micro components feels more natural in react with less boilerplate. If you utilize hooks to the fullest you will see how much code you can save. To be fair in the beginning they do not make so much sense. Like what is this odd useEffect function or why do I need to define a useState for a reactive variable? This is stuff I do not like about it, but still would always pick it over Vue. To me it feels more close to vanila js tbh.

Collapse
 
sem1colons profile image
Youssef Abdulaziz

I hope I experience that as I learn it more.

Collapse
 
saravanasai profile image
Saravana Sai

Yes.... Like hooks. On Vue. Js composition API has composables which is like hooks.... And even in vue js we can build micro components independently which like select box which gets value from api.... And bro....and to not over engineering things

Collapse
 
eshimischi profile image
eshimischi

React is a big mess, i hate JSX/TSX, bizarre mixture of html and js.

Collapse
 
sem1colons profile image
Youssef Abdulaziz

Maybe the perfect logical organisation of Vue's components makes jsx a bit of an underdog but I don't think it's that bad

Collapse
 
jackmellis profile image
Jack

I've used both for years.
React is super versatile. Especially with jsx. Being able to place your template syntax anywhere opens so many options that you can really only appreciate over time. And don't forget that like 70% of Vue (especially the composition api) was borrowed/inspired by React.
When I went from Vue to React I had the same opinion as you. Why forgo neat templates for messy jsx. But it's just a case of learning the mindset which is subtly different to Vue.
Don't get me wrong, I still love Vue and will probably choose it for most personal projects!

Collapse
 
sem1colons profile image
Youssef Abdulaziz

I'm still giving React a chance but I don't think It'll ever be my go to unless it's the perfect choice for a project

Collapse
 
unclegena profile image
KUDRIAVTSEV ANDREW

For me choosing React over Vue is like shooting in your knee. Vue is better framework for rest of the world (except fb), but main advantage of react is popularity. It's still a hype.

Collapse
 
sem1colons profile image
Youssef Abdulaziz

I think that is a common problem/pain for all Vue developers. It's still not accepted Just because it's not made by the holy super Facebook.