Simple graphic library for beginners

Paul Moore p.f.moore at gmail.com
Fri Jan 12 05:00:29 EST 2018


On 12 January 2018 at 09:12, Tim Golden <mail at timgolden.me.uk> wrote:
> I think the shame here is that there is a learning opportunity on both
> sides. As Paul says: by and large, the huge amount of work which the Python
> Packaging team, especially the pip developers, have put in has paid off.
> It's now usually possible to say: "pip install XXX" and have it work out of
> the box for any recentish version of Python on any recentish version of a
> mainstream OS. Once people understand the basics of using that "interface",
> many things become simple.
>
> Unfortunately, where that *doesn't* work, it probably won't be because of
> low-hanging fruit: it'll be because of some strange interaction of different
> versions, odd leftover PATH setups, obscure Windows C Runtime redistribution
> issues, poor encoding interactions between Python and the Windows console,
> and so on.

Agreed. The other factor, and in my experience one of the most
frustrating to deal with, is when people *don't* start with "pip
install XXX", but instead find some complex process on the web, try
that, have it fail, and then we have to help them untangle whatever
mess that might have left for them. That's really annoying because we
can't really do anything about out of date information - and expecting
people to realise that things are moving fast enough that 6 month old
instructions are out of date isn't realistic either. (In fact, until
this thread I wasn't aware that pygame had published wheels, so I'd
have probably tried something unnecessarily complex myself - just
proves that even being intimately familiar with the packaging
ecosystem isn't enough!!!)

> All of these admit of solutions (if only by way of more informative error
> messages and useful FAQs) but they take time and patience to reproduce and
> work through. Many people -- and especially beginners -- don't really have
> the time or the inclination to follow through. They're not really interested
> in the mechanics of pip or the interaction of Python with the Windows
> installation subsystem. They just want to use numpy or pygame, or whatever.
>
> Where there *are* people who are willing to take the time to work things
> through, we [the Python community and especially the packaging/pip crew] can
> welcome them and try to identify weak spots in our own story. But of course
> we react poorly if someone wants merely to dismiss stuff. (Typical tweet:
> "Sigh; Python packaging is still broken!").
>
> I've actually been installing pygame quite a few times recently as part of a
> Coding Dojo I help to run once a term at a school in South London. And, even
> with the wonderful packaging work which the pygame guys have done to get
> wheels on PyPI, it's still sometimes a little painful. Of course, in that
> context, I'm just hustling to get people up-and-running and I'll do whatever
> it takes without stopping to take notes. So I sympathise when people say
> it's not easy for them. But not when they're dismissive about it.

Understood. I've recently been working with a complete beginner, and
it's quite surprising (and a real eye-opener) where the pain points
lie. Running python and pip (PATH issues) was a huge problem, but "pip
install numpy" was trivial. That's totally not what I'd expected...
Often the big issue for people like myself working on packaging is
being too close to the problem, and as a result focusing on the wrong
things. *Any* feedback from beginners is good for improving that
situation.

If you have any details on particular pain points your users have
experienced, feel free to pass them on to me and I'll see if I can
work them into something actionable. I understand what you mean
though, getting details of what's wrong isn't the priority when you
have a class to get running.

Paul



More information about the Python-list mailing list