[Python-Dev] Python3 "complexity"

Ben Finney ben+python at benfinney.id.au
Thu Jan 9 01:41:41 CET 2014


MRAB <python at mrabarnett.plus.com> writes:

> On 2014-01-09 00:07, Ben Finney wrote:
> > Kristján Valur Jónsson <kristjan at ccpgames.com> writes:
> >> Python 3 forces you to think about abstract concepts like encodings
> >> when all you want is to open that .txt file on the drive and
> >> extract some phone numbers and merge in some email addresses. What
> >> encoding does the file have? Do I care? Must I care?
> >
> > Yes, you must.
> >
> >> Python forcing you to think about this is like the cashier at the
> >> hardware store who won't let you buy the hammer you brought to the
> >> cash register because you don't know what wood its handle is made
> >> of.
> >
> > The cashier is making a mistake: the hammer, regardless of the wood in
> > the handle, still functions just fine as a hammer. Hence, the question
> > is unimportant to the purpose.
>
> On the other hand:
>
>     "I need a new battery."
>
>     "What kind of battery?"
>
>     "I don't care!"

That's a much better analogy. The customer may not care, but the
question is essential and must be answered; if the supplier guesses what
the customer wants, they are doing the customer a disservice.

If the customer insists the supplier just give them a battery which will
work regardless of what type of battery the device requires, the
*customer is wrong*. Such customers need to be educated about the
necessity to care about details they may have no interest in, if they
want to get their device working reliably.

We can all work toward a world where there is just one encoding which
works for all text and no other encodings to confuse the matter. Until
then, everyone needs to deal with the world as it is.

(good sigmonster, have a cookie)

-- 
 \     “Ours is a world where people don't know what they want and are |
  `\       willing to go through hell to get it.” —Donald Robert Perry |
_o__)                                                          Marquis |
Ben Finney



More information about the Python-Dev mailing list