Bash – Día 90

Mi trabajo principal es sobre automatizaciones, ver procesos, politicas, ‘gobierno’, practicas, y otras trivialidades, genericas y burocraticas que sirven en las empresas para compensar o mitigar el conocimiento y la experiencia, con copiar y pegar a la suerte. Y esto va para todas las empresas.

Y hablar de automatizaciones siempre nos lleva a Bash, en si, el lenguaje de scripting de Linux. Y en muchos casos powershell, pero hoy me quedare con bash.

Bash es un lenguaje que como su nombre lo aparenta es bastante burdo y plano.

Es un lenguaje de scripting completo, pero peculiar y burdo, solo con decir condicionales deben estar perfectamente espaciado, espacios dobles, o sin espacio puede traer, no un error, sino la omision de la linea.

Sin embargo es increiblemente util, y el fundamento de todas las plataformas de automatizacion. En bash se puede controlar linux, a un nivel granular, siempre y cuando se tengan permisos.

Todas las herramientas, todos los comandos, accesos a procesos, entre otras cosas.

Esos scripts de Ansible, probablemente son bash.

Esos scripts de terraform, probablemente nacen bash

Tus github actions, definitivamente son bash.

Tus tareas de sistema y cronjobs definitivamente se deberian usar mediante bash.

Bash permite manejar errores, manejar el sistema, programar jobs, y agregar esa logica de programacion y control de errores.

Entonces si necesitas trabajar en automatizacion, el pomposo sistema low code te parece carisimo e inutil.

Entonces considera tu propio inventario de automatizaciones y tus flujos de trabajo, en bash en un servidor propio.

¿Que provee una plataforma de low code?

-Orquestar nodos de ejecucion. En bash puedes

-Programar tareas. En bash puedes

-Custodiar credenciales. En linux puedes, y le permite al usuario de bash leerlas.

-Conectar con APIs o servicios. En bash, con curl puedes.

-Grabar clicks de pantalla.Esto es mas RPA que Bash, pero en linux con Desktop tambien puedes con bash.

Entonces si bien puede ser intimidante, crear tu propio servidor de automatizaciones y controlador de jobs, puede ser una alternativa que te da todo el control y mas economica.

Algo que considerar al momento de iniciar un proyecto. Y si usas low code, igual puedes, de hecho, seguir usando bash.