¿Cuáles son las cosas básicas que debo tener en cuenta para aprender un nuevo idioma más rápido?

He usado una docena de idiomas profesionalmente, he escrito programas en una docena más y he estudiado otro puñado. Uno de mis intereses fue la ergonomía de los lenguajes informáticos y, específicamente, lo que contribuye a que el lenguaje sea “fácil de aprender y usar”.

El consenso, con el que estoy de acuerdo, es que los entornos de enseñanza que te permiten jugar con las cosas nuevas que aprendes en un entorno interactivo te permitirán aprender más rápido. Esto siempre le da a los idiomas interpretados la ventaja en este aspecto, ya que permiten la escritura y la prueba de las declaraciones.

La segunda cosa, y esto es más controvertido, es una comprensión de cómo la sintaxis interactúa con el hardware de la computadora. Esto le permite a su intuición llenar rápidamente los huecos para que no tenga que probar explícitamente cada variación de sintaxis posible para aprender el idioma. También te permite aprender más rápidamente el siguiente idioma (pero tiene algunas trampas). También te permite escribir mejor código.

La tercera cosa es una fuente en línea para obtener información sobre el idioma, de modo que cuando se encuentre con un comportamiento que no pueda entender, pueda obtener ayuda.

Finalmente, un entendimiento de que un lenguaje es tan poderoso como las bibliotecas complementarias que forman parte de la infraestructura para el lenguaje y la cantidad de desarrolladores que están usando el lenguaje. Los lenguajes informáticos son, en cierta medida, sociales, especialmente cuando se trata de bibliotecas y el código reutilizable que está disponible. Añado esto porque el aprendizaje de las bibliotecas y los recursos disponibles son una parte esencial del aprendizaje del idioma. La mayoría de los programadores creen que han “aprendido el lenguaje” cuando conocen bien la sintaxis central y esto, en mi opinión, es un verdadero error. Los problemas graves inevitablemente requieren bibliotecas de extensión y deben considerarse al seleccionar un idioma para aprender. Si está aprendiendo un idioma para utilizar en el empleo, las probabilidades son que el idioma que ha seleccionado tiene una buena infraestructura o, de lo contrario, probablemente no se usaría mucho. Aparece una buena señal cuando va a los sitios que admiten el idioma y encuentra una lista de bibliotecas de extensión ordenadas por área funcional. Le recomiendo que elija un área que probablemente necesite y aprenda esa biblioteca (o bibliotecas) primero. Las extensiones de la base de datos siempre fueron mi elección, ya que trabajé mucho con ellas. Si no encuentra una biblioteca que sabe que necesitará, probablemente debería volver a examinar su elección de idioma. Por supuesto, si solo estamos aprendiendo el idioma por razones académicas, esto no es tan importante.

Hay excepciones a esta lista pero … No conozco ninguna y me gustaría saber otras perspectivas. Por cierto, algunos idiomas son más difíciles de aprender por varias razones (y conducen a errores de programación más que otros), pero el diseño deficiente para ser utilizado por los seres humanos es una de las principales causas.