It wasn’t too long ago that I decided to commit myself wholly to Angular. But it didn’t take me that much longer to jump ship and put Angular on pause. It wasn’t because Angular was bad or anything like that. Rather because it was due to my local market demands.
About half a decade ago when I was a much younger developer, fresh onto the scene and eager to learn everything in sight. However, over time, I’ve watched several technologies rise and fall. Some gained consistent growth and popularity like Ionic and Docker. Others died due to discontinued support like Angular 1. PHP is experiencing a slow death while no one talks about or even dares advocate GWT anymore.
Why frameworks and libraries exist
Frameworks and libraries exist to solve an existing and persistent problem. Sometimes, some frameworks do things better than others. Sometimes, some frameworks and libraries are already doing a good job but new ones pop up and challenge the existing status quo.
React‘s popularity was like Angular when it came out. The only thing that hampered its initial growth was the license Facebook had on the library. While Angular was a free-for-all kind of usage under the MIT license, React was under the BSD+Patents for whatever reasons they came up with.
However, since the switch to MIT license, everything React related seems to be taking off exponentially — by the community and by employers.
This is because React solved a problem that Angular possesses — and that is the speed of which the library can be picked up, applied effectively and in a robust manner with better future proofing than Angular.
Angular is complicated for the untrained developer. There are more caveats, structural and architectural understanding need to be an effective Angular developer. React, however, it’s easy and requires a couple of weekends to make something useful and potentially production-ready.
Angular 1 used to be like that — until applications grew too big and too spaghetti-like because the framework was too easy to pick up.
Angular solved the problem of two-way binding for front end developers. React solves the problem of being forced to use and learn a structure that may not make sense for the application you’re trying to build.
Market Trends and potential longevity
Angular has been consistent for the past 5 years while React shows a great deal of growth in popularity over time. The community sizes for each React and Angular are comparable as there is an abundance of resources and strong community-driven content for the framework and the library.
Over the past 5 years, Angular is the most popular when it comes to search terms and all things related to the framework.
However, in the past 12 months, the world map shows a very different color — with the exception of China. Although it should be noted that React was released in 2013 and Angular 2+ already had a strong following from Angular 1 which first came out in 2010. This meant that Google already had a community that was already a few years older than Facebook’s React group.
In the United States, the trend of Angular vs React is polarized and shifting between an approximate half and half preference.
Europe and Asia show approximately the same trends with varying degrees of uptake in each individual country.
This also reflects on potential employment based on which framework/library you know. From personal experience, it seems a lot easier to market yourself as a React developer than an Angular one — especially to companies who are looking to migrate or upgrade their legacy systems to something new. However, maintaining or building upon an Angular app is more common in my area than creating new projects.
Keeping up with frameworks and libraries is Darwinism in Action
In the struggle for survival, the fittest win out at the expense of their rivals because they succeed in adapting themselves best to their environment. — T. Walter Wallbank, Civilization Past and Present
As developers, technology is in a constant state of change and flux. Every year, something new and groundbreaking eventually makes its way to center stage — mostly because the communities and people behind them identified a gap or unsolved problem in the solutions currently available.
It’s the way innovation works — but sometimes it can be hard to keep up with everything. Our ability to adapt to requirements determines how well we will continue to thrive and create useful products for our clients and bosses. In my case, it became the need to learn and produce React apps.
This brings me back to my original question: is React a fad?
Probably not. Nothing lasts forever and eventually, all things will fade into obscurity. But for now, it’s working and it’s in demand. With the number of applications being integrated and built with the library, it’s probably going to stay for a while — unless the React team does an Angular and decide to completely change the way things are done.