What’s the Deal with all the JavaScript Frameworks?

I don’t create Web applications as often as I code backend algorithms. I’m constantly amused by the Web world and its constant chaos. In my mind, Web development falls into six categories based on technology used: ASP.NET, PHP, raw HTML + JavaScript, Ruby, JavaScript frameworks, other. And of course there are many important technologies I’ve left out, but I think these six categories capture most Web application programming.

It seems like there’s a new JavaScript framework that emerges every few months. If you’re not a programmer, the basic idea is that you can code everything from scratch using HTML and JavaScript, but this approach requires a lot of time and expertise. JavaScript frameworks are a collection of code libraries that can be used to create a Web application. It’s sort of like using Legos to create a robot instead of creating a robot from raw metal and plastic.

Here are the eight JavaScript frameworks that I run into most often, not in any particular order.

1. jQuery – The jQuery framework is a very low-level library of code functions that are especially useful when writing code that must be used by different browsers. Often used by the other frameworks on this list.

2. AngularJS and Angular 2 – Perhaps the most common high-level framework I see. Created by Google so has strong support. Very comprehensive.

3. Backbone.js – A framework designed with a traditional database backend in mind. Uses a MVC / MVP model. Created by a single guy so is possibly fragile with regards to long-term support.

4. ReactJS – A framework that emphasizes creating user interfaces. Maintained by Facebook so is likely to be well-supported.

5. Vue.js – Another framework that emphasizes UI. Created by one guy.

6. Ember.js – Emphasizes single-page-applications that connect to a database. Very popular.

7. MeteorJS – A general purpose framework, closely associated with the MongoDB database and therefore unstructured documents.

8. KnockoutJS – A framework that emphasizes database connectivity via MVVM. Written by one guy. One of the earliest popular frameworks but seems to be losing steam.

There are dozens of other JavaScript frameworks. The upside of these frameworks is that you can be more productive, more quickly. The downside is that most have a very steep learning curve, and using one framework can lock you in forever.

Over time, I fully expect most JavaScript frameworks to fade into obscurity, with maybe two or three dominating.

This entry was posted in Miscellaneous. Bookmark the permalink.