Beyond jQuery: An expert guide to JavaScript frameworks

How to choose from 22 essential JavaScript frameworks for Web and mobile development

Become An Insider

Sign up now and get FREE access to hundreds of Insider articles, guides, reviews, interviews, blogs, and other premium content. Learn more.

The defining characteristic of a really good programmer is laziness. That doesn’t mean stupid or ignorant, though. The really good lazy programmer doesn’t write (then need to debug and test) 100 lines of code when 10 will do. In the JavaScript world, the truly lazy developer will rely on an efficient, well-tested, and well-supported framework to avoid constantly reinventing solutions to common problems.

Frameworks “chunk” much of the fine-grained functionality of the JavaScript language into method calls, reducing the amount of code the lazy programmer needs to write, test, and debug. There are two hurdles to clear before reaping that advantage: choosing a framework for your purpose, and learning it.

Once you’ve learned a framework, the obvious course is to stick with it for everything you develop so that you don’t have to learn something else, but that isn’t always useful. In fact, one of the clues that says you’re using the wrong framework for your current task is you find yourself doing a lot of work. So be really lazy and always keep learning.

A little JavaScript history

The history of JavaScript goes back to development work Brendan Eich did on the Mocha language for the Web browser company Netscape in 1995. Mocha was released as LiveScript later that year and renamed to JavaScript when Sun granted Netscape a trademark license. Trying to tie the lightweight C-like JavaScript interpreter to the unrelated heavyweight Java—an object-oriented, token-compiled language—by means of a similar name seemed like a good idea for marketing purposes in 1995, but over the years that choice has caused no end of confusion.

The development of JavaScript over the next decade was marked by disagreements among the browser implementers and a fairly weak ECMA standards effort. What changed this malaise and reenergized the language was the rise of Dynamic HTML and Ajax in the mid-2000s, followed quickly by the introduction of open source JavaScript libraries such as Prototype, jQuery, Dojo, and MooTools, which were intended to make Dynamic HTML and Ajax easier to use, and to provide “widgets” for JavaScript that would enhance the functionality of HTML form controls.

To continue reading this article register now