Acme-CPANModules-Import-CPANRatings-User-stevenharyanto

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

            "Moo::Lax" : "0",
            "Mozilla::Mechanize" : "0",
            "Net::BitTorrent::File" : "0",
            "Net::Douban" : "0",
            "Number::Zero" : "0",
            "Object::Anon" : "0",
            "Oktest" : "0",
            "Opt::Imistic" : "0",
            "P" : "0",
            "Package::Builder" : "0",
            "Passwd::Unix" : "0",
            "PathTools" : "0",
            "Perl::Squish" : "0",
            "Perl::Strip" : "0",
            "PerlMongers::Hannover" : "0",
            "PerlX::ArraySkip" : "0",
            "PerlX::Maybe" : "0",
            "PerlX::Perform" : "0",
            "Proc::PidUtil" : "0",
            "Process::Status" : "0",
            "Promises" : "0",

META.json  view on Meta::CPAN

            "Text::Table::Tiny" : "0",
            "Text::VisualWidth" : "0",
            "Text::VisualWidth::PP" : "0",
            "Thread::IID" : "0",
            "Tie::Hash::Identity" : "0",
            "Time::Mock" : "0",
            "Time::Out" : "0",
            "UNIVERSAL::moniker" : "0",
            "Umask::Local" : "0",
            "Underscore" : "0",
            "Unix::ConfigFile" : "0",
            "Unix::PasswdFileOps" : "0",
            "Util::Timeout" : "0",
            "WWW::Google::Images" : "0",
            "WWW::Mechanize" : "0",
            "WWW::Parallels::Agent" : "0",
            "WWW::YouTube::Download" : "0",
            "Win32::App::which" : "0",
            "Xporter" : "0",
            "YAML::Syck" : "0",
            "autodie" : "0",
            "experimental" : "0",

META.json  view on Meta::CPAN

            "Moo::Lax" : "0",
            "Mozilla::Mechanize" : "0",
            "Net::BitTorrent::File" : "0",
            "Net::Douban" : "0",
            "Number::Zero" : "0",
            "Object::Anon" : "0",
            "Oktest" : "0",
            "Opt::Imistic" : "0",
            "P" : "0",
            "Package::Builder" : "0",
            "Passwd::Unix" : "0",
            "PathTools" : "0",
            "Perl::Squish" : "0",
            "Perl::Strip" : "0",
            "PerlMongers::Hannover" : "0",
            "PerlX::ArraySkip" : "0",
            "PerlX::Maybe" : "0",
            "PerlX::Perform" : "0",
            "Proc::PidUtil" : "0",
            "Process::Status" : "0",
            "Promises" : "0",

META.json  view on Meta::CPAN

            "Text::Table::Tiny" : "0",
            "Text::VisualWidth" : "0",
            "Text::VisualWidth::PP" : "0",
            "Thread::IID" : "0",
            "Tie::Hash::Identity" : "0",
            "Time::Mock" : "0",
            "Time::Out" : "0",
            "UNIVERSAL::moniker" : "0",
            "Umask::Local" : "0",
            "Underscore" : "0",
            "Unix::ConfigFile" : "0",
            "Unix::PasswdFileOps" : "0",
            "Util::Timeout" : "0",
            "WWW::Google::Images" : "0",
            "WWW::Mechanize" : "0",
            "WWW::Parallels::Agent" : "0",
            "WWW::YouTube::Download" : "0",
            "Win32::App::which" : "0",
            "Xporter" : "0",
            "YAML::Syck" : "0",
            "autodie" : "0",
            "experimental" : "0",

README  view on Meta::CPAN

        Instead of just printing some info, why not make it an Acme::PM or
        Acme::PerlMongers like Acme::CPANAuthors? Various stats can then be
        produced about the various Perl Mongers. <br>

    App::multiwhich
        Note that File::Which can also search for all matches too if you use
        it in a list context, e.g. @paths = which('foo'). File::Which also
        comes with a pwhich CLI utility which also accepts multiple
        arguments and has the -a switch to print all matches. The output
        format is slightly different than 'multiwhich' though. <br><br>In
        fact, the Unix 'which' command (or at least its Debian variant) also
        sports the -a switch.

    Object::Anon
        Author: ROBN <https://metacpan.org/author/ROBN>

        Nice idea. Some notes: 1) to be widely used, it really needs to be
        very efficient; 2) if the goal is simply to objectify a hash,
        perhaps Hash::Objectify or Object::From::Hash or Hash::To::Object
        (or Data::Objectify and so on) is a more descriptive name. <br>

