What is

React?

And how can I explain it to my boss?


You might also like

The gist

React is a tool that helps us make Web Applications. So let's start with that -- What is a Web Application?

Where did the idea of Web Applications come from?

Around the 2005 to 2010, you may have noticed that websites got a lot more advanced. They were no longer just about reading information, but you could actually do things with them. Social Media platforms started popping up, you could lookup where you're going with map based websites, and you could even to spreadsheets in the browser with tools like Google Drive.

As Web Developers, we started to use terminology to distinguish between what were traditionally called "websites" compared to these much more advanced sites. So we started calling the more advanced ones "Web Applications" because they reminded us of the scale, effort, and technology practices that goes into applications.

So where does React come in?

In this time period, Facebook was one of the sites leading the efforts to make their website more "app like". And I'm not talking about the app you download to your smart phone, I mean the in-browser facebook.com. Facebook was pushing the envelope to create a super rich interactive experience for their users. At the time, existing technologies were insufficient for achieving their goals. So they made their own which would eventually be called React.

React is free to use

Even though Facebook created React for themselves originally, they "open sourced" it in 2013. This just means that they made it available for everyone in the world to use and developers can even read all its source code to see how it's built. They also made the license for it free. So what does Facebook get out of it? Out of all the developers who use React, we find fixes to make it better and help improve it as we use it ourselves. Then Facebook gets to use those improvements too, so it's a win-win.

React is super popular

This can matter sometimes because if you're trying to grow your team or worried that if someday a developer will leave your company and you'll need to fill that spot again, at least you know there are lots of developers out there interested in doing React.

Who's using React?

Lots of companies are using React. From banks to airlines, universities, and governments to startups and even giant tech companies like Google, Apple, Netflix, AirBnB, PayPal, IBM, Microsoft, AT&T, and many more. React has risen to be the preferred tool for building Web Applications by many.

Is React easy to learn?

This is a little more subjective. Remember the first sentence on this page was "React is a tool that helps us make Web Applications"? Well, since Web Applications are in browsers, and the main programming language in browsers in JavaScript, React is technically a JavaScript Library. When we say something is a "library" or a "framework", that just means it's a bunch of already-made JavaScript code to give us a head-start. Whether React is easy to learn or not depends on how well someone already knows how to program and specifically how to program in JavaScript. Even then, it's still fairly subjective since programmers tend to prefer various programming techniques over others. The good news is, as far as programming languages are concerned, JavaScript is fairly easy to get started with. We even have resources in our online Learning Center

Need to explain React to someone?

Please send them to this page. Or if you want to explain React to someone, perhaps a good analogy works...

Imagine if you were building a house. You need materials and tools right? So you go down and buy them at the store. Even though you'd say you're building the house from scratch, It's not like you have to make your own hammers and nails, or even chop down trees to make your own lumber. The tools and materials you would get from the store are so general that they allow you to make almost anything, and they give you a big head start.

This is just like React. Instead of building a JavaScript Web Application from scratch, you can use tools like React to give you a big head-start. And just as with the analogy about tools for houses, web tools have evolved over time and React is seen by many as the best and most modern tool for the job.

This "head start" idea in programming is nothing new. We generally call these head starts either "libraries" or "frameworks". There have been lots of JavaScript libraries and frameworks that have all tried to help developers create Web Apps. But React was novel because it did things in a new and innovative way. Here are just some of the companies using React and have asked us to help train their teams:

GoogleAppleNetflixPayPalSlackAdobeWalmartGitHubMicrosoftPixarStarbucksVisaIBMYahooMozillaAtlassianCode CademyAT&TSurvey MonkeyUberVerizonAirbnbIndeedLegoThe Washington PostOraclePandoraAmerican ExpressPinterestAllstateSalesforceDockyardHouzzWayfairSamsungStapleseHarmonyForbesGeneral ElectricGo DaddyZillowGrubhubHarvard UniversityUniversity of MarylandCiscoCitrixADPHiltonHPHPEIntuitKPMGMass MutualMatch.comNew York TimesCapital OneSiemensAskNew York UniversityAvvoBazaar VoiceShutterstockCoinbaseCredit KarmaOk CupidCondé NastRedfinSAP ConcurExpress ScriptsTumblrUC DavisBettermentUniversity of MichiganKneat SolutionsCollege BoardBAE SystemsMinitabARI Fleet