Na Internet, o senhor pode fingir que o mundo é plano. Independentemente do país em que vive e do idioma que fala, o senhor tem o mesmo acesso ao conhecimento acumulado do mundo que qualquer outro cidadão do planeta Terra. E uma porcentagem cada vez maior desse conhecimento pode e deve estar disponível em seu idioma nativo.
Mas acredito que as regras são diferentes para os programadores. Tanto é assim que vou perguntar o impensável: todo desenvolvedor de software não deveria entender inglês?
Uma quantidade extremamente desproporcional de informações sobre programação está disponível em inglês. A grande maioria das linguagens de programação usa palavras-chave em inglês. Por qualquer métrica que o senhor possa medir, o inglês é o língua franca de programação.
Agora, em termos de alfabetização cultural e viagens, presumir que todos devem falar inglês é uma atitude totalmente inaceitável, o epítome da americano feio.
Mas essas regras não se aplicam a nós.
Não estamos falando de pessoas comuns. Estamos falando de programadores. Cidadãos da Internet. Pessoas que juram lealdade não a um país, mas a um compilador. Os hackers têm sua própria cultura, suas próprias normas e padrões de alfabetização. Eric Raymond observa que o inglês funcional é necessário para verdadeiros hackers:
Como americano e falante nativo de inglês, relutei em sugerir isso, para que não fosse interpretado como uma espécie de imperialismo cultural. Mas vários falantes nativos de outros idiomas me pediram para salientar que o inglês é o idioma de trabalho da cultura hacker e da Internet, e que o senhor precisará conhecê-lo para atuar na comunidade hacker.
Por volta de 1991, fiquei sabendo que muitos hackers que têm o inglês como segundo idioma o usam em discussões técnicas, mesmo quando compartilham a mesma língua materna; foi-me relatado na época que o inglês tem um vocabulário técnico mais rico do que qualquer outro idioma e, portanto, é simplesmente uma ferramenta melhor para o trabalho. Por motivos semelhantes, as traduções de livros técnicos escritos em inglês geralmente não são satisfatórias (quando são feitas).
Linus Torvalds, um finlandês, comenta seu código em inglês (aparentemente nunca lhe ocorreu fazer outra coisa). Sua fluência em inglês tem sido um fator importante em sua capacidade de recrutar uma comunidade mundial de desenvolvedores para o Linux. É um exemplo que vale a pena seguir.
Ser um falante nativo de inglês não garante que o senhor tenha habilidades linguísticas suficientemente boas para atuar como hacker. Se a sua redação for semianalfabeta, gramatical e repleta de erros de ortografia, muitos hackers (inclusive eu) tenderão a ignorá-lo. Embora a escrita desleixada não signifique invariavelmente um pensamento desleixado, geralmente descobrimos que a correlação é forte, e não temos utilidade para pensadores desleixados. Se o senhor ainda não consegue escrever com competência, aprenda a fazê-lo.
É difícil comunicar essa ideia sem sentir que o um programador americano feio. Mas isso não vem de uma nacionalidade ou de um desejo de dominar o mundo. Não é nada mais do que grandes hackers percebendo coletivamente que usar o inglês para discussões técnicas facilita a fazer as coisas. É uma meritocracia de código, não de linguagem, e ninguém (ou pelo menos ninguém que seja são, de qualquer forma) localiza linguagens de programação.
Recebi este e-mail de Slawomir, um programador polonês, há alguns meses. Ele confirmou o que eu sempre suspeitei e acreditei secretamente, mas hesitei em dizer:
Acabei de ouvir o Episódio 29 do podcast Stack Overflow em que o senhor discute a localização de ferramentas para desenvolvedores.
Na minha opinião, não há motivo para traduzir as ferramentas e a documentação do desenvolvedor.
Conheço muitos desenvolvedores na Polônia que preferem (como o Joel mencionou) obter a documentação em inglês em vez da tradução para o polonês, e a razão para isso é que as traduções nem sempre eram precisas. Até mesmo a documentação do desenvolvedor da Microsoft foi traduzida parcialmente ou com erros, portanto, ler o documento original em inglês era mais fácil do que a sopa inglês-polonês.
Se todos blogarem e desenvolverem em inglês, nosso repositório global de soluções e publicações em blogs será muito maior e o senhor terá mais chances de encontrar uma resposta para o seu problema.
Optar conscientemente por mudar do polonês para o inglês me faz lembrar por que abandonei o Visual Basic em favor do C#, por mais doloroso que isso tenha sido. Essas linguagens fazem exatamente as mesmas coisas, e o atrito de escolher a linguagem minoritária era grande. Sempre que pesquisava, encontrava resmas de código e respostas em C# e quase nada em VB.NET. Passei muito tempo convertendo código em VB.NET e introduzindo novos bugs e erros no processo, além de inúmeras bifurcações somente de linguagem. Isso acabou deixando de fazer sentido para mim, como faria para qualquer bom programador.
Defendendo a adoção de inglês como a linguagem padrão de fato do desenvolvimento de software é simples pragmatismo, a mais virtuosa de todas as características dos hackers. Se isso faz de mim um programador americano feio, que seja.