README  view on Meta::CPAN

        Or at least pick the alternatives which are based on Getopt::Long,
        instead of those that reinvent the wheel and do their own option
        parsing. <br><br>Most other modules that reinvent option parsing
        either don't bother to do short option bundling (-abc instead of -a
        -b -c), or abbreviation (--long-o instead --long-option-name), or
        the choice to (dis)allow mix-mashing options and arguments, or
        support '--' to end option processing, or respect ordering, or
        support multiple options (--verbose --verbose), or support
        '--foo=val' *as well as* '--foo val', and so on. These are features
        and conveniences that are taken for granted by people working daily
        in Unix command-line. <br>

    Text::Table::Tiny
        Author: NEILB <https://metacpan.org/author/NEILB>

        Very fast, several times faster than Text::TabularDisplay or
        Text::Table (and many times faster than the other slower
        table-generator modules). It uses sprintf() to format a whole row
        instead of formatting each cell separately using sprintf() and
        joining cells together with join(). <br><br>I did a comparison in:
        <a

README  view on Meta::CPAN

        my job with only a few lines of Perl in 3-5 minutes (searching for
        this module in CPAN takes more than that! searching using &quot;mail
        web&quot; or &quot;email url&quot; at first didn't get results).
        <br><br>Blackberry is having trouble displaying the resulting email
        though. No problem with Gmail or Thunderbird/Icedove.

    Term::Size
        Author: FERREIRA <https://metacpan.org/author/FERREIRA>

        5-year old bug like RT#38594 still present. Use one of the alternate
        implementations like Term::Size::{Unix,Win32,ReadKey}. <br>

        Rating: 2/10

    DateTime::Format::Flexible
        Author: THINC <https://metacpan.org/author/THINC>

        While it doesn't cover as much phrases as DateTime::Format::Natural,
        at least it's simpler to translate (and the dist already includes a
        couple of translations). BTW, I think like in the POD of
        DateTime::Format::Natural, it needs to list which phrases it

