Hoy es 22 de noviembre

TRIBUNA INVITADA / OPINIÓN

Por qué deberíamos, todos, aprender a programar

25/04/2022 - 

Creo que todos hemos tenido una agradable sensación de "seguridad" cuando aprendimos a manejarnos, por fin, en inglés. Desde ese momento sentimos que eso nos iba a permitir entender a otros y hacernos entender prácticamente en cualquier lugar del mundo. La razón es que el inglés es una lingua franca, un idioma que cumple las expectativas que en su momento tuvieron lenguajes fallidos que aspiraban a ser instrumentos de comunicación universal entre los hombres como el esperanto. Hasta bien entrado el siglo XVII uno podía ir a estudiar en cualquier universidad de Europa con la condición de saber latín, que fue lingua franca del momento. Esto daba a los estudiantes de entonces una movilidad similar a la del actual programa Erasmus. El propio Erasmo de Rotterdam (que da nombre a este programa) fue alumno y profesor en las universidades de París, Oxford, Cambridge y Basilea sin ninguna barrera idiomática. En plena revolución científica libros tan importantes como los Principia de Newton o los escritos de Copérnico estaban en latín y Galileo y Kepler se carteaban sin dificultades en esa lengua.

Hoy, en nuestra sociedad tecnificada, el reto ya no es solo la comunicación entre los hombres sino también con las máquinas, en especial con los ordenadores omnipresentes en cualquier actividad. Esto significa que además del inglés hay otra "lengua" que dominar, esta es la "lengua" de la programación. Estos lenguajes de programación nos permiten crear software. Nuestro mundo se transforma gracias al software y la riqueza de las naciones hoy se produce en gran medida en forma de código.

Si tenemos duda sobre esto no tenemos más que mirar hoy la lista de las empresas de mayor capitalización bursátil del mundo. Hace unos años en estos puestos estaban empresas de petróleo, farmacéuticas, de telecomunicaciones o de consumo. Hoy este listado está encabezado por estas cuatro: Apple, Microsoft, Alphabet (Google) y Amazon. Cada una de ellas vale en bolsa más que todo el PIB de un país como España. Muchas de ellas hace poco más de veinte años no eran más que un desarrollo software.

El software es fuente de riqueza para las sociedades y también para sus creadores. Si miramos la lista de personas con fortunas por encima de los 100 mil millones de dólares la encontraremos llena de antiguos programadores. En esa lista encontraremos nombres como: Elon Musk (Tesla), Bill Gates (Microsoft), Mark Zuckerberg (Facebook), Larry Ellison (Oracle), Sergey Brin, Larry Page (Google) entre los puestos de cabeza.

Si bien lo anterior nos muestra que la programación está en la esencia de la creación de bienestar para nuestra sociedad, la razón para hacer ver a todo el mundo la importancia de aprender a programar o al menos tener unos conocimientos básicos de programación es otra más profunda: aprender a programar es seguir conectados al mundo.

Cualquier cambio que se vaya a producir en el futuro en nuestro trabajo o en la economía va a estar relacionado en alguna medida con un cambio en nuestra relación con las máquinas, en concreto con los ordenadores. Pero, además aprender a programar desde edades tempranas tiene también efectos psicológicos muy positivos.

En primer lugar, aumenta la capacidad de atención y concentración. Un despiste en el nombre de una variable o en la sintaxis del código llevará a errores que significaran más trabajo de corrección. En un mundo en el que la pérdida de atención está siendo un problema, en especial entre los más jóvenes debido a la multitud de oportunidades que hay para despistarse, aprender a programar es una buena disciplina para paliar este problema.

En segundo lugar, la programación aporta al quien la practica autonomía e interés en la experimentación y el aprendizaje. Nos da la opción de resolver un problema por varias vías y además abordar actividades muy diferentes, desde videojuegos hasta problemas de gestión. Todo esto estimula la curiosidad y aporta seguridad, confianza respecto al futuro y a los problemas que se presentan pues se cuenta con una herramienta multipropósito para abordarlos: el software.

En tercer lugar, programar nos obliga a ser más ordenados con los recursos disponibles y a tener una mayor capacidad de comprensión de los problemas que abordamos. A esto se une en cuarto lugar una mayor capacidad de cálculo y lógica que hemos de desarrollar en cada proyecto.

Grandes programadores como Paul Graham, quien desarrolló en 1995 el software para crear los primeros sitios de comercio electrónico, resalta que el trabajo del programador es "altamente creativo" y en su libro de 2004, “Hackers & Painters”, lo equipara al trabajo de un artista, más que al de un ingeniero o un científico, y fundamenta su afirmación con multitud de ejemplos y experiencias personales.

La programación tiene ya una apasionante historia de más de 60 años. En esta historia están todos los "lenguajes de programación", la "cultura" y las comunidades que forman los buenos programadores y la innovación originada por el software en determinadas épocas. Pero además de una historia, la programación tiene también un futuro, y es un reto, en un mundo que está constantemente reclamando más programadores, reflexionar sobre el futuro de esta profesión. Un futuro que vendrá condicionado tanto por conceptos como el Low-Code y el No-Code como por la evolución de la Inteligencia Artificial aprendiendo de los miles de millones de líneas de código creadas en las últimas décadas y que se han ido almacenando todos estos años en repositorios de código como GitHub.

En artículos posteriores profundizaré en todos estos temas, pero me gustaría cerrar con la recomendación de que aprender a programar, para tener esa profesión o solo para entender mejor nuestro mundo, es emplear el tiempo de un modo creativo y productivo y con un brillante futuro por delante. En este sentido coincido con lo que hace años aconsejó Steve Jobs: "todo el mundo debería dedicar tiempo, durante  uno o dos años de su vida, para aprender a programar".

Óscar del Río. CEO y Fundador de Interacso.

next
x