What will learning React enable me to do

Now that I’m ready to move onto learning frameworks I’d like to ask the more experienced campers what’s the appeal in learning React.js. I can see how learning D3 allows you to visualize data in interesting ways and how that can lead itself to broaden our skill sets as developers.

I guess what I’m asking is how does React empower you?

It would be like an accounting student asking why they have to learn spreadsheets. True, you can do accounting without them, but you can do it a lot better with them.

React is a view library. It makes it easy to break your page into components, some of which can be reused. One cool feature is one way data binding - when you change the variables in your memory, you can automatically have the page update. I know that sounds a little cool, but it is actually very cool. There are other things React can do for you, especially when paired with things like Redux. Also, React has React Native that will allow you to write native apps on Android and ios devices.

Do you need React? You can do websites without a view engine, but as they get large and more complicated, it gets pretty messy. React comes to the rescue.

Of course it bears mentioning that React is not the only option. Angular is another popular alternative, but FCC doesn’t teach that. Of course there is also Vue, trailing in third place. It has a fanatical core of followers. (Expect a few to jump in and tell you not to learn React but to learn Vue.) It has the advantage of being a little easier to learn and is a little faster and lighter, but has the disadvantages of being less mature, has a less developed ecosystem, a smaller base of users, and few jobs.

All in all, I think React is a good choice.


thanks very much @kevinSmith for this insightful answer