What has AngularJS ever done for us?
26 Jan 2015Several developers and a project manager meet at a round table to discuss the codebase for an existing web application. Ninja Developer, a young, fast typing, vim using, hacker news reader reading guy kicks off the meeting.
Ninja Dev: I think we need to rewrite the web application in X. We are too constrained with AngularJS and the learning curve is too steep for new developers. Not to mention AngularJS 2 is a complete rewrite. We will be supporting this code forever and not just us but our replacement will have to learn it and then our replacement's replacement.
Manager: And then your replacement's replacement's replacement.
Ninja Dev: Exactly.
Manager: And then our replacement's replacement's replacement's replacement.
Ninja Dev: Yeah. well all right. Don't labour the point. And what does Angular ever given us in return?
Developer: A single page application?
Ninja Dev: What?
Developer: A single page application.
Ninja Dev: Oh well yeah. It did provide that but--
Developer #3: And modular components.
Developer: Oh, yeah, modular components. Remember what our old ASP web forms and jQuery code looked like?
Ninja Dev: Yeah. All right. I'll grant you that Angular provided two things: a single page application and modular components.
Developer #4: And data binding.
Ninja Dev: Well, yeah. Obviously the data binding. I mean, the data binding goes without saying, doesn't it? But apart from the single page application, the modular components, and the data binding even though for large data sets--
Developer: Dependency injection.
Developer #2: Testable code.
Developers: yeah...oh...yeah
Developer #3: an MVC approach.
[a lot of nodding and agreeing tones from the developers]
Ninja Dev: All right. Fair enough.
Developer #1: And dependency injection.
Developers: Yeah...
Developer #2: Yeah, that's something we'd really miss form our Angular projects.
Developer: Community support and adoption.
Developer #3: And our javascript code is actually organized for once.
Developer #2: Yeah, the opinionated framework did help provide order. Let's face it. We need an opinionated framework in this office.
[healthy chuckling from the developers]
Ninja Dev: All right, but apart from the single page app, the modular approach, data binding, dependency injection, community support, organization, and opinionated framework, what does AngularJS provide for us?
Developer #1: We shipped the website.
Ninja Dev: Shipped? Oh SHUT UP!
Manager: What was this meeting for again?
My apologies to Monty Python. A text script for the below video