Skip to content

Traduction des noms de variables, méthodes et fonctions #54

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
MachinisteWeb opened this issue Apr 22, 2017 · 21 comments
Closed

Traduction des noms de variables, méthodes et fonctions #54

MachinisteWeb opened this issue Apr 22, 2017 · 21 comments
Assignees

Comments

@MachinisteWeb
Copy link
Member

MachinisteWeb commented Apr 22, 2017

developpez.com-like

Actuellement le guide a été traduit ainsi :

  • Commentaires traduits
  • Valeur des strings traduites
  • Nom de variables, balise, identifiant et de fonctions traduite.

Ce qui fait que le code original ci-dessous :

<div id="counter-event-example">
  <!-- A comment -->
  <p>Counter: {{ total }} {{ unit }}</p>
  <button-counter v-on:increment="incrementTotal"></button-counter>
  <button-counter v-on:increment="incrementTotal"></button-counter>
</div>
/* Vue Component */
Vue.component('button-counter', {
  template: '<button v-on:click="increment">{{ counter }}</button>',
  data: function () {
    return {
      counter: 0
    }
  },
  methods: {
    increment: function () {
      this.counter += 1
      this.$emit('increment')
    }
  },
})

/* Main Vue Instance */
new Vue({
  el: '#counter-event-example',
  data: {
    total: 0,
    unit: 'Meter(s)'
  },
  methods: {
    incrementTotal: function () {
      this.total += 1
    }
  }
})

est traduit par :

<div id="counter-event-example">
  <!-- Un commentaire -->
  <p>Compteur : {{ total }} {{ unit }}</p>
  <button-counter v-on:increment="incrementTotal"></button-counter>
  <button-counter v-on:increment="incrementTotal"></button-counter>
</div>
/* Composant Vue */
Vue.component('button-counter', {
  template: '<button v-on:click="increment">{{ counter }}</button>',
  data: function () {
    return {
      counter: 0
    }
  },
  methods: {
    increment: function () {
      this.counter += 1
      this.$emit('increment')
    }
  },
})

/* Instance de Vue principale */
new Vue({
  el: '#counter-event-example',
  data: {
    total: 0,
    unit: 'Mètre(s)'
  },
  methods: {
    incrementTotal: function () {
      this.total += 1
    }
  }
})

MDN-like (pour certaine traduction)

Une proposition de @sylvainpolletvillard qui traduit actuellement l'API Vue est de traduire ainsi :

  • Commentaires traduits
  • Valeur des strings traduites
  • Nom de variables, balise, identifiant et de fonctions traduite.

Ce qui donnerait une fois traduit :

<div id="exemple-compteur-évènement">
  <!-- Un commentaire -->
  <p>Compteur : {{ total }} {{ unité }}</p>
  <bouton-compteur v-on:incrementation="totalIncrémenté"></bouton-compteur>
  <bouton-compteur v-on:incrementation="totalIncrémenté"></bouton-compteur>
</div>
/* Composant Vue */
Vue.component('bouton-compteur', {
  template: '<button v-on:click="incrementation">{{ compteur }}</button>',
  data: function () {
    return {
      compteur: 0
    }
  },
  methods: {
    incrementation: function () {
      this.compteur += 1
      this.$emit('incrementation')
    }
  },
})

/* Instance de Vue principale */
new Vue({
  el: '#exemple-conteur-évènement',
  data: {
    total: 0,
    unité: 'Mètre'
  },
  methods: {
    totalIncrémenté: function () {
      this.total += 1
    }
  }
})

Que devrions nous faire avec la traduction de code ?

Votes

  • 👍 Tout traduire comme MDN

ou

  • 👎 Conserver une traduction comme developpez.com (traduction commentaire et valeur de chaîne de caractère uniquement)
@MachinisteWeb
Copy link
Member Author

Pour ma part :

Je pense qu'il n'est pas intéressant de traduire les nom de variables etc.

1. pour éviter de mélanger des termes anglais et des termes français.

Exemple :

