DEV Community

Me & React: 5 years in 15 minutes

Valeria on September 08, 2022

I first heard of React when a friend showed me a project he had written. It was some sort of content management system: it had tables, forms, visua...
Collapse
 
abbasc52 profile image
Abbas Cyclewala

React did have a major influence on many modern day frameworks. But i do feel many frameworks over complicate simple process and rename it. For e.g. Using a function to generate stateless component...is same as having a function which renders html/template πŸ™†β€β™‚οΈ. It is better to learn vanilla rather than a rebranded version of vanilla feature.

Collapse
 
valeriavg profile image
Valeria

I agree, knowing underlying technology is never a bad idea!

Collapse
 
abi0l9 profile image
Monsur Oyedeji

A reason why it would be hard for newbies to just bump in to learning React without knowing the language which inspired it.

Collapse
 
abbasc52 profile image
Abbas Cyclewala

The real problem is people learn React(or any other framework), which gradually changes its ways every few years... Later you need to relearn things... All of this because a single entity dictates the way a framework works.... If only most frameworks could lean into vanilla features, their knowledge would be relevant for years to come

Collapse
 
luiz0x29a profile image
Real AI

I'm still baffled we don't have a component library and DOM diffing being done by shadow DOM on native code in the browser.

Come on, this is 2022.

Collapse
 
raibtoffoletto profile image
RaΓ­ B. Toffoletto

Thanks for sharing! It was a great read.
Been working with React for some time now and I wouldn't enjoy it as much if I had to work with class components. Functional components actually make sense for me and I think is 100x easier for new people coming to the library. Even for die hard Java programers and their sea of classes.

Collapse
 
valeriavg profile image
Valeria

Thank you!
Yes, it's definitely easier, at least till the first endless cycle 😁

Collapse
 
raibtoffoletto profile image
RaΓ­ B. Toffoletto

Well... who never have done an endless loop in their programing's journey πŸ˜….

Collapse
 
brianl profile image
Brian Lim

It's definitely gotten better over the years

Probably a large reason why a lot of people are still developers or still work with React. Progress seems to be happening.

Collapse
 
juanfrank77 profile image
Juan F Gonzalez

This was a great read. Even though I didn't that many shenanigans with React myself. I still saw them happening with several of my friends and colleagues.

Also, it didn't help the fact that I've been in projects that have used React in the wildest of ways (because they were great monoliths very expensive to update, let alone rewrite)

Needless to say, after React.createClass then extends React.Component and now useEffect and all the possible custom hooks. I don't want anything to do with React anymore.

I still keep getting offers for 'React Developer' but I cannot fathom going again to deal with all of its quirks, reading docs to know what I'm supposed to be doing, and spending time debugging or writing tests with yet another framework.

It's was an interesting ride at least. Not a single moment being boring.

Collapse
 
valeriavg profile image
Valeria

Thank you!
Would you mind sharing some wild ways of using React?
I'm really curious now and the worst I can think of is an innocent jsx-powered NodeJS server.

Collapse
 
juanfrank77 profile image
Juan F Gonzalez

