¿Es más rápido aprender un lenguaje o un lenguaje de programación?

Después de hacer ambas cosas, descubrí que aprender un lenguaje de programación es más fácil que un lenguaje humano para mí. Sin embargo, hay un par de factores en juego.

  1. El inglés es mi lengua materna. Prácticamente todos los lenguajes de programación utilizan el inglés para su sintaxis, documentación, repositorios de código, etc. Esto es un claro sesgo.
  2. He conocido varios idiomas desde que era joven. Esto me ha ayudado a entender muchos conceptos sintácticos extraños. Además, cuantos más idiomas conozca, más rápido podrá aprender otros. Esto se aplica tanto a los lenguajes humanos como a los de programación, pero más a la programación.
  3. Los lenguajes de programación tienen una cultura más definida, con guías de estilo y documentación en abundancia. Las lenguas humanas tienden a tener una cultura más vaga y no escrita (por ejemplo, jerga, dialectos, acentos, costumbres).
  4. Los idiomas humanos tienen más modalidades (leer, escribir, escuchar, hablar), por lo que hay más terreno que cubrir. En un idioma como el japonés o el chino, es esencialmente como aprender de 4 a 6 idiomas, sin apretar.
  5. Vivo en los Estados Unidos, donde la ciencia informática es un campo candente en este momento y hay una gran comunidad de programadores. Por otro lado, no hay muchos hablantes de japonés (o algún idioma) que se encuentren (además de en la costa oeste).

Depende de los objetivos y circunstancias que tengas. ¿Y si solo supiera japonés y viviera en China? Aprender chino sería mucho más fácil que aprender Objective-C (ceteris paribus). Bajo las circunstancias adecuadas, ser más fluido en un lenguaje humano podría ser más fácil que en un lenguaje de programación. Aunque, ese no fue el caso para mí.

Los lenguajes de programación son difíciles de adquirir debido a las herramientas involucradas y el conocimiento básico de programación. Los idiomas humanos son difíciles de adquirir debido a la fonética, las irregularidades gramaticales y el conocimiento cultural relacionado.

El aprendizaje tanto de los lenguajes humanos (HL) como de los lenguajes de programación (PL) está plagado de dificultades extra-lingüísticas, debido a la gran cantidad de conocimientos separados de, pero aún así, esenciales para el dominio del idioma.

En ambos, aprender (por imitación) a reproducir frases breves es bastante fácil. Los HL tienen la desventaja de requerir atención a la pronunciación. Los PL tienen la desventaja de requerir atención a los detalles sintácticos finos (como si hay espacios en blanco entre dos caracteres, o la diferencia entre comillas simples y dobles).

El desarrollo intermedio tiene un conjunto diferente de desafíos. Por ejemplo: en HL, aprender las reglas de la gramática y construir un vocabulario; en PLs, aprender a escribir unidades de código significativas (funciones, clases, etc.) y combinarlas con sensatez.

La verdadera fluidez en cualquiera de los dos es difícil de alcanzar. En este nivel, los HL requieren aprender todo sobre las culturas que los utilizan; los hablantes nativos se comunican utilizando expresiones idiomáticas que pueden basarse en proverbios, referencias culturales e incluso juegos de palabras. Este es un conocimiento difícil de adquirir, simplemente porque hay tanto que uno solo puede aprender a través de la inmersión en la cultura. En PL, el dominio profundo implica saber qué bibliotecas están disponibles en el idioma, qué herramientas pueden construir, validar y depurar el código, qué idiomas son comunes y cuándo usarlas, qué idiomas y funciones están en desuso y cómo organizar el código en el Idioma para mejor legibilidad y mantenimiento. También implica conocimientos básicos de programación, conocimiento del sistema operativo en el que se ejecuta el programa y antecedentes en el dominio donde el programador está resolviendo problemas (por ejemplo, física, juegos o música).

