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

Re: How to choose the right module

by biohisham (Priest)
on Oct 20, 2009 at 13:35 UTC ( [id://802227]=note: print w/replies, xml ) Need Help??


in reply to How to choose the right module

Added to all of that, I think a module that has enough examples in it, that projects different scenarios for these examples and one that has an active mailing list, IRC channels or any other mode interactivity can be better to work with judged by the accessibility to these examples and how they can be employed to fit your need and also for the fact that an interaction is taking place between you and the maintainers.

I am relatively new to modules myself so what I do is I identify my situational requirements, zero-in two or more modules potentially capable of doing the same and I ask the more experienced monks about the pros and cons for each one of these modules then make an informed decision on which one to pick for the job at hand. Crucial to tell you "Make sure you've an overview of the modules you intend to ask about - as stated by replies to your post - and that you understand what you are asking in case you needed a consultation on the best track to follow".

Wishing you a nice Perl Journey..
update: embodied the advice from stvn too, ++stvn :)


Excellence is an Endeavor of Persistence. Chance Favors a Prepared Mind.

Replies are listed 'Best First'.
Re^2: How to choose the right module
by stvn (Monsignor) on Oct 20, 2009 at 21:33 UTC

    Excellent advice, I would like to just add/clarify one point.

    ... and one that has an active mailing list ...

    Not all active modules have mailing lists, many module communities are more active on IRC and less so on the mailing list (Moose is a perfect example of this, the mailing list is pretty low traffic but we have 200+ people in the IRC channel at any given time).

    And of course there are several active authors who don't like mailing lists or IRC and prefer that people just contact them directly.

    -stvn

      I adore you, stvn, and this isn't directed at Moose in particular. Just a good example and timing. I want to go on the record (probably should have saved this for a meditation) with this idea: IRC Considered Harmful.

      IRCs are knowledge holes even when they are archived and searchable which many (most?) are not. The signal to noise ratio is too high to make them fun or effective to search even when you can; bad answers mixed with good; hacks mixed with best practice; sigils and stopwords galore. Too much intrinsic context; not stateful.

      Excellent or important answers and clarifications happen in them all the time without being recorded or refined into a form which would be valuable to more than the two or three users paying attention. IRCs are anti-DRY.

      IRCs also nurture clique behavior which can be discouraging to outsiders and would-be contributors even when genial and when it's not friendly it's easy to get away with being a jerk in a chat; it's familiar to the regulars and ephemeral. It's very difficult to get away with it on a mailing list; you often get dogpiled when you try.

      I know I'd love to hang around with you personally. I am sad for all the things about MOP or Kioku or DBIC or ... which have zipped through the IRCs without landing in the right™ and "permanent" places: the documentation and tutorials (personal, community, or distributed with the code).

      (Sidebar: I will buy you drinks if you're ever in my town. Then we can plumb some real knowledge holes.)

        I'm a Perl novice; I came to it after a career in hardware. It's a difficult transition; I've always written a certain amount of code but it's always been very close to the machine.

        I try hard to do well and follow best practices; I study incessantly; but between my age and my very limited free time, I find it an uphill battle. You may add to this the fact that, for good or ill, I'm extremely literal-minded. I cannot pretend to read between the lines.

        I find IRC both essential and infuriating. I follow the argument about discussions there being impermanent; but I have another viewpoint, as usual. Let IRC be impermanent; anything of value can (and should) be stored in a more permanent form.

        IRC is essential because of the ability to go back and forth in real time. No matter how carefully I might phrase a question, I may leave something out, or simply make a mistake. Asking in real time gives others the ability to point out the shortcoming; and gives me the ability to correct it. With IRC, there's potential for a cycle of try-this, pastebin, and talk about it. The same can be done on a message board but it can be messy. To be quite frank, I'd prefer not to store my most foolish mistakes indefinitely.

        Another point is that if I raise an issue on IRC, there's the chance it might move forward before I move on. If I post to a board, I can't wait a day or a week to get a comment; then reply to it and wait another day or three for more feedback. I could; but meanwhile I'm going to have to settle the issue one way or another, so I can move on to the next issue in my code. By the time a better solution emerges from the message board, my ad hoc solution is buried under dozens of commits; three other issues depend on it. It may just be too late to uproot everything.

        (I do understand ruthless refactoring. But there's a realistic limit.)

        Now to "infuriating". I'm not a politician; I'm not even socially adroit. I'm as polite as I know how and I do understand very clearly that I have much to learn. I read the FAQs. I study online resources endlessly. I've read every general info POD included with Perl -- over and over, line by line. I've read Conway, front to back, at least four times; back to front and middle-out, spending as much as a day on a couple of pages. Before I raise an issue, I make every effort to understand just what I'm asking; and to be sure I ask clearly. I'm not always successful but I don't usually bust in with a question that could be answered in 8 keystrokes. I don't scream for attention or demand solutions when there's no interest. And I try hard, when possible, to help out the fellows (with even less knowledge than I've got) with the basics. And that's my limit -- my absolute limit. I'm completely unable to play political games, to toady, to grovel convincingly.

        IRC seems made up almost entirely of people primarily interested in propping up their egos. I speak not only of those channels devoted to Perl; but the stench seems very strong in these. In some hypothetical channel #perl-jam, although the ostensible topic is how Jam can be used to write Perl scripts to automate fast-food kitchens, the main event seems to be people crawling over each other to prove themselves King of the Jam Hill. One isn't permitted to discuss the merits of Jam, not even in the most neutral terms; one isn't allowed to say anything at all about any point until the channel regulars have accepted that one is a true Jam fanatic and stood for a round of beatings. Ritual abuse is heaped on the mere mention of Jelly and anyone propounding Cream::Cheese is banned. I can see this to a very small point; we don't want Jelly fanatics abusing Jam in #perl-jam -- granted. But when a fellow wants to ask simply about some element of the Jam interface and is subjected to a lengthy loyalty test or forced to grovel at the feet of one of the regulars, it's just childish. This is a social atmosphere worthy of County Jail.

        I suggest that the truly harmful aspect of IRC is that it engenders this culture of rudeness. The cliqueism and routine abuse affects the professional image of the community as a whole. I don't know if this is fixable; perhaps it's an inevitable effect of the medium. Perhaps the effect is felt less strongly by most users; they ignore the drivel. I suspect that so long as random strangers drop in with pure random noise and deliberately incendary remarks, regulars will always be inclined to circle the wagons and exclude anyone new.

        We all have limitations and I'm aware of mine; when I run into rough stuff on IRC, I try to think if there isn't some way in which I might be in the wrong. That kind of soul-searching may build character but it's a hard way to fix a leaky faucet (or loop).

        Is there such a thing as IRC for adults? Presumably one reason most of the conversation on PerlMonks is civil is that people invest over time in their accounts here; they're not quite as willing to throw it all away for the sake of self-amusement. I'd be extremely interested in an IRC channel discussing Perl in which, for whatever reason, there was a civil atmosphere prevalent. And I think it might be Less Harmful to all.

        I have no problem agreeing with all your points, they are spot on. However, this does not diminish the ways in which IRC is far superior to all other mediums. IRC is real time collaboration between $n people in a given channel on a level that cannot be achieved with the slower and more asynchronous nature of mailing lists. It is not a permanent medium, but a temporary one. But yet it is through IRC that collaboration and inspiration can happen and lead to the creation of more permanent things. I have watched the birth of many a module take place before my eyes on IRC as people toss around ideas and discuss possibilities. Sure you can do this on a mailing list, but it lacks the excitement of real-time interaction that IRC provides.

        And while you are correct that IRC can get cliquey, entry into these cliques is very often as simple as hanging around and making an effort to contribute. Sure you have to endure some abuse and ribbing here and there, and it is certainly by no means as civil as a well tempered mailing list, but if you can stick it out, I think that it is worth it.

        As for the loss of information. There was a time when I was answering almost all the questions on #moose, now I hardly answer any because others have taken up the roles. In my opinion, this is the permanent storage of IRC, the brains of the people in the channel. And while this is not (yet) searchable by Google, I would suspect that a properly asked question on IRC will always produce more good answers and useful knowledge for all involved (the asker, the answerer and the $n other people in the channel who will read it).

        As for drinks and discussion, I am all for it. If you are ever in the tri-state area let me know :)

        -stvn

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (5)
As of 2024-03-28 21:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found