Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Why I won't be contributing to the 'CPAN rating system'; and why you don't want me to.

by BrowserUk (Patriarch)
on Aug 08, 2016 at 07:38 UTC ( [id://1169327]=perlmeditation: print w/replies, xml ) Need Help??

Here, because there is simply no point in burying this much effort and venom over there.

if you applied your expertise while sticking to the technical issue at hand your input would be very valuable IMHO.

Let's see, after 12 exchanges where I've politely tried to lay out all that is wrong with the "cpan rating" system: you want me to apply myself to what you think is a valuable cause. Correct?

Don't be offended by the above, save that for later. This is just a reiteration of the reasons I will not be contributing to that system:

  1. It is obscure to the point of being almost invisible.

    I've been using cpan weekly, even daily -- it has been a pinned tab in my browser for nearly 13 years -- but whilst I'm sure I've noticed the stars, I've never taken any notice of them. See the next two sections for why.

  2. It is remote.
    • The ratings don't show up when looking at the module itself only in the search results list.

      When I'm viewing the documentation, I cannot compare how the reviews of a module have changed with its versions.

      If I review version 0.01 and give it a "bad review"; then the author takes that on board and corrects each and every concern I raise for version 0.02; what do I do? What does he do?

      Can I change my review? Can he change it? Does my review persist or die when he uploads a new version?

      If it persists; that unfair to good authors; if it dies, it is a license for bad authors to reversion often.

    • They have zero affect on what is shown to me.

      I still need to wade through every screen of results to discover if the "best" one is on the last screen.

    • I cannot utilise them to reorder, group or compare the results I get.

      I have to read the reviews and then try and make a value judgement about the veracity of other peoples value judgements...

  3. It is numerically & statistically useless.

    What does 4 1/2 stars mean?

    With a restaurant, 1 star means "they serve food that is probably edible"; "if you find yourself outside, starving and in a hurry; it probably won't poison you; but if you have time, cross the road"; "You'll probably not eat here twice".

    But what does it mean for a module? It exists? It installs? It loads? It runs? It produces the right results? It has a crap interface and useless documentation but if you can get past that it produces correct results very efficiently?

    If you cannot give a zero value, let alone a negative, 1 star (should; could logically only) mean: "I tried this module and the experience so incensed me that I actively came back to give it a negative review; but the worst I could do was give it 1 star".

    And 5 stars means either: "This module really saved my bacon" or "I'm the author upselling my own baby".

    And 3 stars should mean: Nothing! A module that "just works" doesn't engender enough emotion to be bothered to go back and post a review; but probably means: "I had enough problems with this module that I felt the need to say/do something; but I don't want to offend the author who has taken the time and effort to freely share his (crap) code".

  4. It is intellectually & morally questionable.

    That whole "hidden reviews" thing is suspect.

    If they are "mostly spam" why keep them around; simply delete them.

    However; if there is some other category(ies) of review that can be hidden (as implied by the word "mostly") what are those categories? Who decided them? Who decides which reviews fit into them? What checks & balances are in place to prevent authors; or their mates; or the "in crowd" or ... from abusing that mechanism to suppress reviews they disagree with; or by people they don't like?

  5. It is simultaneously both too complicated and too simplistic.

    Let's say I reviewed Moose and expressed my opinion that it is: too big; too slow: does the wrong thing; encourages the wrong thing; is impossible to debug; and creates a nightmare dependency chain that will be the perpetual predominant cost drain for any major project that uses it, once that project moves into maintenance; and gave it a 1 star rating.

    What effect would that have? Zilch!

    Without evidence; its just opinion. And let's just say I was incensed enough to work up data and provide evidence for all of those things; and I posted a 10 page treatise to explain all that; who would read it? No one!

    And the effect of my 1 star? If 19 produces an average of 4.5; then my 1 star would result in a value of 4.325. Would the star system reflect that? And if it did, would anyone notice? The answer to both is a resounding: NO!

    So what would be my incentive for expending the time and energy in producing such a review?

Basically, not only are you asking me to not just express my opinion, but rather work up a technical discussion to support my position -- which is often as not based upon instinct rather than rigorous discovery(*); but to do so in support of a system that you feel has merit and which I feel has less than none.

*example: if I look inside a module source and find the code "badly formatted"; I'm as likely as not to stop looking further.

if you applied your expertise while sticking to the technical issue at hand your input would be very valuable IMHO.

Okay. Here is where you -- along with many others -- are likely to be offended.

I am not a member of a "Perl community"; I'm a Perl user. The only thing I have in common with other Perl users, is my use of Perl. THAT IS NOT THE BASIS FOR A COMMUNITY!

I don't attend Perl conferences; I'm not a member of any Perl Monger's group; I don't "hang out" is #perl; I'm not a "member" of p5p; I don't have an account on Perl.org; nor do I blog about Perl. (Nor anything else!)

I consider "online communities" to be an oxymoron; the ultimate in naïve anthropomorphisation of technology.

community/kəˈmjuːnɪti/noun

a group of people living in the same place or having a particular characteristic in common.
the condition of sharing or having certain attitudes and interests in common.
a group of interdependent plants or animals growing or living together in natural conditions or occupying a specified habitat.

What I see of the Perl users is that they do not fit any of those criteria.

The second is the nearest to something that one might apply to them if you squint hard enough; but it doesn't hold up to scrutiny.

My affiliation with this site is purely selfish. I prefer to fill my down-time with stuff I find intellectually stimulating. For some its TV or music; for some video games; for some it crosswords or sudoku; for me, its programming. Historically, I came here to learn Perl for a particular purpose. That purpose evaporated, but despite that, Perl rapidly became my go to language for getting stuff done.

I stayed because I found the ready supply of interesting problems stimulated me to becoming very intimately involved in understanding just what it is about Perl that makes it so productive. In a nutshell, I put that down to a combination of: intuitively minimalist design and pragmatic implementation.

But as a whole, I find that the users of Perl are riven with internal conflicts. Less a group of like minded people brought together by their shared backgrounds, goals and aspirations; more a scrum of disparate people all pulling, tugging and warring, trying to bend Perl to what they think it ought to be. If you doubt this, read Re: What's the perl5's future?.

So, besides that I won't lend my efforts to what I consider to be a wholly inadequate, broken and questionable system -- because I can see my reviews being routinely hidden thus wasted effort -- you can probably see that you (authors; the Perl community) almost certainly do not want me to do so.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
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". I knew I was on the right track :)
In the absence of evidence, opinion is indistinguishable from prejudice.
  • Comment on Why I won't be contributing to the 'CPAN rating system'; and why you don't want me to.

Replies are listed 'Best First'.
Re: A reply.
by marto (Cardinal) on Aug 08, 2016 at 09:08 UTC

    Thanks for taking the time to reply. Let me try to address some of the above, a warning, I'm not as articulate as others.

    We started off here, I pointed out that there was a system like the one you described:

    "A simple: "Please rate your experience of this module: bad [1 2 3 4 5] good" would suffice."

    However you seem to have changed stance on this above:

    "It is numerically & statistically useless. What does 4 1/2 stars mean?"

    Basically, not only are you asking me to not just express my opinion, but rather work up a technical discussion to support my position -- which is often as not based upon instinct rather than rigorous discovery(*); but to do so in support of a system that you feel has merit and which I feel has less than none.

    I simply said I'd welcome your technical review of modules. It seems your stance on the existence of a rating system has change somewhat from your initial statement. I'm not here to try to convince you of anything. I think more technical critique would be advantageous to the system. I feel your opinion would be worthwhile, I've read many of your posts providing help, advice and posting questions to help others in the right direction with their problem/project. I still feel that this would be the case, especially if contributions were "venom" free.

    Some of your questions I can't answer, I'm not currently and haven't been part of the team providing the service. The system as it stands is far from perfect, but for those with the time and the interest it's something which can be improved. http://cpanratings.perl.org/about.html

    I find that more often that not module authors/developers welcome patches/pull requests to fix bugs or otherwise improve software. There are some (in)famous counter examples where people don't work well with others, resulting in forks or Perl etc. Perhaps linguistically 'community' wasn't the ideal term to use. Merlyn once talked about such things as tribal entities rather than communal. I think he had a point. FWIW, I'm not offended by your post.

      It seems your stance on the existence of a rating system has change somewhat from your initial statement.

      No. I would support a rating system that had some merit; the existing one which I was unaware of at the time, does not.

      If your point is that my suggestion of 1..5 is effectively the same as 5 stars, you are correct. My throw away suggestion for a possible rating system that I "knew would never be implemented", was ill thought through and inadequate; as testified by my analysis of the existing system.

      Does that mean I don't think a rating system is a good idea. No.

      It means that neither the existing system nor my off-the-cuff suggestion are worthy.

      I'm not here to try to convince you of anything.

      You've expended a lot of posts not trying to convince me of anything.

      I find that more often that not module authors/developers welcome patches/pull requests to fix bugs or otherwise improve software.

      That is a completely different subject.

      A rating system is -- should be -- to allow users to inform other users of their experiences; and perhaps allow those other users to avoid repeating their mistake of -- for example -- building their design around a module that will ultimately come back to bite them in their arse.

      Most of the modules I reject for my own use, that rejection takes a matter of minutes and happens before I even download it. It is a quick, gut driven appraisal to cut down the list; and is entirely inadequate for any kind of review or rating. I'm certainly not going to download and provide patches to correct all the modules I reject from consideration.

      The few modules on CPAN that I have -- what I consider -- sound and researched grounds for not just rejecting for my own use; but of sufficient strength and conviction to consider recommending against to others; are frequently modules that many others seem to find to be the best thing since sliced bread.

      My patches for Moose, Perlcritic, Readonly, PDL, Bignum, Lingua::Perlegata, Quantum::Superpositions, Acme::*; Modern::Perl, Common::Sense and probably 90% of CPAN on a gut-feel basis of those I've looked at, would be an empty archive.


      With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
      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". I knew I was on the right track :)
      In the absence of evidence, opinion is indistinguishable from prejudice.

        "You've expended a lot of posts not trying to convince me of anything."

        Well at least they're not costing me anything ;) My initial reply on this subject was to make you aware that what you suggested exists, to point out that it is referenced from search.cpan.org, and otherwise answer some other point or question you raised, or further the conversation. You make it sound as though I should not have done so unless I'm trying to convince you of something.

        "That is a completely different subject."

        Except when the subject under discussion is something you agree there is a need for but find deeply flawed. hippo linked to the thread where the maintainers welcome help to improve the system in question.

Re: Why I won't be contributing to the 'CPAN rating system'; and why you don't want me to.
by $h4X4_|=73}{ (Monk) on Aug 08, 2016 at 10:17 UTC

    Reviews are a hard thing to get people to do unless you pay a service to contact the people that used the product or service and have them ask the questions and log the users review.

    I had a company that did just that and as soon as they stopped using the review service they stopped getting reviews of their company. Even with their own review program on the web site populated with all the reviews and does not require a login to place a review. They may get 1 or less reviews a month. But with the service every customer placed a review.

      Reviews are a hard thing to get people to do

      Agreed. That's why my initial suggestion was for a numeric-only rating mechanism -- since shown to be useless -- because if people are motivated to take any action at all, it should be a simply and painless as possible.

      Of course, the simpler it is, the more easily it is abused -- by bots for example -- and there always appears to be someone with the time on their hands to abuse anything :(


      With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
      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". I knew I was on the right track :)
      In the absence of evidence, opinion is indistinguishable from prejudice.
Re: Why I won't be contributing to the 'CPAN rating system'; and why you don't want me to.
by beech (Parson) on Aug 08, 2016 at 08:13 UTC
Re: Why I won't be contributing to the 'CPAN rating system'; and why you don't want me to.
by mr_mischief (Monsignor) on Aug 10, 2016 at 15:15 UTC

    I only disagree on one point. I do find that many in the "Perl community" have particular characteristics, attitudes, and interests in common. I also see that Perl Mongers, YAPC, the Perl meetups, and the online sites reinforce one another to keep a sense of real-life community alive.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others imbibing at the Monastery: (2)
As of 2024-04-24 16:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found