I'm pretty much a certification skeptic, but I acknowledge that they do have their place. With that in mind, I thought I relate what I consider to be the best form of certification/appraisal question I've encountered.

The basic form is a short snippet of code (in whatever language) that has an error that makes it non-functional. The candidates task is to "make it work". The beauty of it is that with 10 or 12 lines of code containing a single error for correction, you can test a surpising amount of knowledge.

  1. They have to be able to read the code presented.
  2. They have to be able to recognise the error.
  3. They then have to decide how to correct it.

That last one is a interesting because depending upon the instructions you give them, and the time alloted, a well constructed test can allow them to make a minimal change that will make it work. But it can also contain one more other limitation, ommisions or generalisations that whilst uncorrected will allow the code to "work", but are such that if the candidate is really clued up, they will 'correct' it as a matter of course.

The classic one in Perl, (that catches me out more often than I like to admit, though regulars will know it already:), is the ... $x || 3 where zero (or '') is a valid possibility for $x.

There are two problems with this approach.

  1. Constructing a set of short, but well though out snippets that exercise a wide range of knowledge is difficult.

    That is not just a problem to come up with a first set of questions, but also means that it is quite hard to come up with alternatives. Which means that over time, your assessment suite can become stale--eg. unscrupulous external recruiters can piece together details of the tests and pre-warn candidates.

  2. The scoring of answers is not something that can be easily automated.

    In truth, I consider that a bonus rather than a problem. Both from the POV of the employer who must seriously assess the answers given, and the potential employee who has a chance of demonstrating a wider knowledge, alternative thinking or willingness to look deeper and give more.

Just some thoughts on a subject that I don't normally respond to.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
"Too many [] have been sedated by an oppressive environment of political correctness and risk aversion."

In reply to Re: Perl Certification ( oh yeah, it's that time again... almost ) by BrowserUk
in thread Perl Certification ( oh yeah, it's that time again... almost ) by cosmicperl

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.