Sure. There was a jsx-powered NodeJS. But there was also the own frontend framework built on top of previous React that had his own server data and a Renderer to take that data an put it into React components. (Who's being used by one of the giants in video streaming service).

There was also the CMS (Drupal) powered, half-static, half-dynamic pages that are being rendered by React but the data comes through a Node server which uses GraphQL to transmit the info from some AWS buckets.

And then there was a project which used Angular 4 to build an entire site for an airplane company, but the catch was... it used micro-frontends with a backend-for-frontend setup.

I don't really which one is worse at this point tbh...

Thread Thread
 
okbrown profile image
Orlando Brown

They are wild indeed!
What would you have done differently?

Collapse
 
squidbe profile image
squidbe

What do you use now?

Collapse
 
rickdelpo1 profile image
Rick Delpo

I spent a good long time on React last year and I found it was a lot of overkill. So I opted for Plain Vanilla JS.

view my article on 17 reasons why at dev.to/rickdelpo1/react-vs-plain-j...

Collapse
 
vassbo profile image
Kristoffer

Nice article. πŸ˜ƒ After I had used plain JavaScript for a few years I wanted to try a framework. The first one was React, it was very hard to figure out. But luckily I found Svelte, the best ever framework! It's so much better in almost every way. 😊

Collapse
 
rytis profile image
Rytis

My experience with React was like this: I've learned it, I liked it, I used it. Then a new version came around and deprecated everything I've learned, suddenly classes are the 'old way' of doing things. I've realized I won't be able to keep up with the pace of modern frontend changes – I can't relearn the framework every 3 months, not unless I'm a full time frontender. So I've completely dropped web frontend from my skills.

Collapse
 
dxniel profile image
Don Daniel

I clicked the link to this post to 'learn more react', I ended up laughing my head off and learning more about 'the micro-evolution of programming' in general. This was an awesome article/post. Best I've read this week.

Collapse
 
valeriavg profile image
Valeria

Thank you very much!

Collapse
 
dailyr profile image
Daily

Thanks for sharing!
For me personally, it was very convenient to use django to build small applications in the past, and it also met daily needs. Since I had the opportunity to contact next.js (based on react), many new concepts and understandings made me find it very interesting and refactored. Some small applications, of course I am not a full-time front-end, it is enough for self-use and project tool construction.

Collapse
 
dailyr profile image
Daily

I was confused about jsx and javascript for a while in the past, now use jsx, Using jsx saves me a lot of trouble

Collapse
 
crenshinibon profile image
Dirk Porsche

I feel with you. I never have and probably never will like React. And actively avoid using it. I used Meteor before there was React and I like to write HTML files with and <style> tags ... and such ... so after a short intermezzo with vue.js now svelte is my goto-framework (naturally).</p>

Collapse
 
samantrags profile image
Raghavendra Samant

Couldn't agree more especially. First 2 paras about comparison with vanilla js. React looks complicated to begin with..

Collapse
 
okbrown profile image
Orlando Brown

The odd thing is, it does not need to be. As engineers we have tendance to be to clever, reinvent the wheel and eventually make life hard for ourselves.

I never understood why developers of all levels apply so much state and transformation logic on the frontend. Just because the language allows it and React inadvertently encourages it does not mean it's the right way to go.

For example a junior developer I manage, challenged me when I suggested moving their business logic into an express app from their frontend SPA (personal project). Asking, why would they need to do that as when they can just call the downstream service as is.

I gently replied, well the bundle size is huge, the app takes way to long to figure it self out before a user can view or know what's going on and your API key to your SaaS provider is exposed for anyone to steal and use, and the list went on...

Moving all the heavy lifting into a BFF and just allowing your SPA to be lightweight view will keep things very simple for you to maintain.

Collapse
 
squidbe profile image
squidbe

the app takes way to long to figure it self out before a user can view or know what's going on

That's the deal breaker. Users are only willing to wait a few seconds before deciding to move on (usually to a competitor).

Collapse
 
valeriavg profile image
Valeria

Couldn't agree more, regardless of the framework, it is possible to setup an efficient structure that will be pleasant to work with.

Collapse
 
apincik profile image
Andrej Pincik

Would not be surprised if more server-side dev will come back in upcoming years.

Collapse
 
valeriavg profile image
Valeria

It seems to me Google is making great progress on indexing SPAs and static renderers can be used for less progressive search engines.
But I'm curious to hear your point of view, would you mind elaborating on it?

Collapse
 
stokry profile image
Stokry

Thank you for the post!
What I would add is that ever since I switched to the Svelte, my life is much easier.

Collapse
 
sallamy2580 profile image
Superpol@ris

Thanks a lot. I hope the better articles and mature something that helps development in the future.

Collapse
 
emurrell profile image
Eric Murrell

Thanks for sharing! Great read.

Collapse
 
quocnho profile image
Tony Nguyα»…n

Thanks for your sharing

Collapse
 
bereky profile image
Bereket Lemma

This really was helpful. Specially for someone who is learning React like myself. Thanks Valeria.

Collapse
 
titon profile image
Tito

I am currently learning react. I find this article useful.
Thank you valeria

Collapse
 
valeriavg profile image
Valeria

Thank you, Tito and good luck with your journey!

Collapse
 
andrewbaisden profile image
Andrew Baisden

Good read!

Collapse
 
mezieb profile image
Okoro chimezie bright

Nice work thanks for sharingπŸ‘

Collapse
 
jmfayard profile image
Jean-Michel πŸ•΅πŸ»β€β™‚οΈ Fayard

Great read, i hope you write me articles. I'll subscribe right now

Collapse
 
naucode profile image
Al - Naucode

Good post, it was a nice read, followed and bookmarked!

Collapse
 
erickrod54 profile image
Erick Rodriguez

So many evolving with React in few time, and now I think still be path to develop there .. thanks for sharing

Collapse
 
valeriavg profile image
Valeria

Thank you! Glad I could help.

Collapse
 
gitkat profile image
GitKat

sticking with php. Thanks