Proposal: Python Info Collective

Mitchell Morris mgm at unpkhswm04.bscc.bls.com
Mon Nov 15 18:41:30 CET 1999


First, let me say you've done an excellent job ... working code is almost
always preferable to another discussion item. Good for you for doing
something I and many other have only complained about.

Second, every unattributed quote from this point on is my opinion ... you
should assume that every comment is followed by an IMHO or two until such
time as your blood pressure recedes.



In article <80pe77$osc$1 at hub.org>, T. Middletan wrote:
[snip]
><personal rant> I hate CPAN. I have always hated CPAN. I will always
>hate CPAN! All right, okay, in truth back when i was a PERL hacker i
>thought CPAN was the greatest, very convenient, it's true. But after
>the great light of Python descended upon me (actually it was kind of
>thrust upon me as a "strong suggestion", at a time when i had no
>interest in Python whatsoever --- thank D'Arcy of PyGreSQL fame!) my
>perspective changed. I realised PERL was amazingly painful to code,
>and even more painful to maintain --- why didn't i realise this
>before? And as the scales fell from my eyes i realised that CPAN was
>incredibly ugly and tedious to wade through, now that i thought about
>it. A sea of README files, and ugly filenames.

My personal take is that you never actually look at CPAN in a browser.  The
only useful interface to the Comprehensive Perl Archive is in CPAN.pm, which
is by default installed on your machine. That way you can search for useful
stuff without trying to figure out what (if any) disorganization scheme is in
use:

	$ perl -MCPAN -e shell

	cpan shell -- CPAN exploration and modules installation (v1.50)
	ReadLine support enabled

	cpan> i /DNS/
	Going to read /usr/local/CPAN/sources/authors/01mailrc.txt.gz
	CPAN: Compress::Zlib loaded ok
	Going to read /usr/local/CPAN/sources/modules/02packages.details.txt.gz
	Going to read /usr/local/CPAN/sources/modules/03modlist.data.gz
	Distribution    M/MA/MATTBM/DNS-ZoneFile-0.92.tar.gz
	Distribution    MFUHR/Net-DNS-0.12.tar.gz
	Module          DNS::ZoneFile   (M/MA/MATTBM/DNS-ZoneFile-0.92.tar.gz)
	Module          DNS::ZoneFile::Record (M/MA/MATTBM/DNS-ZoneFile-0.92.tar.gz)
	...

	cpan> readme DNS::ZoneFile
    ...

	cpan> wq DNS
	CPAN: CPAN::WAIT loaded ok
	Could not connect to the WAIT server at ls6.informatik.uni-dortmund.de port
	1404

	Trying your http proxy http://proxy.bscc.bls.com:8080/
	Use of uninitialized value at /usr/local/lib/perl5/site_perl/5.005/aix/Net/
	Cmd.pm line 308.
	Argument "" isn't numeric in eq at /usr/local/lib/perl5/site_perl/5.005/WAI
	T/Client.pm line 143.
	No greeting from server
	Use of uninitialized value at /usr/local/lib/perl5/site_perl/5.005/aix/Net/
	Cmd.pm line 308.
	Argument "" isn't numeric in eq at /usr/local/lib/perl5/site_perl/5.005/WAI
	T/Client.pm line 112.
	No luck with your proxy either. Giving up
	No searching available!

	cpan> quit

My longstanding complaints about CPAN.pm aside (mostly having to do with
sooper-seekrit keyword searching capabilities), this is a phenomenal win.
Having the ability to perform some non-trivial searching/cooking on the local
site makes up for a great deal of ugliness module-naming-wise. It also helps
mitigate the effects of a dog-slow proxy between us corporate cogs and the
rest of the world and the general unwillingness of many tools to speak to a
proxy server at all.



The mechanism that CPAN.pm uses is a set of three compressed text files
downloaded from CPAN that describe the current state of the archive. These
files have a short lifetime (three days, if my memory serves me) before
they're refreshed from the official source.

Please note that I'm not volunteering to write this, given the other
collections of things I'm having to ignore my family to get accomplished. I
do promise, however, to admire the eventual resulting utility. I may even be
able to submit patches thereunto.



As an aside, the other thing about Perl that I like is perldoc. As much as I
use lynx, it still sucks for searching the Python library reference. At some
point I'll write ``pythondoc'' to extract the parts I care about, but until
then I'll just keep kvetching.



always-happy-to-see-other-people-working-ly y'rs
+Mitchell

-- 
Mitchell Morris

I am Pentium of Borg. Division is futile. You will be approximated.




More information about the Python-list mailing list