What has AngularJS ever done for us?

Several 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