Doc en français des fonctions Python/Traduction/Formation
Le
jean.moser
Le sujet "Doc. des fonctions sous Python" mérite un examen
approfondi'.C'est pourquoi je me suis permis d'ouvrir un nouveau sujet.
Avant de détaillerles questions abordées, je fais une remarque
d'ordre général: j'ai l'impression, en tant que "Hobbyiste", que
notre groupe comprend des
personnes de niveaux très différents et que les sujets sont soit
super pointus soit très spécialisés ce qui rend les choses
difficiles. D'un autre côté
on voit que le problème de la formation et de la documentation est
toujours aussi lancinant.
1)Question de la langue
Venant d'un pays où il existe 4 langues officielles, dont le
français, je crois que les francophones doivent faire un effort
particulier.Je partage donc
l'opinion de Jean_Michel qui écrit :"Si tu ne lis pas l'anglais
technique,ta carrière de dévelopeur risque d'être brève".
Pour les traductions, Do Re Michel pose bien le problème: "traductions
littérales ou attaquer quelque chose de mieux ?".Entre le texte de
Swinnen
dans son ouvrage "Apprendre avec Python" et la traduction du livre de
Lutz "Introduction à Python" il y a un écart considérable du point
de vue
de la qualité du français. Donc je me méfie de la traduction
littérale.Par contre il faudrait, non pas traduire, mais "adapter" par
un texte nouveau
auquel serait adjoint un exemple pour chaque procédure.Mais l'éditeur
serait-il d'accord ? Encore une fois la connaissance des langues est un
atout majeur.
Il existe un ouvrage remarquable en allemand "Einstieg un Python" qui
traite aussi de Zope, de Gadfly et Mysql, Tkinter,etc,etc.Certes il
sera moins
brillant que livre de Swinnen et moins théorique que celui de Lutz
mais il est très pratique et pourrait servir de modèle.Autre ouvrage
remarquable "Python,
How to program", paru chez Prentice Hall etc,etc.Conclusion provisoire:
il faut travailler les langues !
A vrai dire je ne comprends pas la remarque de Do Re Michel,lorsqu'il
écrit:
"On trouve quelques bribes, quelques traductions et/ou partielles mais
rien de probantMais côté référence (fonctions intégrée,
librairie standard,
modules courants) il n'y a rien".
Cela veut donc dire que l'on doit considérer les traductions du
Tutorial( du Maître) comme quantité négligeable ?Pour prendre
l'exemple de Popen2, j'ai vu
que Martelli consacre presque deux pages à cette fonction dans "Python
in a nutshell" qui est maintenant traduit en français.Mais n'étant
pas développeur je
n'ai pas la prétention d'avoir un avis valable.
Par curiosité j'ai été voir le chapitre 18, paragraphe 18.4 du livre
de Deitel, paru chez Prentice Hall. Il est intitulé "Controlling
Process Input and
Output".Je cite:"A fundamental philosophy of Unix system is that
programs should be small and should perform well-defined tasks. Users
then can use multiple
programs together to achieve a particular result. For example, the UNIX
command ls lists the content of a directory. The UNIX command sort
sorts its input
according to some ordering scheme (e.g. alphabetidal order.) By
entering the following command-line, which uses these commands
together, a user can produce
a sorted list of a directory's contents. etc" Le texte continue sur une
demi page puis il est suivi par un exemple d'un petit programme de 40
lignes( qui
prend en compte à la fois UNIX et Window dans lequel est édité un
répertoire en ordre alphabétique inverse en prenant la sortie
générée par une
instruction, et en l'injectant dans l'entrée d'une autre instruction
(là c'est moi qui est traduit !).La ligne 22 dudit programme montre
l'utilisation de
popen2:"sortIn,sortOut =os.popen2(sortReverse)". Le résultat du
programme est évidemment donné à la fin de l'exemple.
Pour moi qui ne suis qu'un modeste utilisateur, je trouve cet exemple
limpide. En revanche je ne comprends pas un mot des explications de
Martelli (page
289,290). Cela illustre ce que crois:a) on peut trouver des textes
faciles en anglais b) il y a une différence énorme entre un texte
d'un super spécialiste
et celui d'un formateur.
Donc à la limite il n'est pas utile de traduire ou si l'on veut le
faire, le travail du traducteur sera grandement facilité.
2)Faire connaître Python
"Le sujet c'est de voir comment avoir plus de docs en français sur
Python, et
accessoirement de mieux faire connaitre Python aux développeurs
francophones. Le succès de Python sur les francophones est loin de ce
qu'il
est sur les anglophones, donc nous devons tous ensemble mieux faire
connaître python et les ressources en français sur Python" écrit
Paul.
Mieux faire connaître Python aux développeurs est-ce une action qui
va accroître la documentation disponible en français ? Je ne le crois
pas.Par contre
augmenter la doc en français va faire connaître Python non seulement
aux développeurs mais aussi à l'utilisateur moyen.
Python n'a pas la place qu'il mérite.Que constate-t'on en Suisse et
probablement en France? PHP a le vent en poupe et si l'on argumente
avec les
utilisateurs on s'aperçoit que l'on ne connaît pas sa puissance.Les
mètres linéaires remplis de livres sur PHP par rapport aux quelques
livres isolés sur
Python dans les librairies spécialisées en Suisse( Lausanne et
Genève qui sont des villes universitaires)témoignent du désintérêt
pour ce dernier langage.
Faire connaître Python oui, mais quel est le public cible ? Ce n'est
pas seulement les développeurs mais les personnes désireuses
d'apprendre à programmer,
3) Mise sur pied d'une nouvelle tâche pour le groupe Python.
Si j'ai bien compris la question , il y a un gros besoin de
documentation en français.Apparamment les traductions effectuées ne
donnent pas satisfaction ou
alors elles sont insuffisantes ou encore méconnues. (Exemple le
bouquin de Martelli)
Pourrait-on admettre que le groupe de discussion se charge de la
mission(but) suivante: "promouvoir le langage Python" ? A partir de
là, pourrait-on
admettre que les objectifs soient ainsi définis:"Former un large
public au langage de programmation", "assurer la traduction d'un
certain nombre de
documents de base".Cela revient à envisager la formation par des cours
directs et sur le Net et parallèlement à commencer la traduction de
documents très
précis à définir.Est-ce que cela est compatible avec la charte ?
Un "séminaire" Python pourrait être organisé à Paris, Genève ou
Lausanne. Par exemple le premier cours pourrait avoir lieu dans une
ville quelconque puis le
même cours aurait lieu un mois après dans une deuxième ville.Il ne
serait pas gratuit mais selon moi le prix devrait être calculé pour
couvrir les frais
uniquement.(Locaux,frais de voyage).Dans une deuxième étape, on
pourrait organiser la traduction de tout ou parties de textes écrits
en anglais. Pourquoi
dans une deuxième étape ? Parce qu'il serait peut-être possible, si
nous arrivons à booster l'engouement pour Python, de recruter des
traducteurs bénévoles.
Jean Moser
approfondi'.C'est pourquoi je me suis permis d'ouvrir un nouveau sujet.
Avant de détaillerles questions abordées, je fais une remarque
d'ordre général: j'ai l'impression, en tant que "Hobbyiste", que
notre groupe comprend des
personnes de niveaux très différents et que les sujets sont soit
super pointus soit très spécialisés ce qui rend les choses
difficiles. D'un autre côté
on voit que le problème de la formation et de la documentation est
toujours aussi lancinant.
1)Question de la langue
Venant d'un pays où il existe 4 langues officielles, dont le
français, je crois que les francophones doivent faire un effort
particulier.Je partage donc
l'opinion de Jean_Michel qui écrit :"Si tu ne lis pas l'anglais
technique,ta carrière de dévelopeur risque d'être brève".
Pour les traductions, Do Re Michel pose bien le problème: "traductions
littérales ou attaquer quelque chose de mieux ?".Entre le texte de
Swinnen
dans son ouvrage "Apprendre avec Python" et la traduction du livre de
Lutz "Introduction à Python" il y a un écart considérable du point
de vue
de la qualité du français. Donc je me méfie de la traduction
littérale.Par contre il faudrait, non pas traduire, mais "adapter" par
un texte nouveau
auquel serait adjoint un exemple pour chaque procédure.Mais l'éditeur
serait-il d'accord ? Encore une fois la connaissance des langues est un
atout majeur.
Il existe un ouvrage remarquable en allemand "Einstieg un Python" qui
traite aussi de Zope, de Gadfly et Mysql, Tkinter,etc,etc.Certes il
sera moins
brillant que livre de Swinnen et moins théorique que celui de Lutz
mais il est très pratique et pourrait servir de modèle.Autre ouvrage
remarquable "Python,
How to program", paru chez Prentice Hall etc,etc.Conclusion provisoire:
il faut travailler les langues !
A vrai dire je ne comprends pas la remarque de Do Re Michel,lorsqu'il
écrit:
"On trouve quelques bribes, quelques traductions et/ou partielles mais
rien de probantMais côté référence (fonctions intégrée,
librairie standard,
modules courants) il n'y a rien".
Cela veut donc dire que l'on doit considérer les traductions du
Tutorial( du Maître) comme quantité négligeable ?Pour prendre
l'exemple de Popen2, j'ai vu
que Martelli consacre presque deux pages à cette fonction dans "Python
in a nutshell" qui est maintenant traduit en français.Mais n'étant
pas développeur je
n'ai pas la prétention d'avoir un avis valable.
Par curiosité j'ai été voir le chapitre 18, paragraphe 18.4 du livre
de Deitel, paru chez Prentice Hall. Il est intitulé "Controlling
Process Input and
Output".Je cite:"A fundamental philosophy of Unix system is that
programs should be small and should perform well-defined tasks. Users
then can use multiple
programs together to achieve a particular result. For example, the UNIX
command ls lists the content of a directory. The UNIX command sort
sorts its input
according to some ordering scheme (e.g. alphabetidal order.) By
entering the following command-line, which uses these commands
together, a user can produce
a sorted list of a directory's contents. etc" Le texte continue sur une
demi page puis il est suivi par un exemple d'un petit programme de 40
lignes( qui
prend en compte à la fois UNIX et Window dans lequel est édité un
répertoire en ordre alphabétique inverse en prenant la sortie
générée par une
instruction, et en l'injectant dans l'entrée d'une autre instruction
(là c'est moi qui est traduit !).La ligne 22 dudit programme montre
l'utilisation de
popen2:"sortIn,sortOut =os.popen2(sortReverse)". Le résultat du
programme est évidemment donné à la fin de l'exemple.
Pour moi qui ne suis qu'un modeste utilisateur, je trouve cet exemple
limpide. En revanche je ne comprends pas un mot des explications de
Martelli (page
289,290). Cela illustre ce que crois:a) on peut trouver des textes
faciles en anglais b) il y a une différence énorme entre un texte
d'un super spécialiste
et celui d'un formateur.
Donc à la limite il n'est pas utile de traduire ou si l'on veut le
faire, le travail du traducteur sera grandement facilité.
2)Faire connaître Python
"Le sujet c'est de voir comment avoir plus de docs en français sur
Python, et
accessoirement de mieux faire connaitre Python aux développeurs
francophones. Le succès de Python sur les francophones est loin de ce
qu'il
est sur les anglophones, donc nous devons tous ensemble mieux faire
connaître python et les ressources en français sur Python" écrit
Paul.
Mieux faire connaître Python aux développeurs est-ce une action qui
va accroître la documentation disponible en français ? Je ne le crois
pas.Par contre
augmenter la doc en français va faire connaître Python non seulement
aux développeurs mais aussi à l'utilisateur moyen.
Python n'a pas la place qu'il mérite.Que constate-t'on en Suisse et
probablement en France? PHP a le vent en poupe et si l'on argumente
avec les
utilisateurs on s'aperçoit que l'on ne connaît pas sa puissance.Les
mètres linéaires remplis de livres sur PHP par rapport aux quelques
livres isolés sur
Python dans les librairies spécialisées en Suisse( Lausanne et
Genève qui sont des villes universitaires)témoignent du désintérêt
pour ce dernier langage.
Faire connaître Python oui, mais quel est le public cible ? Ce n'est
pas seulement les développeurs mais les personnes désireuses
d'apprendre à programmer,
3) Mise sur pied d'une nouvelle tâche pour le groupe Python.
Si j'ai bien compris la question , il y a un gros besoin de
documentation en français.Apparamment les traductions effectuées ne
donnent pas satisfaction ou
alors elles sont insuffisantes ou encore méconnues. (Exemple le
bouquin de Martelli)
Pourrait-on admettre que le groupe de discussion se charge de la
mission(but) suivante: "promouvoir le langage Python" ? A partir de
là, pourrait-on
admettre que les objectifs soient ainsi définis:"Former un large
public au langage de programmation", "assurer la traduction d'un
certain nombre de
documents de base".Cela revient à envisager la formation par des cours
directs et sur le Net et parallèlement à commencer la traduction de
documents très
précis à définir.Est-ce que cela est compatible avec la charte ?
Un "séminaire" Python pourrait être organisé à Paris, Genève ou
Lausanne. Par exemple le premier cours pourrait avoir lieu dans une
ville quelconque puis le
même cours aurait lieu un mois après dans une deuxième ville.Il ne
serait pas gratuit mais selon moi le prix devrait être calculé pour
couvrir les frais
uniquement.(Locaux,frais de voyage).Dans une deuxième étape, on
pourrait organiser la traduction de tout ou parties de textes écrits
en anglais. Pourquoi
dans une deuxième étape ? Parce qu'il serait peut-être possible, si
nous arrivons à booster l'engouement pour Python, de recruter des
traducteurs bénévoles.
Jean Moser

Poser une question


J'ai le livre de Deitel et Deitel sur le C, que je trouve également
limpide, par rapport à d'autres livres.
J'apprécie beaucoup les "common programming error" et les "good
protramming practices"
La notoriété d'un auteur ne garantit pas sa pédagogie.