domingo, 3 de marzo de 2013

Los conceptos de software libre, software privativo y distribución

Resto de entradas con intenciones didácticas en la etiqueta Aprendizaje.

Hace un par de entradas quedé pendiente de extenderme a cerca de los conceptos de distribución, comunidad, software libre y software propietario o privativo. Tampoco quiero convertir esto en una enciclopedia que termine provocando un coma al lector, así que trataré de ser conciso a la par que didáctico.

Empiezo por el final. Software privativo (o propietario) es todo aquel programa que a usted no le está permitido copiar, duplicar, distribuir o modificar a menos que obtenga un permiso expreso del propietario de los derechos de ese software. Sin embargo, esto no es algo que ocurra a menudo. ¿O conoce usted a alguien anónimo a quien Bill Gates haya permitido hacer alguna de esas brujerías con alguno de sus Windows? ¿Verdad que no? Pues ahí tenemos un ejemplo de software privativo. Solo Microsoft tienen la potestad de modificar cualquiera de sus productos. Lo mismo pasa con Adobe y su conocidos Photoshop, Illustrator o Acrobat; Corel y su popular suite de diseño gráfico Corel Draw... Y solo por hablar de entornos PC (Personal Computer, los ordenadores corrientes que cualquier usuario tiene en casa y que no son de Apple).

Software libre, por contra, es un software de código abierto, es decir, cualquiera con los conocimientos de programación adecuados puede hacer todo aquello que, como acabamos de ver, no nos dejan hacer con el software privativo. Y no solo eso, sino que ese es el leit motiv principal que lo mueve. Pero ojo, no conviene confundirlo con software gratis o freeware, aunque en muchos casos el software libre también sea gratis.

Con esto pasa como con la música, el cine y los derechos de autor. Digamos que cuando usted adquiere un producto privativo, sea un programa informático o un CD musical, no es dueño absoluto de ese material, solo le permiten disfrutar de su contenido tras pasar por caja, pero ese contenido no pasa a ser propiedad de usted. El usuario paga por el soporte (un CD, un DVD, un Blu-Ray...) pero el contenido lo disfruta digamos que en régimen de usufructo permanente: el comprador puede utilizarlo cuantas veces quiera, pero solo él y nadie más que él. Está legalmente incapacitado para hacer copias y distribuirlas entre sus amiguetes, y mucho menos lucrase con ello. A eso se le llama piratería y si en España fuese una industria estaríamos a la cabeza de la producción mundial.

En cambio, el software libre, una vez adquirido, es propiedad íntegra de quien lo adquiere de forma que, si lo desea, puede modificarlo y distribuirlo a mil rincones del planeta sin temor a represalias legales. Y ahí es donde entra en juego la comunidad.

La comunidad Linux, o la comunidad Debian, o la comunidad Ubuntu es, sencillamente, el conjunto de usuarios que, a lo largo y ancho del globo, voluntariamente y sirviéndose de su formación como programadores, dedican su tiempo y esfuerzo a crear, modificar o mejorar software de código libre con el fin de distribuirlo para uso y disfrute de todos los mortales. Su labor, hasta donde yo se, es altruista y desinteresada, y el único reconocimiento que esperan es ver su obra convertida en un producto de uso generalizado, a ser posible desbancando del trono a Windows, el gran Satanás dentro de los entornos PC.

En cuanto a las distribuciones... se las conoce popularmente como distros y, ya que no paramos de mencionar a Windows, hagamos una analogía con el sistema operativo del tito Bill. Imagine que tiene la desgracia de que le regalen una copia del reciente Windows 8. Imagine también que usted es un experto programador y que tiene los conocimientos y permisos necesarios para destripar a su antojo el código en que se ha escrito Windows 8. Bien, una vez metido en faena decide que va a cambiar la disposición de las ventanas y la forma en que aparecen, los colores por defecto y los tipos de letra. También decide que hay aplicaciones que le parecen inútiles y las elimina, incorporando paquetes de software que le han pasado unos colegas, también programadores, y que le parecen mucho más chulos y funcionales. Todo lo que se le ocurra, pero siempre basándose en el núcleo que trae Windows 8 de origen.

Finalmente hay que ponerle un nombre, y en un alarde de creatividad, bautiza a su obra como Doors 1.0 (Windows es "ventanas" en inglés y Doors, "puertas", ¿lo pillan?). Pues bien, lo que usted ha creado ha sido lo que en GNU/Linux se denomina una distribución, o una distro, llamada Doors y basada en Windows. Yo en este momento estoy trabajando en Ubuntu, que es una distribución basada en otra de existencia anterior llamada Debian. Fedora es otra distribución y fue creada a partir de RedHat. Linux Mint es otra distro que partió de Ubuntu... Muchas de las distros existentes tienen como base una distro anterior, y comparten como nexo común el kernel Linux que escribió Linus Torvalds, al que se añaden paquetes y herramientas, por lo general aunque no únicamente, del proyecto GNU de Richard Stallman. ¿Se acuerdan del kernel, de Torvalds y de Stallman?

En fin, si quieren hacerse una idea de la cantidad de distribuciones Linux que hay circulando por el mundo echen un vistazo y átense los machos. Cuando les llegue la ocasión de elegir se preguntarán si les merece la pena entrar en semejante jardín, se lo aseguro. Pero eso lo dejamos para otra ocasión.

Para acabar, ya que hemos bautizado a nuestra distribución ficticia como Doors, queda muy apropiado terminar con un vídeo de The Doors, que además se llama "The end". Más a propósito imposible.