Programadores viviendo la Industria 4.0

Mucho se ha hablado en estos últimos meses de la IR4 (Cuarta revolución industrial). Forbes en linea por ejemplo señala: “Que la industria 4.0 es la optimización de computación de la tercera revolución industrial” y a mi mente vienen recuerdos de cierta area de trabajo donde por una puerta ingresaban colegas de sistemas con una pila de requerimientos, documentos y diagramas listos a ser programados. Una semana o quizás dos era el tiempo límite para culminar dichos requerimientos de usuarios de distinta rama profesional; contadores, administradores, hombres de marketing y algunos mas. Por otro lado con un rótulo en los módulos continuos se encontraban los expertos de QA (Aseguramiento de la calidad) en lenguaje simple “los testers” que luego de un análisis del código escrito a punta de un checklist te indicaban las malas prácticas que estabas aplicando en tu desarrollo. O los requerimientos que no estabas cumpliendo.

Este era un método de trabajo muy humano, pues podías conversar con tu QA si es que algo no se entendía, o si querías saltarte algunas reglas. Al fin el usuario no lo notaría, por qué no era prioridad.

Sin embargo ciertas cosas han cambiado desde aquel entonces, si bien es cierto aún existe un área de QA, pero ya no revisan tu código al vuelo junto a un checklist. No, eso fue reemplazado por políticas de la CI / CD (Integración continua / Despliegue continuo). Ya que a pesar de que el área no fuera la más grande por lo menos habían 5 profesionales trabajando en la revisión del producto final, digo habían por que ahora solo hay dos y por lo visto ya no puedes saltarte una regla.

Pero qué es esto de la Integración Continua que le costó el puesto laboral de 3 profesionales de QA? Acaso la CI es el demonio que ha venido a quitarnos el trabajo?

Integración Continua - El demonio

Te dire que de demonio no tiene nada y de quitarnos el trabajo; quizá desde una perspectiva conspirativa. Pues todo lo contrario. Incluso podría decirte que la CI ha llegado al area del desarrollo de software para quedarse como empleado del mes. Este conjunto de políticas de desarrollo y buenas prácticas señala que todo el código escrito debería unirse al software base bajo ciertas tareas previas, todas ejecutadas de forma automática, tareas previas como: pruebas unitarias, pruebas de integración, pruebas funcionales, análisis de calidad de código y otras de acuerdo a cuan estricto se requiera ser.

Y que ocurre sí una de las tareas previas no se cumple o arroja error? Como es lógico se te envía un correo electrónico en el cual te detalla cuál de las pruebas ha generado error. De manera que convives en un ciclo de trabajo en el que corriges y pruebas tantas veces el código, antes de que salga a producción.

Hay algún problema con las horas hombre para la ejecución de estas pruebas? Como el título del articulo lo indica, la respuesta es “no”. Todo esta programado para ser automático, cada prueba, regla o restricción debe estar escrita en lineas de código que nunca más dependerán del error humano, y como podrás suponer al final del ciclo de desarrollo se obtiene un software con mínimo porcentaje de error. Una regla no contemplada o una casuística no identificada mas nada de ponga en riesgo en giro de negocio del software.

Acabó el verano de las areas de IT? La automatización terminó por automatizar a los programadores?

No son noticias malas. En estos días gracias a la integración continua desarrolladores, projects managers, e involucrados pueden dormir tranquilos y disfrutar de un buen fin de semana sabiendo que el software fue revisado tantas veces (cien, mil, diez mil veces en unas horas) antes de salir a producción. Las áreas de Recursos humanos, se sienten más productivos pues encontraron un empleado que no cobra feriados, horas extras o beneficios. La planilla ha disminuido y obtienen un producto mejorado, se respira cierto aire de prosperidad.

Tiene alguna conclusión este articulo? Sí, pero en esta era de automatizaciones, inteligencia artificial, integraciones a todo nivel, solo puedo señalar que nos mantengamos del lado de la tecnología como nuestra segunda naturaleza.

Así me despido querido lector, imaginando retrospectivamente, el momento en que el motor a vapor hecho a andar generando fuerza de trabajo no animal, la esclavitud animal había terminado. Así como en estos días la esclavitud del mundo digital comienza.