DEV Community

Juan Julián Merelo Guervós
Juan Julián Merelo Guervós

Posted on

Por qué debes enseñar (o aprender) todos los lenguajes a la vez

Javier Pastor me preguntó para este artículo de Xataka con qué lenguaje habría que comenzar a programar. Claro, di una respuesta larga, demasiado larga. Como no cabe en el artículo, la pongo aquí mismo. Por si le pudiera servir a alguien.

Javier Pastor: ¿Qué lenguaje recomendarías a alguien que quiere aprovechar estos días para lanzarse a programar y por qué?

La respuesta corta es todos los lenguajes. La respuesta larga (o un poco más larga) es que programar es como las matemáticas o la literatura: una forma de pensar para hacer algo; en el caso de programar es resolver los problemas con un ordenador, en el caso de la literatura tienes que entender el lenguaje literario y cómo describir personajes, situaciones... En literatura, nadie dice "qué genero debo aprender para escribir novelas". Te dirán que hay que leer mucho, entender la estructura de una historia, saber revisar lo escrito para que no haya errores y encaje todo bien... En programación es igual. Tienes que entender cómo estructurar tu solución a un problema con un sistema informático (y a veces ese sistema informático incluye más cosas, no sólo un programa), tienes que saber cómo comprobar que tu programa hace lo que quieres, tienes que saber elegir las herramientas más adecuadas en cada circunstancia. Y para eso es mejor que lo hagas con una serie de lenguajes de programación; que cada concepto vaya acompañado de una serie de ejemplos explicando la visión del mundo que tiene cada lenguaje y cómo resuelven ese concepto.

El enseñar varios lenguajes a la vez hace que te olvides un poco de la sintaxis (la sintaxis no importa), aprendas a buscar siempre la herramienta más adecuada, y seas flexible a la vez que cambias de lenguaje para cada proyecto (o varias veces dentro del mismo proyecto).

Epílogo

Hasta aquí mi respuesta, que, hacia el final, habla más de cómo deberíamos enseñar a programar en la universidad más que lo que me preguntaban, qué lenguaje de programación debe una persona usar para empezar a aprender. Y desde este punto de vista la respuesta varíaría algo, pero tampoco mucho. Todavía habría que aprender todos los lenguajes, y la mejor forma de hacerlo es empezar por el concepto de dato y tipo (incluyendo aquí funciones como tipo de dato de primera clase); comenzar con expresiones (que van a ser iguales en muchos lenguajes) y a partir de ahí, particularizar.

Cualquier lenguaje lleva consigo un paradigma y una serie de capas de abstracción que tienes que quitarte de encima para aprender otro lenguaje. Lo mejor, por tanto, es hacer como en el yoga: empezar por lo más bajo (dato, literal), continuar por la mitad (expresiones) para, más adelante, ir hacia el resto (sentencias, programas...). Y todo ello pasado por ver programas en diferentes lenguajes para ver cómo se expresan y se estructuran.

En esto y como digo al principio, no se diferencia de la literatura: hay que conocer las palabras, las frases, y construir a partir de ahí la trama y el relato. Y para ello no hay que hacerlo en "un lenguaje" (el de la novela romántica, o policíaca), sino en el lenguaje universal de la literatura.

Top comments (0)