abhinavvaid has asked for the wisdom of the Perl Monks concerning the following question:

Its been a couple of years since I have been using perl for various tasks primarily for Test Automation. During interviews i generally ask questions related to Perl and most of the times I have been dis-appointed(though the candidates appearing for interview claim to possess knowledge). Even I do not find myself good in Perl. Is there any certification available for "Perl"/any other site etc where I can evaluate myself also on the said skill sets.

Replies are listed 'Best First'.
Re: Evaluating Perl skills set
by Zaxo (Archbishop) on Jun 01, 2005 at 06:00 UTC

    You could go through a day's SoPW here. Ask yourself which answers you could have provided and which questions you know enough to have posed.

    Ten percent is probably a good score.

    After Compline,
    Zaxo

Re: Evaluating Perl skills set
by TedPride (Priest) on Jun 01, 2005 at 06:14 UTC
    Certification is largely pointless, imho. The only thing it proves is that you were willing to spend some time and money to get certified, which means you're serious about getting a job and not just a casual programmer. It says very little about actual knowledge - tests can be studied for and passed in a week and the material totally forgotten in another month or two.

    The important question is not so much whether the candidate knows the exact right techniques for the job already (rare and expensive), but rather how good he is at learning new things. Assign all the candidates something typical but complicated to program and pick your employee based on who comes up with the most creative / elegant solution, regardless of how that solution was arrived at.

    Note however - anyone who codes a solution without use strict / use warnings / modules should be automatically rejected, unless his code is simply too brilliant to pass up (he writes your entire search engine in five lines of code).

      I agree with you completely, and yet I'm still for acredidation (however, I'm not for strictly test based, I'd like to see some form of apprenticing)

      Besides the ability to learn, I find that personality plays a large role -- how well they work with others, how much they believe in the goals and objectives of the organization, etc.

      There may be people who are very good programmers and have the ability to learn a lot, but are rude to everyone they deal with, and care nothing past the appearance of actually doing work, and not the work itself. Others are trying to make themselves look good, rather than making the organization look good.

      Finding someone who enjoys, and is passionate about what they do is also useful. (provided that passion doesn't reach the point where they push their values more than the values of the organization).

      I love the last Note that you have written. And the overall response has also been awsome. Thanks a lot guys. Abhinav Vaid
Re: Evaluating Perl skills set
by tlm (Prior) on Jun 01, 2005 at 05:51 UTC

    This was discussed recently. (Ignore my blather in one of the follow-ups about BrainBench, though.)

    the lowliest monk

Re: Evaluating Perl skills set
by demerphq (Chancellor) on Jun 01, 2005 at 06:06 UTC

    Hang out here for a while on a regular basis, you'll soon come to an understanding of where you fit relative to the folks here.

    Also do consider that Perl is a broad language, few have knowledge of all of it. Even on p5p you see folks making mistakes or defering to each others specialist knowledge.

    ---
    $world=~s/war/peace/g

Re: Evaluating Perl skills set
by monarch (Priest) on Jun 01, 2005 at 06:13 UTC
    I see that there is a need for a website that asks questions, much like a CCNA asks online questions.

    Perhaps a database of multiple choice questions would be scored. And then perhaps an eval section where you type your Perl answer and get a mark if the correct answer comes out.

    This would, hopefully, be a free website or even a set of CGI scripts which a company could download and untar, and sit prospective candidates down to.

    Scoring would be across a number of topics such as
    - regexps
    - operators
    - functions/subs
    - variables
    - files
    - os oddities
    etc.

    An interviewer would then be able to determine for themselves if the knowledge areas of the candidate were appropriate.

    Nothing like a test to flush out the good from the good talkers.

Re: Evaluating Perl skills set
by magog (Beadle) on Jun 01, 2005 at 14:50 UTC
    While it's not hard to distinguish between candidates who say they know Perl and candidates who actually do know Perl, it can be time consuming.

    What might be useful is an online application that is halfway between an exam and a survey.

    It would ask questions like: "how would you generate and process a web form?", and then have answers like:

    • use CGI.pm's HTML functions to read the query and display stateful forms
    • use CGI::Application with the ValidateRM plugin
    • use cgi-lib.pl to parse the browser's form data then print out a response
    • use the NMS Formmail script
    • use Template::Toolkit to make a callback-based architecture
    • make a custom mod_perl handler
    • use my own homegrown MVC system, 'cos all the others suck!

    There aren't a lot of "wrong" and "right" answers there, but you could definitely learn a lot about a person from his or her answer(s).

    Michael

      you could definitely learn a lot about a person from his or her answer(s)

      The corollary being that the answerer can learn a lot about the questioner by noticing which options were or were not included. In this case, I'm shocked and appalled to see you didn't even mention HTML::Template. ;-)

        But I was thinking about it when I mentioned CGI::Application. What, you can't read my mind? :)

        Michael

      Of course we want to make sure we're not conflating unrelated things here. I've used Perl heavily for the past 7 or so years, and shocking as it seems, I've never once wrote a CGI or other web-related program.

        Yeah, sorry - I didn't mean to sidetrack this into a discussion of web frameworks.

        The idea is that you would have many of these kinds of questions, covering many niches (web, testing, refactoring, system administration, bioinformatics, etc., etc., etc.).

        The candidate's answers would act like a profile of his or her development practices and preferences.

        A testing question might look like: What do you do to test your programs to ensure the quality of your releases?

        • I do XP all the way: unit testing, pair programming, constant refactoring, user stories
        • I write programs; I make sure they work. No problem!
        • Test first; ask questions later.
        • I write embedded tests with Test::Inline, Pod::Tests, etc.
        • We document the test cases and make a pre-launch checklist that we go through by hand before each release so that we catch regressions
        • I stay up all night if I have to to make sure everything works. It's important to get it right the first time.
        • I write automated tests with Test::More and friends
        • I do a careful code review of everything I write.
        • Other ______________ (please explain)

        At the very least, you get something to talk about during the interview. "Ah I see you practice "Test First programming". How's that working out for you?"

        Michael

Re: Evaluating Perl skills set
by displeaser (Hermit) on Jun 01, 2005 at 09:42 UTC
    HI

    I would agree with Monarch on this. I think it would be a good idea to have a site where you can get questions to test & help improve your camel coding. The Q&A sections and SOPW are good but do not suit the way some people think. ysth provided this link to some "tests" which are quite interesting. http://perl.plover.com/qotw/r/.This was in answer to this node Homework Question List

    Displeaser