views:

678

answers:

8

If you were to hire a javascript developer would you expect them to know jquery?

I just started using stack overflow this week and knew that jquery led the pack, but didn't realize the extent of it until I noticed that MooTools (my favorite) has 59 questions while jquery has over 4000. (of course, a good statistician could attribute jquery having more questions to it's usability, rather than it's popularity--but we know that's false)

And then I started noticing that many people post questions with the tag "javascript" but not "jquery" when every line of their code is jquery--like it's the de facto javascript 2.0, or that they don't even realize they aren't writing "javascript" but rather jquery.

Anyway, I ask this because I've always been freelance and could use whatever framework I want on a project. But lately I've been recommended to be the front-end developer for a couple companies. I want a feel for the community's expectations to know if I should put some other personal projects on hold to pick up jquery before exploring the positions that might be offered.

+4  A: 

They should at least know what JQuery is, and be able to tell why they chose it or another framework. Next to that, a basic understanding of the most popular javascript framework can never hurt.

Thomas Stock
+39  A: 

No. I'd expect them to know how JS does closures, the difference between == and ===, the convention on constructor functions and so on.

A good JS developer will pick up jQuery in less than a week.

I'd dispute jQuery as JS2.0 - it's a really good framework, possibly the best yet, but it's not a new language. A developer who knows jQuery isn't worth as much as one who really knows Javascript - the latter will pick up the former's skills much quicker than the other way round.

I would expect them to have heard of it, and be able to name some of the other prominent frameworks (for instance Prototype).

Keith
Excellent answer. It's almost like the distinction between knowing a programming language, vs. knowing how to program: the latter lets you be successful no matter what language is in use. A further question could be, do you understand *how* jquery works - for example, do you understand the underlying JavaScript mechanisms that jQuery uses to chain functions together. Finally, do you understand the strengths and weaknesses of jQuery and how it compares to the other frameworks. The more frameworks you have used in actual practice, the better you'll understand why they made certain choices.
BarelyFitz
I wasn't claiming it to be 2.0, just noting how many people on stackoverflow.com don't tag their jquery questions with jquery, they only tag it with javascript. And many answer with jquery answers when jquery was never mentioned. Like it's "new school" javascript because they don't distinguish the framework from the language (sorta like Ruby and Ruby on Rails).
rpflo
@rpflo that's a good point - you're probably right that lots of developers out there that do perceive it as the evolution of JS, rather than a framework that uses it.
Keith
A: 

JQuery is a very important part of javascript development these days, so yes I would expect a JS developer to know how to use it even if its just the basics.

One of the reasons that it has suddenly gained momentum in the business app development arena is that Microsoft have given it their backing and have agreed to have it distributed with their latest web frameworks (See ASP.NET MVC).

Richard
A: 

It all depends on what they were developing. If the web application extensively used ajax, which you could argue it should if possible) then JQuery is a excellent way of doing this. JQuery reduces development times over solely javascript. Bottom line, if it was me doing the recommending Yes, know both

Stuart
A: 

I'd expect a developer to know what jQuery is and maybe the basics of how to use it, but no, I wouldn't expect him/her to be able to code something up on the first day of work. After all, jQuery is a piece of cake to learn compared to other JS libraries.

musicfreak
A: 

I would expect JavaScript developer to know jQuery because it's famous for a reason.

Raf
A: 

I wouldn't expect them to know jQuery, if they could use it, then it'd be better, since I prefer jQuery to all of the rest. It is possible that he/she has their own preference over jQuery, as many people do.

Shamil
+2  A: 

I started off when I came across mootools and have not looked back since. But recently, I have spent a fair amount of time polishing my 'vanilla' javascript and have also started looking at jquery (out of sheer curiosity ). Turns out, you need to understand a lot about the frameworks, the differences between them and how javascript works if you want to be able to translate your skills and be able to refactor code between them freely.

for example, consider this as the logical code refactoring between the 2 frameworks

mootools

$("elementId").addEvent("click", function() {
    this.setStyles({
        border: "1px solid #000"
    });
});

jquery

$("elementId").click(function() {
    this.css({
        border: "1px solid #000"
    }); // fails. 
});

I was surprised to discover jquery did not work - and then considered that mootools extends the elements' prototypes by adding .setStyles whereas jquery is function based. the fix is obviously to use $(this).css instead - only it's not that obvious at first. It made me realise it would take more than reading the interface docs to be able to swap between the two.

as somebody said, it would take a week to pickup on all of the nuances of jquery even if you have a strong-ish javascript/mootools (or other framework) background, but it won't be such a challenge. moving from jquery over to mootools, however - won't be such an easy task if you are not well versed in vanilla javascript and OOP.

the short answer is, I wouldn't expect a javascript programmer to just know jquery but I'd expect a jquery user to learn about javascript.

Dimitar Christoff