This article focuses on communicating the business value obtained through a migration from AngularJS to Angular is on expressing the business value of this change. A socratic approach is taken by imagining a business analyst asking the following five questions:
- What is Angular and why do we need it?
- Weren’t we already using AngularJS? Isn’t that the same as Angular?
- If Angular is so much better than AngularJS, why didn’t we use the former to start with?
- Are there alternatives to Angular? What are the comparative pros and cons?
I then have a few articles giving business or financial value measurements to latency, or site speed.
1 – What is Angular and why do we need it?
2 – Weren’t we already using AngularJS? Isn’t that the same as Angular?
- Better support for technical issues.
- AngularJS is reaching end of life, so formal support will end.
- The library is dated, so much of the online documentation is also outdated.
- This includes easier upgrading, in part due to better AST support.
- TypeScript prevents the majority of run time issues encountered during development.
- Better recruiting story. Developers want to work in the latest tech.
- Better implementation velocity.
- Tools create components for you with free minimal unit testing.
- Webpack 4 facilitates the use of a ton of build plugins.
- Easy third party component integration
- Abstract Syntax Tree (AST) Transformations are first-class citizens called schematics, and third party schematics are also easy to use. This is basically a pattern to programmatically rewrite the application, so it helps automate even major code changes.
- Some things which aren’t part of Angular per se, but a migration efforts allows us: Refactoring to a better architecture, state management, and so on.
- Progressive web app support (requires next steps).
- Responsive applications allow you to change the application to accommodate different screen sizes.
- In a similar way, PWAs allow you to change the application to support differently performing client devices and network conditions, up to an including fully offline support.
- Performance improvements (requires next steps)
- The compiler is better, meaning the minified code rules are advanced to deliver even smaller payloads, supporting even more modern and complex features, built in less time.
- Lazy loading is a first class citizen in Angular.
- Complex build and loading operations like chunking and tree shaking allow clients to load the minimum resources needed for a given view, with minimal implementation complexity.
- Server-side rendering and static building / prerendering are implementable with official support. AngularJS required unofficial hacks.
- The Angular framework itself executes up to 5x faster than AngularJS. Note that this is not what we expect to see as it is attenuated by API, non-API HTTP, and third party logic. CloudFront will also do much more for a web app than this upgrade will.
3 – If Angular is so much better than AngularJS, why didn’t we use the former to start with?
Angular (version 2) was released in September 2016, and it was not widely considered a good upgrade candidate until Google had conducted several non-breaking version increments by mid to late 2017.
4 – Are there alternatives to Angular? What are the comparative pros and cons?
- Open source code
- Hiring effects
A recent Indeed job search for Vue turned up about 3500 positions, while Angular turned up about 15000. Effectively Angular and React are the go-to choices, and upgrading from AngularJS to Angular is generally much easier than upgrading from AngularJS to React, simply due to framework similarity.
Another concern about React is that it doesn’t achieve the same level of standardized application solving compared to Angular. The React home page identifies React as a library for building user interfaces, rather than a framework. This leaves many segments of a typical commercial application unaddressed. Examples include state management and http request solutions.
The React ecosystem has diverse practices around these, while the Angular ecosystem has relatively strictly defined best practices on the same concerns. There are advantages to either ecosystem, but the word on the street is that Angular is a win overall for scaled commercial applications and large teams.
That’s it for the four questions! Here are some articles showing the financial benefit for improved site speed metrics:
- Amazon Found Every 100ms of Latency Cost them 1% in Sales
- How Does Page Load Time Affect Your Site Revenue?