JavaScript Madness!

So, I’ve been away from front-end world for about couple of years. Last time I remember was doing ExtJS. Anyways, I’ll be doing front-end work again at a new job and was just browsing what’s cool or popular JS technologies…and… what the hell happened? It almost feels like JS I used to know doesn’t exists anymore. My life was fairly simple with jQuery or using a single framework like ExtJS. This was just couple of years ago. I’m not saying this is a bad thing but what is this JS revolution? In the past few weeks, I’ve rush to learn the following

  • NodeJS
  • AngularJS
  • Grunt
  • Bower
  • Yeoman
  • Karma
  • Jasmine
  • Protractor
  • Bootstrap
  • Lo-Dash

This is just MY list but there seems to be MANY other popular JS technologies… How does one keep up with all these?

Also, feel free to post your favorite JS technologies.

Yes, javascript has really mushroomed or even exploded since the days of “stupid javascript tricks”.
@paul_wilkins; and @Pullo; have been doing a great job with the “This week in javascript” threads and I’m always amazed at whats out there.
*the “This week in CSS” threads are equally as amazing.

Keep up? hah, more like take a quick look, try to determine if it’s something I could use, and if so look into it some more.

Right now I’m trying to get beyond newbie level with Ember.js as that’s what the new SitePoint Discourse forum will be using.

I’m a definite fan of jQuery, no doubt! However, I have to give some props to MooTools (My Object Oriented Tools). Kind of a pain to use, sometimes, but it does seem to be very robust.


A List of Foundational JavaScript Tools
I just read this. Depressing, isn’t it?

As to how I keep up with what, I usually ignore stuff until I hear it mentioned again and again.
Then if a technology seems worth investigating, I look for a concrete use case so that I have an opportunity to use it as I am learning.
You still cannot get around the fact that there aren’t enough hours in the day.

That’s how I did as well but look what has happened… I find a new job which uses all of the above… I feel so behind even though I’ve been in Web development for past 15 years.

If it’s any consolation, you’re not alone.
I saw this on Paul Boag’s blog the other day: Creating a learning workflow
It might be useful.

Thanks for the blog. Indeed, it does feel like full time job just to keep up!!! One thing I did not mention is that I only listed half of latest trends of technology. Perhaps, it’s my ambition to stay efficient in both front-end and back-end technologies. I really do value having awesome libraries and frameworks but when met with massive amount of choice… It’s very terrifying because you can’t simply change a technology stack in middle of development cycle. For example, it’ll take a long time to convert from say Ember to Angular. I guess a good analogy is like visiting an Ice Cream shop that has 100’s of flavors… You taste the individual flavor and decide which one to get…but when combined with other flavors, you’ll end up hating it. Unfortunately, this lesson is only verified through trial and error. I’ll update this thread after 2~3 months at the new job… I just hope I survive.

Luckily often a lot of these things are permutations of other things. That means that while it may be painful to pick one, if you picked well, you can ignore the others for the most part.

Like Ember/Angular/Backbone/Knockout, well they’re MC* front-end frameworks, so simply knowing if you want an opinionated (Angular) or open (Backbone) oriented framework might be enough to know where to look.

It’s like when people starting talking about Puppet, Chef, Ansible and Salt… once stuff’s been around for like at least a year, you’re able to pull of lots of developer blogposts where they rant about what sucked and rave about what was so awesome about the technology they’re using, which made choosing Ansible out of those easier than trying each of them out, as an example (devops has been going through the same crap as Javascript apparently :P). Same with Javascript tools… a lot of developers end up using many things that all kinda do the same thing, and write about it, and you can use that as like your Consumer Reports. :slight_smile: