Aprender alguma linguagem natural, em particular, promoveria sua carreira em programação? [fechadas]


52

Parece aparente que o inglês é o idioma internacional dominante para a programação com base em perguntas anteriores da P.SE (embora um comentário altamente votado indique corretamente que fazer uma pergunta como essa em um site predominantemente inglês distorcerá os resultados).

No entanto, existe benefício em aprender uma língua estrangeira para o desenvolvimento de software? Por exemplo, os chineses têm ferramentas de software, idiomas, tecnologias, etc completamente diferentes? E o japonês, o russo e outros idiomas não latinos? Existe um mundo inteiro de linguagens de desenvolvimento de software, ferramentas etc. que só existe nessas outras linguagens?

Ou as pessoas que conhecem esses idiomas usam as ferramentas e os idiomas que conhecemos e amamos?


2
+1. Boa pergunta. Eu estaria interessado em me conhecer.
Neil

2
Os idiomas menos comuns costumam ter livros / tutoriais escritos no idioma nativo do autor. Por exemplo, por muito tempo a maioria das coisas de Ruby era japonesa antes de se tornar popular.
21413 Jozefg

6
Antigamente, era útil saber japonês se você era desenvolvedor de videogame para console.
David Sergey

2
Página interessante relacionada a isso na Wikipedia sobre linguagens de programação baseadas em inglês .
28413 Alexander Alexander

11
Eu trabalhei com desenvolvedores chineses e russos e eles trabalharam em inglês, então eu diria que, embora seja sempre benéfico aumentar suas habilidades, o esforço de aprender um idioma difícil (com o que quero dizer que não usa o alfabeto ocidental) é provavelmente insignificante.
precisa

Respostas:


44

Vou responder sua pergunta sobre o título. A resposta é sim, mas não pelas razões pelas quais você procura. Ser multilíngue em idiomas falados, IMO, pode ajudá-lo a separar idéias das coisas usadas para expressá-las. Por razões semelhantes, recomendo aprender pelo menos um idioma de sintaxe não baseado em c se você iniciou com um.


17
+1 O conhecimento de várias linguagens humanas pode ajudar com o pensamento abstrato, e isso geralmente é aplicável no desenvolvimento de software.
Allan

4
+1 (mais se eu pudesse) Já vi muitas pessoas criarem problemas para si mesmas porque não conseguiam entender a diferença entre um conceito e as palavras usadas para descrevê-lo.
Anton

3
Acho saber uma língua assinado, como ASL, dá-lhe uma perspectiva diferente sobre línguas em geral
TruthOf42

11
@ TruthOf42 pelo menos você não encontrará o código comentado em ASL.
nalply

11
@EricDong eu não sei. Eu aprendi norueguês quando tinha 7-8 anos de idade. Eu tenho a impressão, pela interação com as pessoas ao longo dos anos, de que muitas pessoas não se pegam regularmente pensando não verbalmente. Eu acho que conhecer mais de uma língua falada ajudaria muito com isso. Saber ASL provavelmente ajudaria ainda mais. E, é claro, aprender várias linguagens de programação de escolas de design muito diferentes também ajuda muito. Sou um péssimo poeta, mas suspeito que seja assim. Quanto mais você vê por trás da cortina de palavras, mais eficiente fica em expressar qualquer ideia.
precisa

13

Não. Você não está perdendo nenhum material de estudo.
Como falante nativo de holandês, posso prometer que meu ambiente de desenvolvimento + a maior parte do meu material de referência está escrito em inglês. Existem alguns programas escritos em um idioma diferente, mas posso garantir que não há mágica em nenhum deles.

No entanto, posso imaginar que a documentação dos APIs / serviços da web / projetos ou comentários no código-fonte possa estar em um idioma diferente do inglês. Para isso, sugiro que você cubra alguns dos idiomas mais falados: espanhol, árabe e chinês


5
Isso também irá naturalmente depender do campo escolhido - para os jogos, eu imagino japonesa pode ser bastante útil ....
Clockwork-Muse

Eu trabalhei no código comentado em três idiomas diferentes: francês, inglês e alemão.
nalply

12

Pode fazer sentido quando você deseja se especializar em uma tecnologia específica desenvolvida em um país que não seja o inglês.

A SAP, por exemplo, é uma empresa alemã. O SAP ERP, o gigante de um software geralmente chamado de "SAP", possui a maioria dos módulos de software do usuário escritos na linguagem de programação ABAP da SAP. Como desenvolvedor, você pode (e geralmente precisa) olhar o código ABAP.

Há uma década, a maior parte do desenvolvimento do ABAP ocorreu na Alemanha e não havia uma política que os comentários e identificadores precisassem estar em inglês; portanto, você encontra muito alemão no código ABAP herdado.

Como desenvolvedor de ABAP, frequentemente preciso depurar código legado escrito pela SAP. Eu sou um falante nativo de alemão, então é apenas um aborrecimento leve eu alternar mentalmente entre alemão e inglês o tempo todo, mas sinto pena de todos que não falam alemão e de repente se encontram no código fonte comentado em alemão.

Você também encontra algum alemão nas APIs mais antigas. Por exemplo, o horário atual é encontrado na variável global SY-UZEIT. "Uzeit" é a abreviação de "Uhrzeit", que é alemão para "Hora do dia". Um customerID é um KUNNR("Kundennummer"), uma quantia em dinheiro na moeda interna é um BETRH("Betrag - Hauswährung") etc.

Ouvi histórias de pobres programadores ABAP não alemães que têm um dicionário em alemão ao lado de seu livro de referência ABAP.


Eu tive uma experiência semelhante ao trabalhar com o TYPO3.
Liori 26/06

9

A menos que você planeje sua carreira como a China com um mercado auto-sustentável, aposto que o inglês é mais que suficiente. O Hobbyist pode usar outros idiomas, mas em todos os trabalhos pagos que eu vi em qualquer lugar do inglês havia o idioma obrigatório. Por razões práticas também.

Por outro lado, conhecer mais idiomas pode ajudar sua carreira em atividades via satélite. Muitos programas são localizados, e a tradução e o teste exigem que as pessoas conheçam o idioma de destino. É uma valiosa "habilidade". Então, se você tem afinidade por isso, basta seguir em frente e aprender.


11
Na IMO, geralmente é um erro contratar um tradutor que não foi criado falando o idioma de destino. Muitos americanos podem ser bastante competentes para traduzir um idioma estrangeiro para o inglês, mas muito poucos serão capazes de traduzir o inglês para outro idioma.
precisa

2
certeza, e um programador seria um desperdício como tradutor também - mas é bom se ele pode detectar problemas relacionados com a l10n
Balog Pal

8

Sim, aprender outro idioma promoverá sua carreira em programação. Isso ocorre porque, na minha opinião, aprender outro idioma promoverá qualquer carreira.

Isso ocorre por várias razões, algumas das quais já foram mencionadas acima:

  • Aprender outro idioma expandirá seus horizontes; necessariamente irá expô-lo a aspectos de outra cultura e maneira de pensar e lhe dará experiência em mapear isso para seus próprios pensamentos. Obviamente, isso tem paralelos com a programação, mas também é uma habilidade geralmente útil para a comunicação entre pessoas.
  • Aprender outro idioma (especialmente o seu segundo) ajudará você a entender como o seu próprio idioma funciona, porque você é forçado a analisar como a gramática do novo idioma funciona e como ela é mapeada para a gramática do seu próprio idioma, em vez de aceitar cegamente que " é assim que é". Mesmo que você use apenas sua língua nativa em sua carreira, entender melhor isso ajudará você a se comunicar de maneira mais eficaz.
  • Ter um pouco de conhecimento de outro idioma pode fazer você parecer realmente bom. Todas as empresas, exceto as menores, terão que lidar com fornecedores ou clientes estrangeiros. Mesmo que os dois realizem seus negócios em inglês, poder trocar pequenas gentilezas (cumprimentos, por exemplo) com pessoas em sua língua nativa cria uma boa impressão. Estar disponível para criar essa boa impressão aumentará sua posição na empresa.
  • Conhecer outro idioma o ajudará a se comunicar de maneira mais eficaz com os falantes nativos desse idioma, mesmo se você estiver usando seu idioma nativo. Isso ocorre porque você pode identificar tentativas de usar construções comuns na língua estrangeira e obter o significado delas, mesmo que não sejam tão claras por si só. Da mesma forma, ajudará você a identificar e entender quaisquer amigos falsos que possam surgir.
  • Conhecer bem um idioma abre a possibilidade de trabalhar em países onde esse idioma é falado. Isso amplia o conjunto de possíveis empregos disponíveis, o que significa que você terá mais oportunidades para continuar sua carreira.

Portanto, para responder diretamente às suas perguntas: o aprendizado de uma língua estrangeira abrirá uma incrível variedade de linguagens de programação e recursos de aprendizagem? Não. Isso fará de você um melhor engenheiro de software? Provavelmente não diretamente. Mas isso ajudará a torná-lo uma pessoa melhor, mais completa e mais empregável e a avançar na sua carreira? Absolutamente.


2
+1! Para dizer de maneira mais ampla: Isso ocorre porque aprender qualquer coisa (para a maioria dos valores de qualquer) promoverá qualquer carreira. Mas não só isso. Um humano mais educado simplesmente tem uma vida melhor.
Ingo

Pessoas que não são inglesas vêem a fraqueza do inglês quando a API não está focada em matemática ou negócios técnicos. Pensar em um idioma e traduzir em outro (com regras, sintaxe, gramática diferentes) precisa de criatividade, imaginação e humor.
cl-r

7

Se o inglês é sua língua nativa, aprender uma língua estrangeira provavelmente não ajudará sua carreira na programação diretamente. Pessoalmente, acho que o conhecimento de línguas estrangeiras é um exercício geral muito bom que expande seus horizontes ("Wie viele Sprachen du sprichst, sooftmal bist du Mensch"), mas se você está apenas buscando ganhos instantâneos, provavelmente não vale a pena.

Auto-realização à parte, aqui estão algumas situações nas quais eu acho que você poderia se beneficiar de conhecer uma língua estrangeira por razões puramente pragmáticas:

  • Cooperação com parceiros ou clientes do exterior. Mesmo que você não conheça o idioma o suficiente para se comunicar, conhecer algumas noções básicas pode informá-lo sobre problemas que possam surgir na comunicação ou sobre problemas que usuários de idiomas estrangeiros possam ter com seu produto.
  • Trabalhar em qualquer produto que precise ser bem internacionalizado. Sem conhecer o básico de algum idioma estrangeiro, você pode ficar imaginando para que servem todas as complexas bibliotecas i18n (por exemplo, por que a mensagem "% d novas mensagens" pode exigir várias traduções diferentes para o mesmo idioma, dependendo do valor de% d) .
  • Ajuda a entender as complexidades do manuseio Unicode adequado.

No entanto, como mencionado anteriormente, em muitas situações os benefícios não valerão o esforço se você apenas observar os ganhos imediatos.


6

O inglês é a língua dominante no campo, não apenas na UE / EUA.

Como falante nativo de chinês, conheço pessoas que estão usando o mesmo conjunto de sistemas operacionais, linguagens de programação e ferramentas. Alguns deles são traduzidos para o chinês, o resto não é tão difícil quanto os romances em inglês. Existem algumas "linguagens de programação chinesas" com palavras-chave em chinês, que não são amplamente usadas ou mesmo consideradas coisas sérias.

Atualmente estou morando no Japão e vejo coisas semelhantes aqui. Então, pelo menos, não acho que o conhecimento de chinês, japonês ou outra língua natural misteriosa possa conceder acesso a recursos insubstituíveis.

Por outro lado, me beneficiei da teoria da semântica (não especificada na linguagem). Tanto na linguagem natural quanto na linguagem de programação, isso me ajudou a distinguir e refinar expressões de maneira semelhante à revisão de código.


5

O único benefício direto de aprender um idioma diferente é dar uma melhor apreciação dos problemas em torno da i18n . Ou seja, assim como os formatos de data, existem regras diferentes para a gramática, de modo que a localização não pode ser feita apenas adicionando espaços reservados para cadeias de caracteres.

Se você quer apenas melhorar sua carreira em programação, há usos muito mais eficazes do seu tempo, como aprimorar suas habilidades existentes ou aprender uma linguagem de programação diferente , de preferência com um paradigma diferente .

Dito isto, existem muitos efeitos diretos e colaterais benéficos para aprender um idioma diferente, especialmente se você é monolíngue. Muitas coisas que parecem óbvias para as pessoas multilíngues não são tão óbvias se você não foi exposto a idiomas diferentes, por exemplo, notei que muitas pessoas monolíngues parecem não perceber que piadas dependentes da linguagem (como trocadilhos) não funcionam quando traduzidas. Isso pode ajudar a impedi-lo de cometer erros insensíveis, dos quais meu exemplo favorito é a história apócrifa do anúncio "reviver" da Pepsi ser traduzido erroneamente em chinês como "dando vida a seus ancestrais mortos" . Ter essa sensibilidade extra é útil em qualquer carreira.

Concluindo, acho que aprender um novo idioma oferece grandes benefícios; Eu apenas questiono se é um uso eficiente do seu tempo.


Eu acho que inglês é sua mãe.
Tulains Córdova

@ user61852 Não faço ideia de como você conseguiria isso, mas você está errado.
congusbongus

3

Inglês é a língua da resolução de problemas.

Assista a este pequeno vídeo.

"Sua língua nativa é a sua vida, mas com o inglês você se torna parte de uma conversa mais ampla, uma conversa global sobre problemas globais, como mudanças climáticas ou pobreza ... a matemática é a linguagem da ciência, a música é a linguagem das emoções e agora o inglês está se tornando a linguagem da resolução de problemas ".

