A Bad Litmus Test

  • Hmmm, very thought provoking subject matter... and very timely too.

    I heard from an old co-worker a few weeks ago asking me if I knew any good FoxPro guys who might be available. I chuckled and said "No, but I'll take the job for the right money..." He said they had hired two different programmers who claimed to know FoxPro and in both cases, they hired the guys and found out they were spending most of their time on Google looking for FoxPro answers/education. Both were let go rather quickly.

    He said they even altered their posting for the job so that it states "Must know FoxPro without the use of Google"!

    I don't think identifying famous programmers is any kind of litmus test, let alone any indication of the kind of quality one might get from a developer (or not), but I do think there has to be some sort of litmus test and this applies especially to SQL Server.

    In my career I think I have interviewed probably 25 to 50 "DBAs" who were not (at least in my book) DBAs at all. I've interviewed people who worked at small companies doing little more than backups and yet presumed they were a DBA. I interviewed a few people who could write stored procedures but have never worked with SSIS or SSRS - and yet considered themselves DBAs.

    Litmus tests are good to separate valid candidates from 'self-defined' candidates, but I would not consider naming authors to be any kind of helpful or valid litmus test. Better to check actual working knowledge than casual secondary knowledge.

    There's no such thing as dumb questions, only poorly thought-out answers...
  • I would find it an interesting opening, whether I was one side of the interview table or the other, into a discussion about whose papers/book had been worth reading. This list could be a starting point but, even as a professional developer (I am considering as a SQL Server site some DBAs have less emphasis on this skill) I only knew two of the top of my head (Knuth and Thompson). I recognised others in the same way some describes someone from school and it "rings a bell" but only just.

    I don't think anyone here are questioning the contributions by the people on this list (and to refer to Knuth as "not relevant" is, in my not some humble opinion, just plain wrong - not wanting to pick a fight though Gift).

    In conclusion, excluding someone on the basis that they cannot remember or, perhaps, never knew of someone else's (valuable) contribution to the industry is ridiculous.

    I do think it is valid to use some of the these peoples works as suggested reading - even with experienced colleagues. An example of this for me was when I recommended to an extremely talented TA that he read the chapter on Design by Contract in Bertrand Meyer's Object Oriented Software Construction book - which incidentally, Mark, you still have!!!

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!

  • Well said, Steve. I can name several movies I like but not the writers nor directors yet I can describe the plots. Different things appeal to different people. What matters is can you do the job? Kudos on your perspective, Sir.

  • I think my response would be along the lines of, "Why that[/i] book? 280 names were submitted. 15 were selected, partially on the basis of their willingness to do an interview (for a book they likely weren't compensated for). It misses big names like Ritchie (C language), like Larry Wall (Perl), like Cutler (since we're talking Windows), like McConnell (Code Complete). So why that book? What makes it so special in the literature that you're using it as a filter question?"

    K. Brian Kelley
    @kbriankelley

  • Grant Fritchey (11/9/2009)


    I realize I'm not terribly well educated... but I didn't recognize a single name on that list. I must not know what I'm doing. I'd better go tell my boss to fire me.

    And here I think Steve's point is especially valid. You may not recognize the name, but if you looked at their body of work, you'd be saying, "Okay, I know this one and that one. I just didn't pay attention to who the author was at the time." We're more about content. Like me, I don't care if you remember my name with regards to SQL Server security. I just care that you remember what I'm saying about securing SQL Server. After all, one day you may be securing data on me. And then it doesn't matter if you know who I am. But you better know how to keep data about me safe.

    K. Brian Kelley
    @kbriankelley

  • The quote said "If the next programmer you interview can't identify at least one of the programmers interviewed in Coders at Work and tell you roughly what they're famous for … I'd say that's an immediate no-hire. " (He's not talking about DBAs, you see)

    Knuth, who is on the list, wrote the classic work on programming, 'The Art of Computer Programming'. His work is generally acclaimed to be the most important work ever written about programming, and one of the twelve most acclaimed books on physical science written in the 20th century. If you don't at least know about Knuth and "roughly what (he's) famous for", and you are a programmer, what does that tell the interviewer about the interest you take in the skill, the art, that you profess to?

    Best wishes,
    Phil Factor

  • Phil Factor (11/9/2009)


    I've got a feeling that I disagree with most of these comments if they are meant to apply to programmers rather than DBAs.

    Programmers do well to study the code written by the masters, and study that code in depth. I learned far more from studying in depth the code written by Jonathan Sachs http://en.wikipedia.org/wiki/Jonathan_Sachs code (the guy who originally wrote Lotus 123 and STOIC) than from a whole shelf of books. I pored over everything that was written by Brian Kernighan and Dennis Ritchie. If you do not study Ken Henderson's books, you're doing yourself a disservice.

    Most of the list given in Steve's example are B-list in terms of the art of programming, but it contains one or two programmers who should be on everyone's list. If I interview a programmer who has never heard of Knuth, then I know he/she has never studied algorithms and I'm sure that this will handicap their ability to write really great code.

    If we studied the work of the great programmers such as Charles Moore in more detail, then the current dreadful standard of coding that we come across must surely improve. We have no reason to feel complacent that we can somehow do better than they did without being familiar with what they did. That is pure arrogance.

    I've interviewed, and appointed, several programmers who subsequently enjoyed great success. They had no qualifications at all, and were from a wide range of cultural and socioeconomic backgrounds. The one thing they had in common was that they had studied the art of programming and knew the work of the greatest proponents of the art. It takes a great deal of effort to become a skilled programmer, and I'd never want to work with a programmer who can't be bothered to study the work of the greats.

    But here's the thing... if you find the original post, you'll see it pointed out that Brian Kernighan and Dennis Ritchie aren't in the book. Knuth is, but I think you see my point. It's a bad filter question to limit candidates like that. So what if I can't name those 15? But I can name others who are in the programming hall of fame? I'm still a no hire? Seriously? And the problem is the original poster didn't qualify his statement in that post. He just left it out there like that.

    K. Brian Kelley
    @kbriankelley

  • I agree with one of the earlier comments in that this sounds like an excuse to get rid of someone not to hire them.

    Besides this sounds like more of a "who do you know" question instead of a "what do you know" one.

  • Phil Factor (11/9/2009)


    The quote said "If the next programmer you interview can't identify at least one of the programmers interviewed in Coders at Work and tell you roughly what they're famous for … I'd say that's an immediate no-hire. " (He's not talking about DBAs, you see)

    Knuth, who is on the list, wrote the classic work on programming, 'The Art of Computer Programming'. His work is generally acclaimed to be the most important work ever written about programming, and one of the twelve most acclaimed books on physical science written in the 20th century. If you don't at least know about Knuth and "roughly what (he's) famous for", and you are a programmer, what does that tell the interviewer about the interest you take in the skill, the art, that you profess to?

    No, it doesn't. Case in point: I've met more than a handful of DBAs and database developers who didn't know who E.F. Codd was. Same with Jim Gray. That didn't make them less able to do their job. They knew what they had to know, even though they might not have recognized the names.

    K. Brian Kelley
    @kbriankelley

  • Phil Factor (11/9/2009)


    The quote said "If the next programmer you interview can't identify at least one of the programmers interviewed in Coders at Work and tell you roughly what they're famous for … I'd say that's an immediate no-hire. " (He's not talking about DBAs, you see)

    Knuth, who is on the list, wrote the classic work on programming, 'The Art of Computer Programming'. His work is generally acclaimed to be the most important work ever written about programming, and one of the twelve most acclaimed books on physical science written in the 20th century. If you don't at least know about Knuth and "roughly what (he's) famous for", and you are a programmer, what does that tell the interviewer about the interest you take in the skill, the art, that you profess to?

    It tells you that I haven't read the particular book being referenced, and/or that I'm bad at remembering names.

    The question being referenced isn't, "Can you name a famous software person and what they're famous for?", it's, "Can you name someone in this particular book and what they're famous for?"

    Interviewee could be a complete expert on Knuth. Could have studied with him personally and be his favorite protege, but if he hasn't read that exact book, and recently enough or with enough fascination to differentiate the data in it from general memory, then the interview would be over.

    - Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
    Property of The Thread

    "Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon

  • I think it's worth discussing what you've read, or what you've learned, but not necessarily driving home that it was Knuth that wrote it.

    There are plenty of developers that read about their craft, that learn about algorithms or other techniques without caring who the author is. Before I started writing, I rarely knew who an author was, especially in my studies at college. Get a textbook, read it, learn the information, don't care about the author.

    There is huge value in being forced to study the techniques of the masters, be it Knuth, Stroustrup, Henderson, Ben-Gan, or even Moden. I just don't think there's a definite need to learn about who the masters were, by name or other details.

  • I'd hire a individual who fits in and is anxious to learn something new before an argumentative know-it-all. The former will interact positively with the rest of the team, learn from them and on his own, and contribute more the success of my project the latter, who I figure will insist on his way and drag down the morale of the office.

    Of course, if you find a level headed know-it-all hire him, but I've seen very few of them.

  • Ah. I think I can see an ambiguity here. Asking the question "Can you name someone in this particular book 'coders at work', and what they're famous for?" would be ridiculously unfair, but asking "Who was Donald Knuth, and what was he famous for?" would, I think, be valid. After all, you enjoy music without generally knowing who it was by but people would be puzzled if you didn't know who Jimi Hendrix was. (Yes, Knuth is that famous amongst professional programmers)

    In an interview, you have to reach as fair as possible assessment of a programmers technical competence in a restricted number of questions, giving a considered weight to all their responses: (no one can seriously support that 'no-hire' statement). This isn't ever going to be a fair test, but I'd say it was fairer than the average technical interview question that just tests one's ability to be a BOL-on-legs, with, for example, detailed questions about the parameters to certain DBCC commands. If we can broaden the pool of questions to assess, as well, the candidate's overall skills, aptitude, enthusiasm and training, then we'll all be winners.

    Best wishes,
    Phil Factor

  • Gift, I'm not sure which side you were arguing, but your post showed what is likely to happen if you _do_ bone up on such things before an interview: you are likely to make flippant remarks that get you in trouble like:

    "Donald Knuth: ... not relevant"

    If the interviewer knows who Knuth is, they will pounce on that remark, and ask you to justify it. If they really are a fan of Knuth, there is no chance of you winning that argument.

    I appreciate that you probably meant something a little different, but now you have to explain why you failed to get your point across the first time, which is another black mark.

    @ Mike,

    I have edited my post but my point was current systems most RDBMS is written in C and C++ both men are not in the list and most UNIX operating systems are running with C++ compilers in the root. I needed to security patch Oracle 9i RC2 running in IBM ISeries checked the root folder and yes I found IBM C++ compiler and Oracle C++ compiler but Bjarne Stroustrup did not make that list.

    I have seen people in this thread talk about Itzik Ben-Gan because he makes T-SQL accessible to them in C++ that is Herb Sutter but if Bjarne Stroustrup did not make the list you get the point. Then there is Jim Grey whose work built SQL Server and Jim Melton whose work built Oracle RDBMS. Then on the calculus end of RDBMS is Ralph Kimball and Bill Inmon.

    In current implementation most systems are in C++ and C which is Bjarne Stroustoup and Dennis Ritchie, application development is C# Anders Helsberg and Java is James Gosling and sub set in VB Alan Cooper.

    @ Phil Factor,

    I know and use algorithms but in C# there is only one person that is Bruno R. Preiss and most of the algorithms in the US are online put there by the US government. You work for a tools vendor you are at a lower level of software than application development which is most of my work.

    http://www.brpreiss.com/books/opus6/

    @ Gary

    I have edited my post and yes Bertrand Meyers is relevant to current Microsoft platform development because he is one of the few still integrating with .NET.

    When the list below is missing then someone is not looking at the commerce of software development.

    http://en.wikipedia.org/wiki/Dennis_Ritchie

    http://en.wikipedia.org/wiki/Bjarne_Stroustrup

    http://en.wikipedia.org/wiki/James_Gosling

    http://en.wikipedia.org/wiki/Anders_Hejlsberg

    😎

    Kind regards,
    Gift Peddie

  • Phil Factor (11/9/2009)


    Ah. I think I can see an ambiguity here. Asking the question "Can you name someone in this particular book 'coders at work', and what they're famous for?" would be ridiculously unfair, but asking "Who was Donald Knuth, and what was he famous for?" would, I think, be valid. After all, you enjoy music without generally knowing who it was by but people would be puzzled if you didn't know who Jimi Hendrix was. (Yes, Knuth is that famous amongst professional programmers)

    In an interview, you have to reach as fair as possible assessment of a programmers technical competence in a restricted number of questions, giving a considered weight to all their responses: (no one can seriously support that 'no-hire' statement). This isn't ever going to be a fair test, but I'd say it was fairer than the average technical interview question that just tests one's ability to be a BOL-on-legs, with, for example, detailed questions about the parameters to certain DBCC commands. If we can broaden the pool of questions to assess, as well, the candidate's overall skills, aptitude, enthusiasm and training, then we'll all be winners.

    Now that I can agree with.

    - Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
    Property of The Thread

    "Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon

Viewing 15 posts - 16 through 30 (of 64 total)

You must be logged in to reply to this topic. Login to reply