¿Cómo escriben código las personas que no hablan inglés cuando la sintaxis está en inglés? Los mensajes de error también están en inglés. ¿Cómo sabrían lo que significan? Algunos errores pueden ser bastante detallados.

Para los desarrolladores que no hablan inglés, lo opuesto es aún más sorprendente: ¿cómo escriben el código los desarrolladores de habla inglesa? ¡Cada palabra realmente significa algo en su idioma! Esa idea parece tonta para los desarrolladores que no hablan inglés.
Para nosotros (para quienes el inglés no es nativo) es solo el conjunto de comandos abstractos. Entendemos lo que hacen y los usamos cuando los necesitamos. Es como aprender un nuevo lenguaje: inicialmente solo sabes lo que significa la palabra y cómo usarla, es un mapeo, como cualquier otro lenguaje que no sea de programación. No piensas en “protegido” como algo que realmente necesitas proteger. No piensas en “romper” como algo que necesitas destruir. Estas palabras simplemente no tienen ningún mapeo en el idioma nativo, a menos que sepa inglés. Así que agrega estas nuevas palabras a su idioma nativo, pero su significado está en el contexto de la programación. “pausa”: solo significa el comando que usa para detener la ejecución del ciclo, no algo que se rompe.

Además, y esto es importante, el inglés está muy extendido en todo el mundo, es probable que los desarrolladores sepan inglés de todos modos (lo necesitan para una mejor programación, leer documentos en línea, navegar por la web, etc.) y el conjunto de palabras reservadas en cualquier idioma es pequeño.

Hay muchas palabras que probablemente no significan nada para la mayoría de las personas y las usa mucho en inglés, como los nombres de empresas, por ejemplo, Google. Pero es muy común decir “google it”. Lo mismo con otras palabras nuevas que no conoce desde hace mucho tiempo, como términos científicos: simplemente las usa.

Cuando se toman en serio la programación, aprenden inglés, porque es el idioma principal en el mundo de TI, que es la razón por la cual casi todas las palabras clave del lenguaje de programación están en inglés, la documentación que existe probablemente también esté en inglés en primer lugar. y el idioma en la mayoría de las compañías internacionales es inglés, etc.

¿Por qué es el lenguaje principal en el mundo de TI? Porque las compañías que inventaron los idiomas o sus predecesores fueron en su mayoría grandes compañías estadounidenses (IBM, Xerox, Microsoft) o muchachos, que eran de países con idiomas poco conocidos como el sueco (Erlang), el japonés (Ruby) o el holandés (Python).

El idioma inglés también es adecuado para ser utilizado como fuente de palabras clave en un lenguaje de programación, ya que generalmente tiene palabras cortas y sin signos diacríticos.

Así que volvamos a tu pregunta original. Aprenden inglés y lo usan, no es sorprendente, ¿verdad?

Y como escribió Andrey Mima, ¡la pregunta opuesta es realmente interesante! Para mí (soy nativo en checo), las palabras como clase, retorno, interfaz, cambio, uso … son símbolos artificiales, fáciles de hablar en el contexto técnico, no es algo que aprendí de bebé. De hecho, creo que debe ser realmente incómodo para los nativos ingleses escribir código.

No hay nada realmente inglés sobre ningún lenguaje de programación.

Hay menos de 40 o 50 trabajos reservados en cualquier lenguaje de programación, y en realidad son solo tokens. No necesita saber inglés para memorizar que “for” hace bucles y “if” hace ramificaciones. A menudo recibo programas en francés, alemán, japonés, coreano, etc., y aunque traduzco los comentarios, generalmente no hay necesidad de las variables. De hecho, me he encontrado con variables como zzz, etc., que claramente no tienen sentido en ningún lenguaje.

Entonces decir que cualquier lenguaje de programación está en inglés es simplemente incorrecto en mi opinión.

Los errores siempre se hacen por código, y se internacionalizan fácilmente configurando las opciones correctas de compilación para la localización. Puede ver mensajes de error en cualquiera de los idiomas principales.

Comencé a programar cuando tenía 10 años, y en ese momento no sabía mucho inglés (hola, adiós, gracias y cómo contar). Mi padre me enseñó cómo manejar los disquetes, explorarlos (MS-DOS 2.11) e iniciar programas. También me presentó a GW-Basic para que supiera cómo guardar, cargar y ejecutar. Pero eso fue todo. Su línea de trabajo era Unix y Oracle, no PC.

