Aprendizaje de varios idiomas simultáneamente [cerrado]

35

Al aprender nuevos idiomas, ¿es mejor comprometerse con un idioma al 100% y esperar hasta que lo haya "dominado" para pasar a otro, o trabajar para aprender diferentes idiomas al mismo tiempo?

Si es importante, actualmente estoy aprendiendo C ++ y también me gustaría conocer Java y Python.

Maxpm
fuente
12
A menudo no existe el 100% de fluidez. Ni Jon Skeet ni Eric Lippert conocen el 100% de C #.
Trabajo
3
No aprenda idiomas, aprenda a usar un idioma para implementar un programa específico. Es decir, si usted es un programador, no importa qué idioma use, ya que puede lograr el mismo resultado. Peor aún, tan pronto como dejes un idioma para "aprender" otro, comenzarás a olvidar el anterior de todos modos.
Mientras realmente APRENDAS ambos idiomas.
Tulains Córdova
@Maxpm ¿Puedes decir cómo fue tu experiencia con el aprendizaje de múltiples idiomas a la vez ...
Rahul Patil

Respuestas:

31

No solo no veo un problema con el aprendizaje de varios idiomas al mismo tiempo, creo que puede beneficiarlo directamente porque algo en un idioma puede aclarar un área problemática que pueda tener en otro idioma. Por ejemplo, mi lenguaje principal es C # y cuando traté con LINQ usé el formato SQL (lo cual está bien, no lo estoy descartando en absoluto, pero simplemente no parecía ser la "forma genial" de hacerlo). Me mantuve alejado de Lambdas porque, para ser sincero, no los entendí y la documentación de C # que vi no proporcionaba una definición clara (para mí). Luego comencé a recoger algunos libros sobre F # y comencé a aprender eso, lo que me dio el momento "¡ah, ja!" De entender cómo son las Lambdas.

He descubierto que a medida que he experimentado más y más con otros lenguajes (y marcos) he mejorado en C # (y ASP.Net). ¡Es por eso que creo que aprender múltiples idiomas al mismo tiempo no es algo malo en absoluto!

Jetti
fuente
1
Estoy totalmente de acuerdo y también comencé con C #. Hubo muchas cosas que encontré en ese idioma que, desde la perspectiva de mi principiante, eran muy difíciles de comprender y, si las comprendía, entender para qué servían o por qué se usaban era igual de difícil. Desde entonces he aprendido sobre un par de otros idiomas y ha marcado la diferencia en el mundo. Sobre todo porque cada idioma es diferente, puedes aprender diferentes aspectos de la programación de cada idioma.
fender1901
49

Si es su primer idioma, creo que sería mejor aprenderlo lo suficientemente bien como para entender cómo funciona un lenguaje de programación.

Una vez que tenga buenas bases, puede elegir todas las que desee.

OscarRyz
fuente
2
1 Creo que hace una gran diferencia si usted está aprendiendo sus primeras tres idiomas frente a su cuarto, quinto, sexto, etc.
keithjgrant
12

Creo que una habilidad importante para los programadores es la capacidad de aprender nuevos lenguajes de programación. Como tal, sugiero que primero se intente aprender un solo idioma y luego se agreguen otros.

Cualquiera que sea su primer idioma, el proceso de aprendizaje de idiomas adicionales debe:

  • Encuentre una buena sintaxis de referencia para el nuevo idioma
  • Identifique las fortalezas del nuevo lenguaje, no solo codifique en el nuevo lenguaje como si ya fuera uno que ya conoce (programación con acento)
  • Explore áreas del nuevo idioma que no se asignan a idiomas anteriores que haya usado antes
  • Encuentre ejemplos de código y, sin revisarlos, intente codificar lo mismo desde cero y vea cómo su implementación difiere del ejemplo

Con el tiempo, a medida que acumule idiomas, formará su propio lenguaje de seudocódigo abstracto interno que lo ayudará a traducir entre los idiomas que conoce. Este lenguaje interno es el marco que usará para aprender nuevos idiomas rápidamente.

Jason Aller
fuente
1
+1 para "identificar las fortalezas del nuevo lenguaje ...". Muy agradable
Nick Burns
8

Aprender idiomas en paralelo es algo bastante normal. Por ejemplo, programación web. Se trata de al menos tres idiomas: lado del servidor (php, java, .net, ruby, python ...), código de cliente (script java y html), base de datos (sql).

