Why Fullstack Academy is Now Teaching React
Preparing Fullstack Students for a successful job search means developing a curriculum that reflects current and in-demand industry trends. After consulting our network of hiring-partner companies (and keeping an eye toward the changing tides of tech), we've completed a curriculum shift on the front-end from AngularJS, to React. This update is uniform across all Fullstack immersive programs: New York, Chicago, Remote, and The Grace Hopper Program.
Here's why we think React is the right technology at this time:
- The developers of all the major libraries (React, Angular, Ember) have converged on the idea of using virtual DOMs (React, Angular2, Ember's Glimmer) as a high-performance abstraction for describing and storing application states. We also like JSX as a templating language as opposed to custom syntaxes like Handlebars or Angular's $parse service.
- React is smaller library than Angular and has a better learning curve for adding new capabilities like routing and state management. Even without Redux, React is a powerful library that does a lot out-of-the-box. You can start with React (and JSX) and develop pretty sophisticated apps before having to add other libraries.
- React's abstractions are easier to comprehend than Angular's. This is not a knock at Angular - Angular is an amazing technical achievement that one could argue accomplishes a harder task than React. However, we believe that React's abstractions are less "leaky." For example, JSX is easier to mentally model than Angular's $parse, and React components are better than Angular directives — it's harder to mess up performance with React's tree-diffing than with Angular's $digest loop. The React community's focus on using functional programming concepts allows us to continue teaching advanced concepts like immutability.
- The automated testing story in React is easier and more fun than in Angular. The focus on functional components, virtual DOM, and modules simplifies writing and maintaining tests. While testing was a big emphasis in Angular 1.x, and it had lots of good facilities for supporting testing and mocking, they always felt a bit heavy to our students.
- We're seeing many of our hiring partners moving towards React and there's a pretty good migration strategy from Angular 1. Even our engineers inside Fullstack are migrating our large LearnDot codebase from Angular 1 to React and using libraries like ng-react and react-router to ease the migration path.
For more information on Fullstack's industry leading curriculum, I encourage interested candidates to read their full blog post on the Fullstack website.