Est-ce que l'apprentissage d'une langue naturelle, en particulier, faciliterait votre carrière en programmation? [fermé]


52

Il semble évident que l'anglais est la langue internationale dominante pour la programmation basée sur des questions précédentes de P.SE (bien qu'un commentaire très voté souligne à juste titre que poser une telle question sur un site à prédominance anglaise faussera les résultats).

Cependant, l’apprentissage d’une langue étrangère pour le développement de logiciels présente-t-il des avantages? Par exemple, les Chinois ont-ils des outils logiciels, langages, technologies, etc. complètement différents? Qu'en est-il du japonais, du russe et d'autres langues autres que le latin? Existe-t-il un monde entier de langages de développement de logiciels, d'outils, etc., n'existant que dans ces autres langages?

Ou bien les personnes qui connaissent ces langues utilisent-elles les outils et les langages que nous connaissons et aimons?


2
+1 Bonne question. Je serais intéressé de me connaître.
Neil

2
Les langues moins communes ont souvent des livres / tutoriels écrits dans la langue maternelle de leur auteur. Par exemple, pendant longtemps, la plupart des produits Ruby étaient japonais avant de devenir populaires.
Jozefg

6
Autrefois, il était utile de connaître le japonais si vous étiez développeur de jeux vidéo sur console.
David Sergey

2
Page intéressante à ce sujet sur Wikipedia sur les langages de programmation non basés sur l'anglais .
Alexandre

1
J'ai travaillé avec des développeurs chinois et russes et ils travaillaient en anglais. Je dirais donc que même s'il est toujours bénéfique d'accroître ses compétences, l'effort d'apprendre une langue difficile (par ce que je veux dire par ne pas utiliser l'alphabet occidental) est probablement négligeable.
Heatwave

Réponses:


44

Je vais répondre à votre question de titre. La réponse est oui, mais pas pour les raisons que vous recherchez. Être multilingue dans les langues parlées, OMI, peut vous aider à séparer les idées des choses utilisées pour les exprimer. Pour des raisons similaires, je vous recommande d’apprendre au moins un langage de syntaxe non basé sur c si vous en avez commencé un.


17
+1 La connaissance de plusieurs langues humaines peut aider à la pensée abstraite, ce qui est souvent applicable dans le développement de logiciels.
Allan

4
+1 (plus si je pouvais) J'ai vu beaucoup trop de gens se créer des problèmes parce qu'ils ne pouvaient pas comprendre la différence entre un concept et les mots utilisés pour le décrire.
Anton

3
Je trouve que connaître une langue des
signes

1
@ TruthOf42 au moins, vous ne trouverez pas de code commenté en ASL.
Nalply

1
@ EricDong je ne sais pas. J'ai appris le norvégien à l'âge de 7 ou 8 ans. Au fil des ans, j’ai l’impression d’interagir avec les gens et de constater qu’un grand nombre d’entre eux ne se surprennent pas régulièrement en train de penser de façon non verbale. Je pense que connaître plus d'une langue parlée aiderait beaucoup à cela. Connaître l'ASL aiderait probablement encore plus. Et bien sûr, apprendre plusieurs langages de programmation dans des écoles de design très différentes aide beaucoup aussi. Je suis un poète moche mais je suppose que c'est beaucoup comme ça. Plus vous en voyez derrière le rideau de mots, plus vous exprimez vos idées avec efficacité.
Erik Reppen

13

Non, vous ne manquez aucun matériel d'étude.
En tant que néerlandophone, je peux vous promettre que mon environnement de développement + la plupart de mes documents de référence sont écrits en anglais. Il y a quelques syllabi qui sont écrits dans une langue différente, mais je peux vous assurer qu'il n'y a pas de magie dans aucun d'entre eux.

Cependant, j'imagine que la documentation sur les API / webservices / projets ou les commentaires en code source peuvent être dans une langue autre que l'anglais. Pour cela, je vous suggérerais de couvrir certaines des langues les plus parlées: espagnol, arabe et chinois


