Feature:

JavaScript: Unscientifically tested to be more annoying and frustrating than Java

By Cameron McKenzie

TheServerSide.com

The Dodgy Coder pushed out an article on Saturday asserting in the most interesting and unscientific manner that JavaScript is the most annoying and most frustrating of programming languages currently in existence.

And how was this conclusion made? Basically, a comparison was made between how many people were using a given programming language, and how many inane questions about that language were posted to StackOverflow. So, if 17% of the programmers in the world use Java, then 17% of the questions on StackOverflow should be Java related. However, since only 7.6% of StackOverflow questions were Java related, Java is underrepresented, meaning that Java is well understood. Alternatively, JavaScript has a Tiobe representation score of 2.191%, while 6.4% of StackOverflow questions were related to the client-side monster. Clearly, people using JavaScript are running into problems.

Why the problems with JavaScript?

It's an interesting, if not highly unscientific, glimpse at what's happening in the programming world. And seriously, the conclusion can't be that JavaScript is hard, because it's not. The real problem is that JavaScript isn’t anybody's first language when it comes to programming.

If you're a programmer, you're either a .NET programmer, or Java programmer, or you're a C++ person or perhaps even knee deep in Objective C. But nobody writes down on their resume that their primary competency is their ability to animate a web page using JavaScript. However, if you're doing any enterprise development these days, whether you're a Java Developer or a .NET developer, there comes a point where you've got to get your hands dirty with JavaScript. Okay, perhaps if you're completely immersed in Hibernate, JPA and SQL, you might be able to isolate yourself from browser-script, but otherwise you need to know it.

The consequences of client side scripting

And what is the consequence of this? It means that highly competent Java or C++ programmers find themselves humbly asking questions on the Internet that start out with a preamble such as: "I've done this a thousand times using Java, but how do you do it using JavaScript?"

Like it or not, polishing off an enterprise application and providing the functionality and user experience that today’s application clients expect requires a knowledge of JavaScript. It's not only a fact, but it's also a sad reflection of the lack of progress that's been made in terms of both server-side technologies and client side standards, forcing developers to move away from their core competencies, and making them tinker around with a client side script that they never, ever, cared to be adept at in the first place.

What's the alternative?

Maybe the emergence of HTML5 based technologies, or the uptake of frameworks such as GWT or Vaadin, will reduce the need for enterprise developers with strong Java or C skills to post cries for help on StackOverflow, but in the meantime, learning the basics of JavaScript might not be such a bad investment of an enterprise developer's time.

www.dodgycoder.net: StackOverflow's Programming Language Bias

18 Nov 2011

Related Content

Related Resources