If it's wiser to know a framework such as jQuery, MooTools, DoJo, etc. to get over cross-browser issues, why are interviews asking for only javascript?
|
Because if you know "real" Javascript, then it doesn't matter if you know jQuery but not MooTools, DoJo but not Closure, etc. If you know "real" Javascript, you should be able to pick up any particular Javascript library with relative ease. It's (often) better to use a library that helps with the cross-browser issues, but you can't know the library without knowing the language. If you don't know "Javascript" and all you can do is cut'n'paste samples from a particular library, then you can't really put "Javascript" as a language on your resume anyway, IMO. |
|||
|
|
|
It is easier to evaluate a person's skill/knowledge by examining their coding style within a finite set of language features - such as JavaScript. The object of the exercise is not to create code that works well accross different platforms, but to examine the candidate - in this case, you. |
|||
|
|
|
I think I'd appreciate hearing that an interviewee understands that jQuery selectors are a vast improvement over getElementByName. That way they know there IS something underlying the framework, and they know enough about it to drop a function name. That's really all I need to hear about their understanding of "raw javascript". God help me, I'd love to never code "raw javascript" ever again. I know how to put gas in the car. I don't need to know how to refine dead dinosaurs into gas. Yes I did just call raw javascript a dead dinosaur. |
|||||||
|
|
Because frameworks are changing more often than language features. If you are a good javascripter, it is more likely than he could be able to learn relatively quicker any framework. And without really deep knowledge of "just js", understanding the core functionality of any big library is hard. It always better to know what is going on behind the scenes. Besides, knowledge of the language itself helps you to distinct good architectural from bad ones. |
|||
|
|
|
A framework is a level of abstraction above javascript. If you dont know a framework but do know javascript its a matter of a few hours to learn the specifics. You cant use a framework properly without knowing javascript. |
|||||||
|
|
Don't let this fact stop you from learning commonly used frameworks though. Knowing JavaScript alone may not be always sufficient. |
|||||||||
|
|
If you know JavaScript, you will be able to build your own library with your own functionalities, often needed in working environments for proprietary tools. I once found a bug in jQuery and had to patch it myself, because I couldn't wait for them to release a patch. I was able to do it easily because I know JavaScript. Being a good coder in JavaScript means you know many concepts such as closures, prototyping and other good features this powerful language offers, and that you may end up not using/understand when relying on a "write less, do more" library. Then, even if you will use one of those libraries or frameworks, you will ultimately understand when it's best to use their functionalities and when it's best not to. Because they offers many good functionalities by writing little code, but it's really easy to overuse them, and create poor and sloppy code, while with plain JS would've been much faster. |
|||
|
|