Tuve acceso a un libro (manual de referencia GW-Basic) pero, por supuesto, estaba en inglés. Ni siquiera tenía fotos para mirar. Pero había un código de muestra. Entonces podría escribir el código, ejecutarlo y ver qué hizo. Entonces podría modificarlo y volver a ejecutarlo. Si recibí un mensaje de error, tuve que regresar e intentar otra cosa hasta que funcionó.

Fui a la biblioteca pública en el pequeño pueblo sueco de Arboga donde vivía. Tenían cuatro libros sobre computadoras. Uno fue “101 Juegos básicos de computadora”. Reconocí la palabra “Básico” y vi que había mucho código, así que lo tomé prestado.

Unos meses después, cuando comencé a aprender inglés en la escuela, todo era muy familiar. No me molesté en hacer los deberes ni en estudiar, obtuve todas las calificaciones de todos modos. De alguna manera, en el proceso de jugar con la computadora y los libros en inglés, aprendí el idioma …

Pero el inglés para mí (y para muchos otros suecos) es como tener un vocabulario adicional, con palabras que puedes usar en sueco cuando te refieres a las computadoras. Por ejemplo, acabo de intentar preguntarle a Rebecka quién está sentada a mi lado: ¿ Vilken nivå är du på? = ¿En qué nivel estás? (nivå es una de las palabras suecas para nivel) y no entendió de qué tipo de nivel estaba hablando.

Entonces, reformulé: ¿ Vilken level är du på? e inmediatamente entendió que estaba preguntando sobre el juego de computadora que está jugando actualmente.

Me imagino que un gran porcentaje de desarrolladores realmente saben inglés hasta cierto punto, pero se puede aprender cualquier cosa si lo desea. Solo considere todos los símbolos que aprendemos y usamos todos los días. Símbolos que a menudo están desactualizados (¿un disquete para guardar?) O ambiguos fuera de un contexto específico (¿una campana de iglesia para notificaciones?).

Cuando lo miras desde la distancia, es interesante que todos los lenguajes de programación (al menos los que conozco) estén en inglés. ¿Por qué no chino, japonés, etc.?

También es interesante que de alguna manera ASCII de 7 bits, que casi solo cubre idiomas de habla inglesa, sigue siendo tan dominante: direcciones de correo electrónico, URL, etc. Claro, en algunos casos hay escapes por usar otras codificaciones, pero es bastante inferior. arriba que de arriba abajo.

No hay mucho inglés involucrado, de verdad. El lenguaje se trata de reglas, conjugaciones y tiempos verbales, etc. En la codificación, solo unas pocas palabras tienen significado en inglés. Pero incluso los angloparlantes tienen que aprender las palabras y lo que significan.

Por lo tanto, no puedo simplemente escribir en una computadora, “en cada quinto intervalo, agregar cinco a la variable llamada sandwich”. Tengo que escribirlo en código y el único inglés que usaría probablemente sea “if”, “for” y / o “while”. Tuve que aprender que “while” es una palabra que se usa para hacer algo en este lenguaje de programación en particular. Entonces, se trata de la misma cantidad de aprendizaje que experimentaría un hablante que no habla inglés. Por ejemplo, si en lugar de “para” usaran “para” (español para “para”), bueno, tendría que aprender qué es “para” y luego usarlo.

La verdad es que muchos desarrolladores tienen que buscar cosas en Google de todos modos. Y no es difícil de hacer. Ciertamente hay documentación en muchos idiomas.

Solo unas pocas notas personales sobre el tema:

– Descubrí la programación de computadoras a fines de la década de 1980, tenía unos 13 años y tenía un conocimiento muy básico de inglés. En el momento en que se enviaron las computadoras con manuales traducidos y teníamos una comunidad activa de amantes locales de las computadoras domésticas como el Commodore 64, se podía encontrar revistas en las tiendas locales y las máquinas eran lo suficientemente simples como para necesitar solo un par de manuales para aprender mucho sobre ellos. La mayoría de las palabras utilizadas por el lenguaje BÁSICO eran solo símbolos para mí, podría recordarlas asociándolas a palabras italianas que suenan o están escritas de manera similar, que a menudo no tienen nada que ver con el significado. A veces usaba un diccionario.

– Sin embargo, como descubrí más tarde, todavía me faltaban cosas realmente interesantes: a veces los programas se comentaban en inglés (como deberían), y las comunidades que viven alrededor de revistas como Phrack me desapegaban bastante. Recuerdo las primeras veces que me puse en contacto con personas expertas, y me avergonzó que me explicaran que ‘GOTO’ no es un mundo único, o que no hay forma de que ese ‘cartucho’ (Cartucho – C64-Wiki) pronunciara el La forma italiana se puede reconocer …

