[Python-ideas] Non-English names in the turtle module.

Petr Viktorin encukou at gmail.com
Fri Sep 4 10:17:36 CEST 2015

On Fri, Sep 4, 2015 at 9:26 AM, Matthias Bussonnier
<bussonniermatthias at gmail.com> wrote:
> Hi all,
> Personal opinion, base by a bit of experience:
> There is one thing worse than programming in a foreign language IMHO (I’m
> native french)
> It’s programming in an environment which is half translated and/or mix
> english and native language.
> The cognitive load and the context switching it forces the brain to do when
> 2 languages
> are present is absolutely astronomical, and i guess translating the Turtle
> module
> will not allow to translate the control-flow structure, the
> docstrings....etc and so on,
> and so forth if you do simple `Tortue = Turtle` assignment,
>  So while it looks nice 2 liners example you hit this problem pretty
> quickly.
> Taking fort given example:
> import turtle   # import is english, should translate to  importer, ou
> importez. turtle should be tortue also.
> t = turtle.Plume()
> t.couleurplume('vert’)  # plume is a female, couleur should be “verte”,
> “crayon” would be male, so “vert"
> t.avant(100)  # avance/avancer
> I can perfectly imagine a menu “insérer use boucle `pour ...`”, that insert
> a `for ....` in applications,
> which is confusing is confusing to explain.
> I also find it much easier to attach a programming meaning to a word that
> have no previous meaning for a kid (for, range, if, else, print are blank
> slate
> for French children), than shoehorn another concept biased by previous
> experience into it.
> This in particular make me think of Gibiane[1], which is basically:
> “Hey fortran is great let’s make it in french”, which was a really bad
> idea[2],
> no it’s not a joke, and yes people do nuclear physics using this language.
> While I appreciate in general the translation effort, in general most of the
> translated side of things (MDN, microsoft help pages, Apples ones) are much
> worse than trying to understand the english originals.
> So just a warning that the best is the enemy of the good, and despite good
> intentions[3],
> trying to translate Turtle module might not be the right thing to do.

Another opinion based on some experience:
I use local-language names when teaching beginners. It gives a nice
distinction between names provided by Python or a library (in English)
and things that can be named arbitrarily. I haven't actually measured
if this helps learning, though; and to the turtle module it might not
apply at all.

More information about the Python-ideas mailing list