Blog

Sometimes I write about new things I learned, things I'm interested in and things that bother me in my everyday life. Mostly about Frontend, mostly for myself as a learning process and always my own thoughts and my own opinion.

Go back to other Blog Posts

March 25, 2020

Two good reasons to use React

If you would ask me about two good reasons why I like to work with React - and use it primarily when doing frontend development - it would really make me think.

When I first started to work with React I didn't have a real choice. I started working at a job where there was no question if we should use Angular, Vue or Svelte or anything else.

No, it was already defined that React would be the weapon of choice and there was already written a lot of code in React. I was just thrown into this React hole and never had the chance to crawl back out. End of story.

a gif of two men walking, one falls into a hole

No not really. Of course not. It's true that I had no choice back then but I never stopped thinking about how we would build this feature or solve that problem without React or with VanillaJS or even without any JavaScript at all!

If you google "Reasons to use React" you get a lot clever points and different opinions. I even read about advantages of React I never heard about before. I really have to get into this Concurrent Mode stuff.

Anyway, after this research my list of reasons grew bigger and bigger but I noticed despite all this points being true and reasonable arguments there was no real point where I could put my heart into.

So I set all the lists and research stuff aside, closed all the tabs and really started thinking.

a gif of two girls, sitting on a desk, where one throws all the papers off the desk

And this is what I came up with:

Reason one: popularity

Don't get me wrong. I don't like React because so many cool people use it and if they would switch to the next cool thing I would switch too.

When we talk about the web development world one big thing you always hear is: "have you heard about this new JS framework?". In our field everything is moving so fast and everything changes really quickly.

But if you take a closer look, you will notice that React is here since 2013. That's like VERY OLD in this web thingy. It's the one JS framework with the most GitHub stars (146k in March, 2020) and is used by 3,3 million people, according to GitHub.

To translate this: I don't like React because it's so popular in general or it is so "old". I like it because of all the perks these two points bring with them.

Due to these facts React has a massive community behind it. There is always an active and (in most cases) constructive discussion on Twitter about new features and problems where you can get help from and learn a lot.

There are super great subreddits like /r/reactjs where every news about React is being discussed, people present cool tools they built with React and if you need help, people will take a look at your problem and suggest solutions.

There are so much great tutorials, blog articles, video courses and podcasts on React which teach you everything about it.

A lot people may have had the same problem or bug as you and there are already bulletproof solutions available. People help each other whenever they can, which makes the journey to get better in React a lot of fun.

And finally: React has one of the best Docs I've ever used which gets better and better everyday.

Reason two: it's just a view library

React is not a full framework. Instead it focuses on the view layer, on building user interfaces and on building what the user interacts with and what helps him, accomplish several tasks.

For me, this meant that I did not have that steep of a learning curve and it was very straightforward to use. Because the great thing is: if you know JavaScript you're good to go! And that is something, which I think, is really cool.

React comes into action when you have a static website and want to switch to a website where the focus is on the user interactions and updates of the user interface.

You just want to build a view that reacts on the user input and is clever enough to only update what should be updated. It enables you to take that step without shipping you overly complex extra stuff you don't need. That's why React is your best bet and why I like it so much.

Of course at some point you may need additional tools, which are not included in React by default - like routing or other state management solutions. But in most cases you won't need these and you're good to go with what you get from the beginning.

So that's it, these are my two good reasons to use React. What are yours? Hit me up on Twitter or send me an email.

Greetings Marco

Go back to other Blog Posts