Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses
 
PerlMonks  

Don't just provide a module name

by gryphon (Abbot)
on May 01, 2001 at 10:35 UTC ( [id://76891]=monkdiscuss: print w/replies, xml ) Need Help??

Greetings all. Like virtually all of you, I'm assuming, I admire and respect this site as strongly as I recommend and advocate its use among all those who practice or want to learn Perl. In other words, I love this site. I also appreciate the dialog that goes on here. However, there's an interesting trend that I've noticed that, at first, strikes me as being somewhat bad. Perhaps I'm wrong, but here goes.

I've notice that, on occation, some monks will reply to questions posted in "Seekers of Perl Wisdom" with messages quoting only a module name for a solution. Immediately thereafter, they (maybe) down-vote that node because the user didn't know about or search for the module. For example, someone might ask, "How do I load variables sent from an HTML form submitted to a Perl CGI?" The reply might be as simple as, "Try use CGI;!" Now yes, I agree, CGI.pm should almost be required if you're going to write a Perl CGI. But does this reply really help the poster of the question?

My observation, perhaps wrong, is that if a student of the mysteries of Perl were to post such a basic question, s/he would not find the "module name only reply" at all useful. If the objective of this site is to force Perl newbies to RTFM and fumble around with newbie code and no support in an attempt to gain familiarity with modules and the language in general through trial and error, fine. But I submit that one of the great abilities of this site is to mentor the Perl newbie (or not so newbie) in his/her quest to learn. What possible harm would come from actually writing a short couple of lines of code after you reference a module showing a basic way to use that module in the way the question poster needs?

Now about the down-voting of nodes that are replied to by "module name only" replies: Granted, in the example I used above, the user really should have used the search feature. They'd get a wealth of information on the subject and certainly some good cut-n-paste code too. But still, if the user is a real newbie, is down-voting his/her node really going to foster interest in that user to repost another question? Generally, I don't down-vote the initial node on a discussion thread in "Seekers" because I don't want that user to feel like they don't want to ask a question for fear of loosing points. Perhaps I'm wrong, but I think down-voting should be limited to replies. Some replies definately deserve down-voting. Don't get me wrong. I totally support the idea of completely hidden voting as well as unrestricted voting (as the system is setup now). But perhaps consideration should be made to the Perl knowledge/skill level of the question poster. Keeping in mind always that at one time we were all at that level.

-gryphon

Replies are listed 'Best First'.
(crazyinsomniac) Re: Don't just provide a module name
by crazyinsomniac (Prior) on May 01, 2001 at 11:12 UTC
    < < < RANT > > >

    ...blah, blah, blah, yack, yack, yack, blah, blah, blah....

    You know, you bring up a lot of *true* points on habits of monks as voters, which we all embody at one point in our life at the monastery, but, one thing people always keep forgetting, especially the newbies, is that you cannot learn without freaking studying. Now that actually means sitting your azz down and reading a couple tutorials/chapters on a subject, before you actually asking how to do something. RTFM replies are most excellent in these type situations because if the person did the tinyiest bit of research they'd find the manual, and could do some reading, and then post a more interesting question. Really really newbie questions can be answered by reading a simple tutorial, like Ovids. I do not remember the last time I tried learning a programming language by asking hey, how do i do x, without having any kind of foundation.

    I see people all the time asking the dumbest questions, and all because they are lazy. If there is one thing I learned is that it is very hard to learn without reading. Now lazyiness is fine for some, but for newbies it is not an option.

    *sigh* I really hate going off like this, but some people just don't get the point. You cannot make every damn post asking how do i fetch a form value into a damn CGI.pm tutorial. The newbie, being a newbie, has to make a concious effort.

    A newbie who has a basic knowledge of perl, enough knowledge to be able to read the pod, should read the pod. I love pod. Instead of asking in a 'post' how do I x, ask in chatterbox, and then read pod. Yeah, some might not want to become members and therefore have no cb, so they make AM posts, but those do not wish to truly learn. They want quick solutions to their problems, which ain't gonna happen often. You want somebody to do something for you, you pay them. You want somebody to help you with something you put a lot of time and effort into, you come here.

    In conclusion, if you do get a simple use this module answer, you didn't do your research and/or did not ask in the chatterbox as you should've.

     
    ___crazyinsomniac_______________________________________
    Disclaimer: Don't blame. It came from inside the void

    perl -e "$q=$_;map({chr unpack qq;H*;,$_}split(q;;,q*H*));print;$q/$q;"

      Got to agree here. What were those (approx.) quotes from The Matrix?

      There's a difference between knowing the path and walking the path.
      I can only show you the door. You must walk through it.

      I don't think it is too much to show effort before posing a question. An excellent method is to post a code sample, even a bad one, and show the output. Otherwise, the responder may not wish to expend more time answering the question than the poster took trying to find the solution.

      Indeed, the methodology used to find the solution to one problem tends to evolve over time and experience, becoming multifacited and applicable outside of perl. It just helps finding answers down the road (not to mention helps asking the right question).

      crazyinsomniac's point, IMHO YMMV, is that let us not address the symptom (the cgi sample question in the discussion root node, for example). Let's address the source cause (learn the language and how it works via books, trial and error, classes, etc. before throwing one's hands up.).

      HTH
      --
      idnopheq
      Apply yourself to new problems without preparation, develop confidence in your ability to to meet situations as they arrise.

      And this all comes down to the fact that we need a sort of 'waiting period' to remove those seeking the fast answer from those seeking enlightenment. New users should not be able to post for a day or so, AM root-level posts should not appear on site for a day or so, both facts made painfully away to said user prior to posting their question (I'd really hate to say it, but <font size=7><b><blink> might be necessary for this.) If they realize they won't get a fast answer, they either won't post, or will seek it out themselves.

      The other thing we could do, and this would take a lot more work but it might help to reduce this 'noise' would be to have an intelligent agent that can pull out keywords from a question and then provide a possible list of links to not only the perl docs and modules, but to the Q&A and Tutorials here and any other reference (much how Office does it since 97). If they can see their question has been answered already, then they might avoid submitting it.


      Dr. Michael K. Neylon - mneylon-pm@masemware.com || "You've left the lens cap of your mind on again, Pinky" - The Brain
        And this all comes down to the fact that we need a sort of 'waiting period' to remove those seeking the fast answer from those seeking enlightenment. New users should not be able to post for a day or so, AM root-level posts should not appear on site for a day or so [...]

        At this point, AM root-level posts take a fair length of time to appear in any case, if this thread is to be believed. I disagree strongly with the notion of muzzling new users, both because it seems gratuitously obnoxious and because it is an insufficiently targeted response.

        My reaction to this is colored somewhat by the fact that I finally got around to setting up this account (after lurking for a while) specifically so I could post to a specific node, which I'm guessing is not a unique situation. In my case it was a reply, so your idea (at least as originally expressed) wouldn't have made much difference, but I'm not willing to make the blanket assertion that anybody who's in a hurry to post something should be flatly refusesed, and sent back to the cloister to contemplate the nature of the Buddha for a day or two.

        On the other hand, you seem to be strongly of that opinion--would you mind explaining a bit more why?



        If God had meant us to fly, he would *never* have give us the railroads.
            --Michael Flanders

      What about a "holier than thou" option - ie a setting in the user profile screen to never see nodes posted by users with an experience level below a certain minimum.

      That way monks who want to devote themselves to educating the unwashed masses can do so, and those that don't can automatically ignore them.

      -- Michael Snell
      -- michael@snell.com

        Then that "Holier than thou" option would allow monks to shirk their duties as a knowledgeable programer. Taking on a pass the buck attitude is not what PM is about. If you don't want to answer, then don't. That's why the option is there. If monks constantly take the stance of "Passing the buck", who will educate the new? If this is implemented, PM will certainly become something like Slashdot. Filled with experience whores instead of karma whores. A small clique of in crowd and a major group of out crowd. I would downvote an individual for giving a wrong answer (like I have been downvoted for, and was deserving of it). However if I see that an individual has admitted that he was wrong by the time I read his/her post I would either abstain from voting or ++ him for freely admitting his/her error.

        BMaximus

        They say that knowlege is power. It is. But giving it is twice as much power.
Re: Don't just provide a module name
by japhy (Canon) on May 01, 2001 at 15:53 UTC
    What is the line to be drawn? I've gotten newsgroup responses to me posting the URL of a FAQ or a module's documentation like "couldn't you just paste it here?" No, I couldn't. It's a waste of time and bandwidth. You'll learn something if you learn how to access CPAN, and the Perl docs, and everything else the Perl community has to offer. Personally, I'll show a small example, or say something brief, like "use CGI.pm, it's the standard Perl query parsing module" or "the FAQ shows how to remove duplicates from an array", etc.

    japhy -- Perl and Regex Hacker
      Although a nice compromise here on PerlMonks is to include some kind of link:

      "Use the CGI module when writing CGI scripts"

      That way, you're not tying up bandwidth, but you're providing a more helpful pointer. It's not always so trivial in a chatroom or a newsgroup, but you could at least indicate that they can search for CGI at http://search.cpan.org.

      buckaduck

Re: Don't just provide a module name
by chromatic (Archbishop) on May 01, 2001 at 22:47 UTC
    CGI is a bad example.

    Why?

    It's a standard module. It's been included with Perl for years. It has voluminous documentation.

    I'm all for providing links to modules, especially built in ones. I'm all for saying "This is a frequently asked question, see perldoc perlfaqn." In short, I'm all about telling people who've asked questions that ten seconds with the documentation could have started to answer that the documentation is available at their fingertips.

    Maybe SoPW should pop-up a JavaScript window anytime an anonymous monk or a monk below level one asks a question, with a disclaimer saying, "You have thousands of pages of documentation installed on your machine. Chances are, the first 95 out of the first 100 questions you have about Perl can be answered by typing 'perldoc perlfaq' and skimming for a while. Do you still want to post?" I don't think that's a good solution, and I don't think it will work completely.

    On the other hand, maybe it's time to check out the 'Before You Post' section again.

    I can't see the benefit of reproducing documentation for any standard behavior of a well-known module. If you're trying to do something tricky with Storable, like providing your own serialization mechanism to handle eval'd code, that's one thing.

    If you're the hundredth person to ask, "How can I get data from a web form with PERL!", that's another. There's an example on the first page of the CGI.pm documentation.

    If asking a question that is available by spending a minute with the documentation doesn't result in the questioner going back to the documentation to answer the next question, then the answers have failed.

    I don't care about voting, but I sure don't want to read a dozen questions like 'How do a round up a number in PERL!', 'newbty help hash q plz!!!', 'debug my code', and 'PERL ??' in Newest Nodes.

    There are enough people who've spent enough time writing good documentation that I don't feel the need to reinvent it when a simple pointer would do. If the documentation is incomplete or unclear, that's different.

    If you want to rewrite the CGI.pm examples and post them every time someone asks a CGI question, feel free.

    I'm sure not interested in that.

(tye)Re: Don't just provide a module name
by tye (Sage) on May 01, 2001 at 20:23 UTC

    I agree with both sides of this argument. If all you have to say is "use Grommit::Wallace", then perhaps it'd be nice if you gave someone else a chance to answer.

    On the other hand, I don't want to start seeing the POD for CGI pasted into a node every time someone asks a CGI question. And I don't see much point in trying to write a mini CGI tutorial in response to every CGI question.

    So what do I want? Well, if you point me to a FAQ or a module (please include a link), I would really like it if you actually tried to find an answer to my question by looking at what you pointed me at. 80% of the time that I'm tempted to post a link, I find that the answer isn't easy to find at that link, or that the answer at that link isn't really a very good one, or that the specific question isn't really answered there even though I had thought that it was. So post a link to the FAQ and a bit of description about how to find the part of the FAQ that pertains to the question and perhaps why you think it is relavent.

    It is also often nice to post just excerpts of the documentation that you have given a link to. This is particularly helpful to the people just reading the discussion. I'm rarely so interested in someone else's question that I go read a whole section of documentation. But I very often find it informative to have the answer summarized right there in the node.

            - tye (but my friends call me "Tye")
Re: Don't just provide a module name
by Maclir (Curate) on May 01, 2001 at 11:57 UTC
    I couldn't agree more. (hence the ++). Remember, it may not just be newbies - but for those of us for whom Perl programming is not 100% of our job, we cannot know all about every module.

    Sometimes, an explanation like "The module Foo::Bar is what you need - is has some methods that are ideal for dealing with n-dimensional matricies.". It also soften's your response a little - and may reduce the possibility of "personality down-votes"

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: monkdiscuss [id://76891]
Approved by root
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others taking refuge in the Monastery: (2)
As of 2024-04-19 20:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found