Should I jump on the react-train?
Many business decision-makers (CEO, CTO, CPO, COO and Head of) asked me in the last months „Can you explain to me the hype about react?“. As a developer with more than 15 years of experience in web development, they thought that I have an answer. I should have, but with every question from them, I was thinking more and more about every answer which I told them.
In total it was every time the same explanation. I don‘t know! Honestly, I work now for over 5 years very intensive with different JavaScript frameworks. I started with Vue.js, then very fast I get in touch with react and since last year I work more and more with svelte. The only framework which I didn't touch at the moment is Angular in a production environment. Sorry for all Angular devs outside, but I want to try a lot of things but sometimes there is no time for everything.
Now back to the topic, why every company which is thinking to change his system or architecture is jumping on the react-train? I will explain here my number top 3 points which I find every time at discussions about choosing to react in case of other frameworks.
Resources
Resources because of this hype there are a lot of developers with react experience on the market and it is possible to find faster a good developer than by choosing a different framework. But also this benefit is at the same time a problem because everyone is fighting at these developers and also the salary expectations are awesome at the moment from the developer's side. My advice is to work with what you have or what you can hire. In the end, you must find the right people and not the right tech stack!
Support
React is supported by a big company named Facebook. There would be a lot of development in the future which makes the framework much better than today. Other frameworks with flexibility like react, Vue.js, for example, is not supported by a big global company. There is „only“ an open-source community around a bunch of core developers and contributors of course. I can’t understand this argument, even more, I heard it. Where here is the benefit? My experience is that you have at an open-source community more power to decide and discuss new features and the next steps as then you work with a global player who can dictate you the next steps. Of course, Facebook tries also support their community but only from the point of view as an argument, I think it is an excuse or fear about the end of support more than a real argument to go on with react. Frontend tech stacks are changing so fast that no code will survive forever.
Scalability
Scalability is one of the most arguments which I heard or read about choose to react over all other frameworks is that you can develop every project at every size you want in case of other frameworks. Starting with a small project until a company-wide global software project which can scale very big. Honestly, I worked in the past also with vanilla JavaScript and JQuery. And with these libraries we created the same global software projects which now is limited to react? Trust me, every library or framework should help you by your developing process and you will create code as good as you are as a developer. Because I didn’t saw a JavaScript framework today which is writing code for me or make decisions about my project architecture. Please don’t think of limitations! Technical everything should be possible! And I saw a lot of projects also in react which are a mess only for one or two pages for a project because of over-engineering decisions.
With the right people, you can change in the future to every tech stack you want. With the wrong people, you will stuck in one tech stack forever.
Advice
My advice to all business or technical deciders look at your resources what you have right now. When you have PHP developer go on with PHP. When you have react developer, go on with react. You have Vue.js developer, go with Vue.js. And so on. Ask your developer what they think is the best next step to go with a new tech stack. They will develop your new ideas! And like I write before, please hire the right people and not people because of the right tech stack experience. This will be a bigger fail than which tech stack you will choose in the future. With the right people, you can change in the future to every tech stack you want. With the wrong people, you will stuck in one tech stack forever. Trust me!
And yes, a lot of developers will now take it personally or think about their decision to jump on the react-train and try to defend their decision. But this should no article against react. This article should help people who are short before a decision about how they go on from a technical point of view. I think it is very important to be open and have an open mindset. For this behavior, a lot of people need security and this is what I want to bring to him. The fear to don’t jump on the react-train as everyone did should not be a limitation in their mindset.
Conclusion
Don’t care about the tech stack and the react-train. The next train will come, trust me! I’m really sure that for example when Vue.js was developed before react we will talk today about a Vue.js hype.
Find the right people and look at your product. Because the product, in the end, should help you decide which tech stack you need. Check your existing resources and make decisions for them, your product and your customer. Don’t be afraid to make your own decisions!