– Hoy en día todavía se puede aprender mucho sin inglés, sobre todo confiando en Internet y en las comunidades nacionales. Sin embargo, nunca será un profesional de TI, a menos que aprenda inglés a un nivel superior al promedio. Esto se debe principalmente a que muchas cosas interesantes serias, como el código abierto o los estándares del W3C, suceden a nivel internacional e involucran a comunidades deslocalizadas, que obviamente se comunican en inglés. Sí, muchas cosas están traducidas, pero a menudo las lees de segunda mano y ciertamente no puedes esperar cosas como StackOverflow (o Quora!) Para tu idioma (bueno, sí, hay proyectos similares en Italia, pero el SO original contiene mucho más información útil, y es probable que las respuestas lleguen más rápido). Además, si desea un trabajo en este campo, ninguno lo contratará a menos que tenga un buen conocimiento del inglés (ni siquiera en países del tercer mundo como el mío, Italia).

Las personas que no hablan inglés escriben código al aprenderlo como un nuevo idioma, tal como lo hacen los ingleses.

Los lenguajes de programación tienen su propia semántica, incluso si la sintaxis está escrita en inglés. Por lo tanto, las palabras que se usan en los lenguajes de programación tienen el mismo sentido tanto para los hablantes de inglés como para los que no hablan inglés.

Además, las personas pueden comenzar a desarrollar idiomas que acepten la sintaxis en su propio idioma.

Por ejemplo, el hindi es el principal idioma nativo hablado y escrito de la India. Los indios pueden llegar a desarrollar su propio lenguaje de programación hindi, como hice aquí:

http://themakersproduction.com/ohc

Este compilador acepta código escrito en el idioma nativo de India: hindi

De la misma manera que hago matemáticas sin saber hindi, árabe o griego.

Sin embargo, tenga en cuenta que muchas personas que no hablan inglés como L1 todavía usan terminología en inglés para la informática. Eso es solo porque el inglés tiene más palabras. Puedes hablar sobre una pila, una cola, una lista, una matriz, un vector, que es un poco más difícil si no tienes tantas palabras.

La cosa aquí es …

La sintaxis no es en inglés, esa es la belleza del código. Puede escribirlo en cualquier idioma que articule o comprenda mejor.

Por ejemplo, ¿puedes decirme cómo sería esto inglés?

f00 = 12;

foo2 = 12;

foo3 = foo * foo2;

?>

Foo no es una palabra inglesa, puede ser cualquier cosa, php es la sintaxis, los números son un idioma universal.

Para mí, en realidad es más simple y mucho más limpio codificar en inglés. Mi idioma materno es el español, por lo que crear una sintaxis de programación en español sería algo complejo. Como el inglés es muy simple y compacto, para mí es fácil.

Por otro lado, dado que el inglés es “barato”, es fácil de entender, ya que el cambio, si, de lo contrario, break, goto, foreach, array, etc. tiene significados más concisos, tenerlos en español (por ejemplo) conduciría a idiomas más complejos, ya que tenemos varias palabras para varios significados.

Por otro lado, la mayor parte de la documentación ya está en inglés, por lo que es bastante natural interactuar con ella, no es necesario traducir los términos, ya que desde el principio están en inglés.

Y, por otro lado, donde sea que estoy codificando, estoy pensando en los términos del código, así que puse mi cerebro en “modo de desarrollo”, las palabras son solo formas de lograr algo, supongo que es lo mismo para ti cuando codificas

¡Salud!

Como chino nativo, he aprendido algo de inglés, lo suficiente como para entender los significados básicos de los documentos y manuales que necesito. Sin embargo, a veces me resulta difícil comprender los significados más profundos detrás de las palabras, lo que creo que es mucho más fácil para los hablantes nativos de inglés.

Algunos documentos tienen una versión en chino, pero muchos no están o no están bien traducidos. Por lo tanto, es mejor leer los documentos originales, probablemente en inglés. Recientemente estoy leyendo los documentos de Gerrit. La palabra exclusiva en la parte de configuración me confunde. Sé lo que significa exclusivo en chino. Pero simplemente no soy capaz de traducir el contexto al chino apropiado y eso hace que mi mente se vuelva un desastre. No aparece una imagen vívida y no tengo idea de qué efecto tiene. Sería mejor si un usuario experimentado de Gerrit estuviera disponible a mi alrededor. Pero no. Tengo que buscar ayuda en Google y Stackoverflow, donde también puedo practicar inglés.

