26 oct 2012

Hola, antes que nada ¡bienvenid@!.
Esta primer entrada y la próxima estarán orientadas a aquellas personas que no saben bien que es esto del "software libre", o que por ahí escucharon hablar de Linux, pero no saben muy bien que es eso. Hay mucha gente que puede explicar esto infinitamente mejor que yo, de hecho recomiendo este libro: Software libre para trabajar en el nivel medio  es un libro para docentes de educación media y al principio tiene excelentes explicaciones. A los que son docentes les recomiendo el blog de una de las autoras  del libro: Iris Fernandez.  Para explicar brevemente podemos decir que hay dos modelos de producción de software.

Software privativo:

El software privativo es el modelo que se impuso en las PC (computadoras personales) desde su nacimiento en la década del 80 , claro que antes había computadoras, pero no eran "personales" sino que eran megacomputadoras  y trabajaban con otros tipos de software,. Podríamos decir que este modelo se basa en considerar al software como un producto, es decir algo que alguien hace y se vende, como si fueran autos, ropa, pan o cualquier otra cosa que compremos. Suena bastante lógico, sin embargo, si lo pensamos un poco este modelo tiene un par de problemas. Si pensamos en cualquier otro producto, por ejemplo, un kilo de pan, para producirlo uno necesita  la receta (el equivalente en software se llama "código fuente") después necesita la materia prima (harina, levadura, agua, aceite), también necesita las herramientas para la producción (¿una mesada, una canilla y un horno?) y luego de hacer el primer prototipo (nuestro primer pan), salvo la parte de la receta, todo lo demás vuelve a empezar. Por cada pan que produzcamos necesitamos de nuevo comprar materia prima y de nuevo usar las herramientas de producción. En el software esto no es así, una vez que el software está desarrollado y probado, el costo de producción de cada copia de ese software es prácticamente nulo. Por eso se dice que el desarrollo de software es una industria blanda.
Otra diferencia es que cuando compramos un producto , por ejemplo, un auto, hay una transferencia de propiedad. Es decir, se lo compro al dueño anterior (fabricante, concesionaria, particular) y ese auto ya es mío , yo puedo hacer lo que quiera con el, puedo modificarlo (pintarlo de otro color, cambiar partes del motor, cortarlo por la mitad para que sea un auto de circo, lo que yo quiera) y por supuesto, puedo venderlo o regalarlo si me da la gana. Sin embargo, con el software privativo esto no es así. Supongamos que yo compro una licencia de un software determinado, en realidad lo único que estoy comprando es el permiso de usar ese software. No puedo modificarlo y mucho menos venderlo.

Software libre o de código abierto:

Antes de que algún purista se enoje, entiendo que el software libre y de código abierto no son considerados exactamente lo mismo. Pero no quiero entrar en cuestiones tan técnicas, si no mantener este tema lo mas simple posible, así les pido que me comprendan si de acá en mas hablo como si fueran sinónimos. El software libre es el modelo con el que se producía software antes de que existieran las PC y siempre produjo grandes cosas, como por ejemplo, el sistema gracias al cual funciona Internet, en otro momento hablaremos de este sistema. Pero al mundo de las PC entró bastante tarde, cuando ya había una megaempresa, que a fuerza de millones de dólares en marketing y un abanico de prácticas monopólicas se ocupó de ahogar a cualquiera que se atreviera a meter un pie en su negocio. En cuanto a sistemas operativos de escritorio (el conjunto de programas que hace funcionar una PC) es cierto que no todo es culpa de la megaempresa (Microsoft), los sistemas operativos libres estaban hechos para funcionar en servidores y supercomputadoras, en lo que tenía que ver con usos domésticos, hasta hace algunos años tenían gran cantidad de problemas, como dificultad de instalación, problemas de compatibilidad de hardware (todos los fabricantes hacían, y muchos siguen haciendo, sus componentes solo compatibles con windows, aunque gracias a los excelentes programadores de la comunidad linuxera, la gran mayoría funcionan en  sistemas Gnu/Linux), falta de software competitivo para tareas como ofimática (procesador de texto, planilla de calculo, etc) o diseño gráfico. Pero hoy en día la gran mayoría de esos problemas son cosa del pasado y  los pocos que quedan se resuelven a pasos agigantados.
El movimiento del software libre no considera el software como un  producto, sino como un  servicio. Por lo tanto cuando un software es libre (para ser considerado libre tiene que cumplir con ciertas condiciones que no voy a explicar para no hacerlo demasiado largo, pero lo pueden leer en el libro que vinculé al principio) nadie es dueño del programa, o también podemos verlo como que todos los usuarios son dueños del programa, porque todos pueden modificarlo y distribuirlo. En otro momento podemos hablar de las posibilidades de negocio con software libre, porque sí, se puede hacer negocios con él, de hecho la empresa Red Hat es la primer empresa dedicada exclusivamente al software libre en superar ingresos anuales por mil millones de dólares como explican en este sitio. El hecho de que cualquiera pueda acceder al código (la "receta") del programa implica que cualquier programador puede encontrar un error y corregirlo, o modificarlo para sus necesidades o las de alguien más. Esto hace que, por ejemplo, una empresa que quiera desarrollar un software nuevo disponga de dos opciones, una es mantener el código cerrado (privativo) y dejar que sólo sus programadores puedan modificarlo. Este es el modelo de Microsoft, pero también el de Apple ,aunque esta última también usa partes de código abierto. Otra opción es liberar el código, y entonces , además de los programadores de tu empresa vas a tener la colaboración de cientos o miles de programadores en todo el mundo. Uno puede pensar ( y de hecho, todavía muchos lo piensan) "si, todo muy lindo, pero es una utopía, algo así no va a pasar nunca", suena sensato pensar así, la cuestión es que... algo así ya pasó. Efectivamente otro gigante pero que trabaja con una mentalidad distinta se dio cuenta de esta posibilidad y la aprovechó. Estoy hablando de Google. El navegador google-chrome es software libre (menos el nombre y el logo, la versión 100% libre se llama chromium) y el sistema operativo Android también. En muy pocos años estas dos piezas de software no solo llegaron a ser muy competitivas sino que Android está en gran cantidad de dispositivos y en marzo de este año google-chrome desplazó a internet-explorer como el navegador mas usado en el mundo.

Espero haber aclarado un poco el asunto, cualquier duda por favor pregunten, que si puedo la voy a responder, y si no puedo, seguramente habrá muchos con mas conocimientos que sí puedan.
Para la próxima si, ya voy a empezar con los sistemas operativos , pero por lo pronto un par de consideraciones. Para usar software libre no es necesario cambiar de sistema operativo, aunque para muchos después de un tiempo se convierta en necesidad. Probablemente ya estés usando algo de software libre sin saberlo y es bueno que sepas que tenés opciones mas allá de pagar una fortuna en licencias o usar algo trucho (que trae problemas de seguridad y rendimiento), simplemente hay que buscar en internet. Antes de instalarte un programa trucho (ofimática, diseño, reproductores, etc), buscá un ratito en internet a ver si hay alternativas libres, seguramente te vas a sorprender. Por ejemplo para ofimática podés probar Libreoffice y para diseño Gimp, los dos tienen versiones para windows y sino tenés páginas como freealts.
Con probar no se pierde nada.