Is the “you have ruined JavaScript” article a solid argument against Angular.js?


Answer by Mattias Petter Johansson:

Angular is fine.

Yes, I do agree with the original article that Angular has an obvious Java heritage that is stronger than it needs and should be. Factories (Factory method pattern) is a pattern that is very common in most Java because of it's very structural nature, but in JavaScript it's rare that you need to use them, and it's actually more of a code smell if you find yourself making factories. However, this is just one aspect of Angular and it is in general much nicer than what came before and Angular is a necessary step in evolving JavaScript. 

The fine part about JavaScript is that it's incredibly elastic. You can code it in whatever way you want. It's few languages where you actually implement class.
This is also one of the most problematic aspects of JavaScript – unlike Java or .NET, there isn't an obvious idiomatic way to code JavaScript. When someone new to JavaScript asks "How do you make a class?" the answer is sort of "How do you want to make a class? And maybe you don't want to make a class at all?"

Angular is nicer than what came before and Angular is a necessary step in evolving JavaScript.

JavaScript has a seemingly inevitable reign as king of scripting languages, so a lot of people are flocking to it. The problem is, JavaScript itself offers no guidance on how to write it, so people look elsewhere when starting out. This is where Google entered, with Angular. It offers a clear and sort-of-familiar way of dealing with building JavaScript apps. It's built by Google, filled with Java kings of over-engineering, so it's going to be bound to have at least a few FactoryProviderProviders in it, but it's pretty okay.  Angular offers a decent way of structuring your applications.  At least it's a huge step up from Google Web Toolkit (GWT), their former Java monster. It's also a step up from Backbone, which held this crown before, that promised minimalism but in reality tended to result in surprisingly large code bases.

Just like we moved from random hacking to jQuery plugins to Backbone to Angular, I believe the culture around JavaScript will evolve again in a year or two, and leave our AngularFactoryProviderFactoryEnterpriseServices behind.

Oh, and if you like my writing, don't miss out on more of it – 
follow me on Quora and Twitter (

Is the "you have ruined JavaScript" article a solid argument against Angular.js?


About AvatarNemo

V: Voilà! In view, a humble vaudevillian veteran cast vicariously as both victim and villain by the vicissitudes of Fate. This visage, no mere veneer of vanity, is a vestige of the vox populi, now vacant, vanished. However, this valourous visitation of a bygone vexation stands vivified and has vowed to vanquish these venal and virulent vermin vanguarding vice and vouchsafing the violently vicious and voracious violation of volition! The only verdict is vengeance; a vendetta held as a votive, not in vain, for the value and veracity of such shall one day vindicate the vigilant and the virtuous. Verily, this vichyssoise of verbiage veers most verbose, so let me simply add that it's my very good honour to meet you and you may call me V.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s