En general, para un programador maestro , aprender a usar un PL con fluidez es probablemente más fácil que aprender un HL a la fluidez es para un hablante fluido de uno o dos idiomas. El conocimiento cultural envuelto en el lenguaje humano es vasto y está lleno de sutilezas , y si bien los PL tienen sus propias sutilezas, éstas son muy comunes en todos los idiomas, por lo que la base común de conocimiento del programador es posiblemente más importante.

Por cierto, la discusión anterior no considera a los políglotas experimentados, y admito que hay algunas ventajas que tienen la mayoría de nosotros; haber analizado e internalizado completamente las estructuras de varios HL muy diferentes probablemente hace que una persona se parezca más al “programador maestro”. Me interesaría mucho escuchar la perspectiva de una persona así, aunque me sorprendería mucho si la experiencia lingüística es una ventaja suficiente para superar la complejidad adicional.

Una vez que haya aprendido algunos lenguajes de programación y se haya vuelto un experto en ellos, la mayoría de los lenguajes nuevos pueden aprenderse en su forma básica entre unas pocas horas y unos pocos días. Una vez que haya dominado algunos idiomas, la mayoría de los otros lenguajes de computadora comunes se pueden dominar en semanas o meses.

Ciertos tipos de codificación deben aprenderse y tomarse el tiempo para mejorar: programación concurrente, programación de sistemas, codificación web front-end / back-end de páginas web altamente interactivas, etc. Pero cambiar de escribir cualquiera de ellas en un lenguaje de programación Escribirlas en otro es mucho más fácil que aprender a escribirlas en primer lugar.

No se encontrará con demasiados que pueden hacer eso con idiomas humanos.

Aparentemente, los niños pequeños están programados para aprender idiomas humanos, y definitivamente no lo están para aprender lenguajes de computadora. Entonces, por debajo de los seis años, el lenguaje humano gana.

Después de la edad de 12 años, la cantidad de personas que alguna vez pueden dominar un nuevo lenguaje humano es extremadamente pequeña, pero casi cualquier persona que pueda programar de manera competente probablemente pueda dominar la mayoría de los lenguajes de computadora a un nivel equivalente dentro de seis meses.

Depende :
Aprendes el idioma para comunicarte con la gente.
Aprendes lenguaje de programación para comunicarte con las computadoras.

A nuestras mentes les gustan (palabras, verbos, adjetivos, etc.), por lo que es más fácil que aprender el lenguaje de programación.

Depende del nivel de competencia que desee alcanzar; Siempre aprendes cosas nuevas cuando se trata de lenguajes humanos o de programación. Depende también de la complejidad del lenguaje y de tu motivación.

Por ejemplo, llevaría más tiempo alcanzar un nivel en C que le permita escribir una aplicación compleja, que aprender a saludar y hablar en inglés.

Por otro lado, tomaría más tiempo para dominar el árabe que para escribir un script de Python para cambiar el nombre de todos los archivos de una carpeta.

Si está hablando de ser “fluido” en una programación o lenguaje humano, espontáneamente, diría que, en general, los lenguajes de programación son más fáciles, si tiene la misma motivación que para aprender un idioma humano.

Hablo 6 lenguajes naturales y más de 20 lenguajes de programación. Puedo elegir un nuevo lenguaje de programación en un fin de semana (la mayoría son increíblemente similares por debajo, suponiendo que no sea Prolog o algo así), pero la competencia en un nuevo idioma me llevaría al menos 6 meses, asumiendo que es algo similar a un lenguaje que ya tengo. saber. Si es mandarina, hace que 6 años.

Definitivamente un lenguaje de programación. Siento que puedes aprender idiomas humanos más completamente, pero los lenguajes de programación son definitivamente más rápidos.

Depende de un ser humano, una vez que el concepto está claro de cualquier cosa, se aprende fácilmente. Para algunos lenguajes de programación sería fácil y para algunos lenguajes humanos sería más fácil.

Cursos de certificación de software, hardware y redes Instituto de capacitación en Thane, Mumbai y Navi Mumbai