On Sat, Aug 3, 2019 at 9:48 AM Steven D'Aprano <st...@pearwood.info> wrote:
>
> On Fri, Aug 02, 2019 at 07:52:37AM +1000, Chris Angelico wrote:
>
> > Maybe there needs to be a
> > second-tier recommendation, where a list of packages can be given that
> > aren't category killers, but have been given the blessing of the
> > Python devs as "this is a good-quality, well-maintained package, and
> > can be depended on"?
>
> Which of the core devs will have the responsibility for checking that
> something which is a good-quality, well-maintained, dependable package
> today remains so a year from now?

Nobody. The recommendation would simply be "this is good NOW".
Anything can change in the future, and if someone sees something
saying "as of 2012, that was a good package", it's up to them to see
if it's still good. Of course, any core dev can go tag something and
say "still good".

> There are third-party libraries like numpy, nltk etc which are too
> specialised, big and complex for anyone to duplicate in their own code.

And it's "common knowledge" that numpy, ntlk, etc are all
well-respected pieces of software, but how is that common knowledge to
be acquired?

> But I think that anyone who pip installs more-itertools *solely* to
> avoid copying and pasting the "grouper" receipe from the docs is doing
> themselves, and the users of their software, a disservice. It's three
> lines of code. Adding a third-party dependency of 2000+ sloc to avoid a
> three liner is not as bad as the Node.js LeftPad debarcle, but it's
> heading into the same ballpark.

This is true, but only because we're talking about a single three-line
function...

> (Of course the calculus changes if you are a heavy consumer of
> iterators, and the extra tools in more-itertools are useful for you.)

... and the best way to BECOME a heavy consumer of iterators is to
flip through itertools and more-itertools, find that this is way
easier than what you were doing previously, and start using more of
the functions. So even if you start out by getting more-itertools as
an alternative to copying and pasting a three-line function, you may
find that you end up using a lot more of it.

But there's still a *huge* difference between "import itertools" and
"import some-package-nobody-knows-of". I just want to narrow that gap
a little by giving recognition to those packages which are dependable
and high quality. I did a PyPI search for "itertools" and this was
what came up first:

https://pypi.org/project/itertools-s/

It must be good, because it's the very first search result, right?
I'll just pip-install it and start using it. Or should I look
somewhere else for an enhanced itertools? How would I know? With a
published list of known-excellent packages, there could be three or
four itertoolses, not ten pages of search results, and you could know
for sure that each and every one of them is worthy of at least a bit
of a look.

ChrisA
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/36RVI6M4JSW7CGJWFBALGDHZ47LUQ5UD/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to