README  view on Meta::CPAN


        Rating: 2/10

    Spreadsheet::Perl
        Author: NKH <https://metacpan.org/author/NKH>

        Good documentation. All modules' documentation should similarly
        strive to contain at least: rationale for existence, pointer to
        alternatives, and task-oriented organization.

    Unix::PasswdFileOps
        Author: BMAYNARD <https://metacpan.org/author/BMAYNARD>

        Less-than-descriptive name (module's main function seems to be
        sorting entries, can't be guessed from the name). No unit tests.
        Doesn't handle /etc/shadow. Also, it might be useful to explain why
        one needs to sort entries in passwd file. <br>

        Rating: 4/10

    Array::Diff

README  view on Meta::CPAN

        Yes, simple and gets the job done. Though I'm a bit curious with the
        implementation. If the interface is only to get number of deleted
        and added items (instead of positions of deletion/insertion), why
        depend on Algorithm::Diff (or use the name 'diff', for that matter).
        <br>

    DZ1 Why do we need this uploaded to CPAN?

        Rating: 2/10

    Passwd::Unix
        Author: STRZELEC <https://metacpan.org/author/STRZELEC>

        No tests. No detailed error status, only true/false (yes, there is a
        'warnings' parameter on constructor, but this doesn't give out
        warnings on all operations, only some). No locking (although there
        is backup, but still). <br><br>Also, some weird choices, why use
        bzip2 when creating backup? Or, why still require running as root
        (checking $() if we are allowing custom database file location?
        <br><br>Between this and Unix::ConfigFile, I'm seriously considering
        using Unix commands instead (useradd, userdel, gpasswd, et al).
        <br><br>UPDATE 2011-04-21: I created a fork of Passwd::Unix 0.52
        called Passwd::Unix::Alt instead, which add some tests and
        modifications. Try it out if your needs are also not met by
        Passwd::Unix. <br><br>UPDATE 2012-08-30: I created a new module
        called Unix::Passwd::File. Try it out if your needs are also not met
        by Passwd::Unix.

        Rating: 2/10

    Unix::ConfigFile
        Author: SSNODGRA <https://metacpan.org/author/SSNODGRA>

        Outdated module that doesn't handle /etc/shadow and /etc/gshadow.

        Rating: 2/10

    lib::xi
        Author: GFUJI <https://metacpan.org/author/GFUJI>

        Handy module for installing dependencies. There are previous

README  view on Meta::CPAN


        Nice idea, straight and simple interface. A better name could
        perhaps be chosen? Documentation should be expanded, e.g. to warn
        users about security, since Data::Dumper a.k.a. eval() is used to
        load variable content. Also, the implementation does not yet
        consider file locking.

    PathTools
        I guess File::Spec's API is sane enough, but I suspect not a lot of
        people are using it because there's not enough incentive for it.
        When 99% population of the world use Unix/Linux/Windows (even Macs
        been technically Unix for a number of years), &quot;/&quot; works
        everywhere and using File::Spec does not gain you anything except
        lots of typing exercise. <br><br>That's why I think Path::Class
        might have a better chance of succeeding. It gives niceties like a
        few more convenience methods, a shortcut of getting dir &amp; file
        object from each other, etc. It gives users more incentive of using
        a proper path manipulation library because it gives extra stuff
        along with that. It should also be in core to accompany File::Spec.

        Rating: 8/10

devdata/stevenharyanto  view on Meta::CPAN


   (<a href="https://metacpan.org/release/App-multiwhich/">0.001</a>)



</h3>



<blockquote class="review_text">
Note that File::Which can also search for all matches too if you use it in a list context, e.g. @paths = which('foo'). File::Which also comes with a pwhich CLI utility which also accepts multiple arguments and has the -a switch to print all matches. ...
</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2014-08-16T22:34:39
(<a href="/dist/App-multiwhich#11878">permalink</a>)
</p>

<div class="helpfulq">

devdata/stevenharyanto  view on Meta::CPAN




<img src="//cdn.perl.org/perlweb/cpanratings/images/stars-5.0.png" alt="*****">

</h3>



<blockquote class="review_text">
Having worked for quite some time with option processing and several other similar modules, I have to say that most of the time you probably want to use Getopt::Long instead of the other alternatives. Or at least pick the alternatives which are based...

</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2014-07-26T22:11:10
(<a href="/dist/Getopt-Long#11844">permalink</a>)
</p>

devdata/stevenharyanto  view on Meta::CPAN




<img src="//cdn.perl.org/perlweb/cpanratings/images/stars-1.0.png" alt="*">

</h3>



<blockquote class="review_text">
5-year old bug like RT#38594 still present. Use one of the alternate implementations like Term::Size::{Unix,Win32,ReadKey}.
<br>

</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2013-05-13T19:10:44
(<a href="/dist/Term-Size#11031">permalink</a>)
</p>

devdata/stevenharyanto  view on Meta::CPAN


</div>


<div class="review" data-review="8510" data-user="10616">
<a name="8510"></a>
<h3 class="review_header">



<a href="/dist/Unix-PasswdFileOps">


Unix-PasswdFileOps</a>

   (<a href="https://metacpan.org/release/Unix-PasswdFileOps/">0.4</a>)




<img src="//cdn.perl.org/perlweb/cpanratings/images/stars-2.0.png" alt="**">

</h3>



<blockquote class="review_text">
Less-than-descriptive name (module's main function seems to be sorting entries, can't be guessed from the name). No unit tests. Doesn't handle /etc/shadow. Also, it might be useful to explain why one needs to sort entries in passwd file.
<br>

</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2011-04-27T22:18:13
(<a href="/dist/Unix-PasswdFileOps#8510">permalink</a>)
</p>

<div class="helpfulq">

Was this review helpful to you?&nbsp;

<!-- we should add non-js links to rate stuff helpful/not helpful too... -->

<span class="helpful helpful_yes">Yes</span>
<span class="helpful helpful_no" >No</span>

devdata/stevenharyanto  view on Meta::CPAN


</div>


<div class="review" data-review="8474" data-user="10616">
<a name="8474"></a>
<h3 class="review_header">



<a href="/dist/Passwd-Unix">


Passwd-Unix</a>

   (<a href="https://metacpan.org/release/Passwd-Unix/">0.621</a>)




<img src="//cdn.perl.org/perlweb/cpanratings/images/stars-1.0.png" alt="*">

</h3>



<blockquote class="review_text">
No tests. No detailed error status, only true/false (yes, there is a 'warnings' parameter on constructor, but this doesn't give out warnings on all operations, only some). No locking (although there is backup, but still).
<br><br>Also, some weird cho...
</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2011-04-20T06:02:56
(<a href="/dist/Passwd-Unix#8474">permalink</a>)
</p>

<div class="helpfulq">

Was this review helpful to you?&nbsp;

<!-- we should add non-js links to rate stuff helpful/not helpful too... -->

<span class="helpful helpful_yes">Yes</span>
<span class="helpful helpful_no" >No</span>

devdata/stevenharyanto  view on Meta::CPAN


</div>


<div class="review" data-review="8472" data-user="10616">
<a name="8472"></a>
<h3 class="review_header">



<a href="/dist/Unix-ConfigFile">


Unix-ConfigFile</a>

   (<a href="https://metacpan.org/release/Unix-ConfigFile/">0.06</a>)




<img src="//cdn.perl.org/perlweb/cpanratings/images/stars-1.0.png" alt="*">

</h3>



<blockquote class="review_text">
Outdated module that doesn't handle /etc/shadow and /etc/gshadow.
</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2011-04-20T02:25:42
(<a href="/dist/Unix-ConfigFile#8472">permalink</a>)
</p>

<div class="helpfulq">

Was this review helpful to you?&nbsp;

<!-- we should add non-js links to rate stuff helpful/not helpful too... -->

<span class="helpful helpful_yes">Yes</span>
<span class="helpful helpful_no" >No</span>

devdata/stevenharyanto  view on Meta::CPAN




<img src="//cdn.perl.org/perlweb/cpanratings/images/stars-4.0.png" alt="****">

</h3>



<blockquote class="review_text">
I guess File::Spec's API is sane enough, but I suspect not a lot of people are using it because there's not enough incentive for it. When 99% population of the world use Unix/Linux/Windows (even Macs been technically Unix for a number of years), &quo...
</blockquote>


<div class="review_footer">
<p class="review_attribution">
<a href="/user/stevenharyanto">Steven Haryanto</a> - 2010-11-22T08:06:19
(<a href="/dist/PathTools#7872">permalink</a>)
</p>

<div class="helpfulq">

lib/Acme/CPANModules/Import/CPANRatings/User/stevenharyanto.pm  view on Meta::CPAN

package Acme::CPANModules::Import::CPANRatings::User::stevenharyanto;

use strict;

our $AUTHORITY = 'cpan:PERLANCAR'; # AUTHORITY
our $DATE = '2023-10-29'; # DATE
our $DIST = 'Acme-CPANModules-Import-CPANRatings-User-stevenharyanto'; # DIST
our $VERSION = '0.002'; # VERSION

our $LIST = {description=>"This list is generated by scraping CPANRatings (cpanratings.perl.org) user page.",entries=>[{description=>"\n(REMOVED)\n",module=>"Log::Any",rating=>undef},{description=>"\nProvides a thin/lightweight OO interface for \$?, ...

1;
# ABSTRACT: List of modules mentioned by CPANRatings user stevenharyanto

__END__

=pod

=encoding UTF-8

lib/Acme/CPANModules/Import/CPANRatings/User/stevenharyanto.pm  view on Meta::CPAN


Author: L<PTC|https://metacpan.org/author/PTC>

Instead of just printing some info, why not make it an Acme::PM or Acme::PerlMongers like Acme::CPANAuthors? Various stats can then be produced about the various Perl Mongers.
<br>


=item L<App::multiwhich>

Note that File::Which can also search for all matches too if you use it in a list context, e.g. @paths = which('foo'). File::Which also comes with a pwhich CLI utility which also accepts multiple arguments and has the -a switch to print all matches. ...
<br><br>In fact, the Unix 'which' command (or at least its Debian variant) also sports the -a switch.


=item L<Object::Anon>

Author: L<ROBN|https://metacpan.org/author/ROBN>

Nice idea. Some notes: 1) to be widely used, it really needs to be very efficient; 2) if the goal is simply to objectify a hash, perhaps Hash::Objectify or Object::From::Hash or Hash::To::Object (or Data::Objectify and so on) is a more descriptive na...
<br>


lib/Acme/CPANModules/Import/CPANRatings/User/stevenharyanto.pm  view on Meta::CPAN

<br>
'
<br><br>


=item L<Getopt::Long>

Author: L<JV|https://metacpan.org/author/JV>

Having worked for quite some time with option processing and several other similar modules, I have to say that most of the time you probably want to use Getopt::Long instead of the other alternatives. Or at least pick the alternatives which are based...
<br><br>Most other modules that reinvent option parsing either don't bother to do short option bundling (-abc instead of -a -b -c), or abbreviation (--long-o instead --long-option-name), or the choice to (dis)allow mix-mashing options and arguments, ...
<br>


=item L<Text::Table::Tiny>

Author: L<NEILB|https://metacpan.org/author/NEILB>

Very fast, several times faster than Text::TabularDisplay or Text::Table (and many times faster than the other slower table-generator modules). It uses sprintf() to format a whole row instead of formatting each cell separately using sprintf() and joi...
<br><br>I did a comparison in: <a href="http://blogs.perl.org/users/steven_haryanto/2014/07/benchmarking-several-ascii-table-generator-modules.html" rel="nofollow">blogs.perl.org/users/steven_haryanto/...</a>

lib/Acme/CPANModules/Import/CPANRatings/User/stevenharyanto.pm  view on Meta::CPAN

Author: L<ALIAN|https://metacpan.org/author/ALIAN>

Very straightforward to use (I needed to send a URL/webpage as HTML email with embedded images/objects). With this module I can finish my job with only a few lines of Perl in 3-5 minutes (searching for this module in CPAN takes more than that! search...
<br><br>Blackberry is having trouble displaying the resulting email though. No problem with Gmail or Thunderbird/Icedove.


=item L<Term::Size>

Author: L<FERREIRA|https://metacpan.org/author/FERREIRA>

5-year old bug like RT#38594 still present. Use one of the alternate implementations like Term::Size::{Unix,Win32,ReadKey}.
<br>


Rating: 2/10

=item L<DateTime::Format::Flexible>

Author: L<THINC|https://metacpan.org/author/THINC>

While it doesn't cover as much phrases as DateTime::Format::Natural, at least it's simpler to translate (and the dist already includes a couple of translations). BTW, I think like in the POD of DateTime::Format::Natural, it needs to list which phrase...

lib/Acme/CPANModules/Import/CPANRatings/User/stevenharyanto.pm  view on Meta::CPAN


Rating: 2/10

=item L<Spreadsheet::Perl>

Author: L<NKH|https://metacpan.org/author/NKH>

Good documentation. All modules' documentation should similarly strive to contain at least: rationale for existence, pointer to alternatives, and task-oriented organization.


=item L<Unix::PasswdFileOps>

Author: L<BMAYNARD|https://metacpan.org/author/BMAYNARD>

Less-than-descriptive name (module's main function seems to be sorting entries, can't be guessed from the name). No unit tests. Doesn't handle /etc/shadow. Also, it might be useful to explain why one needs to sort entries in passwd file.
<br>


Rating: 4/10

=item L<Array::Diff>

lib/Acme/CPANModules/Import/CPANRatings/User/stevenharyanto.pm  view on Meta::CPAN

<br>


=item L<DZ1>

Why do we need this uploaded to CPAN?


Rating: 2/10

=item L<Passwd::Unix>

Author: L<STRZELEC|https://metacpan.org/author/STRZELEC>

No tests. No detailed error status, only true/false (yes, there is a 'warnings' parameter on constructor, but this doesn't give out warnings on all operations, only some). No locking (although there is backup, but still).
<br><br>Also, some weird choices, why use bzip2 when creating backup? Or, why still require running as root (checking $() if we are allowing custom database file location?
<br><br>Between this and Unix::ConfigFile, I'm seriously considering using Unix commands instead (useradd, userdel, gpasswd, et al).
<br><br>UPDATE 2011-04-21: I created a fork of Passwd::Unix 0.52 called Passwd::Unix::Alt instead, which add some tests and modifications. Try it out if your needs are also not met by Passwd::Unix.
<br><br>UPDATE 2012-08-30: I created a new module called Unix::Passwd::File. Try it out if your needs are also not met by Passwd::Unix.


Rating: 2/10

=item L<Unix::ConfigFile>

Author: L<SSNODGRA|https://metacpan.org/author/SSNODGRA>

Outdated module that doesn't handle /etc/shadow and /etc/gshadow.


Rating: 2/10

=item L<lib::xi>

lib/Acme/CPANModules/Import/CPANRatings/User/stevenharyanto.pm  view on Meta::CPAN


=item L<Script::State>

Author: L<MOTEMEN|https://metacpan.org/author/MOTEMEN>

Nice idea, straight and simple interface. A better name could perhaps be chosen? Documentation should be expanded, e.g. to warn users about security, since Data::Dumper a.k.a. eval() is used to load variable content. Also, the implementation does not...


=item L<PathTools>

I guess File::Spec's API is sane enough, but I suspect not a lot of people are using it because there's not enough incentive for it. When 99% population of the world use Unix/Linux/Windows (even Macs been technically Unix for a number of years), &quo...
<br><br>That's why I think Path::Class might have a better chance of succeeding. It gives niceties like a few more convenience methods, a shortcut of getting dir &amp; file object from each other, etc. It gives users more incentive of using a proper ...


Rating: 8/10

=item L<File::Slurp>

Author: L<CAPOEIRAB|https://metacpan.org/author/CAPOEIRAB>

I've been using File::Slurp for years and is generally satisfied with it. However reading the negative reviews today and looking at its RT queue, I realize that this module is broken for many and is effectively abandoned by the maintainer (no new rel...



( run in 1.275 second using v1.01-cache-2.11-cpan-df04353d9ac )