5
Cela dépendra aussi bien sûr du domaine choisi - pour les jeux, j'imagine que le japonais pourrait être assez pratique ....
Clockwork-Muse

J'ai travaillé sur du code commenté en trois langues différentes: français, anglais et allemand.
Nalply

12

Cela peut sembler judicieux de vouloir se spécialiser dans une technologie spécifique mise au point dans un pays autre que l’anglais.

SAP, par exemple, est une société allemande. SAP ERP, le géant d'un logiciel généralement appelé "SAP", a la plupart de ses modules logiciels utilisateur écrits dans le propre langage de programmation ABAP de SAP. En tant que développeur, vous pouvez (et devez souvent) consulter le code ABAP.

Il y a dix ans, l'essentiel du développement ABAP avait eu lieu en Allemagne et il n'existait aucune politique exigeant que les commentaires et les identifiants soient en anglais. Vous trouvez donc beaucoup d'allemand dans le code ABAP existant.

En tant que développeur ABAP, j'ai souvent besoin de déboguer le code hérité écrit par SAP. Je parle un allemand, je ne suis donc pas ennuyé d’alterner mentalement entre l’allemand et l’anglais, mais je plains vraiment tous ceux qui ne parlent pas allemand et se retrouvent soudainement dans un code source commenté en allemand.

Vous trouvez également un peu d’allemand dans les anciennes API. Par exemple, l'heure actuelle est trouvée dans la variable globale SY-UZEIT. "Uzeit" est l'abréviation de "Uhrzeit", qui est l'allemand pour "Heure du jour". Un client est un KUNNR"Kundennummer", une somme d'argent dans la devise interne est un BETRH"Betrag - Hauswährung" etc.

J'ai entendu des anecdotes sur de pauvres programmeurs ABAP non allemands qui ont un dictionnaire allemand à côté de leur livre de référence ABAP.


J'ai eu une expérience similaire en travaillant avec TYPO3.
Liori

9

Si vous ne planifiez pas votre carrière comme la Chine avec un marché autonome, je parierais que l'anglais est plus que suffisant. Les amateurs peuvent utiliser d'autres langues, mais dans toutes les œuvres payées que je voyais n'importe où autour de l'anglais, c'était la langue obligatoire. Pour des raisons pratiques aussi.

D'autre part, connaître plus de langues peut vous aider dans votre carrière dans les activités satellites. De nombreux programmes sont localisés et la traduction et le test requièrent la connaissance de la langue cible. C'est une "compétence" précieuse. Donc, si vous avez des affinités pour cela, allez-y et apprenez.


1
OMI c'est généralement une erreur d'employer un traducteur qui n'a pas été élevé parlant la langue cible. Beaucoup d'Américains peuvent être assez compétents pour traduire une langue étrangère en anglais, mais très peu seront compétents pour traduire l'anglais dans une autre langue.
Kevin Cline

2
Bien sûr, et un programmeur serait un gaspillage en tant que traducteur aussi - mais c'est bien s'il peut repérer des problèmes liés à l10n
Balog Pal

8

Oui, apprendre une autre langue facilitera votre carrière en programmation. En effet, à mon avis, l’apprentissage d’une autre langue facilitera toutes les carrières.