Boris Pavlović
fuente
ni htmltampoco sqlson lenguajes de programación.
aeid
la letra l significa lenguaje
Boris Pavlović
7

No veo un problema para aprender varios idiomas a la vez. De hecho, nunca dominas verdaderamente un idioma, así que realmente, cada vez que trabajas con más de un idioma, probablemente estés aprendiendo ambos.

Es posible que desee concentrarse en un idioma para obtener los conceptos básicos solo para evitar confundir los dos idiomas. Esto es especialmente cierto si estás aprendiendo lenguajes similares, como Java y C #.

Paul Whitehurst
fuente
JavaScript / Python puede ser una buena opción en virtud de sus diferencias. Como ejemplo.
Nick Indiessance
6

He estado enseñando programación durante varios años, así que puedo compartir mi experiencia con ustedes. Supongo que C # es su primer idioma, así que mi experiencia enseñando programación a personas que nunca antes habían programado puede ser útil.

Antes que nada, déjame decirte que aprender más de un idioma es algo que todo programador experimentado debería hacer. Pero esto no significa que deba aprender varios idiomas al mismo tiempo si recién está comenzando.

A lo largo de los años, los estudiantes han demostrado que el lenguaje tarda aproximadamente un año en solidificarse en la mente (al menos el primero), a veces un poco más, a veces un poco menos. Si intenta enseñar más de un idioma en un año, los estudiantes tienden a mezclarlos y confundir conceptos e idiomas. Aunque los estudiantes progresan, adquieren muchos malos hábitos que es difícil eliminar más adelante. Si está aprendiendo solo, este riesgo es mayor.

Sin embargo, he notado que ayuda si enseña dos idiomas con una sintaxis muy diferente. Cuando dos lenguajes de programación se ven realmente diferentes, ayuda a la mente verlos como entidades realmente diferentes sin contaminarse entre sí. (Cuando un lenguaje de programación te ayuda a entender conceptos difíciles en otro idioma, eso es bueno; cuando un idioma te hace escribir código malo en otro idioma, eso es malo).

Por lo tanto, mi recomendación sería apegarse a un lenguaje de programación para su primer año. Alternativamente, puede ser una buena idea aprender dos idiomas al mismo tiempo, siempre y cuando sean / se vean muy diferentes. Si su primer idioma es C #, me mantendría alejado de C, C ++, Objective C y Java con seguridad; y probablemente Python, Ruby y Javascript. Recomendaría combinar C # con un lenguaje funcional como Haskell, Scheme, F #, Erlang, Clojure o quizás Scala.

sergut
fuente
5

Creo que aprender varios idiomas a la vez es realmente mejor que aprender uno a la vez, porque si los idiomas son lo suficientemente diferentes, cada uno te da un descanso del otro. Intenta escalonarlos para que comiences con uno nuevo una vez que hayas superado la etapa de "novato absoluto" del anterior; De esta manera, tendrá muchas más posibilidades de retener no solo lo que aprendió sobre el idioma, sino también cómo aprendió un nuevo idioma. (La habilidad de aprendizaje de idiomas generalizado es algo por lo que estará muy agradecido más adelante en la vida de programación)

Dicho esto, aprender su primer idioma requiere una gran inversión de tiempo y energía, y es posible que simplemente no tenga tiempo para asumir otro gran proyecto durante este proceso. Si está pensando en comenzar otro idioma porque está harto de C ++, ¡no lo haga! Te animará a posponer las cosas. Si está pensando en comenzar otro idioma porque sigue viendo menciones de proyectos escritos en (digamos) Java y está frustrado porque no puede leer y analizar el código fácilmente, ¡hágalo! Esta es una gran razón para aprender otro idioma en cualquier momento.

Arkaaito
fuente
2

Descubrí que aprender varios idiomas simultáneamente puede llevar obviamente a tomar más tiempo para aprender un idioma específico (no hace falta decirlo realmente). Sin embargo, en mi caso me ha permitido decidir qué idiomas prefiero y el estilo de codificación que más disfruto.

En mi caso, comencé con C # y luego me metí en Python y F #. Realmente me gustó el estilo funcional de F # que me llevó a probar Scala y Clojure. Ahora, debido al aprendizaje de todos estos idiomas, he encontrado que Scala es una buena opción para lo que hago. Además, ahora tengo mucha confianza en los estilos funcionales y de OOP y puedo leer y escribir varios idiomas de manera competente. Es una gran habilidad tener.

Richard Todd
fuente