Se comenzara por dar una definición de software libre, es aquel conjunto de programas, instrucciones y rutinas que permiten ejecutar distintas tareas en una computadora. Al hablar de software libre nos referimos aquel software que provee de distintas libertades a sus usuarios, independientemente de su gratuidad o no.
Las libertades que ofrece dicho software son:
- La libertad de ejecutar el programa como el usuario lo desee.
- La libertad de acceso al código fuente de tal manera que se pueda modificarlo según las necesidades de cada usuario.
- La libertad de realizar copias a las modificaciones que el usuario realizo y distribuirlas de manera gratuita o cobrando por ello.
- La libertad de contribuir con la sociedad distribuyendo copias del programa que cada usuario modifico y mejoro.
En el otro lado de la moneda se tiene la arquitectura del tipo bazar en la que el desarrollador del proyecto cuenta con toda una comunidad en línea (bazar mundial) de la cual se puede extraer ideas soluciones mejoras opiniones para enriquecer el programa, al haber tanta gente involucrada en el proyecto los tiempos de desarrollo se reducen, la detección de errores y corrección de errores muy rápida por lo que en general cada una de las versiones (que por cierto son varias) son de muy alta calidad y con poco errores.
Es importante recalcar la habilidad de líder y facilidad de comunicación y expresión que debe tener el “dueño del bazar” (líder del proyecto) para poder compilar de manera rápida y adecuada toda la inmensa cantidad de información y código que le llega de tal manera que lo pueda usar y añadir al programa de la forma más adecuada y rápida posible, a la vez que debe ser capaz de comunicar las necesidades y problemas que surgen para corregirlos con prontitud.
Con base a los argumentos anteriormente expuestos se puede concluir que un proyecto tan ambicioso como el desarrollado por Linus Torvals, crear un sistema operativo desde cero, que posteriormente llamo Linux y lo protegió con la licencia GPL desarrollada por Richard Stallman mediante la cual todo el mundo tiene acceso al código fuente y es libre de modificarlo y redistribuirlo no habría sido capaz de llevarse a cabo en el modelo catedral pues el desarrollo del Kernel implica un constante proceso de compilado y depuración incapaz de llevarse a cabo a la velocidad requerida por un reducido núcleo de trabajo a la vez que su complejidad implica la distribución de tareas (líneas de código) para su posterior integración por parte del líder, de igual forma el sistema jerarjico hubiera sido un gran obstáculo pues al tener que iniciar de cero existen un sinfín de posibilidades que habrían impedido la aceptación de distintas soluciones y mejoras para la publicación y depuración con la velocidad requerida.
Por: Iván Osorno
Atribución-NoComercial
http://creativecommons.org/licenses/by-nc/4.0/
No hay comentarios:
Publicar un comentario