C’est pour plusieurs raisons, dont certaines ont déjà été évoquées ci-dessus:

  • Apprendre une autre langue élargira vos horizons; cela vous exposera nécessairement à des aspects d'une autre culture et d'une autre manière de penser et vous donnera une expérience dans la transposition de cela dans vos propres pensées. Évidemment, ceci est parallèle à la programmation, mais c’est aussi une compétence généralement utile pour la communication entre personnes.
  • Apprendre une autre langue (surtout la deuxième) vous aidera à comprendre le fonctionnement de votre propre langue, car vous êtes obligé d’analyser le fonctionnement de la grammaire de la nouvelle langue et sa correspondance avec la grammaire de votre propre langue, plutôt que de l’accepter aveuglément " c'est comme ça". Même si vous utilisez uniquement votre langue maternelle dans votre carrière, une meilleure compréhension vous aidera à communiquer plus efficacement.
  • Avoir même un peu de connaissance d'une autre langue peut vous rendre très bien. Toutes les entreprises, à l'exception des plus petites, devront traiter avec des fournisseurs ou des clients étrangers. Même si vous travaillez tous les deux en anglais, le fait de pouvoir échanger de petites plaisanteries (par exemple, des salutations) avec des personnes dans leur langue maternelle crée une bonne impression. Être disponible pour créer cette bonne impression augmentera votre réputation auprès de votre entreprise.
  • Connaître une autre langue vous aidera à communiquer plus efficacement avec les locuteurs natifs de cette langue, même si vous utilisez votre langue maternelle. En effet, vous pouvez repérer des tentatives d'utilisation de constructions courantes dans la langue étrangère et en tirer le sens, même si elles ne sont pas aussi claires dans la vôtre. De même, cela vous aidera à repérer et à comprendre tous les faux amis qui pourraient surgir.
  • Bien connaître une langue ouvre la possibilité de travailler dans des pays où cette langue est parlée. Cela élargit le bassin d'emplois potentiels qui s'offrent à vous, ce qui signifie que vous aurez plus d'opportunités pour faire avancer votre carrière.

Donc, pour répondre directement à vos questions: l’apprentissage d’une langue étrangère ouvrira-t-il une nouvelle gamme étonnante de langages de programmation et de ressources d’apprentissage? Cela fera-t-il de vous un meilleur ingénieur logiciel? Probablement pas directement. Mais cela vous aidera-t-il à devenir une personne meilleure, plus complète, plus apte au travail et à faire progresser votre carrière? Absolument.


2
+1! Pour le dire plus largement: c'est parce qu'apprendre n'importe quoi (pour la plupart des valeurs) fera avancer toute carrière. Mais pas que ça. Un humain plus éduqué a simplement une vie meilleure.
Ingo

Les non-anglophones voient la faiblesse de l'anglais lorsque les API ne sont pas axées sur les mathématiques techniques ou les affaires. Penser dans une langue et traduire dans une autre (avec une règle, une syntaxe, une grammaire différentes) nécessite de la créativité, de l'imagination et de l'humour.
cl-r

7

Si l'anglais est votre langue maternelle, apprendre une langue étrangère n'aidera probablement pas votre carrière en programmation beaucoup directement. Personnellement, je pense que connaître les langues étrangères est un très bon exercice général qui élargit vos horizons ("Wie viele Sprachen du printemps, sooftmal bist du Mensch"), mais si vous cherchez seulement des gains instantanés, cela ne vaut probablement pas la peine.

Mis à part la réalisation de soi, voici des situations dans lesquelles vous pourriez tirer avantage de la connaissance d'une langue étrangère pour des raisons purement pragmatiques:

  • Coopération avec des partenaires ou des clients de l'étranger. Même si vous ne connaissez pas suffisamment la langue pour communiquer, connaître certaines notions de base peut vous mettre au courant des problèmes pouvant survenir dans la communication ou des problèmes que les utilisateurs de langues étrangères peuvent rencontrer avec votre produit.
  • Travailler sur n'importe quel produit qui doit être bien internationalisé. Sans connaître les bases d'une langue étrangère, vous pouvez vous demander à quoi servent toutes les bibliothèques complexes de i18n (par exemple, pourquoi le message "% d nouveaux messages" peut nécessiter plusieurs traductions différentes dans la même langue, en fonction de la valeur de% d) .
  • Cela aide à comprendre les complexités de la gestion Unicode appropriée.

Cependant, comme mentionné précédemment, dans de nombreuses situations, les avantages ne seront pas rentables si vous ne regardez que les gains immédiats.


6

L'anglais est la langue dominante sur le terrain, pas seulement dans l'UE / les États-Unis.

