Having statistics for module installations would be very nice. However, I must agree with most people here that giving users 10 seconds to opt out is not enough. Lots of people go and have a cup of coffee while the installation runs. Like swngnmonk, I immediately thought about Pine. That program lets you opt in and send a message the first time you use it. But you have to say "yes" explicitly.

I think it wouldn't be so bad if your installer asked "Do you want to send statistics? (n)" and wait indefinitely. Some people wouldn't like it because the installation wouldn't be completely automated anymore, but many modules already do that kind of thing (usually for asking if you want to enable certain features) and we survive. LWP asks you if you want to run some tests which require using the network and whether you want to install certain scripts; the Template Toolkit asks you if you want to install certain libraries and examples; etc.

I propose a compromise solution:

Let's all agree on a special environment value, which I'll call PERL_INSTALL_PHONE_HOME in this discussion. Participating modules will agree on the following:

  1. If the variable has the value '1', feel free to phone home the agreed information without asking.
  2. If the value is '0', don't phone home and don't ask.
  3. If the variable is undefined (or has any other value?), ask the user during the installation procedure whether he wants to phone home or not, and explain how setting this variable will avoid such questions in the future.

CPAN.pm has configuration settings for passing options (such as PREFIX) during compilation and installation, so the user could either set the preference there or define an actual environment variable.

Of course, this requires cooperation from several parties, but I'm afraid any mutually acceptable solution will. The Perl community is used to developing conventions, idioms, and agreements (such as the standard install and import procedures) so it might be possible.

This is in spirit like the Robots Exclusion Standard. It works if people follow it. Of course "nasty" modules might not follow it, but any module can do nasty things if it wants. I'm sure the community can police itself to ensure that CPAN modules don't abuse it


In reply to Re: Gathering module usage statistics - a compromise solution? by itub
in thread Gathering module usage statistics by Juerd

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.