La programación, bien enseñada, permite desarrollar habilidades de análisis y resolución de problemas.

Linux es tal vez la mejor plataforma para aprender programación. A diferencia de Windows y Mac, todo el código de todo el sistema operativo está disponible para su estudio y modificación. También tiene el mayor surtido de herramientas para la creación de programas y, salvo aquellos de licencia privativa, todos los lenguajes de programación actuales y del pasado tienen una versión compatible.

En general, en Linux puedes ejecutar tus habilidades de programación en 3 niveles

El kernel Linux

El kernel es la piedra fundamental del sistema operativo. Es el que se ocupa de administrar los recursos de hardware. El Kernel Linux tiene una nueva versión cada 3 meses y cuenta con la colaboración de miles de personas, muchos de ellos en forma voluntaria y otros trabajando para empresas.

Para colaborar en el desarrollo del kernel Linux, necesitas un profundo conocimiento de su funcionamiento y del lenguaje de programación C.

Si no estás seguro de afrontar las críticas de otros desarrolladores, puedes probar desarrollando un módulo. Esto puede ser un controlador para un hardware específico, un gestor de ventanas o cualquier otro programa que sirva de enlace entre el kernel y los programas usados directamente por el usuario.

Repito que esto es algo reservado para usuarios con profundos conocimientos del funcionamiento del kernel.

En general las distribuciones Linux suelen incluir las herramientas necesarias para compilar y ejecutar programas en C.

Script para el intérprete de comandos

El intérprete de comandos es una herramienta para darle órdenes al sistema mediante el tipo de texto. En los sistemas derivados de Unix se lo denomina shell. Las distribuciones Linux traen por defecto el shell llamado Bash. El conjunto de instrucciones de BASH hace posible crear programas para automatizar tareas y hacer cualquier otra cosa que no requiera interfaz gráfica.

Puedes crear tus propios script en el editor de textos de tu distribución y ejecutarlos desde el emulador de la terminal.

Creación de aplicaciones

Dejamos para el final la forma ideal de iniciarse, la creación de aplicaciones para el escritorio.

Existe mucho consenso de que el lenguaje ideal para iniciarse es Python. Ya viene preinstalado en todas las distribuciones y cuenta con una gran cantidad de documentación y ejemplos. La lista de entornos integrados de desarrollo nos llevaría un artículo por si sola.

En general suele recomendarse usar Visual Studio Code, pero, para mi una mejor opción es PyCharm Edu. Esta herramienta no solo permite crear programas si no aprender de otros programadores del lenguaje.Lo importante es que si queremos aprender a programar investiguemos todos los lenguajes hasta encontrar uno con el que te sientas cómodo. Salvo que estemos buscando una salida laboral, no importa lo que digan las estadísticas ni los avisos de empleo. Tiene que ser lo suficientemente bueno para nosotros.