So, I decided to compare its features and stats with those of its competitors to see whether only knowing Angular will be enough to survive in 2021.
Angular’s Past, Present
Apart from being part of the famous MEAN stack, Angular provides some great features:
- Two-way data binding
- Dependency injection
- MVVC architecture
- Angular CLI
- TypeScript support
On the other hand, Angular’s capabilities have been questioned due to new frameworks. In most cases, SEO support, the size of the framework, updates, and the learning curve are the general concerns that people have about Angular. If we just consider Angular, these things do not seem to be large issues. But when we learn about frameworks like React or Vue, we feel that these things can be achieved easily by using them.
Pros of Using Angular
- Suitable for large-scale applications that require solid and scalable architectures.
- Contains a large ecosystem of dependencies and libraries. This allows developers to focus on the core functionalities of the application without worrying about little things.
- Angular is backed by Google and well established. This means that you can use Angular for your production without hesitating. It also contains rich documentation that you can easily understand and follow.
- Angular is written using TypeScript, which makes the code more understandable and clean for everyone.
- Features like dependency injection, AOT compilation, and two-way data binding increase the loading time and reduce the development time of the application, making Angular a perfect match for large-scale applications.
Cons of Using Angular
- Limited SEO support.
- The learning curve can be a bit steep for beginners.
- Angular is a heavyweight framework compared to React and Vue.
Impact of React and Vue
React has become the main competitor of Angular within the last 2–3 years, and it seems that developers are more comfortable working with React than Angular. React has covered many drawbacks of Angular, including SEO support, framework size, etc. Some of its features include:
- Native support with React Native.
- A saturated ecosystem with libraries like Redux.
- Lightweight compared to Angular.
- Reusable components.
- Better performance.
- Large community and constant updates.
With all these features, React is best suited for situations like:
- Creating SPA or cross-platform applications.
- Developing small enterprise-level apps.
- Applications that include many state changes.
Vue is another competitor for Angular, and its tiny framework size is the main reason behind its popularity. Flexibility is another major advantage, although sometimes we can interpret this as a disadvantage for large development teams. Some of its significant features are:
- Vue slots make your code easily understandable.
- You can build and share independent components.
- Vuex state management pattern allows you to maintain a well-organized project.
- Test framework support.
- TypeScript support.
Also, there are some specified cases where Vue might be the best solution for you:
- To build small and lightweight applications.
- To build smart and high-performance applications.
- For an app’s early entry into the market.
Let the Stats Speak
Stack Overflow Survey
Source: Stack Overflow
In this survey by Stack Overflow to find what the most loved, dreaded, and wanted web framework is, React and Vue placed first and second, respectively, in both the Loved and Wanted sections. Meanwhile, Angular placed third. As I remember it, Angular had a lead on React in those categories in 2018.
Source: NPM trends
The NPM trends graph above shows us the number of downloads of each framework overs a period of time. The screenshot shows the stats over the past six months, and we can see that React clearly holds the lead with almost 9 million downloads. Vue and Angular are in a tight contest for second place.
Another feature in NPM trends is that it shows the data from GitHub as well. In the screenshot below, you can see the number of forks, stars, and issues of each framework:
Source: NPM trends
These stats again emphasize Angular’s loss of users. Angular only has 67,000+ stars, while both Vue and React are well ahead with 158,000+ and 175,000+ stars in their GitHub repos.
As we can see, the highest number of users are likely to use React and Vue again rather than Angular. Also, the number of users who voted “I’ve used it before, and would NOT use it again” is higher for Angular than the other two. This means Angular is losing its users rapidly.
Can Angular 10 Make a Difference?
Not meeting the users’ requirements through updates is one of the major criticisms against Angular. But within this year, Angular released two major updates (Angular 9 and Angular 10). Although the Angular 10 update brings some existing features like Language Service, a compiler update, new default browser configuration, Ngcc, Typescript 3.9 support, localization, service worker updates, performance improvements, and much more, we can’t see any improvements in areas where developers expected some.
So, what I can say is that Angular 10 will not help much to recover its lost users.
Throughout the article, I talked about the drawbacks of Angular and the positive side of other frameworks. But there is just one thing we must not forget: Angular has been there for a long time and is well established. Organizations will continue to use it in 2021, so you will be able to use your knowledge of Angular in future projects as well.
On the other hand, frameworks like React and Vue are taking over and new trends seem to be in their favor. This means that learning these other frameworks will be a great push for your career.
You will be able to survive 2021 only knowing Angular, but learning React or Vue will ensure your position because it is always better to learn new things.
Advice for programmers.