En tant que locuteur natif de chinois, je sais que des personnes utilisent le même ensemble de systèmes d’exploitation, de langages de programmation et d’outils. Certaines d'entre elles sont traduites en chinois, les autres ne sont pas aussi difficiles que les romans anglais. Il existe quelques "langages de programmation chinois" qui ont des mots-clés chinois, ils ne sont pas largement utilisés ou même considérés comme des choses sérieuses.

Actuellement, je vis au Japon et je vois des choses similaires ici. Donc au moins, je ne pense pas que connaître le chinois, le japonais ou une autre langue naturelle mystérieuse puisse donner accès à des ressources irremplaçables.

D'autre part, j'ai bénéficié de la théorie sémantique (non spécifiée par la langue). À la fois en langage naturel et en langage de programmation, cela m'a permis de distinguer et d'affiner les expressions d'une manière similaire à la révision de code.


5

L’apprentissage d’une autre langue a pour seul avantage direct de vous donner une meilleure idée des problèmes liés à i18n . Autrement dit, tout comme les formats de date, il existe différentes règles pour la grammaire, de sorte que la localisation ne peut pas être effectuée en ajoutant simplement des espaces réservés pour les chaînes.

Si vous souhaitez simplement améliorer votre carrière en programmation, votre emploi du temps peut être utilisé de manière beaucoup plus efficace, par exemple, vous pouvez améliorer vos compétences existantes ou apprendre un langage de programmation différent , de préférence sous un paradigme différent .

Cela dit, l’apprentissage d’une autre langue a de nombreux effets directs et secondaires bénéfiques, surtout si vous êtes monolingue. Beaucoup de choses qui semblent évidentes aux personnes multilingues ne le sont vraiment pas si vous n’avez pas été exposés à différentes langues. Par exemple, j’ai remarqué que beaucoup de personnes monolingues ne semblaient pas se rendre compte que les blagues dépendantes de la langue comme des calembours) ne fonctionnent pas du tout quand ils sont traduits. Cela peut aider à vous empêcher de faire des gaffes insensibles, dont mon exemple préféré est l'histoire apocryphe de Pepsi, qui raconte que son personnage "s'anime" est mal traduit en chinois par "ramener en vie vos ancêtres décédés" . Avoir cette sensibilité supplémentaire est utile dans n'importe quelle carrière.

En conclusion, je pense que l’apprentissage d’une nouvelle langue offre de grands avantages; Je demande juste si c'est une utilisation efficace de votre temps.


Je suppose que l'anglais est ta mère tonge.
Tulains Córdova

@ user61852 Je ne sais pas comment vous y prendreriez, mais vous vous trompez.
congusbongus

3

L'anglais est la langue de la résolution de problèmes.

Regardez cette courte vidéo.

"Votre langue maternelle est votre vie, mais avec l'anglais, vous participez à une conversation plus large, à une conversation mondiale sur des problèmes mondiaux, comme le changement climatique ou la pauvreté ... les mathématiques sont le langage de la science, la musique est le langage des émotions et à présent l'anglais devient le langage de la résolution de problèmes ".

-- Jay Walker, american inventor and entrepreneur

Je suppose que si l'empire romain ne s'était pas effondré, nous écririons en latin maintenant.

Définitivement l'anglais est la langue à parcourir. Ma langue maternelle est l'espagnol et bien que l'espagnol soit l'une des langues les plus parlées, la quantité de matériel technique, de documentation, de tutoriels, de blogs, de sites de questions-réponses, etc. L'espagnol ne se compare même pas à la quantité de ressources disponibles en anglais .

L'anglais a également une qualité concise qui le rend sans ambiguïté dans de nombreux contextes.

Autre raison: iTunes U.


1
"L'anglais est la langue de la résolution de problèmes." Qu'est-ce que ça veut dire?
Ypercubeᵀᴹ


2