Vue.config.optionMergeStrategies._mon_option = function (parent, enfant, vm) {

ou config est en anglais, optionMergeStrategies est en anglais, _mon_option est en français function est en anglais et enfant est en français.

Étrange :s

2. Pour éviter en plus de traduire la documentation de traduire le technique

Nous avons déjà bien à faire avec la documentation en elle-même

3. Pas besoin de revoir le code

Traduire tous les exemples nécessiterai de tester tous les exemples pour être sur qu'il tourne toujours.

Pour moi c'est contre

@sylvainpolletvillard
Copy link
Member

Si nous faisons cette traduction, c'est pour les personnes maîtrisant mal l'anglais. Dès lors, toute aide à la compréhension est bonne à prendre, y compris dans les exemples de code. Mélanger les termes anglais et français n'est pas un problème si ça aide les gens à mieux comprendre.

L'autre avantage est que cela permet de différencier dans les exemples ce qui appartient aux API de Vue et ce qui est introduit par l'utilisateur.

@MachinisteWeb
Copy link
Member Author

MachinisteWeb commented Apr 27, 2017 via email

@sylvainpolletvillard
Copy link
Member

Je pense que tu confonds débutant sur Vue et débutant en niveau d'anglais. Quelqu'un qui comprend mal l'anglais aura du mal à comprendre les exemples non traduits, peu importe son niveau de maîtrise du framework.

Je ne suis pas d'accord sur le fait que développer en anglais est une bonne pratique. La bonne pratique est de coder de telle sorte que la majorité des gens qui vont lire le code ensuite sauront le comprendre facilement. Sur des projets open-source donc à échelle mondiale, ça signifie l'anglais. Mais sur mon projet pro actuel on code en français, car une traduction arbitraire de tous les termes métiers de notre client ne ferait qu'embrouiller tout le monde.

@MachinisteWeb
Copy link
Member Author

MachinisteWeb commented May 5, 2017

Oui et non. Je veux dire que j'ai présupposer qui le niveau d'anglais était corrélée à la capacité à entrer plus profondément dans une techno. Je ne sais pas dans quel mesure c'est le cas.

Tu as raison en ce qui concerne le nommage du code. Je ne l'avais pas envisagé comme cela pour le projet pro dans un eco-système fondamentalement français.

J'étais resté sur l'adage de mes écoles supérieurs qui est de tout faire en anglais « au cas où » le projet viendrait à être utilisé dans d'autres langues. C'est probablement pour cela qu'on nous apprend « à toujours développer en anglais ». Mais puisque l'important c'est le travail en équipe. Apprendre Vue pour travailler en français dans une équipe française donne du sens au fait que les exemples soient en français (nommage de variable et méthode).

Mon dernier point c'est de savoir si c'est le fait de traduire les exemples qui conduisent à ce type de code function addVoiture() {} qui me rendent fou. Après est-ce que là aussi c'est à moi de mettre de l'eau dans mon vin.

J'aimerai vraiment des avis tiers parce que je suis vraiment tenter de te suivre mais c'est trop loin de la « religion » inculqué lors de mes études. Tu vois j'en suis toujours me demander si c'est rendre service de mettre ajouterVoiture plutôt que addCar, mais pourquoi pas.

Si je résume on a deux pensées qui s'affrontent :

Toujours apprendre à développer « en anglais » même si on utilise une documentation française pour plus de rapidité d'accès et de compréhension à l'information ce qui permet de travailler sur un code à l'international. Ça c'est le mot d'ordre dans les grandes écoles.

vs

Développer en « français » avec de la documentation française car si un produit n'est pas international les membres du projet s'en sortirons mieux avec du code français et c'est logique.

Je fais parti de la première école même si ton explication à tout son sens.

@sylvainpolletvillard
Copy link
Member

Je pense que c'est surtout une préférence de ton professeur plutôt que "le mot d'ordre des grandes écoles". Je n'ai pas eu le même son de cloche pendant mes études en tout cas. Enfin si la question se pose pour un code à l'international, ici on travaille bien sur une traduction française 😉

Et oui, faire du franglais addVoiture ou ajouterCar c'est pire que tout, puisque seuls les personnes parlant les deux langues peuvent espérer comprendre quelque-chose.

@Kocal
Copy link
Member

Kocal commented May 6, 2017

J'ai moi aussi toujours été habitué à développer « en anglais », avec une documentation en anglais, ou alors en français (selon le besoin ou le public visé).

À part si tu ne fais que du WLangage et que tu viens d'arriver sur un exemple de code (en anglais) de Vue, tout développeur (junior ou senior) est censé comprendre un minimum l'anglais et donc comprendre le code.

Je trouve que le code en anglais reste relativement simple à comprendre. Du moins, un développeur aura beaucoup plus de faciliter à le comprendre, qu'à comprendre un article en anglais de 400 mots par exemple.

@sylvainpolletvillard
Copy link
Member

Je tiens juste à rappeler qu'en tant que traducteurs, nous ne sommes pas objectifs sur la facilité de compréhension de l'anglais.

@MachinisteWeb
Copy link
Member Author

Pour avoir eu 6/20 au bac, je n'en suis pas si sur :D. Mais personne n'est condamné à être éternellement mauvais.

Plus sérieusement pour appréhender des choses plus facilement comparable :

Pourquoi ne pas avoir traduit « Hook » par « Point d'ancrage » et traduire les variables de codes ?

@sylvainpolletvillard
Copy link
Member

Parce que hook est francisé : https://fr.wikipedia.org/wiki/Hook_(informatique)

@Kocal
Copy link
Member

Kocal commented May 6, 2017

Oh, je ne pensais pas que hook était francisé.
De plus, je trouve que traduire ce terme lui fait perdre de la signification...

@posva
Copy link

posva commented Jun 12, 2017

J'ai voté pour ne pas traduire les noms de variables, etc car les autres docs ne le font pas mais @sylvainpolletvillard a raison, cela rend la doc plus accessible à la cible, ou du moins c'est ce que l'on peut s'attendre. Honnêtement, je vous fais confiance sur la trad et les choix à faire, je dirais même que vous vous prenez la tête un poil de trop 🙂
La seule chose que je peux conseiller est de trouver quelques personnes qui ne parlent pas anglais ou très peu (une vrai cible de la trad, quoi) et de lui montrer les deux exemples pour voir lequel il comprends mieux. C'est la seule façon d'être sûr. Je pense que c'est facile à faire sur des forums en Français

@MachinisteWeb
Copy link
Member Author

MachinisteWeb commented Jun 12, 2017

Ça rejoint plus ou moins ce que disait @sylvainpolletvillard

Je tiens juste à rappeler qu'en tant que traducteurs, nous ne sommes pas objectifs sur la facilité de compréhension de l'anglais.

On pourrait p-e se servir de l'API pour un exemple full traduit et du guide pour un exemple semi-traduit afin de faire un vote avec du concret auprès d'utilisateurs lambda des forums/chat FR.

@posva
Copy link

posva commented Jun 12, 2017

autant prendre deux exemple de la même nature, ça peut être le même example d'ailleurs, le guide est sûrement mieux

@MachinisteWeb
Copy link
Member Author

J'aurais moi aussi été tenté de faire le guide en français complet (au moins la partie Essentiel) et l'API en semi-anglais mais on a (actuellement) fait l'inverse x_X haha.

@sylvainpolletvillard
Copy link
Member

+1 sur le fait qu'on se prend trop la tête, on aura tout le temps de pinailler sur ce genre de détails quand on aura fini la traduction en premier lieu 😄

@MachinisteWeb
Copy link
Member Author

MachinisteWeb commented Jun 12, 2017

Juste un petit -1 pour le « on se prend la tête ». Je trouve toute réflexion très intéressante et aucune prise de décision rapide et définitive n'est nécessaire dans un cadre comme Github. Personnellement se sont « les prises de tête » qui me permette de reconstruire perpétuellement ma vision du monde. En holacrtie on appel ça des tensions :), et ce n'est pas péjoratif : http://labdsurlholacracy.com/bande-dessinee-holacracy

@sylvainpolletvillard
Copy link
Member

Oh on peut sûrement se prendre la tête pour débattre de si c'est bien ou pas de se prendre la tête. Tout ce que je dis c'est que cette question n'est pas prioritaire et qu'on peut toujours le mettre de côté pour y revenir une fois le reste de la traduction finie. On ne va pas refuser des PR à cause de ça

@MachinisteWeb
Copy link
Member Author

MachinisteWeb commented Jun 12, 2017

Il n'est pas question de bloquer le travail de qui que ce soit ! Le travail ça se bloque en review sur des points rapide :)

@sylvainpolletvillard
Copy link
Member

Soit dit en passant, vu que je suis modérateur-rédacteur sur developpez.com : il n'y a pas de style developpez.com-like, le choix est laissé à l'auteur. Sur mes articles perso on trouve un mélange d'anglais et de français, preuve que ce n'est pas une question à laquelle j'accorde beaucoup d'importance ^^

@MachinisteWeb
Copy link
Member Author

Ok @sylvainpolletvillard, m'a faute, j'ai parcouru quelques articles qui allait dans ce sens et j'en ai déduit que c'était une généralité.

On va donc faire comme suit :
— API, conserve la full traduction tel que déjà bien entamée.
— Guide, conserve la traduction partielle tel que déjà bien entamée.

Nous rediscuterons du point si cela soulève des problèmes ultérieurement ce qui, in fine pour le moment, n'est pas le cas (ou pas possible de décider nous même au vu de notre niveau avancé)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants