¿Por que programar en Inglés?
Como desarrolladores de habla no inglesa podemos optar por escribir código, tablas, funciones, etc, en nuestro idioma nativo; O podemos escribir todo el código en inglés.
La lengua nativa es la que naturalmente dominamos. Nos permite encontrar de forma natural sinónimos, antónimos, acepciones de una misma palabra, diferencias sutiles de apreciación, etc.
En inglés te puedes encontrar empleando términos incorrectos para definir conceptos o partes de tu sistema. Por ejemplo, ¿usamos customer o client?, ¿name o firstname?,¿lastname o surname?…
Incluso podemos tener una mezcla de ambos, en algunos casos podemos encontrar que la clase Customer tiene el atributo surname, mientras que en la clase User se optó por el atributo lastname.
En tu idioma nativo nunca perderás el tiempo en google translate para verificar como se traduce un término, o encontrar la palabra adecuada; simplemente te dedicas a trabajar y desarrollar tu código….
Un problema siempre ha sido la incorporación de personal en el proyecto, o que todos los integrantes respeten el mismo estándar de codificación. Puede que no todo el mundo tenga el mismo nivel de inglés, entonces estas personas intentarán escribir en español y finalmente quedará una mezcla de conceptos entre inglés y español.
Algunas personas defienden la utilización de su idioma nativo para diferenciar su código del código que pueda pertenecer a una librería externa.
Entonces… ¿Por qué deberíamos usar inglés al desarrollar nuestro código?
Todos comandos y palabras claves de los lenguajes de programación (los más usados) se encuentran en inglés, por lo cual si utilizaríamos nuestro idioma nativo tendríamos una mezcla inevitable. Veamos un ejemplo con la clase Cliente:
public class Cliente{
protected String nombre;
protected String apellido;
….
public String getNombre()…
public String getApellido()…
}
Al codificar en Español tenemos una mezcla inevitable de la palabra get con el atributo nombre, algo que no queda prolijo ni legible a simple vista. Al codificar en inglés y utilizar lenguajes de programación basados en el inglés, evitamos mezclar idiomas, lo que hace más fácil la lectura del código
Algunos lenguajes y frameworks están preparados para entender el inglés en términos de semántica. Ejemplo: Ruby on Rails sabe que la tabla en la base de datos para un determinado modelo debe ser siempre el nombre del modelo en plural. Es decir, al tener un modelo “Person”, va a buscar una tabla “people”.
Si queremos participar en proyectos open-source, las contribuciones deben ser en inglés. No conozco un proyecto de código abierto famoso que no esté en inglés.
Acentos, “ç” y caracteres especiales no funcionan bien en todos los lenguajes, haciendo que tengas palabras escritas de forma incorrecta si las escribes en tu idioma. El clásico ejemplo en español es la palabra año, algunos lenguajes pueden no soportar la ñ como nombre de variable o clase, por lo que deberíamos utilizar la palabra anio, anno, o ano, ¿queda feo no?
Si un día planeas trabajar fuera de tu país, las empresas potenciales que quieren contratarte van a querer ver tu código, pero no entenderán si se encuentra en otro idioma. Intenta de tener tus repositorios de Github con código y documentación en inglés.
¿Cuántas veces debemos publicar partes de nuestro código para compartir? ¿O quizás para pedir ayuda?
Es mucho más fácil compartir código escrito en inglés con otros programadores de todo el mundo, o que nos puedan ayudar en foros y grupos. Si lo escribimos en nuestro idioma natal, dejamos afuera a gran parte de los desarrolladores, donde quizás pueda haber alguien que nos ayude con un problema o que pueda utilizar el código que compartimos. Hablando en español, ¿Qué tan fácil nos resulta utilizar código escrito en alemán?
El motivo más importante: el inglés es el idioma internacional para el código (y para las documentaciones). Más específicamente, el inglés americano es el estándar.
Además, nos ayuda a entrenar y mejorar nuestro inglés.
