UNABLE TO GET IDLE TO RUN

Steven D'Aprano steve at pearwood.info
Sun Nov 1 19:54:45 EST 2015


On Mon, 2 Nov 2015 03:17 am, Laura Creighton wrote:

> I managed to delete the real mail I would like to reply to.
> This is, at least in the same thread ....
> 
> In a message of Mon, 02 Nov 2015 01:27:23 +1100, "Steven D'Aprano" writes
> a reply to Michael Overtoon:

Actually it's a reply to Terry.


>> Users are inclined to ignore alerts, dialogs and error messages, and
>> applications try very, very hard to reinforce that tendency.
> 
>
http://ux.stackexchange.com/questions/4518/should-alert-boxes-be-avoided-at-any-cost
> 
> (ok posting of question.)
> 
>> Good to see that IDLE is going to continue that fine old tradition of
>> degrading usability for the sake of a quick and easy non-solution to a
>> problem.
> 
> I think you owe Michael an apology.

I can't imagine why you think I owe Michael an apology. An apology for what?


> Winning an argument on  'I should I get it my way because I can come up
> with a pithy and condescending way to phrase my objection to what you
> want to do' seems morally bankrupt to me.  Ditto on the idea of bashing
> him just because he is handy and the world is a bad place for you right
> now.  

"Bashing" him? Really? A touch of sarcasm ("Good to see") about a technical
decision is bashing the author and "morally bankrupt"?

Laura, with respect, perhaps it isn't me who is writing from "a bad place"
right now.


> It hardly counts as a technical reason for or against the issuing 
> of warnings in idle, or the more severe 'not allowing you to save'.

There is a technical reason against the issuing of warnings in IDLE, namely
that their target audience is disinclined to read warnings, not well suited
to understand these specific warnings, and likely to click on whatever
random buttons it takes to make the warnings go away and let them save
their file under their chosen name.


> I have a professional carreer based on saying 'do not blather useless
> error/warning messages' at people.  I am pretty much always on your
> side of the argument.  But, here we are, first time in 22 years, and
> I am here arguing in _favour_ of a warning message. :)

I get that, I truly do, and believe me when I say I respect your expertise.
But it seems to me that you're falling for the fallacy "we must do
something, this is something, therefore we must do it".

I completely agree that accidental shadowing is a problem, especially for
beginners. I too would like to fix that, and (as you know, but others may
not) I've proposed a solution on the Python-Ideas mailing list.

But just because there is a problem doesn't mean that the first thing we
think of is the solution. I haven't come across anyone, not one person,
willing to dispute the conventional wisdom that users don't read alert
messages. We agree that users don't read warnings, but you're expecting
them to read *this* warning. What makes this proposed warning different
from all the other useless blatherings that users don't read? Why will they
read this one?

It is 2015, nearly 2016, and surely there isn't a professional developer
alive who hasn't come across the truism that users don't read warnings, and
that they should avoid putting up modal dialogs with a warning. And yet
they still do it. Why?

They're not all idiots. I don't believe either you or Terry are idiots. I
expect that, like you and Terry, they have fallen into the trap of
believing that *this one case is special*. This issue is important enough
that we have to do something, and users might not read all those other
blathering error messages, but they'll read this one, because it is
important that they do.

Otherwise, how can you justify this warning? Users won't read it. It will
just reinforce their tendency to ignore errors and warnings, and as an
educator surely you don't want that. If they click on the OK/Cancel button
at random, as UI studies suggest people tend to do, then 50% will end up
shadowing the file regardless, and 50% will have a second chance to pick a
better name -- which they may not do.

And most shadowing is harmless. If I name my script code.py, or this.py, it
will still run fine unless I directly or indirectly import `code` or
`this`. It is true that shadowing *can* leave Python effectively unusable
(try shadowing `os` and see how many things break) but most of the time
shadowing doesn't hurt. So most of the time, these warnings will be exactly
the pointless blatherings that you usually oppose.



-- 
Steven




More information about the Python-list mailing list