Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

This question already has an answer here:

I got into a discussion with a coworker over an interview question that was asked of a potential employee. "Name some namespaces/what do they do/what namespace is involved with x".

I'm of the opinion that programmers don't really need to know that kind of stuff, especially with the use of an IDE and extremely accessible documentation.

He feels that a programmer with experience should be able to name namespaces. This is valid, I suppose, especially if you're looking to hire someone into a more experienced position. They don't particularly need to memorize namespaces, but anyone that has experience should be able to rattle off some namespaces and what their purpose is.

What are your thoughts on this?

share|improve this question

marked as duplicate by MainMa, Caleb, MichaelT, gnat, Glenn Nelson May 13 '13 at 21:27

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

@MainMa Related, sure. I feel this question is more specific to an interview rather than general programming practice. –  tnw May 13 '13 at 21:07
I think the level of programmer will determine what they "should" know. The more experience, the more they should have come across the same missing references, etc.. –  hanzolo May 13 '13 at 21:08
Questions should be answerable and not open-ended, and this one doesn't seem to fit those criteria. –  Caleb May 13 '13 at 21:13
@Caleb What makes this question unanswerable/open-ended? It's a yes/no question that can be objectively answered. Also, this close vote doesn't make any sense. It's distinctly different from the other question. –  tnw May 13 '13 at 22:13
@ToryWaterman I'm of the opinion that... and What are your thoughts on this? make it open ended and subjective. Some here might agree with your coworker, others might agree with you. You might save this question as "good subjective" if you said you were looking for evidence supporting one position or the other, but as it's written this seems more like a poll question. I voted to close as 'not constructive', but at least the dupe (and the dupes of the dupe) look at the issue you raised in some depth. –  Caleb May 13 '13 at 22:22

2 Answers 2

I'm not sure asking someone to give a list of namespaces is a very good interview question. All it will show is that they know some namespace names, and if they name some that you don't know, maybe they're just making them up!

Asking someone to list some benefits of using namespaces is probably a much better interview question.

I suppose that if you have extremely technical questions that are vital for the purpose of the job you could ask something like:

What's the difference between some.name.space.XML.Util.parseXML and some.specific.vendor.XML.Util.parseXML?

But in this case, you're looking for very specific knowledge, so it might be OK (having such specific questions might be a separate problem with the interview question...).

share|improve this answer
Right, I didn't think it offered very much information about the interviewee. –  tnw May 13 '13 at 21:01

My primary frustration with loosely-typed languages like Javascript is the lack of Intellisense; even after over a year of programming in it, I still have to look stuff up on the Mozilla Developer Network site, and whichever framework I'm using. (is it dojo.dom.addClass, or dojo.addClass?)

It saves you time when you can remember even a function's inConSistent capiTaliZation all from memory, but I would definitely say it's not an indication of someone's skill.

share|improve this answer
Yep, we're using C# and Visual Studio so there's no lack of Intellisense there... I'm not really sure though if it makes the question more or less relevant for a language like Javascript. –  tnw May 13 '13 at 21:04
Lack of IntelliSense is a property of the IDE, not the language. After all, IDEs were invented in dynamic languages, and dynamic languages had graphical IDEs with autocompletion, automated refactoring tools, code browsers, etc. long before statically typed languages even had IDEs or graphics or refactoring tools or code browsers. Visual Studio, Eclipse, IDEA and co. are still way behind Smalltalk and Lisp IDEs from the 1990s. –  Jörg W Mittag May 13 '13 at 22:43
That's mostly a technicality. I understand many IDEs have attempted to add IntelliSense to JavaScript, but their failures are less to do with bad designing, and more from the fact that any type-less language, hackable in any way the coder likes, is difficult for an IDE to follow. TypeScript helps that idea, though. And while I respect the paradigms of older languages, they have never had direct relevance to any of the companies I've worked for. –  Katana314 May 13 '13 at 23:08
Smalltalk, Self, Lisp etc. are just as hackable and typeless as JavaScript, even more so, in fact. And yet, they have IDEs with features that Java, C#, C++ programmers can't even dream of. Support for IntelliSense etc. is a question of money, not typing. –  Jörg W Mittag May 14 '13 at 15:12

Not the answer you're looking for? Browse other questions tagged or ask your own question.