¿Por qué modificar una herramienta?

6 junio 2016

[ Estás en Unidades Didácticas / Unidad 4 – Modificación de herramientas FLOSS / ¿Por qué modificar una herramienta? ]
 
A menudo encontramos a faltar algo en una herramienta de software, o nos gustaría hacer algo que se puede hacer con ella pero de otro modo. Es conveniente revisar la documentación y configuración de la herramienta para averiguar si el desarrollador ha tenido en cuenta nuestra «necesidad» (cuando no somos demasiado creativos somos muchos los que descubrimos las mismas «necesidades» y al final acaba sabiéndolo el desarrollador). En ocasiones no encontramos esa necesidad cubierta con la herramienta que utilizamos, y no es suficiente motivo como para cambiar de herramientas (casi todas tienen «rivales» que realizan las mismas acciones con diferentes aproximaciones, más o menos acertadas para cada situación). Si disponemos del código fuente de la herramienta y tenemos capacidad para modificarlo ¡nada nos impide que la modifiquemos para añadirle la funcionalidad o estilo que encontramos a faltar! Eso sí, hemos de hacerlo para uso personal.

Para modificar una herramienta no es suficiente con querer hacerlo, hemos de ser capaces de hacerlo. Tener el código fuente es un buen principio y ya hemos visto cientos de herramientas libres y/o de código abierto de entre las muchísimas que existen. El siguiente requisito se basa en nuestros conocimientos sobre programación y creación de ejecutables. Podríamos querer usar una herramienta desarrollada en C, no siempre es necesario conocer ese lenguaje de programación para incluirla en nuestras herramientas, a menudo basta con «llamarla» desde nuestra herramienta con los parámetros que la herramienta necesita y esperar a que se ejecute para «escuchar» qué nos dice esa herramienta cuando finaliza la orden que le hemos dado. Podríamos querer modificar la apariencia de esa herramienta desarrollada en C, en ese caso necesitaríamos saber compilarla y tener en nuestro equipo las herramientas adecuadas para hacerlo. Podríamos querer modificar el comportamiento de la herramienta, en cuyo caso necesitaríamos saber programar en C y tener las herramientas adecuadas para compilar nuestra modificación.

 
 

Y ¿por qué aparece este tema en la Guía Docente oficial de la asignatura?

 
Personalmente opino que esta asignatura quedaría en meros estudios legales y uso consciente de herramientas «gratuitas» si no nos involucramos realmente en un proyecto con licencia libre o de código abierto. No es una asignatura genérica para aprender las posibilidades que dan a cualquier usuario de informática las herramientas FLOSS, es una asignatura optativa de 4º del Grado en Ingeniería en Informática de las Tecnologías de la Información, y esto son palabras mayores. Me sentiría fracasado si uno de mis alumnos terminara sus estudios sin saber que las herramientas FLOSS le dan muchas más oportunidades que a cualquier otro profesional. Y considero que el mejor modo de conseguirlo es añadiendo la obligación de modificar una herramienta de software libre para completar la evaluación de la asignatura.