Aunque la sintaxis está en inglés, es más como una fórmula. Los códigos como si a == b, o file.exists (foo), o git push origin tag v1.0 , son similares pero más fáciles que los lenguajes naturales. He encontrado que existen muchos errores chinos para salir o viceversa, pero no importa porque si escriben file.exit (foo) , puede que IDE advierta o que surjan errores al compilar o ejecutar.

Los errores son como fomulas también. Código de error XXX, no puedo encontrar el símbolo, en la línea XX, etc. Siempre podemos encontrar patrones. El inglés es ahora la lengua franca para los programadores. Cualquier programador sabe inglés más o menos. Cuanto más nos encontramos, más sabemos. Somos buenos aprendices, aunque algunos son lentos y otros rápidos.

La programación de aprendizaje espera aprender el lenguaje de programación (por lo tanto, los comandos / sintaxis) … es decir, javascript `var test = 1`; (aprender el idioma enseña lo que significa `var`).

Aún puede escribir código en su propio idioma; aunque los comandos / sintaxis están limitados al lenguaje de programación utilizado; aún puede nombrar clases / métodos / funciones / etc. en su idioma nativo (aunque esta no es la norma).

El otro punto. Asumo el punto principal ; errores en ingles; se reduce a la documentación; la documentación debe explicar (el documento debe estar disponible en la mayoría de los idiomas). Un buen error tiene un código universal y un mensaje localizado. a través del código, debería poder encontrar (google) todo sobre el error.

Porque el inglés es entendido por personas educadas de la mayoría de los países. En España, por ejemplo, aprendemos inglés en la escuela primaria. Por lo tanto, podría vivir aquí y comunicarse solo en inglés (como hacen algunos de mis colegas).

El vocabulario de un lenguaje de programación es pequeño y silencioso en comparación con un lenguaje natural completo, por lo tanto: no es gran cosa.

Una vez que cometí el error de instalar una versión alemana de Microsoft Excel y luego me di cuenta de que traducían todos los nombres de funciones que puedes usar en las celdas al alemán. No hay forma de usar eso, incluso el alemán es el idioma de mi madre y, por supuesto, ya estaba acostumbrado a los nombres de funciones ‘reales’ (inglés). Estaba luchando por encontrar los nombres de funciones correctos porque en algunos casos realmente no sabía cómo podrían haber traducido eso. Lo que estaba destinado a ser útil para mí se convirtió en lo contrario y deseé haber instalado la versión en inglés, que a partir de ahora siempre es la versión que elegí.

Comencé a codificar en Basic cuando estaba en quinto grado. Empecé a aprender inglés desde el 3er grado. Cuando fui a la universidad, mi inglés era bastante decente. Sin embargo, solo cuando comencé a jugar con Pascal para mis estudios de CS, mi cerebro hizo la conexión que todos esos comandos que escribo son en realidad palabras en inglés. Hasta entonces los usé como términos abstractos, como en matemáticas.

Aprender COBOL reforzó esa conexión significativamente.

Esa comprensión hizo que la lectura del código fuera mucho más fácil, casi como leerlo en voz alta y entender bien la historia. Pero temporalmente hizo que escribir el código fuera mucho más difícil. Como ahora estaba entendiendo mal el orden de las cosas, porque funcionarían en inglés pero no en el lenguaje de programación.

Hasta que descubrí Perl, que tiene más flexibilidad para las cosas ” print $ foo if $ blah “. Luego comencé a odiar todos los lenguajes de programación que no fueron diseñados por un lingüista. 🙂

Soy chino y estudio inglés como segunda lengua。 sí, causaría confusión y problemas, especialmente cuando soy un novato, pero meses después, estaré familiarizado con las palabras, por lo que no son un gran problema. palabra desconocida, lo busco en google.

El mayor problema es leer documentos escritos en inglés, lleva mucho tiempo y esfuerzo abordarlos.

Entonces, los brillantes programadores que conozco son buenos en inglés, esto no es una coincidencia, es una necesidad.

¿Cómo aprendiste el idioma por primera vez cuando tenías 2 o 3 años? En ese momento, no tienes experiencia previa con el idioma. Manejaste el idioma por primera vez usándolo cada vez. Entonces, las personas que no hablan inglés aprenden a programar por primera vez.

Bueno, soy un ingeniero de software de China. Tenemos que aprender inglés desde la secundaria. Ya sabes en China La gente piensa que el inglés es una habilidad básica para un programador. Y la mayoría de nosotros, buscamos en Google, preguntamos en StackOverflow, compartimos código o encontramos código fuente abierto en Github.
En conclusión, aprendemos inglés antes de programar.

Cuando tenemos algo de tiempo libre para cazar monos y comer plátanos, aprendemos inglés y código.