Je parle couramment le chinois et j'ai parfois jeté un coup d'œil sur le monde des programmeurs chinois. La plupart de leur matériel d'apprentissage est traduit en anglais, vous ne perdez donc rien de ce côté-là. Cependant, il est intéressant de voir les différences culturelles dans les choix technologiques en matière de programmation. Par exemple, Go semble être plus populaire en Chine que dans tout autre pays. Vous pouvez effectuer une recherche google tendances sur "golang": http://www.google.com/trends/explore?q=golang#q=golang&cmpt=q


2

Bien que l'anglais soit le langage de facto des développeurs de logiciels, j'ai parfois pu trouver des astuces et des solutions sur des sites communautaires dans d'autres langues. La traduction automatique rend de telles pages exsangues, il est donc agréable de pouvoir les lire telles quelles.

Bien sûr, si vous travaillez avec des personnes plus compétentes dans une autre langue, il peut être très utile, au sens professionnel comme au sens personnel, de pouvoir communiquer dans leur langue maternelle. Selon leur niveau et le vôtre, il sera peut-être plus facile d'apprendre quelques mots techniques dans leur langue et de les faire s'exprimer de la manière la plus confortable possible, plutôt que de se concentrer sur une langue dans laquelle ils risquent davantage de commettre des erreurs sémantiques.


Les traducteurs automatiques traduisent "table" en espagnol "mesa", ce qui signifie que les meubles sur lesquels vous êtes servis sont nourris, quel que soit le contexte qui concerne les tables de base de données.
Tulains Córdova

2

Cela dépend de ce que vous entendez par carrière .

Si vous avez un emploi en tant qu'employé dans votre pays et que vous souhaitez qu'il le reste, vous n'avez généralement pas besoin de connaître une langue autre que votre langue maternelle et l'anglais. Une exception peut être lorsque votre client principal est une société étrangère et que vous devez connaître la langue de cette société. Par exemple, beaucoup d’entreprises de l’ouest de la Pologne coopèrent principalement avec des entreprises allemandes et sachant que l’allemand constitue un avantage important, voire même une obligation, de travailler en tant que développeur senior (les juniors n’ont pas de contact avec les clients mais ne sont pas obligés de parler allemand). ).

Toutefois, si vous souhaitez devenir pigiste , vous devez maîtriser la langue de votre client. Vous pouvez bien sûr cibler uniquement les pays anglophones, mais le fait de connaître, par exemple, l'allemand ou la France vous offre davantage d'opportunités et des contrats potentiellement mieux rémunérés.

Si vous voulez travailler à l'étranger , cela dépend. Bien sûr, aller aux États-Unis ou au Royaume-Uni, l'anglais est le bon choix. Dans les petits pays (en Europe), il existe de nombreuses équipes anglophones. Vous pouvez donc, en tant que contractant étranger, espérer occuper de nombreux emplois anglophones, par exemple au Danemark ou aux Pays-Bas.

Mais dans les grands pays comme l'Allemagne, les emplois anglophones sont une exception et, sans connaître l'allemand, vous avez peu de chances de trouver quelque chose. Pour obtenir les contrats les mieux rémunérés, vous devez parler couramment allemand, mais vous pouvez alors obtenir de très bons emplois rémunérés .


2

C'est une bonne question. Je dirais qu'il est utile d'apprendre une autre langue parlée pour la même raison qu'il est utile d'apprendre un autre langage de programmation: cela vous permet de penser à des choses d'une manière nouvelle.

Pour le meilleur ou pour le pire, l'anglais est la langue universelle des programmeurs. Vous ne manquerez donc probablement pas beaucoup de choses uniquement en anglais.


1

Il semble que tout le monde ici semble convenir qu'il n'y a pas d'avantage immédiat à apprendre directement une autre langue pour la programmation (les langages de programmation sont principalement basés sur l'anglais, il s'agit du langage des manuels et des revues d'informatique, etc.).

Néanmoins, connaître une langue étrangère est bénéfique à bien des égards. C'est du moins ce que me dit mon expérience d'apprentissage de plusieurs langues étrangères. Vous apprendrez différentes manières d’exprimer des choses dans d’autres langues et cela vous ouvrira de nouvelles façons de regarder les choses.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.