I've been cruising the reddit listings recently and without much searching I found a staggering amount of "jQuery is outdated", "jQuery isn't relevant", "I think jQuery is dying out", "…forget about jQuery. It isn't good for anything anymore", "jQuery hasn't been relevant for years in my opinion, it's best to avoid a "career" that requires it"!

Now, I think it's fair to say: poppycock. But poppycock aside, the question remains: is jQuery still in 2017 (and as we join 2018) relevant and more importantly, is it worth a newcomer learning the library today?

The short answer: yes

Yes, of course it's worth learning jQuery. The internet is littered with tutorials and knowledge across your peers is vast - that's to say: help is in abundance.

Moreover: jQuery is prolific in today's web and there's an extremely high chance that you'll use it in your career. Sure, you might work for bleeding edge start up from Sillygone Valley that only uses Ember version pre-release 20 (not a thing…yet), but that's not the only job you'll have in your career.

Proof in the wild

How about we look at some real world web sites, and potential employees and clients and see if they use jQuery, and importantly, how many of them.

I've been playing with BigQuery and querying HTTP Archive's dataset (you'll need to sign up to access the tool).

The HTTP Archive crawls the top 10,000 web sites from the Alexa top 1,000,000 web sites and exposes all that data in a BigQuery table (or as a downloadable mysql database). This year, the HTTP Archive started testing and collecting JavaScript libraries under httparchive:scratchspace (though it's not an exact science for all libraries, it's reliable for jQuery based queries).

I've queried the HTTP Archive and includes the top 20 results in the charts below.

JavaScript library distribution

The chart below is a query from July 2017 aggregating the count of the library name over a total of 474,058 unique URLs collected. The chart shows that jQuery accounts for a massive 83% of libraries found on the web sites.

Reading through the next libraries, jQuery UI requires jQuery, as does Bootstrap and FlexSlider. Modernizr isn't a "do thing" library, nor are many of the libraries until we hit Angular.JS.

JavaScript library distribution

BigQuery saved SQL statement: Libraries by usage

jQuery versions

Are web sites staying up to date with their version of jQuery? The version of the library is included in the the httparchive:scratchspace, so I've just looked at the aggregate totals of particular versions:

Top jQuery versions

BigQuery saved SQL statement: jQuery by version from latest dataset

jQuery@3 accounts for about 6.4% of all the data points. I don't think this is because "jQuery is dying out", but more than jQuery solved a serious problem with browser compatibility and make effects and ajax easy. In today's modern browsers there's CSS transitions and a consistent implementation of XMLHttpRequest or even the fetch API.

More specifically, I'd conclude that those web sites with much higher traffic from "older" browsers (i.e. questionable interoperability) are using jQuery to simplify their JavaScript.

jQuery over time

Finally (and this query appears often): how year on year usage changes. I've included Angular.JS for contrast. The table looks like the delta between 2016 and 2017 is showing the first drop in usage (by 2%):

jQuery use year on year

BigQuery saved SQL statement: jQuery year on growth

So, although this is a small change, I strongly suspect this will stabilise in the next 5 years, rather than rapidly shrink.

Wrapping up

I've seen this kind of dominance in the web before with IE4 and then IE6. And that browser was (and is) hated on pretty hard - and to be fair, IE6 was fairly riddled with issues. jQuery isn't the same. jQuery is actively maintained and shipped as the default JavaScript library for a lot of large projects (WordPress being one of them).

There's also the startup cost that jQuery affords. It's extremely cheap for a new developer to copy and paste some code that uses jQuery, and to add the jQuery library to immediately see a result. The same isn't entirely true with "modern" code using import or export default or destructuring, etc. It always work in the browser the individual is using and there's potential for a rabbit hole of tooling (though of course, I'd recommend they start with something like Create React App first, but this post is about jQuery, not CRA).

You certainly don't need jQuery today. Nor do you need to learn jQuery. However, jQuery is far from dead, dying, outdated or irrelevant. It serves many developers from many different walks of life.

So, is jQuery still relevant? At the end of 2017: yes.