Imediava's Blog

Just another site

Best Javascript Tools

I remember when I started creating webpages coming from a background in Java that I looked at Javascript and I really didn’t get it. I guess it didn’t help the fact that the critics about the language were spread all over the internet. It gave me the impression of a really old language, the legacy of a list of wrong design decisions. Overall I felt like it was something I had to deal with but I should avoid, trying to do as much as possible on the server.

However, now after I’ve had some experience with it I realize that it was just a prejudiced impression. It’s a fact that Javascript is an old language and there are some things that have been done wrong over its history.

Nonetheless, Javascript is living a renaissance. There is a really active community backing it and many innovations going on. Many of the mistakes in its design have been addressed and overall it is just a matter of having the expertise to be able to avoid them. As with any programming language, it is a matter of using it well. The great news with Javascript are that thanks to its community there are many available tools that make this task of “programming well” easier.

This is the list of my favourite Javascript libraries for this task:

  • Underscore – A really interesting library of useful functions to operate with collections, arrays, objects or other functions.
  • Coffeescript – A language that takes influences from ruby and provides among other things list comprehensions, a smarter way of dealing with variables without polluting the namespace and many other useful tricks that can make Javascript development simple. Coffeescript compiles to a well formated Javascript, thus allowing for easy debugging.
  • Require.js – A library for defining dependencies between Javascript files, Require.js facilitates a better modularization of code. It also allows smart resource loading and resource compression, making page loading faster. (See an introduction to the library here)
  • Backbone – An MVC-like framework for defining complex one page web applications.
  • Mustache: A logic-less template engine that is available for many languages including Javascript. Its markup is powerful while keeping developers from cluttering templates with complexity. It can be replaced by handlebars whose templates are fully compatible with Mustache but provides even more powerful features. Both can be plugged into Backbone’s template-agnostic views system.

  • My intention is that this article serves as an introduction for a list of posts where I delve into each of this tools features, advantages/shortcomings and alternatives.


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

%d bloggers like this: