Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Perl Certification ( oh yeah, it's that time again... almost )

by cosmicperl (Chaplain)
on Jul 03, 2008 at 01:41 UTC ( #695267=perlquestion: print w/ replies, xml ) Need Help??
cosmicperl has asked for the wisdom of the Perl Monks concerning the following question:

Alllllll Righhhty then. ( I apologize for the AVT quote )
  Perl Certification, love it or hate it. Many a debate here has got nowhere. Gonna put some more fire into that old hole :)
  Before I get into the diggs of it I have a few questions:-
A) Has anything really changed since my last post in 07:-
Perl Certification Revisited?
B) Are the people who are set against it still worried that they may be loosing something personally ( rather than thinking of Perl's or TPF's benefit as a whole )?
C) Is the original list attempt dead:-
perl-cert Think I already know this one...
D) Does everyone agree multiple choice tests are total *!*%*$! to showing how capable a programmer is? ## I'm guessing yes

Good ;)

Lyle

Comment on Perl Certification ( oh yeah, it's that time again... almost )
Re: Perl Certification ( oh yeah, it's that time again... almost )
by parv (Priest) on Jul 03, 2008 at 01:52 UTC
Re: Perl Certification ( oh yeah, it's that time again... almost )
by Your Mother (Canon) on Jul 03, 2008 at 02:10 UTC
    Are the people who are set against it still worried that they may be loosing something personally...

    Loosing, loosing...? You mean like personally loosing their bowels?

    (Sorry, making fun of spelling seems much more fun than stepping into this discussion again.)

Re: Perl Certification ( oh yeah, it's that time again... almost )
by BrowserUk (Pope) on Jul 03, 2008 at 03:21 UTC

    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.

      I think one of the worst problems with code snippets is when they tell you, your not supposed to use a computer. A large part of being a programmer is not simply looking and comprehending but being able to experiment and see what the code is doing by running it and throwing in your own debugging statements.

        I totally agree with you. Despite having grown up debugging code on paper of necessity, I now absolutly abhor having to "do code" without being able to run it.

        There are problems though. Providing an editor that everyone is comfortable with using is one.

        As an aside, I hate coding whilst being watched. I terminated an interview early once because the guy insisted upon sitting at my side, and reading over my shoulder making sucking sounds, whilst I sat their silly tests. It was indicative enough of the management style of the place for me to know that I didn't want to work there, even if I had sucked it up and passed their tests.


        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.
Re: Perl Certification ( oh yeah, it's that time again... almost )
by ddn123456 (Pilgrim) on Jul 03, 2008 at 09:19 UTC
Re: Perl Certification ( oh yeah, it's that time again... almost )
by DrHyde (Prior) on Jul 03, 2008 at 10:10 UTC

    Where do you get this idea that people who are against the idea are worried that the might lose out?

    It's certainly something that we're accused of by pro-certification people, but that doesn't make it true. I'm certainly not afraid, I just think it's pointless and I'd rather people and organisations like TPF use their limited resources effectively.

Re: Perl Certification ( oh yeah, it's that time again... almost )
by apl (Monsignor) on Jul 03, 2008 at 11:46 UTC

      Nope. It's certainly not for PerlMonks_Discussion where we learn:

      This area is for discussing issues pertaining to the PerlMonks site. You can ask about how things work, or offer ideas on how the site could be improved, for example.
      Unless the topic pertains to the PerlMonks web site, it does not belong in this section. (emphasis in original).
        You are correct, sir. I should have said Meditations...
Re: Perl Certification ( oh yeah, it's that time again... almost )
by talexb (Canon) on Jul 03, 2008 at 15:52 UTC

    My guess is no.

      B) Are the people who are set against it still worried that they may be loosing something personally (rather than thinking of Perl's or TPF's benefit as a whole )?

    Loosing? You probably mean 'losing', but I'm not sure that makes the meaning any clearer to me.

    How does the Perl community benefit from a Perl certification? I don't care about a piece of paper, whether it's a certification, a college diploma or a university degree. Show me what you've done, tell me about it. Express your passion for software development.

      C) Is the original list attempt dead:- perl-cert Think I already know this one...

    No idea. I'm not on that list. Why ask if you already know?

      D) Does everyone agree multiple choice tests are total *!*%*$! to showing how capable a programmer is? ## I'm guessing yes

    Multiple choice tests are no doubt easy to mark, but they don't really reflect whether the student has deep understanding of the material.

    If your plan is to get perl certification and then use that to get a job, I think you're wasting your time and/or money. I think it's more effective to start writing Perl and use that experience to start your own business or impress someone in a position to hire you.

    There are plenty of bad drivers on the road, but almost all of them have driver's licenses. What does that tell you about certification?

    Alex / talexb / Toronto

    "Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds

Re: Perl Certification ( oh yeah, it's that time again... almost )
by bubaflub (Initiate) on Jul 03, 2008 at 16:33 UTC
    Instead of certification, what do ya'll think about a belt-system like martial arts?

    The head honchos of Perl would decide on a skill-level breakdown, associating knowledge of perl / perl programming tasks with certain levels in some standardized way. Higher levels would be taken more like candidacy exams and less like paper tests.

    I obviously haven't thought this through, either in the implementation or the implications, but I think it would be a great way to foster community. As for it's practical uses in securing a job or determining skill level...
      I don't think it matters if you call it a certification test or a candidacy exam - you're still looking at how to test perl knowledge in a standard way. Bottom line, I don't think I understand how what you're suggesting is different than the OP's question?

      -- zigdon

        Zigdon,

        Sorry for not being clearer in my original post; in my mind a certification test is "monolithic" in the sense that there is a single test (or set of questions) given by a central authority. The way that belts are handed out in martial arts is much more decentralized and a combination of subjective and objective criteria.

        What I am imagining is that the big wigs of Perl would come up with some type of ranking system (much akin to PerlMonks XP) and the requisite knowledge / skills required for that rank. Knowledge could be tested through an exam and the skills could be tested (to some extent) through "kata" (which has been suggested at http://www.codekata.com/ a while back).

        During a test for a lower belt (kyu for some Japanese martial arts) the student would demonstrate basic technique through kata, or a set routine. For a higher belt (dan) students would be required to have knowledge of many kata as well as spar and maybe even answer questions about the philosophy of the art.

        I use the analogy of a candidacy exam or martial arts to try and describe the process that I imagine would be required to ascertain if someone had mastery (not just knowledge!) of an art. We are not asking questions about Perl syntax or semantics, but about reasoning, logic, and problem solving in Perl. Also, it seems beneficial to balance the subjective aspect of this with an objective assessment of someone's technical skill.

        The reality is that we - the PerlMonks community - already have a few of these mechanisms in place. Perl golf and JAPH, while primarily diversions, shows deep knowledge of Perl (best way to obscure the code is to use obscure functions) and creative problem solving. The XP system, as well as the ability to track a user's comments throughout time, can catalog the ability with which a member can deftly and respectfully deal with others in solving programming challenges.
Re: Perl Certification ( oh yeah, it's that time again... almost )
by gloryhack (Deacon) on Jul 04, 2008 at 03:13 UTC
    Having ground the thought to dust with the millstone in my head:

    I think that certification is primarily used as a scam to take money away from people who are desperate for jobs. Aside from making a cash cow out of thin air, what would be the purpose of certifying Perl programmers? All a cert can possibly tell the prospective employer is that I know how to cram for and pass a test. Wouldn't that prospective employer be better served by a pre-employment code challenge of his own, similar in scope and intent to those pre-employment screening tests given to electronics technicians?

    So, to answer your direct questions: (A) No. (B) Never was worried, myself, that I'd lose anything except time and money better spent doing anything but obtaining a cert. (C) Dunno. (D) Yes. A decent programmer would have more trouble hitting a cow in the ass with a banjo than blowing away a multiple guess test.

    Howzabout we don't revisit this topic again next year?

Re: Perl Certification ( oh yeah, it's that time again... almost )
by starbolin (Hermit) on Jul 04, 2008 at 04:12 UTC

    Programmer certificates would be bad for Perl. The problem is, without a large commercial organization driving the adoption of new releases of Perl, the widespread acceptance of certifications would freeze the evolution of Perl. If the major force driving the acceptance of new revisions of Perl was whether or not employers were accepting certifications in that revision then the certification organization would control the language definition. History has shown that the controlling organization will always opt in favor of definition expansion, code bloat and mission creep with the new additions favoring duplicate capabilities rather than radical changes.

    Programmer certifications would cause Perl to fork. This would be a bad thing. Standardization of a language leads to bloat which leads to language subsets. We saw this happen with Algol, Fortran, Forth, and Ada. It is more important for the life of the language that we be able to throw out dead constructs as well as add new syntax. Certificates would not allow us to do that.

    For a interesting historical perspective see: The Law of Standards


    s//----->\t/;$~="JAPH";s//\r<$~~/;{s|~$~-|-~$~|||s |-$~~|$~~-|||s,<$~~,<~$~,,s,~$~>,$~~>,, $|=1,select$,,$,,$,,1e-1;print;redo}
      I agree with your points and I think I agree with your conclusion. I do have at least one counterpoint, though.

      One thing that helps keep other languages afloat in the corporate data centers is the number of certified and therefore nominally "qualified" personnel available. One of the reasons many data centers don't seek to use Perl is because they can't verify the number of people proficient with the language. You often see Perl mentioned as a "desirable" skill where another language is a "required" skill for just this sort of reason.

      I like the idea bubaflub put forth in Re: Perl Certification ( oh yeah, it's that time again... almost ), but rather than martial arts perhaps I'd suggest building trades. Carpenters, bricklayers, stonemasons, electricians, and plumbers tend to have apprentices, journeymen, fellows, and master craftsmen. (In some instances journeyman/fellow is a single rank.) It's sort of a decentralized network of vouching for one another which is less formal than a certification and more formal than just displaying a portfolio or listing three references.

      What would it take for you to feel comfortable vouching for someone as a good Perl programmer? Who would you call a Perl Master, ready to take on students or apprentices? Who would vouch for you? I think a common respect among a field and honest evaluation of one another could bring us a long way toward marketability. It's worked for centuries in other trades and professions.

        Though it sounds good there is a major problem with that form of references.

        This might work on the very pinical of the perl world where a few renowned people have over the years proven to anyone and everyone in the perl world tha they are as good as the rest of us hopes to become, but as soon as one names the next tier down most of us will maybe have heard of 50% of them, one more step and chances are you might know only one or two of those people.

        I think that a formal certification will do nothing but slow perl down, quickly changing the way somehting works or removing or renaming a function will become near impossible. If all you want to do is show an employer how good you are at perl then a certificate is absolutely pointless. An example of your work is far better, a test designed to test your skills written by existing developers in a company will be great to proof or disproof your claims of perl mastery at least for that job, it also gives you a posibility to estimate the skill already in the company.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://695267]
Approved by NetWallah
Front-paged by NetWallah
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (10)
As of 2014-08-21 18:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (141 votes), past polls