-- Jay Walker, american inventor and entrepreneur

Acho que se o Império Romano não tivesse entrado em colapso, estaríamos escrevendo em latim agora.

Definitivamente inglês é o idioma a seguir. Minha língua nativa é o espanhol e, embora o espanhol seja um dos idiomas mais falados, a quantidade de material técnico, documentação, tutoriais, blogs, sites de perguntas e respostas, etc. em espanhol nem sequer chega aos vastos recursos em inglês .

Também o inglês tem uma qualidade concisa que o torna inequívoco em muitos contextos.

Outro motivo: iTunes U.


11
"Inglês é a língua da resolução de problemas." O que isso significa?
ypercubeᵀᴹ


2

Sou fluente em chinês e, de vez em quando, espiei o mundo dos programadores chineses. A maior parte do material de aprendizado é traduzida para o inglês, para que você não perca nada nessa frente. No entanto, é interessante ver diferenças culturais nas opções de tecnologia de programação. Por exemplo, o Go parece ser mais popular na China do que em qualquer outro país. Você pode verificar fazendo uma pesquisa de tendências do Google por 'golang': http://www.google.com/trends/explore?q=golang#q=golang&cmpt=q


2

Embora o inglês seja o idioma de fato dos desenvolvedores de software, algumas vezes consegui encontrar dicas e soluções em sites da comunidade em outros idiomas. A tradução automatizada faz com que essas páginas fiquem imprecisas, por isso é bom poder lê-lo como está.

Obviamente, se você estiver trabalhando com pessoas com mais proficiência em outro idioma, pode ser muito bom, tanto no sentido profissional quanto pessoal, ser capaz de se comunicar na língua nativa. Dependendo do nível deles e do seu, pode ser mais fácil aprender algumas palavras técnicas em seu idioma e fazer com que se expressem da maneira mais confortável do que convencer seu entendimento a um idioma em que é mais provável que cometam erros semânticos.


Tradutores automáticos traduzem "mesa" para "mesa" em espanhol, o que significa o móvel em que você serve comida, independentemente do contexto das tabelas de banco de dados.
Tulains Córdova

2

Depende do que você entende como carreira .

Se você trabalha como funcionário em seu país e deseja que ele permaneça, geralmente não é necessário conhecer nenhum idioma, exceto seu idioma nativo e inglês. Uma exceção pode ser quando o principal cliente da sua empresa é uma empresa estrangeira e você deve conhecer o idioma dessa empresa. Por exemplo, muitas empresas do oeste da Polônia estão cooperando principalmente com empresas alemãs, e saber que o alemão é uma grande vantagem, ou mesmo um requisito, para trabalhar como desenvolvedores seniores (embora os juniores não tenham contato com o cliente, eles não precisam falar alemão )

No entanto, se você quer ser freelancer , precisa ser fluente no idioma do seu cliente. É claro que você pode segmentar apenas países de língua inglesa, mas saber, por exemplo, alemão ou França oferece mais oportunidades e possíveis contratos com melhores salários.

Se você quer trabalhar no exterior , isso depende. Obviamente, indo para os EUA ou Reino Unido, o inglês é a escolha correta. Em países pequenos (na Europa), existem muitas equipes de língua inglesa; portanto, como contratado estrangeiro, você pode esperar muitos empregos de língua inglesa, por exemplo, na Dinamarca ou na Holanda.

Mas em grandes países como a Alemanha, os empregos de língua inglesa são uma exceção e, sem conhecer bem o alemão, você tem poucas chances de encontrar algo. Para obter os melhores contratos pagos, é necessário falar alemão fluentemente, mas é possível obter bons empregos pagos .


2

Essa é uma boa pergunta. Eu diria que é útil aprender outra linguagem falada pela mesma razão que é útil para aprender outra linguagem de programação: permite que você pense sobre as coisas de novas maneiras.

Para melhor ou pior, o inglês é o idioma universal dos programadores. Portanto, é provável que você não perca muito devido a apenas falar inglês.


1

Parece que todas as pessoas aqui parecem concordar que não há benefício imediato em aprender outro idioma para programação direta (as linguagens de programação são baseadas principalmente em inglês, é a linguagem dos livros e periódicos de ciência da computação, etc.).

No entanto, conhecer uma língua estrangeira é benéfico de várias maneiras. Isso é pelo menos o que minha experiência em aprender várias línguas estrangeiras me diz. Você aprenderá maneiras diferentes de expressar as coisas em outros idiomas e abrirá novas maneiras para você ver as coisas.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.