11.07.2015 Views

Introducción al software libre - Universitat Oberta de Catalunya

Introducción al software libre - Universitat Oberta de Catalunya

Introducción al software libre - Universitat Oberta de Catalunya

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Software <strong>libre</strong>Jesús González BarahonaJoaquín Seoane Pascu<strong>al</strong>Gregorio RoblesXP06/M2101/01492 Código0,75 créditosIntroducción<strong>al</strong> <strong>software</strong> <strong>libre</strong>Uwww.uoc.edu


David Megías JiménezCoordinadorIngeniero en Informática por la UAB.Magíster en Técnicas Avanzadas <strong>de</strong>Automatización <strong>de</strong> Procesos por la UAB.Doctor en Informática por la UAB.Profesor <strong>de</strong> los Estudios <strong>de</strong> Informáticay Multimedia <strong>de</strong> la UOC.Jordi MasCoordinadorCoordinador gener<strong>al</strong> <strong>de</strong> Softcat<strong>al</strong>à y<strong>de</strong>sarrollador <strong>de</strong>l procesador <strong>de</strong> textos<strong>libre</strong> Abiword.Miembro fundador <strong>de</strong> Softcat<strong>al</strong>ày <strong>de</strong> la red telemática RedBBS.En c<strong>al</strong>idad <strong>de</strong> consultor, ha trabajadoen empresas como Menta, Telépolis,Vodafone, Lotus, eresMas, Amenay Terra España.Jesús González BarahonaAutorGrupo <strong>de</strong> Sistemas y Comunicaciones,ESCET, Universidad Rey Juan Carlos<strong>de</strong> Madridjgb@gsyc.escet.urjc.esJoaquín Seoane Pascu<strong>al</strong>AutorDepartamento <strong>de</strong> Ingeniería <strong>de</strong> SistemasTelemáticos <strong>de</strong> la Universidad Politécnica<strong>de</strong> Madridjoaquin@dit.upm.esGregorio RoblesAutorGrupo <strong>de</strong> Sistemas y Comunicaciones,ESCET, Universidad Rey Juan Carlos<strong>de</strong> Madridgrex@gsyc.escet.urjc.esPrimera edición: noviembre 2003© Fundació per a la <strong>Universitat</strong> <strong>Oberta</strong> <strong>de</strong> Cat<strong>al</strong>unyaAv. Tibidabo, 39-43, 08035 BarcelonaMateri<strong>al</strong> re<strong>al</strong>izado por Eureca Media, SL© Autores: Jesús González Barahona, Joaquín Seoane Pascu<strong>al</strong> y Gregorio RoblesDepósito leg<strong>al</strong>: B-38.682-2003Se garantiza permiso para copiar, distribuir y modificar este documento según los términos <strong>de</strong> la GNU Free Documentation License,Version 1.2 o cu<strong>al</strong>quiera posterior publicada por la Free Software Foundation, sin secciones invariantes ni textos <strong>de</strong> cubierta<strong>de</strong>lantera o trasera. Se dispone <strong>de</strong> una copia <strong>de</strong> la licencia en el apéndice A, junto con una tradición no ofici<strong>al</strong> en el Apéndice B.Pue<strong>de</strong> encontrarse una versión <strong>de</strong> la última versión <strong>de</strong> este documento en http://curso-sobre.berlios.<strong>de</strong>/introsobre.


© FUOC • XP06/M2101/01492Software <strong>libre</strong>2.2.2. El CSRG <strong>de</strong> Berkeley .................................... 382.2.3. Los comienzos <strong>de</strong> Internet ............................ 402.2.4. Otros proyectos ........................................... 432.3. Todo en marcha .................................................... 432.3.1. En busca <strong>de</strong> un kernel .................................. 442.3.2. La familia *BSD ........................................... 442.3.3. GNU/Linux entra en escena ......................... 452.4. Tiempos excitantes ................................................ 472.4.1. Fin<strong>al</strong>es <strong>de</strong> 1990 .......................................... 472.4.2. Principios <strong>de</strong> los 2000 .................................. 522.5. El futuro: ¿una carrera <strong>de</strong> obstáculos? .................... 572.6. Algunas fechas <strong>de</strong> la historia <strong>de</strong>l <strong>software</strong> <strong>libre</strong> ....... 583. Aspectos leg<strong>al</strong>es ........................................................ 693.1. Breve introducción a la propiedad intelectu<strong>al</strong> .......... 693.1.1. Derechos <strong>de</strong> autor ....................................... 703.1.2. Secreto comerci<strong>al</strong> ........................................ 723.1.3. Patentes y mo<strong>de</strong>los <strong>de</strong> utilidad ..................... 733.1.4. Marcas y logotipos ....................................... 743.2. Licencias en el <strong>software</strong> <strong>libre</strong> .................................. 753.2.1. Licencias tipo BSD ........................................ 763.2.2. La Licencia Pública Gener<strong>al</strong> <strong>de</strong> GNU(GNU GPL) .................................................. 793.2.3. La Licencia Pública Gener<strong>al</strong> Menor <strong>de</strong> GNU(GNU LGPL) ................................................ 813.2.4. Otras licencias <strong>de</strong> programas ....................... 823.2.5. Distribución bajo varias licencias .................. 863.3. Licencias <strong>de</strong> otros recursos <strong>libre</strong>s ............................ 873.3.1. Licencia <strong>de</strong> documentación <strong>libre</strong> <strong>de</strong> GNU ..... 873.3.2. Licencias <strong>de</strong> Creative Commons ................... 883.4. Resumen ............................................................... 89ANOTACIONES4. El <strong>de</strong>sarrollador y sus motivaciones .......................... 914.1. Introducción .......................................................... 914.2. ¿Quiénes son los <strong>de</strong>sarrolladores? ......................... 914.3. ¿Qué hacen los <strong>de</strong>sarrolladores? ........................... 934.4. Distribución geográfica .......................................... 944.5. Dedicación ........................................................... 964.6. Motivaciones ......................................................... 984.7. Li<strong>de</strong>razgo .............................................................. 994.8. Resumen y conclusiones ......................................... 1025. Economía ................................................................... 1034


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014929.2. FreeBSD ............................................................... 2499.2.1. Historia <strong>de</strong> FreeBSD .................................... 2509.2.2. Desarrollo en FreeBSD ................................. 2509.2.3. Toma <strong>de</strong> <strong>de</strong>cisiones en FreeBSD ................... 2519.2.4. Empresas <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> FreeBSD .................. 2529.2.5. Estado actu<strong>al</strong> <strong>de</strong> FreeBSD ............................ 2539.2.6. Radiografía <strong>de</strong> FreeBSD ............................... 2539.2.7. Estudios académicos sobre FreeBSD ............. 2569.3. KDE ..................................................................... 2569.3.1. Historia <strong>de</strong> KDE ........................................... 2579.3.2. Desarrollo <strong>de</strong> KDE ....................................... 2589.3.3. La Liga KDE ................................................ 2599.3.4. Estado actu<strong>al</strong> <strong>de</strong> KDE .................................. 2619.3.5. Radiografía <strong>de</strong> KDE ..................................... 2629.4. GNOME ............................................................... 2659.4.1. Historia <strong>de</strong> GNOME .................................... 2659.4.2. La Fundación GNOME ................................ 2669.4.3. La industria <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> GNOME ............... 2689.4.4. Estado actu<strong>al</strong> <strong>de</strong> GNOME ............................ 2709.4.5. Radiografía <strong>de</strong> GNOME .............................. 2719.4.6. Estudios académicos sobre GNOME ............ 2749.5. Apache ................................................................. 2749.5.1. Historia <strong>de</strong> Apache ...................................... 2749.5.2. Desarrollo <strong>de</strong> Apache .................................. 2769.5.3. Radiografía <strong>de</strong> Apache ................................ 2779.6. Mozilla ................................................................. 2789.6.1. Historia <strong>de</strong> Mozilla ...................................... 2799.6.2. Estado actu<strong>al</strong> <strong>de</strong> Mozilla .............................. 2829.6.3. Radiografía <strong>de</strong> Mozilla ................................. 2839.7. OpenOffice.org .................................................... 2849.7.1. Historia <strong>de</strong> OpenOffice.org ......................... 2859.7.2. Organización <strong>de</strong> OpenOffice.org ................. 2869.7.3. Radiografía <strong>de</strong> OpenOffice.org .................... 2869.8. Red Hat Linux ....................................................... 2889.8.1. Historia <strong>de</strong> Red Hat ..................................... 2889.8.2. Estado actu<strong>al</strong> <strong>de</strong> Red Hat ............................. 2909.8.3. Radiografía <strong>de</strong> Red Hat ............................... 2919.9. Debian GNU/Linux ............................................... 2939.9.1. Radiografía <strong>de</strong> Debian ................................ 2959.9.2. Comparación con otros sistemas operativos . 298Bibliografía .................................................................... 301ANOTACIONES7


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Appendix A. GNU Free Documentation License ............ 317A.1. PREAMBLE ............................................................. 317A.2. APPLICABILITY AND DEFINITIONS ......................... 318A.3. VERBATIM COPYING ............................................. 320A.4. COPYING IN QUANTITY ....................................... 320A.5. MODIFICATIONS .................................................. 321A.6. COMBINING DOCUMENTS .................................. 324A.7. COLLECTIONS OF DOCUMENTS .......................... 324A.8. AGGREGATION WITH INDEPENDENT WORKS ....... 325A.9. TRANSLATION ...................................................... 325A.10. TERMINATION .................................................... 326A.11. FUTURE REVISIONS OF THIS LICENSE ................. 326A.12. ADDENDUM: How to use this Licensefor your documents ............................................. 326Apéndice B. Licencia <strong>de</strong> Documentación Libre<strong>de</strong> GNU .......................................................................... 329B.1. PREÁMBULO ......................................................... 329B.2. APLICABILIDAD Y DEFINICIONES .......................... 330B.3. COPIA LITERAL ...................................................... 332B.4. COPIADO EN CANTIDAD ..................................... 334B.5. MODIFICACIONES ............................................... 336B.6. COMBINACIÓN DE DOCUMENTOS ..................... 337B.7. COLECCIONES DE DOCUMENTOS ...................... 338B.8. AGREGACIÓN CON TRABAJOSINDEPENDIENTES ................................................. 338B.9. TRADUCCIÓN ...................................................... 338B.10. TERMINACIÓN ................................................... 338B.11. REVISIONES FUTURAS DE ESTA LICENCIA ........... 339B.12. ADENDA: Cómo usar esta Licenciaen sus documentos .............................................. 339ANOTACIONES8


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Lista <strong>de</strong> tablas4-1. Países con mayor número <strong>de</strong> <strong>de</strong>sarrolladores<strong>de</strong> Debian ................................................................ 954-2. Dedicación en horas seman<strong>al</strong>es ................................. 974-3. Grado <strong>de</strong> conocimiento <strong>de</strong> <strong>de</strong>sarrolladoresimportantes .............................................................. 1009-1. Estado actu<strong>al</strong> <strong>de</strong> Linux ............................................... 2489-2. Lenguajes <strong>de</strong> programación utilizados en Linux .......... 2499-3. Estado actu<strong>al</strong> <strong>de</strong> FreeBSD .......................................... 2559-4. Lenguajes <strong>de</strong> programación utilizados en FreeBSD ..... 2569-5. Estado actu<strong>al</strong> <strong>de</strong> KDE ................................................ 2639-6. Lenguajes <strong>de</strong> programación utilizados en KDE ............ 2649-7. Estado actu<strong>al</strong> <strong>de</strong> GNOME ......................................... 2729-9. Estado actu<strong>al</strong> <strong>de</strong> Apache ........................................... 2789-10. Lenguajes <strong>de</strong> programación utilizados en Apache ..... 2789-11. Estado actu<strong>al</strong> <strong>de</strong> Mozilla .......................................... 2839-12. Lenguajes <strong>de</strong> programación utilizados en Mozilla ..... 2849-13. Estado actu<strong>al</strong> <strong>de</strong> OpenOffice.org ............................. 2879-14. Lenguajes <strong>de</strong> programación utilizadosen OpenOffice.org .................................................. 2879-15. Estado actu<strong>al</strong> <strong>de</strong> Red Hat Linux ................................ 2929-16. Lenguajes <strong>de</strong> programación utilizados en Red Hat .... 2939-17. Estado actu<strong>al</strong> <strong>de</strong> Debian .......................................... 2969-18. Lenguajes <strong>de</strong> programación utilizadosen Debian GNU/Linux ............................................. 2979-19. Lenguajes más utilizados en Debian ......................... 2979-20. Comparación con sistemas propietarios ................... 299ANOTACIONES9


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492PrólogoLa primera versión <strong>de</strong> estos apuntes fue escrita por Jesús M. GonzálezBarahona, Joaquín Seoane Pascu<strong>al</strong> y Gregorio Robles entre losmeses <strong>de</strong> abril y septiembre <strong>de</strong>l 2003. Aunque llevábamos tiempohablando sobre preparar un materi<strong>al</strong> <strong>de</strong> este tipo para la asignaturaSoftware Libre que Joaquín y Jesús impartimos en los programas <strong>de</strong>doctorado <strong>de</strong> nuestros respectivos <strong>de</strong>partamentos, la iniciativa fue <strong>de</strong>la <strong>Universitat</strong> <strong>Oberta</strong> <strong>de</strong> Cat<strong>al</strong>unya (UOC) <strong>de</strong> encargarnos un materi<strong>al</strong>para la asignatura <strong>de</strong> introducción a su máster <strong>de</strong> <strong>software</strong> <strong>libre</strong>lo que nos <strong>de</strong>cidió fin<strong>al</strong>mente a ponernos manos a la obra. En esteencargo fue fundament<strong>al</strong> la labor <strong>de</strong> Jordi Mas, coordinador académico<strong>de</strong>l máster, que no sólo nos propuso para este trabajo y nospuso en contacto con la UOC, sino que nos acompañó en las relacionescon ellos durante el proyecto.Materi<strong>al</strong>es previosAlgunos textos <strong>de</strong> estos apuntes están basados en materi<strong>al</strong>es previos,norm<strong>al</strong>mente <strong>de</strong> los propios autores, en <strong>al</strong>gunos casos <strong>de</strong> terceraspersonas (utilizados con permiso, cuando no han sido completamentereelaborados). Entre ellos po<strong>de</strong>mos mencionar los siguientes (ariesgo <strong>de</strong> olvidar <strong>al</strong>guno importante):• Hay <strong>al</strong>gunos fragmentos (sobre todo en los capítulos <strong>de</strong> historia yeconomía) inspirados en el documento “Free Software / OpenSource: Information Society Opportunities for Europe?”, que JesúsGonzález Barahona coeditó para la Comisión Europea. Sin embargo,los fragmentos en cuestión han sido ampliados, retocadosy actu<strong>al</strong>izados, tanto que en muchos casos pue<strong>de</strong>n ser difíciles <strong>de</strong>reconocer.• El apartado sobre los monopolios y el <strong>software</strong> <strong>libre</strong> está reelaboradobasándonos en el artículo “Software <strong>libre</strong>, monopolios yotras yerbas”, <strong>de</strong> Jesús M. González Barahona.Lectura complementaria[Ver bibliografía, apartado111]ANOTACIONESLectura complementaria[Ver bibliografía, apartado66]11


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Lectura complementaria[Ver bibliografía, apartado84]• Los apartados sobre iniciativas legislativas e iniciativas <strong>de</strong> administracionespúblicas en relación con el <strong>software</strong> <strong>libre</strong> están enparte basados en “Iniciativas <strong>de</strong> las administraciones públicas enrelación <strong>al</strong> Software Libre” (gracias a Pedro <strong>de</strong> las Heras por permitirnosutilizar ese materi<strong>al</strong>, <strong>de</strong>l que es coautor).Lectura complementaria[Ver bibliografía, apartado67]• Parte <strong>de</strong>l apartado sobre los motivos para usar <strong>software</strong> <strong>libre</strong> enlas administraciones públicas está basado en el artículo <strong>de</strong> JesúsM. González Barahona.• La traducción <strong>de</strong> la Licencia <strong>de</strong> Documentación Libre <strong>de</strong> GNU esuna actu<strong>al</strong>ización adaptada <strong>de</strong> la re<strong>al</strong>izada por Igor Támara y PabloReyes para la versión 1.1, a los que agra<strong>de</strong>cemos el haberlare<strong>al</strong>izado y su permiso para modificarla.• El capítulo <strong>de</strong> ingeniería <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es una adaptación <strong>de</strong>un artículo sobre el estado <strong>de</strong>l arte <strong>de</strong> la ingeniería <strong>de</strong>l <strong>software</strong>aplicada <strong>al</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong> Jesús M. González Barahona y GregorioRobles para la revista Novática.• En el capítulo <strong>de</strong> estudios <strong>de</strong> casos, la parte <strong>de</strong>dicada <strong>al</strong> <strong>de</strong>sarrollo<strong>de</strong> Linux se basa en una presentación que re<strong>al</strong>izó Juan-Mariano<strong>de</strong> Goyeneche durante el curso <strong>de</strong> doctorado “ProgramasLibres” <strong>de</strong> la Universidad Politécnica <strong>de</strong> Madrid durante el curso2002-03.• La parte histórica <strong>de</strong>l estudio pormenorizado <strong>de</strong> GNOME ha sidotomada <strong>de</strong> la introducción histórica incluida en el libro Desarrollo<strong>de</strong> aplicaciones en GNOME2 elaborado por GNOME Hispano yre<strong>al</strong>izada por uno <strong>de</strong> los autores <strong>de</strong> este libro.ANOTACIONES• El caso <strong>de</strong> estudio <strong>de</strong> FreeBSD se basa en parte en la ponenciapresentada por Jesús Rodríguez en el III Congreso HispaLinux celebradoen Madrid en el año 2000.• Los casos <strong>de</strong> estudio <strong>de</strong> Debian y Red Hat parten <strong>de</strong>l trabajo previo<strong>de</strong> González Barahona et <strong>al</strong>. que han plasmado en varios artículoslos resultados <strong>de</strong>l análisis cuantitativo <strong>de</strong> estas dosdistribuciones.12


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Agra<strong>de</strong>cimientosLos autores agra<strong>de</strong>cen a la Fundación para la <strong>Universitat</strong> <strong>Oberta</strong> <strong>de</strong>Cat<strong>al</strong>unya (http://www.uoc.edu) la financiación <strong>de</strong> la primera edición<strong>de</strong> esta obra, enmarcada en el Máster Internacion<strong>al</strong> en SoftwareLibre ofrecido por la citada institución.ANOTACIONES13


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014921. Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>¿Qué es el <strong>software</strong> <strong>libre</strong>? ¿Qué es y qué implicaciones tiene la licencia<strong>de</strong> un programa <strong>libre</strong>? ¿Cómo se está <strong>de</strong>sarrollando el <strong>software</strong><strong>libre</strong>? ¿Cómo se financian los proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>, qué mo<strong>de</strong>los<strong>de</strong> negocio se están experimentando relacionados con ellos?¿Qué motiva a los <strong>de</strong>sarrolladores, especi<strong>al</strong>mente a los que son voluntarios,a involucrarse en proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>? ¿Cómo sonestos <strong>de</strong>sarrolladores? ¿Cómo se coordinan en sus proyectos, ycómo es el <strong>software</strong> que producen? En resumen, ¿cuál es la panorámicagener<strong>al</strong> <strong>de</strong>l <strong>software</strong> <strong>libre</strong>? Éste es el tipo <strong>de</strong> preguntas que trataremos<strong>de</strong> respon<strong>de</strong>r en este texto. Porque aunque el <strong>software</strong> <strong>libre</strong>está cada vez más en los medios <strong>de</strong> comunicación, en las conversaciones<strong>de</strong> los profesion<strong>al</strong>es <strong>de</strong> la informática, e incluso empieza a estaren boca <strong>de</strong> los ciudadanos en gener<strong>al</strong>, aún es un <strong>de</strong>sconocidopara muchos. Y muchas veces los que lo conocen lo hacen sólo <strong>de</strong><strong>al</strong>gunos <strong>de</strong> sus aspectos, <strong>de</strong>sconociendo completamente otros.Para empezar, en este capítulo vamos a presentar los aspectos específicos<strong>de</strong>l <strong>software</strong> <strong>libre</strong>, centrándonos fundament<strong>al</strong>mente en explicar susbases para los que se aproximen <strong>al</strong> tema por primera vez, y en motivarsu importancia. Entre estas bases nos <strong>de</strong>tendremos en la <strong>de</strong>finición <strong>de</strong>ltérmino (para saber <strong>de</strong> qué vamos a hablar) y en las consecuenciasprincip<strong>al</strong>es <strong>de</strong>l uso (y la mera existencia) <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. También presentaremosotros recursos <strong>libre</strong>s distintos <strong>de</strong>l <strong>software</strong> y que han idoapareciendo, en parte, bajo el impulso y ejemplo <strong>de</strong> aquél.1.1. El concepto <strong>de</strong> libertad en el <strong>software</strong>Des<strong>de</strong> hace más <strong>de</strong> 30 años nos hemos acostumbrado a que quienme ven<strong>de</strong> un programa me impone las condiciones bajo las que puedousarlo, prohibiéndome, por ejemplo, que se lo pase a un amigo. Apesar <strong>de</strong> ser <strong>software</strong>, no puedo adaptarlo a mis necesida<strong>de</strong>s, ni siquieracorregir errores, <strong>de</strong>biendo esperar a que el fabricante los arre-ANOTACIONES15


© FUOC • XP06/M2101/01492Software <strong>libre</strong>gle. Esto no tiene por qué ser así, y es precisamente el <strong>software</strong> <strong>libre</strong> elque me conce<strong>de</strong> las liberta<strong>de</strong>s que el <strong>software</strong> propietario me niega.1.1.1. DefiniciónLectura complementaria[Ver bibliografía, apartado98]Así pues el término <strong>software</strong> <strong>libre</strong> (o programas <strong>libre</strong>s) se refiere a libertad,t<strong>al</strong> como fue concebido por Richard St<strong>al</strong>lman en su <strong>de</strong>finición.En concreto se refiere a cuatro liberta<strong>de</strong>s:1. Libertad para ejecutar el programa en cu<strong>al</strong>quier sitio, con cu<strong>al</strong>quierpropósito y para siempre.2. Libertad para estudiarlo y adaptarlo a nuestras necesida<strong>de</strong>s. Estoexige el acceso <strong>al</strong> código fuente.3. Libertad <strong>de</strong> redistribución, <strong>de</strong> modo que se nos permita colaborarcon vecinos y amigos.4. Libertad para mejorar el programa y publicar las mejoras. Tambiénexige el código fuente.Estas liberta<strong>de</strong>s se pue<strong>de</strong>n garantizar <strong>de</strong> acuerdo con la leg<strong>al</strong>idad vigentepor medio <strong>de</strong> una licencia, como veremos en el capítulo 3. Enella se plasman las liberta<strong>de</strong>s, pero también restricciones compatiblescon ellas, como dar crédito a los autores origin<strong>al</strong>es si redistribuimos.Incluso pue<strong>de</strong> obligarnos a que los programas ajenosmejorados por nosotros también sean <strong>libre</strong>s, promoviendo así lacreación <strong>de</strong> más <strong>software</strong> <strong>libre</strong>.aaaANOTACIONESLa ambigüedad <strong>de</strong> “free”El término origin<strong>al</strong> en inglés para ‘programas <strong>libre</strong>s’ esfree <strong>software</strong>. Sin embargo, en inglés el término freea<strong>de</strong>más <strong>de</strong> ‘<strong>libre</strong>’ significa ‘gratis’, lo que genera granconfusión. Por ello a menudo en inglés se toman prestadasp<strong>al</strong>abras españolas y se habla <strong>de</strong> ‘<strong>libre</strong> <strong>software</strong>’,en contraposición a ‘gratis <strong>software</strong>’, <strong>al</strong> igu<strong>al</strong> que nosotrostomamos prestada la p<strong>al</strong>abra <strong>software</strong>.16


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Así pues no estamos hablando <strong>de</strong> <strong>software</strong> gratuito, y el <strong>software</strong> <strong>libre</strong>se pue<strong>de</strong> ven<strong>de</strong>r si se <strong>de</strong>sea. Pero <strong>de</strong>bido a la tercera libertad, cu<strong>al</strong>quierapue<strong>de</strong> redistribuirlo sin pedir dinero a cambio ni permiso a nadie,lo que hace prácticamente imposible obtener dinero pordistribuirlo, s<strong>al</strong>vo la pequeña cantidad que se pueda cargar por grabarloen un soporte físico y enviarlo, <strong>al</strong>go raramente <strong>de</strong>mandado exceptopara gran<strong>de</strong>s volúmenes, como es el caso <strong>de</strong> las distribuciones.Se han form<strong>al</strong>izado <strong>de</strong>finiciones más precisas <strong>de</strong> <strong>software</strong> <strong>libre</strong>,como es el caso notable <strong>de</strong> las directrices <strong>de</strong> la distribución Debian.En ellas se permite a<strong>de</strong>más que el autor exija que los códigos fuentesdistribuidos no sean modificados directamente, sino que los origin<strong>al</strong>esse acompañen <strong>de</strong> parches separados y que se generen programasbinarios con distinto nombre que el origin<strong>al</strong>. A<strong>de</strong>más, exigenque las licencias no contaminen otros programas distribuidos en elmismo medio.Lectura complementaria[Ver bibliografía, apartado85]1.1.2. Términos relacionadosEquiv<strong>al</strong>ente a <strong>software</strong> <strong>libre</strong> es el término Open Source Software(‘programas <strong>de</strong> fuente abierto’), promovido por Eric Raymond y laOpen Source Initiative. Filosóficamente, el término es muy distinto, yaque hace énfasis en la disponibilidad <strong>de</strong> código fuente, no en la libertad,pero su <strong>de</strong>finición es prácticamente la misma que la <strong>de</strong> Debian.Este nombre es más políticamente aséptico y rec<strong>al</strong>ca unaspecto técnico que pue<strong>de</strong> dar lugar a ventajas técnicas, como mejoresmo<strong>de</strong>los <strong>de</strong> <strong>de</strong>sarrollo y negocio, mayor seguridad, etc. Fuertementecriticado por Richard St<strong>al</strong>lman y la Free SoftwareFoundation, ha encontrado mucho más eco en la literatura comerci<strong>al</strong>y en las estrategias <strong>de</strong> las empresas que <strong>de</strong> una manera u otra apoyanel mo<strong>de</strong>lo.Otros términos relacionados <strong>de</strong> <strong>al</strong>guna manera con el <strong>software</strong> <strong>libre</strong>son:• FreewareProgramas gratuitos. Norm<strong>al</strong>mente se ce<strong>de</strong>n en binario y con <strong>de</strong>rechos<strong>de</strong> redistribución. Sin embargo, a veces sólo se pue<strong>de</strong>n obtenerLectura complementaria[Ver bibliografía, apartados162, 183 y 23]ANOTACIONES17


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>de</strong> un sitio ofici<strong>al</strong>, norm<strong>al</strong>mente para promocionar otros programaso servicios, como es el caso <strong>de</strong> los kits <strong>de</strong> Java gratuitos que proporcionaSun Microsystems.• SharewareNo es siquiera <strong>software</strong> gratis, sino un método <strong>de</strong> distribución, yaque los programas, gener<strong>al</strong>mente sin fuentes, se pue<strong>de</strong>n copiar <strong>libre</strong>mente,pero no usar continuadamente sin pagarlos. La exigencia<strong>de</strong> pago pue<strong>de</strong> estar incentivada por funcion<strong>al</strong>idad limitada o mensajesmolestos, o una simple apelación a la mor<strong>al</strong> <strong>de</strong>l usuario, a<strong>de</strong>más<strong>de</strong> que las estipulaciones leg<strong>al</strong>es <strong>de</strong> la licencia podrían utilizarseen contra <strong>de</strong>l infractor.• Charityware, CarewareLectura complementaria[Ver bibliografía, apartado153]Gener<strong>al</strong>mente shareware, pero cuyo pago se exige para una organizacióncaritativa patrocinada. En muchos casos, el pago no se exige,pero se solicita una contribución voluntaria. Algún <strong>software</strong> <strong>libre</strong>,como vim solicita contribuciones voluntarias <strong>de</strong> este tipo.• Dominio públicoEl autor renuncia absolutamente a todos sus <strong>de</strong>rechos, en favor<strong>de</strong>l común, lo cu<strong>al</strong> tiene que estar <strong>de</strong>clarado explícitamente en elprograma, ya que si no se dice nada, el programa es propietarioy no se pue<strong>de</strong> hacer nada con él. En este caso, y si a<strong>de</strong>más se proporcionanlos códigos fuentes, el programa es <strong>libre</strong>.ANOTACIONES• CopyleftUn caso particular <strong>de</strong> <strong>software</strong> <strong>libre</strong> cuya licencia obliga a que lasmodificaciones que se distribuyan sean también <strong>libre</strong>s.• Propietario, cerrado, no <strong>libre</strong>Términos usados para <strong>de</strong>nominar <strong>al</strong> <strong>software</strong> que no es <strong>libre</strong> ni <strong>de</strong>fuente abierta.18


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014921.2. MotivacionesComo hemos visto hay dos gran<strong>de</strong>s familias <strong>de</strong> motivaciones para el<strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>, que dan lugar asimismo a los dos nombrescon que se lo conoce:• La motivación ética, aban<strong>de</strong>rada por la Free Software Foundation,here<strong>de</strong>ra <strong>de</strong> la culturahacker, y partidaria <strong>de</strong>l apelativo <strong>libre</strong>,que argumenta que el <strong>software</strong> es conocimiento y <strong>de</strong>be po<strong>de</strong>rsedifundir sin trabas. Su ocultación es una actitud antisoci<strong>al</strong> y la posibilidad<strong>de</strong> modificar programas es una forma <strong>de</strong> libertad <strong>de</strong> expresión.Pue<strong>de</strong> profundizarse en este aspecto en los ensayos <strong>de</strong>St<strong>al</strong>lman o en el análisis <strong>de</strong> Pekka Himanen.Lectura complementaria[Ver bibliografía, apartados190 y 124]• La motivación pragmática, aban<strong>de</strong>rada por la Open Source Initiativey partidaria <strong>de</strong>l apelativo fuente abierta, que argumentaventajas técnicas y económicas, que repasaremos más a<strong>de</strong>lante.Lectura complementaria[Ver bibliografía, apartado43]Aparte <strong>de</strong> estas dos gran<strong>de</strong>s motivaciones, la gente que trabaja en<strong>software</strong> <strong>libre</strong> pue<strong>de</strong> hacerlo por muchas otras razones, que van <strong>de</strong>s<strong>de</strong>la diversión a la mera retribución económica, que es posible <strong>de</strong>bidoa mo<strong>de</strong>los <strong>de</strong> negocio sustentables. En el capítulo 4 seprofundiza en estas motivaciones a partir <strong>de</strong> análisis objetivos.Lectura complementaria[Ver bibliografía, apartado195]1.3. Consecuencias <strong>de</strong> la libertad <strong>de</strong>l <strong>software</strong>El <strong>software</strong> <strong>libre</strong> trae consigo numerosas ventajas y pocas <strong>de</strong>sventajas,muchas <strong>de</strong> ellas exageradas (o f<strong>al</strong>seadas) por la competenciapropietaria. De ellas la que más fundamento tiene es la económica,ya que como vimos no es posible obtener mucho dinero <strong>de</strong> la distribucióny ésta la pue<strong>de</strong> y suele hacer <strong>al</strong>guien distinto <strong>al</strong> autor. Es porello por lo que se necesitan mo<strong>de</strong>los <strong>de</strong> negocio y otros mecanismos<strong>de</strong> financiación, que se <strong>de</strong>sarrollan en el capítulo 5. Otras, como laf<strong>al</strong>ta <strong>de</strong> soporte o la c<strong>al</strong>idad escasa, están relacionadas con la financiación,pero a<strong>de</strong>más en muchos casos son f<strong>al</strong>sas, ya que incluso<strong>software</strong> sin ningún tipo <strong>de</strong> financiación suele ofrecer muy buen soportea través foros <strong>de</strong> usuarios y <strong>de</strong>sarrolladores, y muchas vecestiene gran c<strong>al</strong>idad.ANOTACIONES19


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Teniendo presentes los problemas económicos, hemos <strong>de</strong> observarque el mo<strong>de</strong>lo <strong>de</strong> costes <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es muy distinto <strong>de</strong>l propietario,ya que gran parte <strong>de</strong> él se ha <strong>de</strong>sarrollado fuera <strong>de</strong> la economíaform<strong>al</strong> monetaria, muchas veces con mecanismos <strong>de</strong> trueque:“yo te doy un programa que te interesa y tú lo adaptas a tu arquitecturay le haces mejoras que a ti te interesan”. En el capítulo 7 se explicanmecanismos <strong>de</strong> ingeniería <strong>software</strong> apropiados paraaprovechar estos recursos humanos no pagados y con característicaspropias, mientras que en el capítulo 8 se estudian las herramientasusadas para hacer efectiva esta colaboración. Pero a<strong>de</strong>más granparte <strong>de</strong> los costes disminuyen por el hecho <strong>de</strong> ser <strong>libre</strong>, ya que losprogramas nuevos no tienen por qué empezar <strong>de</strong>s<strong>de</strong> cero, sino quepue<strong>de</strong>n reutilizar <strong>software</strong> ya hecho. La distribución tiene también uncoste mucho menor, ya que se hace vía Internet y con propagandagratuita en foros públicos <strong>de</strong>stinados a ello.Otra consecuencia <strong>de</strong> las liberta<strong>de</strong>s es la c<strong>al</strong>idad que se <strong>de</strong>riva <strong>de</strong> lacolaboración voluntaria <strong>de</strong> gente que contribuye o que <strong>de</strong>scubre yreporta errores en entornos y situaciones inimaginables por el <strong>de</strong>sarrolladororigin<strong>al</strong>. A<strong>de</strong>más, si un programa no ofrece la c<strong>al</strong>idad suficiente,la competencia pue<strong>de</strong> tomarlo y mejorarlo, partiendo <strong>de</strong> loque hay. Así, dos po<strong>de</strong>rosos mecanismos: la colaboración y la competenciase combinan en aras <strong>de</strong> la c<strong>al</strong>idad.Examinemos ahora las consecuencias beneficiosas según el <strong>de</strong>stinatario.1.3.1. Para el usuario fin<strong>al</strong>ANOTACIONESEl usuario fin<strong>al</strong>, ya sea individu<strong>al</strong> o empresa, pue<strong>de</strong> encontrar verda<strong>de</strong>racompetencia en un mercado con ten<strong>de</strong>ncia <strong>al</strong> monopolio. Enparticular, no <strong>de</strong>pen<strong>de</strong> necesariamente <strong>de</strong>l soporte <strong>de</strong>l fabricante <strong>de</strong>l<strong>software</strong>, ya que pue<strong>de</strong> haber múltiples empresas, quizá pequeñas,que disponiendo <strong>de</strong>l código fuente y <strong>de</strong> conocimientos, puedan hacernegocio manteniendo <strong>de</strong>terminados programas <strong>libre</strong>s.Ya no se <strong>de</strong>pen<strong>de</strong> tanto <strong>de</strong> la fiabilidad <strong>de</strong>l fabricante para intentar<strong>de</strong>ducir la c<strong>al</strong>idad <strong>de</strong> un producto, sino que la guía nos dará la aceptación<strong>de</strong> la comunidad y la disponibilidad <strong>de</strong> los códigos fuentes.Nos olvidamos a<strong>de</strong>más <strong>de</strong> las cajas negras, en las que hay que con-20


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492fiar porque sí, y <strong>de</strong> las estrategias <strong>de</strong> los fabricantes, que pue<strong>de</strong>n <strong>de</strong>cidirunilater<strong>al</strong>mente <strong>de</strong>jar <strong>de</strong> mantener un producto.La ev<strong>al</strong>uación <strong>de</strong> productos antes <strong>de</strong> adoptarlos es ahora muchomás sencilla, ya que basta con inst<strong>al</strong>ar los productos <strong>al</strong>ternativos ennuestro entorno re<strong>al</strong> y probar, mientras que para el <strong>software</strong> propietariohay que fiarse <strong>de</strong> informes externos o negociar pruebas con losproveedores, lo cu<strong>al</strong> no es siempre posible.Dada la libertad <strong>de</strong> modificar el programa para uso propio, elusuario pue<strong>de</strong> person<strong>al</strong>izarlo o adaptarlo a sus necesida<strong>de</strong>s, corrigiendoerrores si los tuviera. El proceso <strong>de</strong> corrección <strong>de</strong> errores<strong>de</strong>scubiertos por los usuarios en <strong>software</strong> propietario suele ser extremadamentepenoso, si no imposible, ya que si conseguimos quese repare, muchas veces se hará en la versión siguiente, que podríatardar años en s<strong>al</strong>ir, y a veces a<strong>de</strong>más habrá que adquirirla <strong>de</strong> nuevo.Sin embargo, lo po<strong>de</strong>mos hacer nosotros si estamos cu<strong>al</strong>ificadoso contratar el servicio fuera. También po<strong>de</strong>mos, directamenteo contratando servicios, integrar el programa con otro, o auditar suc<strong>al</strong>idad (por ejemplo, la seguridad). El control pasa, en gran medida,<strong>de</strong>l proveedor <strong>al</strong> usuario.1.3.2. Para la Administración públicaLa Administración pública es un gran usuario <strong>de</strong> características especi<strong>al</strong>es,ya que tiene obligaciones especi<strong>al</strong>es con el ciudadano, ya seaproporcionándole servicios accesibles, neutr<strong>al</strong>es respecto a los fabricantes,ya garantizando la integridad, utilidad, privacidad y seguridad<strong>de</strong> sus datos a largo plazo. Todo ello la obliga a ser másrespetuosa con los estándares que las empresas privadas y a mantenerlos datos en formatos abiertos y manipulados con <strong>software</strong> queno <strong>de</strong>penda <strong>de</strong> estrategia <strong>de</strong> empresas, gener<strong>al</strong>mente extranjeras,certificado como seguro por auditoría interna. La a<strong>de</strong>cuación a estándareses una característica notable <strong>de</strong>l <strong>software</strong> <strong>libre</strong> que no estan respetada por el <strong>software</strong> propietario, ávido en muchos casos notables<strong>de</strong> crear mercados cautivos.Asimismo, la Administración tiene una cierta función <strong>de</strong> escaparatey guía <strong>de</strong> la industria que la hace tener un gran impacto, que <strong>de</strong>beríadirigirse a la creación <strong>de</strong> un tejido tecnológico generador <strong>de</strong>ANOTACIONES21


© FUOC • XP06/M2101/01492Software <strong>libre</strong>riqueza nacion<strong>al</strong>. Ésta pue<strong>de</strong> crearse fomentando empresas, cuyonegocio sea en parte el <strong>de</strong>sarrollo <strong>de</strong> nuevo <strong>software</strong> <strong>libre</strong> para laadministración, o el mantenimiento, adaptación o auditoría <strong>de</strong>l<strong>software</strong> existente. En el capítulo 6 nos exten<strong>de</strong>mos más en estacuestión.1.3.3. Para el <strong>de</strong>sarrolladorPara el <strong>de</strong>sarrollador y productor <strong>de</strong> <strong>software</strong>, la libertad cambia mucholas reglas <strong>de</strong>l juego. Con él le es más fácil competir siendo pequeñoy adquirir tecnología punta. Pue<strong>de</strong> aprovecharse <strong>de</strong>l trabajo<strong>de</strong> los <strong>de</strong>más, compitiendo incluso con otro producto modificando supropio código, si bien también el competidor copiado se aprovechará<strong>de</strong> nuestro código (si es copyleft). Bien llevado, un proyecto pue<strong>de</strong>conseguir la colaboración gratuita <strong>de</strong> mucha gente, <strong>de</strong>l que el iniciadoserá la referencia. Asimismo, la distribución es barata y glob<strong>al</strong>.No obstante, como dijimos, el problema que tiene este <strong>de</strong>sarrolladores la manera <strong>de</strong> obtener los recursos económicos si el trabajo no es<strong>de</strong> encargo. En el capítulo 5 veremos <strong>al</strong>go <strong>de</strong> esto.1.3.4. Para el integradorPara el integrador el <strong>software</strong> <strong>libre</strong> es el paraíso. No más cajas negrasque intentar encajar, a menudo con ingeniería inversa. Pue<strong>de</strong>limar asperezas e integrar trozos <strong>de</strong> programas para conseguir elproducto integrado necesario, disponiendo <strong>de</strong> un acervo ingente <strong>de</strong><strong>software</strong> <strong>libre</strong> <strong>de</strong> don<strong>de</strong> extraer las piezas.1.3.5. Para el que proporciona mantenimiento y serviciosANOTACIONESDisponer <strong>de</strong>l código fuente lo cambia todo, situándonos casi en lasmismas condiciones que el productor. Y no son las mismas porquehace f<strong>al</strong>ta un conocimiento profundo <strong>de</strong>l programa que sólo el <strong>de</strong>sarrolladorposee, por lo que es conveniente que el mantenedor participeen los proyectos que se <strong>de</strong>dica a mantener. El v<strong>al</strong>or añadido<strong>de</strong> los servicios es mucho más apreciado, ya que el coste <strong>de</strong>l programaes bajo. Éste es actu<strong>al</strong>mente el negocio más claro con <strong>software</strong><strong>libre</strong> y con el que es posible un mayor grado <strong>de</strong> competencia.22


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014921.4. Otros recursos <strong>libre</strong>s¿Se pue<strong>de</strong>n exten<strong>de</strong>r las i<strong>de</strong>as <strong>de</strong> los programas <strong>libre</strong>s a otros recursos?Po<strong>de</strong>mos pensar que otros recursos <strong>de</strong> información fácilmentecopiables electrónicamente son <strong>de</strong> natur<strong>al</strong>eza similar a losprogramas, por lo que les son aplicables las mismas liberta<strong>de</strong>s,reglas y mo<strong>de</strong>los <strong>de</strong> <strong>de</strong>sarrollo y negocio. Hay diferencias cuyasimplicaciones han hecho que no se <strong>de</strong>sarrollen con la misma fuerzaque los programas. La princip<strong>al</strong> es que basta copiar los programaspara que funcionen, mientras que <strong>de</strong>s<strong>de</strong> que se copia otrotipo <strong>de</strong> información hasta que empieza a ser útil se ha <strong>de</strong> pasarpor un proceso más o menos costoso, que pue<strong>de</strong> ir <strong>de</strong>s<strong>de</strong> elaprendizaje <strong>de</strong> un documento a la puesta en producción <strong>de</strong> unhardware <strong>de</strong>scrito en un lenguaje apropiado. Revisemos los recursos<strong>libre</strong>s más importantes.1.4.1. Documentación <strong>de</strong> programasLa documentación que viene con un programa es parte integrante<strong>de</strong>l mismo, como lo son los comentarios <strong>de</strong>l código fuente. Así lo reconocela Ley <strong>de</strong> Propiedad Intelectu<strong>al</strong>, y parece lógico que se le apliquenlas mismas liberta<strong>de</strong>s y evolucione <strong>de</strong> la misma manera. Todamodificación que se haga <strong>de</strong> un programa requiere un cambio simultáneoy consistente en su documentación.La mayor parte <strong>de</strong> esta documentación suele estar codificada comoficheros <strong>de</strong> texto sin formato, ya que se preten<strong>de</strong> que sea univers<strong>al</strong>menteaccesible con un entorno <strong>de</strong> herramientas mínimo, y <strong>de</strong>be incluiruna pequeña introducción <strong>al</strong> programa documentado (READMEo LEEME), instrucciones <strong>de</strong> inst<strong>al</strong>ación (INSTALL), <strong>al</strong>guna historiasobre la evolución pasada y futura <strong>de</strong>l programa (changelog y TO-DO), autoría y condiciones <strong>de</strong> copia (AUTHORS y copyright), asícomo las instrucciones <strong>de</strong> uso. Todas ellas, menos la autoría y lascondiciones <strong>de</strong> copia, <strong>de</strong>berían ser <strong>libre</strong>mente modificables según elprograma va evolucionando. A la autoría sólo se le <strong>de</strong>berían añadirnombres y créditos, pero sin borrar nada, y las condiciones <strong>de</strong> copiasólo <strong>de</strong>berían modificarse si estas mismas lo permiten, como veremosen el capítulo 3.ANOTACIONES23


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Las instrucciones <strong>de</strong> uso suelen estar codificadas en formatos máscomplejos, ya que suelen ser documentos más largos y ricos. El <strong>software</strong><strong>libre</strong> exige que esta documentación pueda ser modificada fácilmente,lo que a su vez obliga a usar formatos <strong>de</strong>nominadostransparentes, <strong>de</strong> especificación conocida y procesables por herramientas<strong>libre</strong>s, como son, a<strong>de</strong>más <strong>de</strong>l texto puro y limpio, el formato<strong>de</strong> páginas <strong>de</strong> manu<strong>al</strong> <strong>de</strong> Unix, TexInfo, LaTeX o DocBook, sin perjuicio<strong>de</strong> distribuir también el resultado <strong>de</strong> transformar esos documentosfuente en formatos más aptos para visu<strong>al</strong>izar o imprimir,como HTML, PDF o RTF (formatos opacos).1.4.2. Otra documentaciónLectura complementaria[Ver bibliografía, apartado36]Sin embargo, muchas veces se elabora documentación sobre programaspor parte <strong>de</strong> terceros que no han intervenido en el <strong>de</strong>sarrollo.A veces se trata <strong>de</strong> documentación <strong>de</strong> carácter didácticoque facilita la inst<strong>al</strong>ación y uso <strong>de</strong> un programa concreto(HOWTOs, COMOs o recetarios), a veces se trata <strong>de</strong> documentaciónmás amplia, abarcando varios programas y su integración,comparando soluciones, etc., ya sea en forma tutori<strong>al</strong> o <strong>de</strong> referencia.En otras ocasiones, se trata <strong>de</strong> una mera recopilación <strong>de</strong>preguntas frecuentes con sus respuestas (FAQs o PUFs). Ejemplonotable es el Proyecto <strong>de</strong> Documentación Linux. En esta categoríapo<strong>de</strong>mos incluir otros documentos técnicos, no necesariamentesobre programas, ya sean las instrucciones para cablear una redloc<strong>al</strong>, construir una cocina solar, reparar un motor o seleccionarun proveedor <strong>de</strong> tornillos.ANOTACIONESEstos documentos son <strong>al</strong>go intermedio entre mera documentación<strong>de</strong> programas y artículos o libros muy técnicos y prácticos. Sin menoscabo<strong>de</strong> la libertad <strong>de</strong> lectura, copia, modificación y redistribución,el autor pue<strong>de</strong> querer verter opiniones que no <strong>de</strong>sea quese tergiversen, o <strong>al</strong> menos que esas tergiversaciones no se le atribuyan.O pue<strong>de</strong> querer que se conserven párrafos, como agra<strong>de</strong>cimientos,o que necesariamente se modifiquen otros, como eltítulo. Aunque estas inquietu<strong>de</strong>s pue<strong>de</strong>n también manifestarse conlos programas en sí mismos, no se han mostrado con tanta fuerzaen el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> como en el <strong>de</strong> la documentación<strong>libre</strong>.24


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014921.4.3. Artículos científicosEl avance <strong>de</strong> la ciencia se <strong>de</strong>be en gran parte a que los investigadoresque la hacen progresar para beneficio <strong>de</strong> la humanidad publicanlos resultados <strong>de</strong> sus trabajos en revistas <strong>de</strong> amplia difusión. Graciasa esa difusión los investigadores <strong>de</strong>sarrollan un currículum que lespermite progresar hacia puestos <strong>de</strong> mayor categoría y responsabilidad,a la vez que pue<strong>de</strong>n obtener ingresos a partir <strong>de</strong> contratos <strong>de</strong>investigación que se han conseguido gracias <strong>al</strong> prestigio obtenido.Así pues, esta difusión <strong>de</strong> artículos representa un mo<strong>de</strong>lo <strong>de</strong> negocioque se ha <strong>de</strong>mostrado muy fructífero. Para que sea posible se necesitauna amplia difusión y c<strong>al</strong>idad garantizada. La difusión se ve obstaculizadapor gran cantidad <strong>de</strong> revistas existentes, <strong>de</strong> coste no<strong>de</strong>spreciable, cuya adquisición sólo es posible con presupuestos generosos.La c<strong>al</strong>idad se garantiza por medio <strong>de</strong> la revisión por especi<strong>al</strong>istas.Por ello han surgido numerosas iniciativas <strong>de</strong> revistas en la Red, entrelas que <strong>de</strong>stacan la veterana First Monday o el proyecto Public LibraryOf Science. En “Directory of open access journ<strong>al</strong>s” se citan bastantesmás. ¿Se <strong>de</strong>be permitir que personas que no son los autores publiquenuna modificación <strong>de</strong> un artículo? Hay objeciones que <strong>al</strong>egan<strong>de</strong>s<strong>de</strong> una posible f<strong>al</strong>ta <strong>de</strong> c<strong>al</strong>idad o una tergiversación <strong>de</strong> opinioneso resultados, hasta el peligro <strong>de</strong> plagio fácil, que permite a <strong>al</strong>gunostrepar sin esfuerzo y oscurecer los méritos <strong>de</strong> los verda<strong>de</strong>ros autores.Sin embargo, la obligación <strong>de</strong> citar <strong>al</strong> autor origin<strong>al</strong> y <strong>de</strong> pasar unarevisión en una revista <strong>de</strong> prestigio pue<strong>de</strong> contrarrestar esos problemas(ver apartado 3.3.2).Lectura complementaria[Ver bibliografía, apartados22, 45 y 19]Se ha querido establecer un par<strong>al</strong>elismo entre el <strong>software</strong> <strong>libre</strong> y laciencia, ya que el mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong>l primero implica la máximadifusión, la revisión por otros, presumiblemente expertos, y lareutilización <strong>de</strong> resultados.1.4.4. Leyes y estándaresHay documentos cuyo carácter es normativo, que <strong>de</strong>finen cómo <strong>de</strong>benhacerse las cosas, ya sea para facilitar la convivencia entre laspersonas, ya para que programas o máquinas interoperen entre sí.Lectura complementaria[Ver bibliografía, apartado134]ANOTACIONES25


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Estos documentos requieren la máxima difusión, por lo que todo obstáculoa la misma es contraproducente. Por ello, es comprensible quetengan un tratamiento especi<strong>al</strong>, como ocurre con la Ley <strong>de</strong> la PropiedadIntelectu<strong>al</strong> española:aaa“No son objeto <strong>de</strong> propiedad intelectu<strong>al</strong> las disposicionesleg<strong>al</strong>es o reglamentarias y sus correspondientesproyectos, las resoluciones <strong>de</strong> los órganos jurisdiccion<strong>al</strong>esy los actos, acuerdos, <strong>de</strong>liberaciones y dictámenes<strong>de</strong> los organismos públicos, así como lastraducciones ofici<strong>al</strong>es <strong>de</strong> todos los textos anteriores.”La variante tecnológica <strong>de</strong> las leyes son las normas o estándares. Enprogramación son especi<strong>al</strong>mente importantes los protocolos <strong>de</strong> comunicaciones,ya sea entre máquinas remotas o entre módulos <strong>de</strong> lamisma máquina. Es obvio que no <strong>de</strong>be limitarse su difusión, especi<strong>al</strong>mentesi queremos que florezcan los programas <strong>libre</strong>s que interoperencon otros, pero a pesar <strong>de</strong> ello, tradicion<strong>al</strong>mente, losorganismos <strong>de</strong> norm<strong>al</strong>ización, como la ISO e ITU, ven<strong>de</strong>n sus normas,incluso en formato electrónico, y prohíben su redistribución.Aunque pueda intentar justificarse esto para cubrir parci<strong>al</strong>mente losgastos, la <strong>libre</strong> difusión <strong>de</strong>l texto <strong>de</strong> los estándares ha resultado muchomás productiva. Éste es el caso <strong>de</strong> las recomendaciones <strong>de</strong>l W3Cy sobre todo las que gobiernan Internet, disponibles <strong>de</strong>s<strong>de</strong> el principioen documentos llamados RFC, <strong>de</strong> Request for Comments, en formatoselectrónicos legibles en cu<strong>al</strong>quier editor <strong>de</strong> textos.ANOTACIONESLectura complementaria[Ver bibliografía, apartados76 y 115]Lectura complementaria[Ver bibliografía, apartado55]Pero no es la disponibilidad la única causa <strong>de</strong>l éxito <strong>de</strong> los protocolos<strong>de</strong> Internet. También lo es su mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo, muy similar <strong>al</strong> <strong>de</strong>l<strong>software</strong> <strong>libre</strong> por su carácter abierto a la participación <strong>de</strong> cu<strong>al</strong>quierinteresado y por la utilización <strong>de</strong> listas <strong>de</strong> correo y medios similares.¿Debe permitirse la modificación <strong>de</strong>l texto <strong>de</strong> leyes y normas? Obviamenteno si eso da lugar a confusión. Por ejemplo, sólo se admiteque una RFC sea modificada para explicarla o añadirle comentariosaclaratorios, mientras que ni siquiera esto se permite sin autorizaciónexplícita para las recomendaciones <strong>de</strong>l W3C. Las licencias son tambiéndocumentos leg<strong>al</strong>es no modificables. ¿Debería permitirse la26


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492creación <strong>de</strong> nuevas normas <strong>de</strong>rivadas <strong>de</strong> otras existentes a partir <strong>de</strong>los documentos origin<strong>al</strong>es? Probablemente hacerlo así llevaría a laproliferación fácil <strong>de</strong> normas similares e incompatibles que crearíanconfusión y podrían ayudar a empresas dominantes en el mercadoa promover su propia variante incompatible, como <strong>de</strong> hecho ya estáocurriendo, especi<strong>al</strong>mente en el ámbito <strong>de</strong> la web. No obstante, enel caso <strong>de</strong> las legislaciones <strong>de</strong> los estados, muchas veces se han copiadoliter<strong>al</strong>mente leyes <strong>de</strong> otros países, adaptadas con pequeñasmodificaciones a las particularida<strong>de</strong>s loc<strong>al</strong>es.¿Existe un mo<strong>de</strong>lo <strong>de</strong> negocio para las leyes y normas? En torno <strong>al</strong>as leyes existen multitud <strong>de</strong> profesion<strong>al</strong>es que se encargan <strong>de</strong> su diseño,interpretación y <strong>de</strong> forzar su aplicación (legisladores, abogados,procuradores, jueces, etc.). En torno a las normas existenlaboratorios que otorgan certificados <strong>de</strong> conformidad. Las organizaciones<strong>de</strong> norm<strong>al</strong>ización viven, o <strong>de</strong>berían vivir, <strong>de</strong> las aportaciones<strong>de</strong> miembros interesados en promover estándares, porque, porejemplo, su negocio está formado por productos que interoperan.Lo mismo que es conveniente tener una <strong>de</strong>finición <strong>de</strong> <strong>software</strong> <strong>libre</strong>o abierto, también es necesaria una <strong>de</strong>finición <strong>de</strong> estándares abiertos.Bruce Perens ha propuesto una <strong>de</strong> ellas basada en los principiossiguientes:Lectura complementaria[Ver bibliografía, apartado14]• Disponibilidad. Si es posible, proporcionar incluso una implementación<strong>libre</strong> <strong>de</strong> referencia.• Maximizar las opciones <strong>de</strong>l usuario fin<strong>al</strong>.• Sin tasas sobre la implementación (no así sobre la certificación,aunque aconseja la disponibilidad <strong>de</strong> herramientas <strong>libre</strong>s <strong>de</strong> autocertificación).• Sin discriminación <strong>de</strong> implementador.• Permiso <strong>de</strong> extensión o restricción (no certificable).• Evitar prácticas predatorias por fabricantes dominantes. Toda extensiónpropietaria <strong>de</strong>be tener una implementación <strong>libre</strong> <strong>de</strong> referencia.ANOTACIONES27


© FUOC • XP06/M2101/01492Software <strong>libre</strong>1.4.5. EnciclopediasLectura complementaria[Ver bibliografía, apartado189]En 1999 Richard St<strong>al</strong>lman lanza la i<strong>de</strong>a <strong>de</strong> una enciclopedia <strong>libre</strong>como un mecanismo para evitar la apropiación <strong>de</strong>l conocimiento yproporcionar acceso univers<strong>al</strong> a documentación formativa. Estaríaformada por artículos contribuidos por la comunidad, sin un controlcentr<strong>al</strong>izado, don<strong>de</strong> distintos actores asumirían distintos roles, entrelos que se aconseja, pero no se obliga, el <strong>de</strong> revisor. Esta enciclopediano contendría solamente texto, sino elementos multimedios y<strong>software</strong> educativo <strong>libre</strong>.Lectura complementaria[Ver bibliografía, apartados158 y 56]Han surgido varias iniciativas para re<strong>al</strong>izar esta visión. Por ejemplo,la Nupedia ha tratado, <strong>de</strong> momento sin éxito, <strong>de</strong> construir una enciclopedia<strong>de</strong> c<strong>al</strong>idad, quizá por requerir un formato relativamente difícil<strong>de</strong> apren<strong>de</strong>r (TEI), quizá por el requisito <strong>de</strong> que todos los artículosnecesiten un editor, revisores científicos y <strong>de</strong> estilo, etc. Mucho máséxito ha tenido la wikipedia, que ha eliminado ambos obstáculos yse aproxima más a la i<strong>de</strong>a <strong>de</strong> St<strong>al</strong>lman. La wikipedia usa una herramienta,el wiki, que permite a cu<strong>al</strong>quiera editar cu<strong>al</strong>quier documentopor medio <strong>de</strong> un sistema <strong>de</strong> texto estructurado extraordinariamentesimple, como veremos en el apartado 8.5.2. Debido a ello han podidorecoger más <strong>de</strong> 120.000 artículos en sus dos primeros años <strong>de</strong>vida.Lectura complementaria[Ver bibliografía, apartado206]Cabe <strong>de</strong>stacar también la Concise Encyclopedia of Mathematics conun concepto <strong>de</strong> libertad más limitado (sólo se pue<strong>de</strong> consultar en laRed) y un mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo que necesariamente pasa todas lascontribuciones por un comité editori<strong>al</strong>.1.4.6. CursosANOTACIONESCon la misma fin<strong>al</strong>idad que las enciclopedias, se pue<strong>de</strong> producirmateri<strong>al</strong> docente <strong>libre</strong>, como apuntes, transparencias, ejercicios, libros,planificaciones o <strong>software</strong> didáctico. Existe una ten<strong>de</strong>ncia a verlas universida<strong>de</strong>s como un negocio <strong>de</strong> producción y venta <strong>de</strong> conocimientoque contradice sus principios. Los motivos por los que unauniversidad pue<strong>de</strong> poner a disposición <strong>de</strong> todo el mundo estos materi<strong>al</strong>esson:• Cumplir su misión como agente difusor <strong>de</strong>l conocimiento.28


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492• No cuesta mucho hacer accesible a todo el mundo el materi<strong>al</strong>existente.• Estos materi<strong>al</strong>es no sustituyen a la enseñanza presenci<strong>al</strong>.• Es publicidad que pue<strong>de</strong> atraer a <strong>al</strong>umnos y que contribuye <strong>al</strong>prestigio <strong>de</strong> la universidad.• Permiten crear una comunidad <strong>de</strong> docentes que se revisen mutuamentelos materi<strong>al</strong>es y los mejoren.La iniciativa más notable en este sentido es la <strong>de</strong>l MIT, que prevé haceraccesibles más <strong>de</strong> 2.000 cursos <strong>de</strong> forma coherente, uniforme ybien cat<strong>al</strong>ogados.Lectura complementaria[Ver bibliografía, apartado154]1.4.7. Colecciones y bases <strong>de</strong> datosLa mera recolección <strong>de</strong> información siguiendo <strong>de</strong>terminados criterios,or<strong>de</strong>nándola y facilitando su acceso es <strong>de</strong> por sí un producto <strong>de</strong>información v<strong>al</strong>ioso, in<strong>de</strong>pendiente <strong>de</strong> la información en sí misma,sujeto por tanto a autoría y, por ello, a restricciones <strong>de</strong> las liberta<strong>de</strong>s<strong>de</strong> acceso, modificación y redistribución. Por tanto, si <strong>de</strong>seamos información<strong>libre</strong> también po<strong>de</strong>mos <strong>de</strong>sear colecciones <strong>libre</strong>s.Por ejemplo, po<strong>de</strong>mos querer clasificar la información relevante enInternet, organizando y comentando enlaces. Esto es lo que haceODP (Open Directory Project), operado por Netscape y mantenidopor editores voluntarios organizados según un esquema jerárquico.El directorio completo pue<strong>de</strong> copiarse <strong>libre</strong>mente en formato RDF ypublicarse modificado <strong>de</strong> <strong>al</strong>guna manera, como hacen Google yotros muchos buscadores que lo aprovechan. Netscape, propietario<strong>de</strong>l directorio, garantiza un contrato soci<strong>al</strong> inspirado en el <strong>de</strong> la distribuciónDebian, que facilita la colaboración exterior, asegurandoque siempre será <strong>libre</strong>, con políticas públicas, autorregulado por lacomunidad, con los usuarios como primera prioridad.Otro ejemplo <strong>de</strong> colecciones interesantes para nosotros son las distribuciones<strong>de</strong> <strong>software</strong> <strong>libre</strong>, con los programas modificados para que encajenperfectamente entre sí y precompilados para su fácil ejecución.Lectura complementaria[Ver bibliografía, apartado90, 42 y 87]ANOTACIONES29


© FUOC • XP06/M2101/01492Software <strong>libre</strong>1.4.8. HardwareLectura complementaria[Ver bibliografía, apartado41]La libertad en el hardware se pue<strong>de</strong> an<strong>al</strong>izar bajo dos aspectos. Elprimero es la necesidad <strong>de</strong> que las interfaces y juegos <strong>de</strong> instruccionessean abiertos, <strong>de</strong> manera que cu<strong>al</strong>quiera pueda re<strong>al</strong>izar un manejador<strong>de</strong> dispositivo o un compilador para una arquitectura. Elsegundo es disponer <strong>de</strong> la información y el po<strong>de</strong>r suficientes parapo<strong>de</strong>r reproducir un diseño hardware, modificarlo y combinarlo conotros. Los diseños pue<strong>de</strong>n consi<strong>de</strong>rarse <strong>software</strong> en un lenguajeapropiado (VHDL, Verilog, etc.). Sin embargo, hacerlos funcionar noes fácil, ya que hay que fabricarlos, lo cu<strong>al</strong> es caro y lento; si biencontamos con iniciativas en este sentido, entre las que po<strong>de</strong>mos res<strong>al</strong>tarOpen Cores, para circuitos integrados.1.4.9. Literatura y artePara terminar nuestro recorrido por los recursos <strong>libre</strong>s, no po<strong>de</strong>mosolvidar el arte y la literatura, cuyo fin último no es tanto utilidad comoestética. ¿Qué razones pue<strong>de</strong> tener un artista para conce<strong>de</strong>r liberta<strong>de</strong>s<strong>de</strong> copia, modificación y redistribución? Por un lado, dar a conocer<strong>al</strong> artista y favorecer la difusión <strong>de</strong> su obra, lo que pue<strong>de</strong>permitirle obtener ingresos por otras activida<strong>de</strong>s, como conciertos yobras <strong>de</strong> encargo. Por otro lado, favorecer la experimentación y lacreatividad. En el arte ocurre lo mismo que en la técnica: la innovaciónes increment<strong>al</strong> y a veces es difícil distinguir el plagio <strong>de</strong> la pertenenciaa un movimiento o corriente artística.ANOTACIONESLectura complementaria[Ver bibliografía, apartado24]Obviamente no es lo mismo la creación que la interpretación, ni lamúsica que la literatura. La música, la pintura, la fotografía y el cineson muy parecidos a los programas, en el sentido <strong>de</strong> que se les hacefuncionar inmediatamente en un or<strong>de</strong>nador, mientras que otros,como la escultura, no pue<strong>de</strong>n. No existen muchas iniciativas en artey literatura <strong>libre</strong>s, y éstas son muy diversas. Po<strong>de</strong>mos mencionar lasnovelas <strong>de</strong>l colectivo Wu Ming.30


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014922. Un poco <strong>de</strong> historiaAunque todas las historias relacionadas con la informática sonforzosamente breves, la <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es una <strong>de</strong> las más largasentre ellas. De hecho, podría <strong>de</strong>cirse que el <strong>software</strong> nació <strong>libre</strong>y permaneció así durante su infancia. Sin embargo, con l<strong>al</strong>legada <strong>de</strong> la juventud, la situación cambió completamente. Sóloahora, <strong>al</strong> llegar a su madurez, está en vías <strong>de</strong> recuperar la libertad.Esto no <strong>de</strong>ja <strong>de</strong> ser curioso, pues para gran parte <strong>de</strong> los profesion<strong>al</strong>esinformáticos, el <strong>software</strong> propietario es el <strong>software</strong> ensu estado natur<strong>al</strong>. Afortunadamente, la situación es más bien lacontraria, y las semillas <strong>de</strong>l cambio que estamos empezando aentrever en los últimos años fueron plantadas ya a principios <strong>de</strong>la década <strong>de</strong> 1980.SugerenciaLectura recomendadaNo hay muchas historias más o menos exhaustivas sobreel <strong>software</strong> <strong>libre</strong>, y las que existen son artículosmás o menos limitados en el objeto <strong>de</strong> su estudio. Encu<strong>al</strong>quier caso, el lector interesado pue<strong>de</strong> completarlo expuesto en este capítulo consultando “Open SourceInitiative. History of the osi” (énfasis en el impactoen el mundo empresari<strong>al</strong>, entre los años 1998 y 1999)o “Chris Rasch. A brief history of free/open source <strong>software</strong>movement”, que cubre la historia <strong>de</strong>l <strong>software</strong> <strong>libre</strong>hasta el año 2000, o “Nathan Newman. Theorigins and future of open source <strong>software</strong>, 1999”,que se centra en gran medida en la promoción indirectaque el Gobierno <strong>de</strong> EE.UU. ha hecho <strong>de</strong>l <strong>software</strong><strong>libre</strong>, o sistemas similares, durante las décadas<strong>de</strong> 1970 y 1980.[Ver bibliografía, apartados126, 169 y 157]ANOTACIONES31


© FUOC • XP06/M2101/01492Software <strong>libre</strong>2.1. El <strong>software</strong> <strong>libre</strong> antes <strong>de</strong>l <strong>software</strong> <strong>libre</strong>El <strong>software</strong> <strong>libre</strong> como concepto no apareció hasta principios <strong>de</strong> ladécada <strong>de</strong> 1980. Sin embargo, su historia pue<strong>de</strong> trazarse <strong>de</strong>s<strong>de</strong> bastantesaños antes.2.1.1. Y en el principio fue <strong>libre</strong>...Durante los años 1960 el panorama <strong>de</strong> la informática estaba dominadopor los gran<strong>de</strong>s or<strong>de</strong>nadores, inst<strong>al</strong>ados fundament<strong>al</strong>mente enempresas y centros gubernament<strong>al</strong>es. IBM era el princip<strong>al</strong> fabricante,con gran diferencia sobre sus competidores. En esta época, cuandose adquiría un or<strong>de</strong>nador (el hardware), el <strong>software</strong> venía como unacompañante. Mientras se pagase el contrato <strong>de</strong> mantenimiento, setenía acceso <strong>al</strong> catálogo <strong>de</strong> <strong>software</strong> que ofrecía el fabricante. A<strong>de</strong>más,no era común la i<strong>de</strong>a <strong>de</strong> que los programas fueran <strong>al</strong>go separado<strong>de</strong>s<strong>de</strong> un punto <strong>de</strong> vista comerci<strong>al</strong>.ANOTACIONESLectura complementaria[Ver bibliografía, apartado187]En esta época el <strong>software</strong> se distribuía habitu<strong>al</strong>mente junto con su códigofuente (en muchos casos sólo como código fuente), y en gener<strong>al</strong>sin restricciones prácticas. Los grupos <strong>de</strong> usuarios como SHARE(usuarios <strong>de</strong> sistemas IBM) o DECUS (usuarios <strong>de</strong> DEC) participaban,y hasta cierto punto organizaban, estos intercambios. La sección Algorithms<strong>de</strong> la revista Communications of the ACM era otro buenejemplo <strong>de</strong> foro <strong>de</strong> intercambio. Podría <strong>de</strong>cirse que durante estos primerosaños <strong>de</strong> la informática el <strong>software</strong> era <strong>libre</strong>, <strong>al</strong> menos en elsentido <strong>de</strong> que los que tenían acceso a él podían disponer habitu<strong>al</strong>mente<strong>de</strong>l código fuente, estaban acostumbrados a compartirlo, amodificarlo y a compartir las modificaciones. En p<strong>al</strong>abras <strong>de</strong> RichardSt<strong>al</strong>lman, refiriéndose a la situación en el Massachusetts Institute ofTechnology, uno <strong>de</strong> los lugares con más penetración <strong>de</strong> uso y másprestigio en investigación sobre informática en la época:aaa“No <strong>de</strong>nominábamos <strong>software</strong> <strong>libre</strong> a nuestro <strong>software</strong>porque este término no existía, pero eso es lo que era.Cuando <strong>al</strong>guien <strong>de</strong> otra universidad o <strong>de</strong> una empresa<strong>de</strong>seaba portar y usar un programa, se lo permitíamos32


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492aaacon gusto. Si veías a <strong>al</strong>guien usando un programa interesantey poco conocido, siempre podías pedir el códigofuente para verlo, <strong>de</strong> manera que podías leerlo,cambiarlo, o canib<strong>al</strong>izar ciertas partes <strong>de</strong>l mismo parahacer un nuevo programa.”El 30 <strong>de</strong> junio <strong>de</strong> 1969 IBM anunció que a comienzos <strong>de</strong> 1970 iba aempezar a ven<strong>de</strong>r parte <strong>de</strong> su <strong>software</strong> por separado. Esto supusoque sus clientes ya no podían obtener, incluido en el precio <strong>de</strong>l hardware,los programas que necesitaban. El <strong>software</strong> se comenzó a percibircomo <strong>al</strong>go con v<strong>al</strong>or intrínseco y, como consecuencia, se hizocada vez más habitu<strong>al</strong> restringir escrupulosamente el acceso a losprogramas, y se limitaron, en la medida <strong>de</strong> lo posible (tanto técnicacomo leg<strong>al</strong>mente), las posibilida<strong>de</strong>s que tenían los usuarios paracompartir, modificar o estudiar el <strong>software</strong>. En otras p<strong>al</strong>abras, sepasó a la situación que aún hoy es la habitu<strong>al</strong> en el mundo <strong>de</strong>l <strong>software</strong>.Lectura complementaria[Ver bibliografía, apartado119]SugerenciaEl lector interesado en esta época <strong>de</strong> transición pue<strong>de</strong>leer, por ejemplo, Larry Welke; Luanne Johnson(1998). How the icp directory began, don<strong>de</strong> Larry Welkecomenta cómo nació uno <strong>de</strong> los primeros catálogos<strong>de</strong> <strong>software</strong> no ligados a un fabricante, y cómo eneste proceso <strong>de</strong>scubrió que las empresas estaban dispuestasa pagar por programas no creados por el fabricante<strong>de</strong> sus or<strong>de</strong>nadores.Lectura recomendada[Ver bibliografía, apartado203]A mediados <strong>de</strong> la década <strong>de</strong> 1970 era ya absolutamente habitu<strong>al</strong>,en cu<strong>al</strong>quier ámbito informático, encontrarse con <strong>software</strong> propietario.Esto supuso un gran cambio cultur<strong>al</strong> entre los profesion<strong>al</strong>esque trabajaban con <strong>software</strong>, a la vez que un gran número<strong>de</strong> empresas florecían en torno <strong>al</strong> nuevo negocio. F<strong>al</strong>taba aúncasi una década para que empezase a aparecer, <strong>de</strong> forma organizaday como reacción a esta situación, lo que hoy conocemoscomo <strong>software</strong> <strong>libre</strong>.ANOTACIONES33


© FUOC • XP06/M2101/01492Software <strong>libre</strong>2.1.2. Años 1970 y primeros 1980Incluso cuando la ten<strong>de</strong>ncia abrumadoramente mayoritaria era la<strong>de</strong> explorar el mo<strong>de</strong>lo <strong>de</strong> <strong>software</strong> propietario, había iniciativasque mostraban <strong>al</strong>gunas características <strong>de</strong> lo que luego se consi<strong>de</strong>raría<strong>software</strong> <strong>libre</strong>. Alguna <strong>de</strong> ellas incluso produjo <strong>software</strong> <strong>libre</strong>,según la <strong>de</strong>finición que usamos hoy día. Entre ellas, caben<strong>de</strong>stacar Spice y TeX, a<strong>de</strong>más <strong>de</strong>l caso mucho más complejo <strong>de</strong>Unix.Spice (Simulation Program with Integrated Circuit Emphasis) es unprograma <strong>de</strong>sarrollado en la Universidad <strong>de</strong> C<strong>al</strong>ifornia en Berkeleypara simular las características eléctricas <strong>de</strong> un circuito integrado.Fue <strong>de</strong>sarrollado y puesto en el dominio público por suautor, Don<strong>al</strong>d O. Pe<strong>de</strong>rson, en 1973. SPICE era origin<strong>al</strong>menteuna herramienta docente, y como t<strong>al</strong> se extendió rápidamente amuchas universida<strong>de</strong>s <strong>de</strong> todo el mundo, por lo que fue usado pormuchos estudiantes <strong>de</strong> la que por aquel entonces era una incipientedisciplina <strong>de</strong> diseño <strong>de</strong> circuitos integrados. Estando en eldominio público, SPICE podía redistribuirse, modificarse, estudiarse,etc. Incluso se podía adaptar a unas necesida<strong>de</strong>s concretasy ven<strong>de</strong>r esa versión como producto propietario (lo que se hahecho durante su historia docenas <strong>de</strong> veces por parte <strong>de</strong> una grancantidad <strong>de</strong> empresas). Con estas características, SPICE tenía todaslas papeletas para convertirse en el estándar <strong>de</strong> la industriacon sus diferentes versiones. Y efectivamente, eso fue lo que ocurrió.Probablemente éste fue el primer programa con características<strong>de</strong> <strong>software</strong> <strong>libre</strong> que durante un tiempo monopolizó unmercado, el <strong>de</strong> los simuladores <strong>de</strong> circuitos integrados, y sin dudapudo hacerlo precisamente por tener estas características (a<strong>de</strong>más<strong>de</strong> sus innegables cu<strong>al</strong>ida<strong>de</strong>s técnicas).ANOTACIONESDon<strong>al</strong>d Knuth comenzó a <strong>de</strong>sarrollar TeX durante un año sabático,en 1978. TeX es un sistema <strong>de</strong> tipografía electrónica muy utilizadopara la producción <strong>de</strong> documentos <strong>de</strong> c<strong>al</strong>idad. Des<strong>de</strong> elprincipio, Knuth utilizó una licencia que hoy sería consi<strong>de</strong>radacomo <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Cuando el sistema se consi<strong>de</strong>ró razonablementeestable, en 1985, mantuvo esa licencia. En esa época,TeX era un <strong>de</strong> los sistemas más gran<strong>de</strong>s y más conocidos que podíaconsi<strong>de</strong>rarse <strong>software</strong> <strong>libre</strong>.34


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014922.1.3. Desarrollo temprano <strong>de</strong> UnixUnix fue uno <strong>de</strong> los primeros sistemas operativos portables, creadoorigin<strong>al</strong>mente por Thompson y Ritchie (entre otros) en los BellLabs <strong>de</strong> AT&T. Su <strong>de</strong>sarrollo ha continuado <strong>de</strong>s<strong>de</strong> su nacimiento,hacia 1972, hasta hoy, con innumerables variantes comerci<strong>al</strong>izadaspor liter<strong>al</strong>mente <strong>de</strong>cenas <strong>de</strong> empresas.Durante los años 1973 y 1974, Unix llegó a muchas universida<strong>de</strong>sy centros <strong>de</strong> investigación <strong>de</strong> todo el mundo, con una licencia quepermitía su uso para fines académicos. Aunque había ciertas restriccionesque impedían su distribución <strong>libre</strong>, entre las organizacionesque disponían <strong>de</strong> la licencia el funcionamiento fue muysimilar <strong>al</strong> que se vio más tar<strong>de</strong> en muchas comunida<strong>de</strong>s <strong>de</strong> <strong>software</strong><strong>libre</strong>. Los que tenían acceso <strong>al</strong> fuente <strong>de</strong> Unix tuvieron un sistemaque podían estudiar, mejorar y ampliar. Juntamente con élapareció una comunidad <strong>de</strong> <strong>de</strong>sarrolladores, que pronto empezóa girar en torno <strong>al</strong> CSRG <strong>de</strong> la Universidad <strong>de</strong> C<strong>al</strong>ifornia en Berkeley,y que <strong>de</strong>sarrolló su propia cultura, que fue muy importante,como veremos más a<strong>de</strong>lante, en la historia <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Unix fue, hasta cierto punto, un ensayo temprano <strong>de</strong> lo que se viocon GNU y Linux varios años más tar<strong>de</strong>. Estaba confinado a unacomunidad mucho más pequeña, y era necesaria la licencia <strong>de</strong>AT&T, pero en otros aspectos su <strong>de</strong>sarrollo fue similar (en un mundomucho menos comunicado).Con el tiempo, Unix fue también un ejemplo temprano <strong>de</strong> los problemasque podían presentar los sistemas propietarios que a primeravista tenían <strong>al</strong>guna característica <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Duranteel fin<strong>al</strong> <strong>de</strong> la década <strong>de</strong> 1970, y sobre todo durante la <strong>de</strong> 1980,AT&T cambió su política, y el acceso a nuevas versiones <strong>de</strong> Unixse convirtió en <strong>al</strong>go difícil y caro. La filosofía <strong>de</strong> los primeros años,que hizo tan popular a Unix entre los <strong>de</strong>sarrolladores, cambió radic<strong>al</strong>mente,hasta el punto <strong>de</strong> que en 1991 AT&T puso una <strong>de</strong>mandaa la Universidad <strong>de</strong> Berkeley por publicar el código <strong>de</strong>Unix BSD que ellos (el CSRG <strong>de</strong> Berkeley) habían creado. Pero esaes otra historia, que retomaremos más a<strong>de</strong>lante.ANOTACIONES35


© FUOC • XP06/M2101/01492Software <strong>libre</strong>2.2. El comienzo: BSD, GNUTodos los escenarios <strong>de</strong>scritos hasta ahora son, o bien iniciativas individu<strong>al</strong>es,o bien no cumplen los requisitos <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Encu<strong>al</strong>quier caso, hasta principios <strong>de</strong> la década <strong>de</strong> 1980 no aparecieron,<strong>de</strong> forma organizada y consciente, los primeros proyectos par<strong>al</strong>a creación <strong>de</strong> sistemas compuestos <strong>de</strong> <strong>software</strong> <strong>libre</strong>, y lo que probablementees más importante: los fundamentos éticos, leg<strong>al</strong>es yhasta económicos, que luego se continuarían <strong>de</strong>sarrollando hasta eldía <strong>de</strong> hoy. De esta época proce<strong>de</strong> también el propio término <strong>software</strong><strong>libre</strong>.2.2.1. Richard St<strong>al</strong>lman, GNU, FSF: nace el movimiento<strong>de</strong>l <strong>software</strong> <strong>libre</strong>A principios <strong>de</strong> 1984, Richard St<strong>al</strong>lman, en aquella época empleadoen el AI Lab <strong>de</strong>l MIT, abandonó su trabajo para comenzar el proyectoGNU. St<strong>al</strong>lman se consi<strong>de</strong>raba un hacker <strong>de</strong> los que gozaban compartiendosus inquietu<strong>de</strong>s tecnológicas y su código. Veía con <strong>de</strong>sagradocómo su negativa a firmar acuerdos <strong>de</strong> exclusividad y nocompartición le estaban convirtiendo en un extraño en su propiomundo, y cómo el uso <strong>de</strong> <strong>software</strong> propietario en su entorno le <strong>de</strong>jabaimpotente antes situaciones que antes podía solventar fácilmente.ANOTACIONESLectura complementaria[Ver bibliografía, apartado187]Lectura complementaria[Ver bibliografía, apartado96]Su i<strong>de</strong>a <strong>al</strong> abandonar el MIT era construir un sistema <strong>de</strong> <strong>software</strong>completo, <strong>de</strong> propósito gener<strong>al</strong>, pero completamente <strong>libre</strong>. El sistema(y el proyecto que se encargaría <strong>de</strong> hacerlo re<strong>al</strong>idad) se llamóGNU (acrónimo recursivo, GNU's Not Unix). Aunque <strong>de</strong>s<strong>de</strong> el principioel proyecto GNU incluyó en su sistema <strong>software</strong> ya disponible(como Tex, o más a<strong>de</strong>lante, el sistema X Window), había mucho queconstruir. Richard St<strong>al</strong>lman comenzó por escribir un compilador <strong>de</strong>C (GCC) y un editor (Emacs), ambos aún en uso (y muy populares)hoy día.Des<strong>de</strong> el principio <strong>de</strong>l proyecto GNU, Richard St<strong>al</strong>lman estaba preocupadopor las liberta<strong>de</strong>s que tendrían los usuarios <strong>de</strong> su <strong>software</strong>.Estaba interesado en que no sólo los que recibieran los programasdirectamente <strong>de</strong>l proyecto GNU, sino cu<strong>al</strong>quiera que lo recibiera<strong>de</strong>spués <strong>de</strong> cu<strong>al</strong>quier número <strong>de</strong> redistribuciones y (quizás) modificaciones,siguiera disfrutando <strong>de</strong> los mismos <strong>de</strong>rechos (modificación,36


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492redistribución, etc.). Para ello, escribió la licencia GPL, probablementela primera licencia <strong>de</strong> <strong>software</strong> diseñada específicamente para garantizarque un programa fuera <strong>libre</strong> en este sentido. Al mecanismogenérico que utilizan las licencias tipo GPL para conseguir estas garantías,Richard St<strong>al</strong>lman lo llamó copyleft, que hoy día es el nombre<strong>de</strong> una gran familia <strong>de</strong> licencias <strong>de</strong> <strong>software</strong> <strong>libre</strong>.Richard St<strong>al</strong>lman también fundó la Free Software Foundation (FSFcon el fin <strong>de</strong> conseguir fondos para el <strong>de</strong>sarrollo y la protección <strong>de</strong>l<strong>software</strong> <strong>libre</strong>, y sentó los fundamentos éticos <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, condocumentos como The GNU Manifesto y Why Software Should NotHave Owners.Lectura complementaria[Ver bibliografía, apartados95 y 186]Des<strong>de</strong> el punto <strong>de</strong> vista técnico, el proyecto GNU fue concebidocomo un trabajo muy estructurado y con metas muy claras. El métodohabitu<strong>al</strong> estaba basado en grupos relativamente pequeños <strong>de</strong>personas (habitu<strong>al</strong>mente voluntarios) que <strong>de</strong>sarrollaban <strong>al</strong>guna <strong>de</strong>las herramientas que luego encajarían perfectamente en el rompecabezascompleto (el sistema GNU). La modularidad <strong>de</strong> UNIX, en laque se inspiraba el <strong>de</strong>sarrollo, encajaba perfectamente en esta i<strong>de</strong>a.El método <strong>de</strong> trabajo gener<strong>al</strong>mente implicaba el uso <strong>de</strong> Internet,pero ante la escasa implantación <strong>de</strong> aquellos días, la Free SoftwareFoundation también vendía cintas en las que grababa las aplicaciones,siendo probablemente uno <strong>de</strong> las primeras organizaciones enbeneficiarse económicamente (aunque <strong>de</strong> manera bastante limitada)<strong>de</strong> la creación <strong>de</strong> <strong>software</strong> <strong>libre</strong>.A principios <strong>de</strong> la década <strong>de</strong> 1990, unos seis años <strong>de</strong>spués <strong>de</strong> su nacimiento,el proyecto GNU estaba muy cerca <strong>de</strong> tener un sistemacompleto similar a Unix. Aun así, hasta ese momento todavía no habíaproducido una <strong>de</strong> las piezas fundament<strong>al</strong>es: el kernel <strong>de</strong>l sistema(el núcleo <strong>de</strong>l sistema operativo que se relaciona con el hardware ypermite que todo funcione). Sin embargo, el <strong>software</strong> <strong>de</strong> GNU eramuy popular entre los usuarios <strong>de</strong> las distintas variantes <strong>de</strong> Unix, poraquella época el sistema operativo más usado en las empresas. A<strong>de</strong>más,el proyecto GNU había conseguido ser relativamente conocidoentre los profesion<strong>al</strong>es informáticos, y muy especi<strong>al</strong>mente entre losque trabajaban en universida<strong>de</strong>s. En esa época, sus productos ya gozaban<strong>de</strong> una merecida reputación <strong>de</strong> estabilidad y c<strong>al</strong>idad.ANOTACIONES37


© FUOC • XP06/M2101/01492Software <strong>libre</strong>2.2.2. El CSRG <strong>de</strong> BerkeleyEl CSRG (Computer Science Research Group) <strong>de</strong> la Universidad <strong>de</strong>C<strong>al</strong>ifornia en Berkeley fue, <strong>de</strong>s<strong>de</strong> 1973, uno <strong>de</strong> los centros don<strong>de</strong>más se <strong>de</strong>sarrolló todo lo relacionado con Unix durante los años1979 y 1980. No sólo se portaron aplicaciones y se construyeronotras nuevas para su funcionamiento sobre Unix, sino que se hicieronimportantes mejoras <strong>al</strong> kernel, y se le añadió mucha funcion<strong>al</strong>idad.Por ejemplo, durante la década <strong>de</strong> los años 1980, varios contratos<strong>de</strong> DARPA (<strong>de</strong>pendiente <strong>de</strong>l Ministerio <strong>de</strong> Defensa <strong>de</strong> EE.UU.) financiaronla implementación <strong>de</strong> TCP/IP que ha sido consi<strong>de</strong>rada hastanuestros días como la referencia <strong>de</strong> los protocolos que hacen funcionarInternet (vinculando, <strong>de</strong> paso, el <strong>de</strong>sarrollo <strong>de</strong> Internet y la expansión<strong>de</strong> las estaciones <strong>de</strong> trabajo con Unix). Muchas empresasutilizaron como base <strong>de</strong> sus versiones <strong>de</strong> Unix los <strong>de</strong>sarrollos <strong>de</strong>l CSRG,dando lugar a sistemas muy conocidos en la época, como SunOS(Sun Microsystems) o Ultrix (Digit<strong>al</strong> Equipment). De esta manera,Berkeley se convirtió en una <strong>de</strong> las dos fuentes fundament<strong>al</strong>es <strong>de</strong>Unix, junto con la ofici<strong>al</strong>, AT&T.ANOTACIONESPara po<strong>de</strong>r utilizar todo el código que producía el CSRG (y el <strong>de</strong> loscolaboradores <strong>de</strong> la comunidad Unix que ellos <strong>de</strong> <strong>al</strong>guna maneracoordinaban), hacía f<strong>al</strong>ta la licencia <strong>de</strong> Unix <strong>de</strong> AT&T, que cada vezera más difícil (y más cara) <strong>de</strong> conseguir, sobre todo si se quería elacceso <strong>al</strong> código fuente <strong>de</strong>l sistema. Tratando <strong>de</strong> evitar en parte esteproblema, en junio <strong>de</strong> 1989 el CSRG liberó la parte <strong>de</strong> Unix relacionadacon TCP/IP (la implementación <strong>de</strong> los protocolos en el kernely las utilida<strong>de</strong>s), que no incluía código <strong>de</strong> AT&T. Fue la llamadaNetworking Release 1 (Net-1). La licencia con que se liberó fue la famos<strong>al</strong>icencia BSD que, s<strong>al</strong>vo ciertos problemas con sus cláusulas sobreobligaciones <strong>de</strong> anuncio, ha sido consi<strong>de</strong>rada siempre como unejemplo <strong>de</strong> licencia <strong>libre</strong> minim<strong>al</strong>ista (que a<strong>de</strong>más <strong>de</strong> permitir la redistribución<strong>libre</strong>, también permitía su incorporación a productospropietarios). A<strong>de</strong>más, el CSRG probó un novedoso método <strong>de</strong> financiación(que ya estaba probando con éxito la FSF): vendía cintascon su distribución por 1.000 dólares. Aunque cu<strong>al</strong>quiera podía a suvez redistribuir el contenido <strong>de</strong> las cintas sin ningún problema (la licenci<strong>al</strong>o permitía), el CSRG vendió cintas a miles <strong>de</strong> organizaciones,con lo que consiguió fondos para seguir <strong>de</strong>sarrollando.38


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Dado el éxito <strong>de</strong> la distribución <strong>de</strong> Net-1, Keith Bostic propusoreescribir todo el código que aún quedaba <strong>de</strong>l Unix origin<strong>al</strong> <strong>de</strong>AT&T. A pesar <strong>de</strong>l escepticismo <strong>de</strong> <strong>al</strong>gunos miembros <strong>de</strong>l CSRG,re<strong>al</strong>izó un anuncio público pidiendo ayuda para re<strong>al</strong>izar esta tarea,y poco a poco las utilida<strong>de</strong>s reescritas a partir <strong>de</strong> especificacionescomenzaron a llegar a Berkeley. Mientras tanto, el mismoproceso se re<strong>al</strong>izó con el kernel, y se reescribió <strong>de</strong> forma in<strong>de</strong>pendientela mayor parte <strong>de</strong>l código que no se había re<strong>al</strong>izado porparte <strong>de</strong> Berkeley o por colaboradores voluntarios. En junio <strong>de</strong> 1991,y <strong>de</strong>spués <strong>de</strong> conseguir el permiso <strong>de</strong> la Administración <strong>de</strong> la Universidad<strong>de</strong> Berkeley, se distribuyó la Networking Release 2 (Net-2),con casi todo el código <strong>de</strong>l kernel y todas las utilida<strong>de</strong>s <strong>de</strong> un sistemaUnix completo. De nuevo, todo esto se distribuyó bajo la licenciaBSD, y <strong>de</strong> nuevo se vendieron miles <strong>de</strong> cintas <strong>al</strong> precio <strong>de</strong>1.000 dólares la unidad.Sólo seis meses <strong>de</strong>spués <strong>de</strong> la liberación <strong>de</strong> Net-2, Bill Jolitz escribióel código que f<strong>al</strong>taba en el kernel para que funcionase sobre arquitecturai386, liberando 386BSD, que fue distribuida por Internet. Apartir <strong>de</strong> este código surgieron, en sucesión, todos los sistemas <strong>de</strong> lafamilia *BSD. Primero apareció NetBSD, como una recopilación <strong>de</strong>los parches que se habían ido portando en la Red para mejorar386BSD. Más a<strong>de</strong>lante apareció FreeBSD como un intento <strong>de</strong> soportarfundament<strong>al</strong>mente la arquitectura i386. Varios años más tar<strong>de</strong> seformó el proyecto OpenBSD, con énfasis en la seguridad. Y tambiénhubo una distribución propietaria a partir <strong>de</strong> Net-2 (aunque era ciertamenteorigin<strong>al</strong>, ya que ofrecía a sus clientes todo el código fuentecomo parte <strong>de</strong> la distribución básica), re<strong>al</strong>izada <strong>de</strong> forma in<strong>de</strong>pendientepor BSDI.En parte como reacción a la distribución hecha por BSDI, UnixSystem Laboratories (USL), subsidiaria <strong>de</strong> AT&T que tenía los <strong>de</strong>rechos<strong>de</strong> la licencia <strong>de</strong> Unix, puso una <strong>de</strong>manda judici<strong>al</strong>, primeroa BSDI y luego a la Universidad <strong>de</strong> C<strong>al</strong>ifornia. En ella les acusaba<strong>de</strong> distribuir su propiedad intelectu<strong>al</strong> sin permiso. Después <strong>de</strong> variasmaniobras judici<strong>al</strong>es (incluyendo una contra<strong>de</strong>manda <strong>de</strong> laUniversidad <strong>de</strong> C<strong>al</strong>ifornia contra USL), Novell compró los <strong>de</strong>rechos<strong>de</strong> Unix a USL, y en enero <strong>de</strong> 1994 llegó a un acuerdo extrajudici<strong>al</strong>con la Universidad <strong>de</strong> C<strong>al</strong>ifornia. Como resultado <strong>de</strong> esteacuerdo, el CSRG distribuyó la versión 4.4BSD-Lite, que fue pron-ANOTACIONES39


© FUOC • XP06/M2101/01492Software <strong>libre</strong>to utilizada por todos los proyectos <strong>de</strong> la familia *BSD. Poco <strong>de</strong>spués(tras liberar aún la versión 4.4BSD-Lite Release 2), el CSRG<strong>de</strong>sapareció. En ese momento hubo quien temió que ello representarael fin <strong>de</strong> los sistemas *BSD, pero el tiempo ha <strong>de</strong>mostradoque siguen vivos y coleando, con una nueva forma <strong>de</strong> gestión,más típicamente <strong>de</strong> proyectos <strong>libre</strong>s. Hoy día, los proyectos quegestionan la familia *BSD son <strong>de</strong> los más antiguos y consolidadosen el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Lectura recomendada[Ver bibliografía, apartado149]SugerenciaLa historia <strong>de</strong>l <strong>de</strong>sarrollo <strong>de</strong> Unix BSD, <strong>de</strong>s<strong>de</strong> sus orígenesen una cinta que llevó Bob Fabry a Berkeley conuna <strong>de</strong> las primeras versiones <strong>de</strong>l código <strong>de</strong> Thompsony Ritchie para hacerla funcionar en un PDP-11 quecompraron conjuntamente los <strong>de</strong>partamentos <strong>de</strong> informática,estadística y matemáticas, hasta las <strong>de</strong>mandasjudici<strong>al</strong>es <strong>de</strong> AT&T y las últimas liberaciones <strong>de</strong> códigoque dieron lugar a la familia <strong>de</strong> sistemas operativos <strong>libre</strong>s*BSD es muy ilustrativa <strong>de</strong> una cierta forma <strong>de</strong> <strong>de</strong>sarrollar<strong>software</strong> durante los años 1970 y 1980.Quien esté interesado en ella pue<strong>de</strong> disfrutar <strong>de</strong> la lectura<strong>de</strong> Marsh<strong>al</strong>l Kirk McKusick. “Twenty Years of BerkeleyUnix. From AT&T-Owned to Freely Redistributable”. En:DiBona et <strong>al</strong>. (1999), don<strong>de</strong> se comentan muchos <strong>de</strong>t<strong>al</strong>les<strong>de</strong> esta época.2.2.3. Los comienzos <strong>de</strong> InternetANOTACIONESCasi <strong>de</strong>s<strong>de</strong> su nacimiento, a principios <strong>de</strong> la década <strong>de</strong> 1970, Internettuvo mucha relación con el <strong>software</strong> <strong>libre</strong>. Por un lado, <strong>de</strong>s<strong>de</strong> suscomienzos, la comunidad <strong>de</strong> <strong>de</strong>sarrolladores que la construyeron tuvieronclaros varios principios que luego se harían clásicos en elmundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Por ejemplo, la importancia <strong>de</strong> dar posibilida<strong>de</strong>sa los usuarios para que ayu<strong>de</strong>n a <strong>de</strong>purar los errores, o lacompartición <strong>de</strong>l código <strong>de</strong> las implementaciones. La importancia <strong>de</strong>BSD Unix en su <strong>de</strong>sarrollo (<strong>al</strong> proporcionar durante los años 1980 laimplementación más popular <strong>de</strong> los protocolos TCP/IP) hizo que mu-40


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492chas costumbres y formas <strong>de</strong> funcionamiento pasasen fácilmente <strong>de</strong>una comunidad (la <strong>de</strong> <strong>de</strong>sarrolladores <strong>al</strong>re<strong>de</strong>dor <strong>de</strong>l CSRG) a otra(los que estaban construyendo NSFNet, y luego simplemente Internet),y viceversa. Muchas <strong>de</strong> las aplicaciones básicas en el <strong>de</strong>sarrollo<strong>de</strong> Internet, como Sendmail (servidor <strong>de</strong> correo) o Bind (implementación<strong>de</strong>l servicio <strong>de</strong> nombres) fueron <strong>libre</strong>s, y en gran medida fruto<strong>de</strong> esta colaboración entre comunida<strong>de</strong>s.Por último, la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, durante el fin<strong>al</strong> <strong>de</strong> losaños 1980 y la década <strong>de</strong> 1990, fue una <strong>de</strong> las primeras en explorarhasta el fondo las nuevas posibilida<strong>de</strong>s que permitía Internetpara la colaboración entre grupos geográficamente dispersos.Esta exploración fue la que hizo posible, en gran medida, la propiaexistencia <strong>de</strong> la comunidad BSD, la FSF o el <strong>de</strong>sarrollo <strong>de</strong>GNU/Linux.Uno <strong>de</strong> los aspectos más interesantes <strong>de</strong>l <strong>de</strong>sarrollo <strong>de</strong> Internet, <strong>de</strong>s<strong>de</strong>el punto <strong>de</strong> vista <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, fue la gestión completamenteabierta <strong>de</strong> sus documentos y sus normas. Aunque hoy pueda parecer<strong>al</strong>go norm<strong>al</strong> (pues es lo habitu<strong>al</strong>, por ejemplo, en el IETF o el WWWConsortium), en su época la <strong>libre</strong> disposición <strong>de</strong> todas las especificacionesy documentos <strong>de</strong> diseño, incluyendo las normas que <strong>de</strong>finenlos protocolos, fue <strong>al</strong>go revolucionario y fundament<strong>al</strong> para su <strong>de</strong>sarrollo.Po<strong>de</strong>mos leer en Michael Hauben and Ronda Hauben. (1997).Netizens. On the History and Impact of Usenet and the Internet(pág. 106). IEEE Computer Society Press.aaa“Este proceso abierto promovía y llevaba <strong>al</strong> intercambio<strong>de</strong> información. El <strong>de</strong>sarrollo técnico tiene éxitosólo cuando se permite que la información fluya <strong>libre</strong> yfácilmente entre las partes interesadas. La promoción<strong>de</strong> la participación es el principio fundament<strong>al</strong> que hizoposible el <strong>de</strong>sarrollo <strong>de</strong> la Red.”Observe el lector cómo este párrafo podría ser suscrito, casi con todaseguridad, por cu<strong>al</strong>quier <strong>de</strong>sarrollador refiriéndose <strong>al</strong> proyecto <strong>de</strong><strong>software</strong> <strong>libre</strong> en el que colabora.Lectura complementaria[Ver bibliografía, apartado118]ANOTACIONES41


© FUOC • XP06/M2101/01492Software <strong>libre</strong>En otra cita, Lawrence Roberts. “The evolution of packet switching”.Proceedings of the IEEE (vol.66, pág. 267) po<strong>de</strong>mos leer:aaaLectura complementaria[Ver bibliografía, apartado174]“Como ARPANET era un proyecto público que conectabamuchas <strong>de</strong> las princip<strong>al</strong>es universida<strong>de</strong>s e instituciones<strong>de</strong> investigación, los <strong>de</strong>t<strong>al</strong>les <strong>de</strong> implementación yrendimiento se publicaban ampliamente.”Obviamente, esto es lo que ocurre hoy día en los proyectos <strong>de</strong><strong>software</strong> <strong>libre</strong>, don<strong>de</strong> toda la información relacionada con el proyecto(y no sólo la implementación) suele ser pública.En este ambiente, y hasta que Internet ya bien entrados los años1990 se convirtió sobre todo en un negocio, la comunidad <strong>de</strong> usuariosy su relación con los <strong>de</strong>sarrolladores era clave. En esa época muchasorganizaciones aprendieron a confiar no en una única empresaproveedora <strong>de</strong>l servicio <strong>de</strong> comunicación <strong>de</strong> datos, sino en una complejacombinación <strong>de</strong> empresas <strong>de</strong> servicios, fabricantes <strong>de</strong> equipos,<strong>de</strong>sarrolladores profesion<strong>al</strong>es y voluntarios, etc. Las mejores implementaciones<strong>de</strong> muchos programas no eran las que venían con elsistema operativo que se compraba con el hardware, sino implementaciones<strong>libre</strong>s que rápidamente las sustituían. Los <strong>de</strong>sarrollos másinnovadores eran fruto no <strong>de</strong> gran<strong>de</strong>s planes <strong>de</strong> investigación en empresas,sino <strong>de</strong> estudiantes o profesion<strong>al</strong>es probando i<strong>de</strong>as y recogiendola re<strong>al</strong>imentación que les enviaban cientos <strong>de</strong> usuarios queusaban sus programas <strong>libre</strong>s.ANOTACIONESComo ya se ha dicho, Internet también proporcionó <strong>al</strong> <strong>software</strong> <strong>libre</strong>las herramientas básicas para colaborar a distancia. El correo electrónico,los grupos <strong>de</strong> News, los servicios <strong>de</strong> FTP anónimo (que fueronlos primeros <strong>al</strong>macenes masivos <strong>de</strong> <strong>software</strong> <strong>libre</strong>), y más tar<strong>de</strong>los sistemas <strong>de</strong> <strong>de</strong>sarrollo integrados basados en web han sido fundament<strong>al</strong>es(e imprescindibles) para el <strong>de</strong>sarrollo <strong>de</strong> la comunidad<strong>de</strong>l <strong>software</strong> <strong>libre</strong> t<strong>al</strong> como la conocemos, y en particular para el funcionamiento<strong>de</strong> la inmensa mayoría <strong>de</strong> los proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>.Des<strong>de</strong> el principio, proyectos como GNU o BSD hicieron un usomasivo e intenso <strong>de</strong> todos estos mecanismos, <strong>de</strong>sarrollando, a la vez42


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492que las usaban, nuevas herramientas y sistemas que a su vez mejorabanInternet.SugerenciaEl lector interesado en una historia <strong>de</strong> la evolución <strong>de</strong>Internet, escrita por varios <strong>de</strong> sus protagonistas, pue<strong>de</strong>consultar Barry M. Leiner; Vinton G. Cerf; Robert E.Kahn; David D. Clark; Leonard Kleinrock; Daniel C.Lynch; Jon Postel; Larry G. Roberts; Stephen Wolff(1997). A brief history of the intert. Communications ofthe ACM.Lectura recomendada[Ver bibliografía, apartado145]2.2.4. Otros proyectosDurante la década <strong>de</strong> 1980 vieron la luz otros importantes proyectos<strong>libre</strong>s. Entre ellos <strong>de</strong>staca, por su importancia y proyección futura, elsistema X Window (sistema <strong>de</strong> ventanas para sistemas tipo Unix), <strong>de</strong>sarrolladoen el MIT, y que fue uno <strong>de</strong> los primeros ejemplos <strong>de</strong> financiaciónen gran esc<strong>al</strong>a <strong>de</strong> proyectos <strong>libre</strong>s con recursos <strong>de</strong> un consorcio<strong>de</strong> empresas. También merece la pena mencionar Ghostscript, un sistema<strong>de</strong> gestión <strong>de</strong> documentos Postscript <strong>de</strong>sarrollado por una empresa,Aladdin Software, que fue uno <strong>de</strong> los primeros casos <strong>de</strong>búsqueda <strong>de</strong> mo<strong>de</strong>lo <strong>de</strong> negocio produciendo <strong>software</strong> <strong>libre</strong>.En gener<strong>al</strong>, y sobre todo a fin<strong>al</strong>es <strong>de</strong> los años 1980, están en marchatoda una serie <strong>de</strong> pequeños (y no tan pequeños) proyectos <strong>libre</strong>s. Todosellos, junto con los gran<strong>de</strong>s proyectos mencionados hasta aquí,estaban ya sentando las bases <strong>de</strong> los primeros sistemas <strong>libre</strong>s completosque aparecieron a principios <strong>de</strong> la década <strong>de</strong> 1990.2.3. Todo en marchaHacia 1990, gran parte <strong>de</strong> los componentes <strong>de</strong> un sistema informáticocompleto estaban ya listos como <strong>software</strong> <strong>libre</strong>. Por un lado, elproyecto GNU y por otro, las distribuciones BSD habían completadoANOTACIONES43


© FUOC • XP06/M2101/01492Software <strong>libre</strong>la mayor parte <strong>de</strong> las aplicaciones que componen un sistema operativo.Asimismo, proyectos como X Window o el propio GNU habíanconstruido <strong>de</strong>s<strong>de</strong> entornos <strong>de</strong> ventanas hasta compiladores, que enmuchos estaban entre los mejores <strong>de</strong> su género (por ejemplo, muchosadministradores <strong>de</strong> sistemas SunOS o Ultrix sustituían para sususuarios las aplicaciones propietarias <strong>de</strong> su sistema por las versiones<strong>libre</strong>s <strong>de</strong> GNU o <strong>de</strong> BSD). Para tener un sistema completo construidosólo con <strong>software</strong> <strong>libre</strong>, f<strong>al</strong>taba únicamente un componente: el kernel.Dos esfuerzos separados e in<strong>de</strong>pendientes vinieron a rellenareste hueco: 386BSD y Linux.2.3.1. En busca <strong>de</strong> un kernelA fin<strong>al</strong>es <strong>de</strong> la década <strong>de</strong> los ochenta, principios <strong>de</strong> los noventa, elproyecto GNU contaba con una gama básica <strong>de</strong> utilida<strong>de</strong>s y herramientasque permitían tener el sistema operativo <strong>al</strong> completo. Ya entoncesmuchas aplicaciones <strong>libre</strong>s eran las mejores en su campo(utilida<strong>de</strong>s UNIX, compiladores), siendo especi<strong>al</strong>mente interesante elcaso <strong>de</strong> X Window. Sin embargo, para terminar el rompecabezas f<strong>al</strong>tabauna pieza esenci<strong>al</strong>: el núcleo <strong>de</strong>l sistema operativo. El proyectoGNU estaba buscando esa pieza con un proyecto llamado Hurd, quepretendía construir un kernel con tecnologías mo<strong>de</strong>rnas.2.3.2. La familia *BSDANOTACIONESPrácticamente en la misma época, la comunidad BSD estaba tambiénen camino hacia un kernel <strong>libre</strong>. En la distribución Net-2 sólof<strong>al</strong>taban 6 ficheros para tenerlo (el resto ya había sido construido porel CSRG o sus colaboradores). A principios <strong>de</strong> 1992 Bill Jolitz completaesos ficheros y distribuye 386BSD, un sistema que funciona sobrearquitectura i386, y que con el tiempo dará lugar a los proyectosNetBSD, FreeBSD y OpenBSD. El <strong>de</strong>sarrollo durante los meses siguienteses rápido, y a fin<strong>al</strong>es <strong>de</strong> año ya es suficientemente establecomo para ser usado en producción en entornos no críticos, incluyendo,por ejemplo, un entorno <strong>de</strong> ventanas gracias <strong>al</strong> proyectoXFree (que había portado X Window a la arquitectura i386) o uncompilador <strong>de</strong> gran c<strong>al</strong>idad, GCC. Aunque hay componentes queusaban otras licencias (como los proce<strong>de</strong>ntes <strong>de</strong>l proyecto GNU, que44


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492usaban la GPL), la mayor parte <strong>de</strong>l sistema se distribuye bajo la licenciaBSD.SugerenciaAlgunos <strong>de</strong> los episodios <strong>de</strong> esta época son ilustrativos<strong>de</strong> la potencia <strong>de</strong> los mo<strong>de</strong>los <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong><strong>libre</strong>. El caso <strong>de</strong> Linus Torv<strong>al</strong>ds, <strong>de</strong>sarrollando Linuxmientras era estudiante <strong>de</strong> segundo curso <strong>de</strong> laUniversidad <strong>de</strong> Helsinki es bien conocido. Pero no esel único caso <strong>de</strong> un estudiante que se abrió caminogracias a sus <strong>de</strong>sarrollos <strong>libre</strong>s. Por ejemplo, ThomasRoel, un estudiante <strong>al</strong>emán, portó X11R4 (una versión<strong>de</strong>l sistema X Window) a un PC basado en un 386. Este<strong>de</strong>sarrollo le llevó a trabajar en Dell, y más a<strong>de</strong>lante aser fundador <strong>de</strong> los proyectos X386 y XFree, básicospara que GNU/Linux y los *BSD tuvieran pronto un entorno<strong>de</strong> ventanas. Pue<strong>de</strong> leerse más sobre la historia<strong>de</strong> XFree, y el papel <strong>de</strong> Roel en ella, en Michael J. Hammel.“The history of xfree86”. Linux Magazine (diciembre,1991).Lectura recomendada[Ver bibliografía, apartado114]Luego vino la <strong>de</strong>manda <strong>de</strong> USL, que propició que muchos potenci<strong>al</strong>esusuarios temieran ser a su vez <strong>de</strong>mandados si la Universidad <strong>de</strong>C<strong>al</strong>ifornia perdía el juicio, o simplemente que el proyecto se parara.Quizás ésta fue la razón <strong>de</strong> que más a<strong>de</strong>lante la base inst<strong>al</strong>ada <strong>de</strong>GNU/Linux fuera mucho mayor que la <strong>de</strong> *BSD combinados. Peroesta cuestión es <strong>al</strong>go difícil <strong>de</strong> asegurar.2.3.3. GNU/Linux entra en escenaEn julio <strong>de</strong> 1991 Linus Torv<strong>al</strong>ds (estudiante finés <strong>de</strong> 21 años) pone elprimer mensaje don<strong>de</strong> menciona su (por entonces) proyecto <strong>de</strong> hacerun sistema <strong>libre</strong> similar a Minix. En septiembre libera la primerísimaversión (0.01), y cada pocas semanas aparecieron nuevasversiones. En marzo <strong>de</strong> 1994 apareció la versión 1.0, la primera quefue <strong>de</strong>nominada estable, pero el kernel que había construido Linusera usable <strong>de</strong>s<strong>de</strong> bastantes meses antes. Durante este periodo, lite-ANOTACIONES45


© FUOC • XP06/M2101/01492Software <strong>libre</strong>r<strong>al</strong>mente cientos <strong>de</strong> <strong>de</strong>sarrolladores se vuelcan sobre Linux, integrandoa su <strong>al</strong>re<strong>de</strong>dor todo el <strong>software</strong> <strong>de</strong> GNU, XFree, y muchos otrosprogramas <strong>libre</strong>s. A diferencia <strong>de</strong> los *BSD, Linux (el kernel) y granparte <strong>de</strong> los componentes que se integran <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> él se distribuyencon la licencia GPL.Lectura recomendada[Ver bibliografía, apartado117]SugerenciaLa historia <strong>de</strong> Linux es probablemente una <strong>de</strong> las másinteresantes (y conocidas) en el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Quien esté interesado en ella pue<strong>de</strong> encontrarmuchos enlaces a información sobre la misma en laspáginas <strong>de</strong>l décimo aniversario <strong>de</strong> su anuncio, http://www.linux10.org/history/, aunque probablemente lamás interesante es Ragib Hasan. History of Linux. Comocuriosidad, pue<strong>de</strong> consultarse el hilo en que Linus Torv<strong>al</strong>dsanunciaba que estaba empezando a crear lo queluego fue Linux (en el grupo <strong>de</strong> News comp.os.minix) enhttp://groups.google.comgroups?th=d161e94858c4c0b9.En él explica cómo lleva trabajando en su kernel <strong>de</strong>s<strong>de</strong>abril, y cómo ya ha portado <strong>al</strong>gunas herramientas <strong>de</strong>lproyecto GNU sobre éste (concretamente, mencionabash y gcc).ANOTACIONESEntre los muchos <strong>de</strong>sarrollos aparecidos en torno a Linux, uno <strong>de</strong>los más interesantes es el concepto <strong>de</strong> distribución. Los primerosaparecieron ya en 1992 (MCC Interim Linux, <strong>de</strong> la Universidad <strong>de</strong>Manchester, TAMU, <strong>de</strong> Texas A&M, y la más conocida SLS, quemás tar<strong>de</strong> dio lugar a Slackware, que aún se distribuye hoy día),y han supuesto la entrada <strong>de</strong> la competencia en el mundo <strong>de</strong>l empaquetamiento<strong>de</strong> sistemas <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> Linux. Cada distribucióntrata <strong>de</strong> ofrecer a sus usuarios objetivo un GNU/Linux listo parausar, y basándose todas en el mismo <strong>software</strong>, han <strong>de</strong> competiren mejoras que su base <strong>de</strong> usuarios consi<strong>de</strong>re importantes. A<strong>de</strong>más<strong>de</strong> proporcionar paquetes precompilados y listos para usar,las distribuciones suelen ofrecer sus propias herramientas paragestionar la selección, inst<strong>al</strong>ación, sustitución y <strong>de</strong>sinst<strong>al</strong>ación <strong>de</strong>estos paquetes, la inst<strong>al</strong>ación inici<strong>al</strong> en un or<strong>de</strong>nador, y la gestióny administración <strong>de</strong>l sistema operativo.46


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Con el tiempo, unas distribuciones han ido sucediéndose a otrascomo las más populares. Entre todas ellas, cabe <strong>de</strong>stacar <strong>al</strong>gunas:• Debian• RedHat• SuSE• Mandrake2.4. Tiempos excitantesDes<strong>de</strong> que GNU/Linux tiene una presencia habitu<strong>al</strong> en los medios,<strong>de</strong>s<strong>de</strong> que la inmensa mayoría <strong>de</strong> empresas utiliza <strong>software</strong> <strong>libre</strong> <strong>al</strong>menos para <strong>al</strong>gunos <strong>de</strong> sus procesos informáticos, y <strong>de</strong>s<strong>de</strong> que es difícilser un estudiante <strong>de</strong> informática y no utilizar <strong>software</strong> <strong>libre</strong> engran<strong>de</strong>s cantida<strong>de</strong>s, está claro que todo esto ya no es un asunto <strong>de</strong>unos cuantos “enteradillos”, sino que se está convirtiendo en <strong>al</strong>gomuy importante para el sector. En el fondo, por su puesto, late unapregunta muy importante: ¿Estamos ante un nuevo mo<strong>de</strong>lo <strong>de</strong> industria<strong>software</strong>? Porque todo esto <strong>de</strong>l <strong>software</strong> <strong>libre</strong> podría ser unamoda pasajera, que con el tiempo sólo será recordada con nost<strong>al</strong>gia,o un nuevo mo<strong>de</strong>lo que está aquí para quedarse, y quizás paracambiar radic<strong>al</strong>mente una <strong>de</strong> las industrias más jóvenes, pero también<strong>de</strong> las más influyentes.2.4.1. Fin<strong>al</strong>es <strong>de</strong> 1990A mediados <strong>de</strong> la década <strong>de</strong> 1990 el <strong>software</strong> <strong>libre</strong> ofrece ya entornoscompletos (distribuciones <strong>de</strong> GNU/Linux, sistemas *BSD) quepermiten el trabajo diario <strong>de</strong> mucha gente, sobre todo <strong>de</strong> <strong>de</strong>sarrolladores<strong>de</strong> <strong>software</strong>. Aún hay muchas asignaturas pendientes (la mayor<strong>de</strong> ellas, el disponer <strong>de</strong> mejores interfaces gráficas <strong>de</strong> usuario, enuna época don<strong>de</strong> Windows 95 es consi<strong>de</strong>rado el estándar), perotambién unos cuantos miles <strong>de</strong> personas en todo el mundo ya sólousan <strong>software</strong> <strong>libre</strong> en su trabajo diario. Los anuncios <strong>de</strong> nuevos pro-ANOTACIONES47


© FUOC • XP06/M2101/01492Software <strong>libre</strong>yectos se suce<strong>de</strong>n y el <strong>software</strong> <strong>libre</strong> comienza su largo camino <strong>de</strong> expansiónhacia las empresas, los medios <strong>de</strong> comunicación y engener<strong>al</strong> el conocimiento público.De esta época es también el <strong>de</strong>spegue <strong>de</strong> Internet como red para todos,en muchos casos <strong>de</strong> la mano <strong>de</strong> programas <strong>libre</strong>s (sobre todoen su infraestructura). La llegada <strong>de</strong> la web a los hogares <strong>de</strong> millones<strong>de</strong> usuarios fin<strong>al</strong>es consolida esta situación, <strong>al</strong> menos en lo que serefiere a servidores: los servidores web (HTTP) más populares siemprehan sido <strong>libre</strong>s (primero el servidor <strong>de</strong>l NCSA, luego Apache).Lectura complementaria[Ver bibliografía, apartados171, y 120]Quizás el comienzo <strong>de</strong>l camino <strong>de</strong>l <strong>software</strong> <strong>libre</strong> hasta su puesta <strong>de</strong>largo en la sociedad pueda situarse en el célebre ensayo <strong>de</strong> Eric Raymond,“La catedr<strong>al</strong> y el bazar”. Aunque mucho <strong>de</strong> lo expuesto en élera ya bien conocido por la comunidad <strong>de</strong> <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong><strong>libre</strong>, el hecho <strong>de</strong> escribirlo en un artículo y darle una difusióngran<strong>de</strong> fuera <strong>de</strong> la comunidad tradicion<strong>al</strong> lo convirtió en una influyenteherramienta <strong>de</strong> promoción <strong>de</strong>l concepto <strong>de</strong> <strong>software</strong> <strong>libre</strong>como mecanismo <strong>de</strong> <strong>de</strong>sarrollo, <strong>al</strong>ternativo <strong>al</strong> que usaba la industria<strong>de</strong>l <strong>software</strong> tradicion<strong>al</strong>. Otro artículo muy importante <strong>de</strong> esta épocafue “Setting Up Shop: The Business of Open-Source Software”, <strong>de</strong>Frank Hecker, que por primera vez expuso los mo<strong>de</strong>los <strong>de</strong> negocioposibles en torno <strong>al</strong> <strong>software</strong> <strong>libre</strong>, y que fue escrito para influir en la<strong>de</strong>cisión sobre la liberación <strong>de</strong>l código <strong>de</strong>l navegador <strong>de</strong> Netscape.ANOTACIONESDe hecho, si el artículo <strong>de</strong> Raymond supuso una gran herramienta<strong>de</strong> difusión <strong>de</strong> <strong>al</strong>gunas <strong>de</strong> las características fundament<strong>al</strong>es <strong>de</strong>l <strong>software</strong><strong>libre</strong>, la liberación <strong>de</strong>l código <strong>de</strong>l navegador <strong>de</strong> Netscape supusoel primer caso en que una empresa relativamente gran<strong>de</strong>, <strong>de</strong>un sector muy innovador (la entonces naciente industria <strong>de</strong>l web) tomab<strong>al</strong>a <strong>de</strong>cisión <strong>de</strong> liberar como <strong>software</strong> <strong>libre</strong> uno <strong>de</strong> sus productos.En aquella época, el Netscape Navigator estaba perdiendo labat<strong>al</strong>la <strong>de</strong> los navegadores frente <strong>al</strong> producto <strong>de</strong> Microsoft (InternetExplorer), en parte por las tácticas <strong>de</strong> Microsoft <strong>de</strong> combinarlo con susistema operativo. Para muchos, Netscape hizo lo único que podíahacer: tratar <strong>de</strong> cambiar las reglas para po<strong>de</strong>r competir con un gigante.Y <strong>de</strong> este cambio <strong>de</strong> reglas (tratar <strong>de</strong> competir con un mo<strong>de</strong>lo<strong>de</strong> <strong>software</strong> <strong>libre</strong>) nació el proyecto Mozilla. Este proyecto, no sin problemas,ha llevado varios años <strong>de</strong>spués a un navegador que si bienno ha recuperado una parte significativa <strong>de</strong> la enorme cuota <strong>de</strong> mer-48


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492cado que tuvo en su día el Netscape Navigator, parece que técnicamentees <strong>al</strong> menos tan bueno como sus competidores propietarios(incluido el propio Internet Explorer).En cu<strong>al</strong>quier caso, y con in<strong>de</strong>pen<strong>de</strong>ncia <strong>de</strong> su éxito posterior, elanuncio <strong>de</strong> Netscape <strong>de</strong> liberar el código <strong>de</strong> su Navigator supuso unfuerte impacto en la industria <strong>de</strong>l <strong>software</strong>. Muchas empresas comenzarona consi<strong>de</strong>rar el <strong>software</strong> <strong>libre</strong> como <strong>al</strong>go digno <strong>de</strong> estudio,y <strong>al</strong>go que podría interesarles mucho.También los mercados financieros se empezaron a ocupar <strong>de</strong>l <strong>software</strong><strong>libre</strong>. En plena euforia <strong>de</strong> las puntocom, varias empresas <strong>de</strong><strong>software</strong> <strong>libre</strong> se convierten en objetivo <strong>de</strong> inversores. Quizás el casomás conocido es el <strong>de</strong> Red Hat, una <strong>de</strong> las primeras empresas quereconocieron que la venta <strong>de</strong> CD con sistemas GNU/Linux listos parausar podía ser un mo<strong>de</strong>lo <strong>de</strong> negocio. Red Hat comenzó distribuyendosu Red Hat Linux, con gran énfasis (<strong>al</strong> menos para lo habitu<strong>al</strong> enla época) en la facilidad <strong>de</strong> manejo y mantenimiento <strong>de</strong>l sistema porpersonas sin conocimientos específicos <strong>de</strong> informática. Con el tiempo,Red Hat fue diversificando su negocio, manteniéndose en gener<strong>al</strong>en la órbita <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, y en septiembre <strong>de</strong> 1998 anuncióque Intel y Netscape habían invertido en ella. Si es bueno para Intely Netscape, seguro que es bueno para nosotros, <strong>de</strong>bieron <strong>de</strong> pensarmuchos inversores. Y así, cuando Red Hat s<strong>al</strong>ió a bolsa en el verano<strong>de</strong> 1999, la oferta pública <strong>de</strong> acciones fue suscrita completamente,y pronto el v<strong>al</strong>or <strong>de</strong> cada título subió como la espuma. Fue la primeravez que una empresa consiguió financiación <strong>de</strong>l mercado <strong>de</strong> v<strong>al</strong>orescon un mo<strong>de</strong>lo basado en el <strong>software</strong> <strong>libre</strong>. Pero no fue la única:pronto le siguieron otras como VA Linux o Andover.net.SugerenciaRed Hat proporciona una lista <strong>de</strong> hitos históricos relacionadoscon su empresa con motivo <strong>de</strong> su décimoaniversario (1993-2003) en http://www.redhat.com/mktg/rh10year/.En esta época nacen también muchas empresas basadas en mo<strong>de</strong>los<strong>de</strong> negocio en torno <strong>al</strong> <strong>software</strong> <strong>libre</strong>. Sin s<strong>al</strong>ir a bolsa ni lograrANOTACIONES49


© FUOC • XP06/M2101/01492Software <strong>libre</strong>estupendas capit<strong>al</strong>izaciones, han sido sin embargo muy importantespara el <strong>de</strong>sarrollo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Por ejemplo, aparecieronmuchas otras empresas que empezaron distribuyendo sus propiasversiones <strong>de</strong> GNU/Linux, como SuSE (Alemania), Conectiva (Brasil)o Mandrake (Francia). Otras proporcionan servicios a empresasque ya <strong>de</strong>mandan mantenimiento y adaptación <strong>de</strong> productos <strong>libre</strong>s:LinuxCare (EE.UU.), Alcove (Francia), ID Pro (Alemania), ymuchas más.Por su parte, los gigantes <strong>de</strong>l sector también empiezan a posicionarseante el <strong>software</strong> <strong>libre</strong>. Algunas empresas, como IBM, lo incorporandirectamente en su estrategia. Otras, como Sun Microsystems, mantienencon él una curiosa relación, a veces <strong>de</strong> apoyo, a veces <strong>de</strong> indiferencia,a veces <strong>de</strong> enfrentamiento. La mayoría (como Apple,Oracle, HP, SGI, etc.) exploran el mo<strong>de</strong>lo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> con diversasestrategias, que van <strong>de</strong>s<strong>de</strong> la liberación selectiva <strong>de</strong> <strong>software</strong>hasta el simple porte a Linux <strong>de</strong> sus productos, pasando por todo unespectro <strong>de</strong> actuaciones, como utilización más o menos intensiva <strong>de</strong><strong>software</strong> <strong>libre</strong> en sus productos, o exploración <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> negociobasados en el servicio <strong>de</strong> soporte a productos <strong>libre</strong>s.Des<strong>de</strong> el punto <strong>de</strong> vista técnico, lo más <strong>de</strong>stacable <strong>de</strong> esta época es,probablemente, la aparición <strong>de</strong> dos ambiciosos proyectos con el objetivo<strong>de</strong> conseguir llevar el <strong>software</strong> <strong>libre</strong> <strong>al</strong> entorno <strong>de</strong> escritorio(<strong>de</strong>sktop) <strong>de</strong> los usuarios no muy versados en la informática: KDE yGNOME. El objetivo fin<strong>al</strong> era, dicho <strong>de</strong> forma muy simplista, queno hubiera que usar la línea <strong>de</strong> ór<strong>de</strong>nes para interaccionar conGNU/Linux o *BSD, ni con los programas sobre esos entornos.ANOTACIONESKDE fue anunciado en octubre <strong>de</strong> 1996. Utilizando las bibliotecasgráficas Qt (por aquel entonces un producto propietario <strong>de</strong> la empresaTroll Tech, pero gratuito para su uso sobre Linux), iniciaron laconstrucción <strong>de</strong> un conjunto <strong>de</strong> aplicaciones <strong>de</strong> escritorio que funcionasen<strong>de</strong> forma integrada, y tuvieran un aspecto uniforme. En julio<strong>de</strong> 1998 liberaron la versión 1.0 <strong>de</strong>l K Desktop Environment, quepronto fue seguida <strong>de</strong> nuevas versiones cada vez más completas ymaduras. Las distribuciones <strong>de</strong> GNU/Linux pronto incorporaron KDEcomo escritorio para sus usuarios (o <strong>al</strong> menos como uno <strong>de</strong> los entornos<strong>de</strong> escritorios que sus usuarios podían elegir).50


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492En gran medida como reacción a la <strong>de</strong>pen<strong>de</strong>ncia que tenía KDE <strong>de</strong>la biblioteca propietaria Qt, en agosto <strong>de</strong> 1997 se anuncia el proyectoGNOME, con objetivos y características muy similares a las <strong>de</strong>KDE, pero con el objetivo explícito <strong>de</strong> que todos sus componentessean <strong>libre</strong>s. En marzo <strong>de</strong> 1999 se liberó GNOME 1.0, que tambiénse iría, con el tiempo, mejorando y estabilizando. A partir <strong>de</strong> ese momento,la mayor parte <strong>de</strong> las distribuciones <strong>de</strong> sistemas operativos <strong>libre</strong>s(y muchos <strong>de</strong>rivados <strong>de</strong> Unix propietarios) ofrecieron comoopción el escritorio <strong>de</strong> GNOME o el <strong>de</strong> KDE, y las aplicaciones <strong>de</strong>ambos entornos.Lectura complementaria[Ver bibliografía, apartado82]Simultáneamente, los princip<strong>al</strong>es proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> que yaestaban en marcha continúan con buena s<strong>al</strong>ud, y surgen nuevos proyectoscada día. En varios nichos <strong>de</strong> mercado se observa cómo lamejor solución (reconocida por casi todo el mundo) es <strong>software</strong> <strong>libre</strong>.Por ejemplo, Apache ha mantenido casi <strong>de</strong>s<strong>de</strong> su aparición en abril<strong>de</strong> 1995 la mayor cuota <strong>de</strong> mercado entre los servidores web.XFree86, el proyecto <strong>libre</strong> que <strong>de</strong>sarrolla X Window, es con diferenci<strong>al</strong>a versión <strong>de</strong> X Window más popular (y por tanto, el sistemas <strong>de</strong> ventanaspara sistemas tipo Unix más extendido). GCC es reconocidocomo el compilador <strong>de</strong> C más portable, y uno <strong>de</strong> los <strong>de</strong> mejor c<strong>al</strong>idad.GNAT, sistema <strong>de</strong> compilación para Ada 95, se hace con lamayor parte <strong>de</strong>l mercado <strong>de</strong> compiladores Ada en pocos años. Y asísucesivamente...En 1998 se creó la Open Source Initiative (OSI), que <strong>de</strong>cidió adoptarel término open source <strong>software</strong> (‘<strong>software</strong> <strong>de</strong> fuente abierta’) comouna marca para introducir el <strong>software</strong> <strong>libre</strong> en el mundo comerci<strong>al</strong>,tratando <strong>de</strong> evitar la ambigüedad que en inglés supone el términofree (que significa tanto ‘<strong>libre</strong>’ como ‘gratis’). Esta <strong>de</strong>cisión supuso (yaún supone) uno <strong>de</strong> los <strong>de</strong>bates más enconados <strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong>, ya que la Free Software Foundation y otros consi<strong>de</strong>raronque era mucho más apropiado hablar <strong>de</strong> <strong>software</strong> <strong>libre</strong>. En cu<strong>al</strong>quiercaso, la OSI re<strong>al</strong>izó una fructífera campaña <strong>de</strong> difusión <strong>de</strong> su nuevamarca, que ha sido adoptada por muchos como la forma preferida<strong>de</strong> hablar <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, sobre todo en el mundo anglosajón. LaOSI utilizó para <strong>de</strong>finir el <strong>software</strong> open source una <strong>de</strong>finición <strong>de</strong>rivada<strong>de</strong> la que utiliza el proyecto Debian para <strong>de</strong>finir qué es <strong>software</strong><strong>libre</strong> (que por otra parte refleja con bastante aproximación la i<strong>de</strong>a <strong>de</strong>la FSF <strong>al</strong> respecto), por lo que <strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista práctico, casicu<strong>al</strong>quier programa que es consi<strong>de</strong>rado <strong>software</strong> <strong>libre</strong> es tambiénLectura complementaria[Ver bibliografía, apartados185, 85 y 98]ANOTACIONES51


© FUOC • XP06/M2101/01492Software <strong>libre</strong>consi<strong>de</strong>rado open source, y viceversa. Sin embargo, las comunida<strong>de</strong>s<strong>de</strong>l <strong>software</strong> <strong>libre</strong> y <strong>de</strong>l <strong>software</strong> <strong>de</strong> fuente abierta (o <strong>al</strong> menos laspersonas que se i<strong>de</strong>ntifican como parte <strong>de</strong> una o <strong>de</strong> otra) pue<strong>de</strong>n serprofundamente diferentes.2.4.2. Principios <strong>de</strong> los 2000A principios <strong>de</strong> la década <strong>de</strong>l 2000 el <strong>software</strong> <strong>libre</strong> es un serio competidoren el segmento <strong>de</strong> servidores, y comienza a estar ya listo parael escritorio. Sistemas como GNOME 2.x, KDE 3.x y OpenOffice pue<strong>de</strong>nser utilizados por usuarios domésticos, y son suficientes para lasnecesida<strong>de</strong>s <strong>de</strong> muchas empresas, <strong>al</strong> menos en lo que a ofimáticase refiere. Los sistemas <strong>libre</strong>s (y fundament<strong>al</strong>mente los basados enLinux) son fáciles <strong>de</strong> inst<strong>al</strong>ar, y la complejidad para mantenerlos yactu<strong>al</strong>izarlos es comparable a la <strong>de</strong> otros sistemas propietarios (incluyendoWindows).En estos momentos, cu<strong>al</strong>quier empresa <strong>de</strong> la industria <strong>de</strong>l <strong>software</strong>tiene una estrategia con respecto <strong>al</strong> <strong>software</strong> <strong>libre</strong>. La mayoría <strong>de</strong> lasgran<strong>de</strong>s multinacion<strong>al</strong>es (IBM, HP, Sun, Corel, Apple, Oracle) incorporael <strong>software</strong> <strong>libre</strong> con mayor o menor <strong>de</strong>cisión. En un extremopodríamos situar a empresas como Oracle, por ejemplo, que reaccionansimplemente portando sus productos a GNU/Linux. En el otropodría situarse a IBM, que tiene la estrategia más <strong>de</strong>cidida y ha re<strong>al</strong>izadolas mayores campañas <strong>de</strong> publicidad sobre Linux. Entre los lí<strong>de</strong>res<strong>de</strong>l mercado informático, sólo Microsoft se ha significado conuna estrategia claramente contraria <strong>al</strong> <strong>software</strong> <strong>libre</strong>, y en particular<strong>al</strong> <strong>software</strong> distribuido bajo licencia GPL.ANOTACIONESEn cuanto <strong>al</strong> mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en sí mismo, a pesar <strong>de</strong> los<strong>de</strong>bates que <strong>de</strong> vez en cuando sacu<strong>de</strong>n la comunidad, el crecimientoes enorme. Cada vez hay más <strong>de</strong>sarrolladores, más proyectos <strong>de</strong><strong>software</strong> <strong>libre</strong> activos, más usuarios, etc. Cada vez más el <strong>software</strong><strong>libre</strong> está pasando <strong>de</strong> ser <strong>al</strong>go margin<strong>al</strong> para convertirse en un competidora tener en cuenta.Ante este <strong>de</strong>sarrollo, aparecen nuevas disciplinas que estudian específicamenteel <strong>software</strong> <strong>libre</strong>, como la ingeniería <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Apartir <strong>de</strong> sus investigaciones, comenzamos poco a poco a enten<strong>de</strong>rcómo funciona en sus diferentes aspectos: mo<strong>de</strong>los <strong>de</strong> <strong>de</strong>sarrollo, <strong>de</strong>52


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492negocio, mecanismos <strong>de</strong> coordinación, gestión <strong>de</strong> proyectos <strong>libre</strong>s,motivación <strong>de</strong> <strong>de</strong>sarrolladores, etc.En estos años comienzan también a verse los primeros efectos <strong>de</strong>la <strong>de</strong>sloc<strong>al</strong>ización que permite el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>: paísesconsi<strong>de</strong>rados como periféricos participan en el mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong> <strong>de</strong> forma muy activa. Por ejemplo, es significativo elnúmero <strong>de</strong> <strong>de</strong>sarrolladores mexicanos o españoles (ambos paísescon poca tradición <strong>de</strong> industria <strong>software</strong>) en proyectos como GNOME[lancashire:co<strong>de</strong>-culture-cash]. Y, por supuesto, es aún más interesanteel papel <strong>de</strong> Brasil, con empresas como Conectiva, una grancantidad <strong>de</strong> <strong>de</strong>sarrolladores y expertos en tecnologías <strong>de</strong> <strong>software</strong> <strong>libre</strong>,y un <strong>de</strong>cidido apoyo por parte <strong>de</strong> las administraciones públicas.Mención aparte merece el caso <strong>de</strong> LinEx, muy significativo <strong>de</strong> cómouna región con poca tradición <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> pue<strong>de</strong> tratar<strong>de</strong> cambiar la situación con una estrategia agresiva <strong>de</strong> implantación<strong>de</strong> <strong>software</strong> <strong>libre</strong>.Des<strong>de</strong> el punto <strong>de</strong> vista <strong>de</strong> la toma <strong>de</strong> <strong>de</strong>cisiones a la hora <strong>de</strong> implantarsoluciones <strong>software</strong>, es <strong>de</strong> <strong>de</strong>stacar cómo hay ciertos mercados(como los servicios <strong>de</strong> Internet, o la ofimática) don<strong>de</strong> el <strong>software</strong><strong>libre</strong> se ha convertido en una opción natur<strong>al</strong>, y es difícil <strong>de</strong> justificarel hecho <strong>de</strong> no consi<strong>de</strong>rarla cuando se está estudiando qué tipo <strong>de</strong>sistema utilizar.Como aspecto negativo, estos años han visto <strong>de</strong> qué modo el entornoleg<strong>al</strong> don<strong>de</strong> se mueve el <strong>software</strong> <strong>libre</strong> está cambiando rápidamenteen todo el mundo. Por un lado, las patentes <strong>de</strong> <strong>software</strong>(patentes <strong>de</strong> programación) están siendo consi<strong>de</strong>radas cada vez enmás países. Por otro, las nuevas leyes <strong>de</strong> protección <strong>de</strong> <strong>de</strong>rechos <strong>de</strong>autor están dificultando o haciendo imposible el <strong>de</strong>sarrollo <strong>de</strong> aplicaciones<strong>libre</strong>s en <strong>al</strong>gunos ámbitos, siendo el más conocido el <strong>de</strong> losvisores <strong>de</strong> DVD (<strong>de</strong>bido <strong>al</strong> <strong>al</strong>goritmo CSS <strong>de</strong> ofuscación <strong>de</strong> imágenesque se utiliza en esa tecnología).LinExA principios <strong>de</strong>l 2002 la Junta <strong>de</strong> Extremadura dio a conocer públicamenteel proyecto LinEx. La i<strong>de</strong>a es simple: promover la creación<strong>de</strong> una distribución basada en GNU/Linux con el objetivo fundamen-ANOTACIONES53


© FUOC • XP06/M2101/01492Software <strong>libre</strong>t<strong>al</strong> <strong>de</strong> utilizarla en los miles <strong>de</strong> or<strong>de</strong>nadores que va a inst<strong>al</strong>ar en loscentros educativos públicos <strong>de</strong> toda la región. Extremadura, situadaen la parte occi<strong>de</strong>nt<strong>al</strong> <strong>de</strong> España, fronteriza con Portug<strong>al</strong>, cuenta conaproximadamente un millón <strong>de</strong> habitantes, y nunca se había <strong>de</strong>stacadopor sus iniciativas tecnológicas. De hecho, la región prácticamentecarece <strong>de</strong> industria <strong>de</strong> <strong>software</strong>.En este contexto, LinEx ha supuesto una aportación muy interesanteen el panorama <strong>de</strong>l <strong>software</strong> <strong>libre</strong> a esc<strong>al</strong>a mundi<strong>al</strong>. Mucho más <strong>al</strong>lá<strong>de</strong> ser una nueva distribución <strong>de</strong> GNU/Linux basada en Debian (loque no <strong>de</strong>ja <strong>de</strong> ser <strong>al</strong>go relativamente anecdótico), y más <strong>al</strong>lá <strong>de</strong> suenorme impacto en medios <strong>de</strong> comunicación (es la primera vez queExtremadura ha s<strong>al</strong>ido en portada <strong>de</strong>l Washington Post, y una <strong>de</strong> lasprimeras que lo ha hecho un producto <strong>de</strong> <strong>software</strong> <strong>libre</strong>, por ejemplo),lo extraordinario es la (<strong>al</strong> menos aparentemente) sólida apuesta<strong>de</strong> una administración pública por el <strong>software</strong> <strong>libre</strong>. La Junta <strong>de</strong> Extremaduraha <strong>de</strong>cidido probar un mo<strong>de</strong>lo diferente en la enseñanza<strong>de</strong> informática, y a medio plazo probablemente en el propio uso <strong>de</strong>la informática <strong>de</strong>ntro <strong>de</strong> sus competencias. Este hecho la convierte enla primera administración pública <strong>de</strong> un país <strong>de</strong>sarrollado que toma<strong>de</strong>cididamente este camino. A raíz <strong>de</strong> la iniciativa <strong>de</strong> la Junta ya estáempezando a producirse movimiento, tanto <strong>de</strong>ntro como fuera <strong>de</strong>Extremadura. Hay aca<strong>de</strong>mias que enseñan informática con LinEx; sehan escrito libros para apoyar esta enseñanza; hay or<strong>de</strong>nadores quese ven<strong>de</strong>n con LinEx preinst<strong>al</strong>ado. En gener<strong>al</strong>, se está tratando <strong>de</strong>crear en torno a esta experiencia todo un tejido docente y empresari<strong>al</strong>que le proporcione soporte. Asimismo, se está empezando a exportarla experiencia: la Junta <strong>de</strong> And<strong>al</strong>ucía (en el sur <strong>de</strong> España, 8millones <strong>de</strong> habitantes) ya ha anunciado GuadaLinex, una iniciativahasta cierto punto similar.ANOTACIONESKnoppixDes<strong>de</strong> fin<strong>al</strong>es <strong>de</strong> los años 1990 existen distribuciones <strong>de</strong> GNU/Linuxque se inst<strong>al</strong>an fácilmente, pero probablemente Knoppix, cuya primeraversión apareció durante el 2002, ha llevado este concepto asu máxima expresión. Un CD que arranca prácticamente en cu<strong>al</strong>quierPC, convirtiéndolo (sin tener siquiera que formatear el disco, yaque permite su uso en vivo) en una máquina GNU/Linux completamentefuncion<strong>al</strong>, con una selección <strong>de</strong> las herramientas más habi-54


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492tu<strong>al</strong>es. Knoppix une una buena <strong>de</strong>tección automática <strong>de</strong> hardwarecon una buena selección <strong>de</strong> programas y un funcionamiento ”en vivo”.Permite, por ejemplo, una experiencia rápida y directa <strong>de</strong> lo quepue<strong>de</strong> suponer trabajar con GNU/Linux. Y está dando lugar a todauna familia <strong>de</strong> distribuciones <strong>de</strong>l mismo tipo, especi<strong>al</strong>izadas en necesida<strong>de</strong>sespecíficas <strong>de</strong> un perfil concreto <strong>de</strong> usuarios.OpenOffice.orgEn 1999 Sun Microsystems compró una empresa <strong>al</strong>emana llamadaStarDivision, cuyo producto estrella era StarOffice, un juego <strong>de</strong> herramientasofimático similar en funcion<strong>al</strong>idad a Office, el juego <strong>de</strong>herramientas <strong>de</strong> Microsoft. Un año más tar<strong>de</strong>, Sun distribuyó granparte <strong>de</strong>l código <strong>de</strong> StarOffice bajo una licencia <strong>libre</strong> (la GPL), dandolugar <strong>al</strong> proyecto OpenOffice.org. Este proyecto liberó la versión 1.0<strong>de</strong> OpenOffice.org en mayo <strong>de</strong>l 2002. OpenOffice.org se ha convertidoen un juego <strong>de</strong> aplicaciones ofimáticas <strong>de</strong> c<strong>al</strong>idad y funcion<strong>al</strong>idadsimilar a la <strong>de</strong> cu<strong>al</strong>quier otro producto ofimático, y lo que esmás importante, interopera muy bien con los formatos <strong>de</strong> datos <strong>de</strong>MS Office. Estas características han hecho <strong>de</strong> ella la aplicación <strong>de</strong> referencia<strong>de</strong>l <strong>software</strong> <strong>libre</strong> en el mundo <strong>de</strong> la ofimática.La importancia <strong>de</strong> OpenOffice.org, <strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista <strong>de</strong> extensión<strong>de</strong>l <strong>software</strong> <strong>libre</strong> a un gran número <strong>de</strong> usuarios, es enorme.Por fin, ya es posible cambiar, prácticamente sin traumas, <strong>de</strong>los entornos propietarios habitu<strong>al</strong>es en ofimática (sin duda la aplicaciónestrella en el mundo empresari<strong>al</strong>) a entornos completamente<strong>libre</strong>s (por ejemplo, GNU/Linux más Gnome y/o KDE másOpenOffice.org).Mozilla, G<strong>al</strong>eon y los <strong>de</strong>másPrácticamente <strong>de</strong>s<strong>de</strong> su aparición en 1994 hasta 1996, NetscapeNavigator fue el lí<strong>de</strong>r indiscutible <strong>de</strong>l mercado <strong>de</strong> navegadores web,con cuotas <strong>de</strong> mercado <strong>de</strong> hasta el 80%. La situación empezó a cambiarcuando Microsoft incluyó el Internet Explorer con su Windows 95,lo que supuso que poco a poco fuera perdiendo cuota <strong>de</strong> mercado.A principios <strong>de</strong> 1998 Netscape anunció que iba a distribuir gran parte<strong>de</strong>l código <strong>de</strong> su Navigator como <strong>software</strong> <strong>libre</strong>, cosa que efecti-ANOTACIONES55


© FUOC • XP06/M2101/01492Software <strong>libre</strong>vamente hizo en marzo <strong>de</strong>l mismo año lanzando el proyecto Mozilla.Durante bastante tiempo estuvo ro<strong>de</strong>ado <strong>de</strong> incertidumbre, e inclusopesimismo (por ejemplo, cuando el lí<strong>de</strong>r <strong>de</strong>l proyecto, Jamie Zawinski,lo abandonó), dado que pasaba el tiempo y no aparecía ningúnproducto como resultado <strong>de</strong> su lanzamiento.En enero <strong>de</strong>l 2000, el proyecto liberó Mozilla M13, que fue consi<strong>de</strong>radacomo la primera versión razonablemente estable. Pero sólo enmayo <strong>de</strong>l 2002 se publicó fin<strong>al</strong>mente la versión 1.0, la primera ofici<strong>al</strong>menteestable, más <strong>de</strong> cuatro años <strong>de</strong>spués <strong>de</strong> la liberación <strong>de</strong>lprimer código <strong>de</strong>l Navigator.Lectura recomendada[Ver bibliografía, apartado211]SugerenciaEn Brian Wilson. Netscape navigator pue<strong>de</strong> consultarseuna reseña <strong>de</strong>t<strong>al</strong>lada <strong>de</strong> las princip<strong>al</strong>es versiones <strong>de</strong>Netscape Navigator y Mozilla, así como <strong>de</strong> sus princip<strong>al</strong>escaracterísticas.Por fin Mozilla era una re<strong>al</strong>idad. Aunque quizás <strong>de</strong>masiado tar<strong>de</strong>, teniendoen cuenta las cuotas <strong>de</strong> mercado que presenta durante el periodo2002-2003 Internet Explorer (lí<strong>de</strong>r indiscutible <strong>de</strong>l mercado,que ha relegado a Mozilla y a otros a una posición completamentemargin<strong>al</strong>). Pero el proyecto Mozilla, a pesar <strong>de</strong> tardar tanto, ha dadosus frutos. No sólo los que cabía esperar (el navegador Mozilla), sinomuchos otros que podrían consi<strong>de</strong>rarse colater<strong>al</strong>es, como por ejemploG<strong>al</strong>eon, otro navegador basado en el mismo motor <strong>de</strong> HTML.ANOTACIONESMozilla ha ayudado a completar un gran hueco en el mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong>. Antes <strong>de</strong> la aparición <strong>de</strong> Konqueror (el navegador <strong>de</strong>lproyecto KDE), no había muchos navegadores <strong>libre</strong>s con interfazgráfica. A partir <strong>de</strong> la publicación <strong>de</strong> Mozilla, han ido apareciendogran cantidad <strong>de</strong> proyectos basados en él, produciendo una buenacantidad <strong>de</strong> navegadores. Por otro lado, la combinación Mozilla másOpenOffice permite usar <strong>software</strong> <strong>libre</strong> para las tareas más cotidianasincluso en un entorno Windows (ambos funcionan no sólo sobreGNU/Linux, *BSD y otros sistemas tipo Unix, sino que también lo hacensobre Windows). Esto permite, por primera vez en la historia <strong>de</strong>l<strong>software</strong> <strong>libre</strong>, que la transición <strong>de</strong> <strong>software</strong> propietario a <strong>libre</strong> en en-56


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492tornos <strong>de</strong> oficina sea simple: se pue<strong>de</strong> empezar usando estas dosaplicaciones sobre Windows, sin cambiar <strong>de</strong> sistema operativo (en elcaso <strong>de</strong> los que lo usan habitu<strong>al</strong>mente), y con el tiempo eliminar laúnica pieza no <strong>libre</strong> pasando a GNU/Linux o FreeBSD.2.5. El futuro: ¿una carrera <strong>de</strong> obstáculos?Sin duda, es difícil pre<strong>de</strong>cir el futuro. Y <strong>de</strong>s<strong>de</strong> luego, no es <strong>al</strong>go a loque nos vayamos a <strong>de</strong>dicar aquí. Por lo tanto, más que tratar <strong>de</strong> explicarcómo será el futuro <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, trataremos <strong>de</strong> mostrarlos problemas que previsiblemente tendrá que afrontar (y <strong>de</strong> hecholleva ya tiempo afrontando). De cómo sea el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>capaz <strong>de</strong> superar estos obstáculos <strong>de</strong>pen<strong>de</strong>rá, sin duda, su situación<strong>de</strong>ntro <strong>de</strong> unos años.• Técnica FUD (fear, uncertainity, doubt, o en español, ‘miedo’,‘<strong>de</strong>sconocimiento’, ‘duda’). Son técnicas bastante habitu<strong>al</strong>es en elmundo <strong>de</strong> las tecnologías <strong>de</strong> la información, y que hasta hoy hansido utilizadas por los competidores <strong>de</strong> productos <strong>de</strong> <strong>software</strong> <strong>libre</strong>para tratar <strong>de</strong> <strong>de</strong>sacreditarlos, con mayor o menor razón, ycon éxito variable. En líneas gener<strong>al</strong>es, el <strong>software</strong> <strong>libre</strong>, quizás<strong>de</strong>bido a su complejidad y diversos métodos <strong>de</strong> penetración enlas empresas, ha resultado bastante inmune a estas técnicas.• Disolución. Muchas empresas están probando los límites <strong>de</strong>l <strong>software</strong><strong>libre</strong> como mo<strong>de</strong>lo, y en particular tratando <strong>de</strong> ofrecer a susclientes mo<strong>de</strong>los que presentan <strong>al</strong>gunas características similares<strong>al</strong> <strong>software</strong> <strong>libre</strong>. El princip<strong>al</strong> problema que pue<strong>de</strong> presentar estetipo <strong>de</strong> mo<strong>de</strong>los es la confusión que generan en los clientes y <strong>de</strong>sarrolladores,que tienen que estudiar con mucho <strong>de</strong>t<strong>al</strong>le la letrapequeña para darse cuenta <strong>de</strong> que lo que se les está ofreciendono tiene las ventajas que para ellos supone el <strong>software</strong> <strong>libre</strong>. Elcaso más conocido <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> este tipo es el programa SharedSource <strong>de</strong> Microsoft.• Desconocimiento. En muchos casos los usuarios llegan <strong>al</strong> <strong>software</strong><strong>libre</strong> simplemente porque creen que es gratis. O porque loconsi<strong>de</strong>ran <strong>de</strong> moda. Si no profundizan más <strong>al</strong>lá, y estudian conANOTACIONES57


© FUOC • XP06/M2101/01492Software <strong>libre</strong>cierto <strong>de</strong>tenimiento las ventajas que les pue<strong>de</strong> ofrecer el <strong>software</strong><strong>libre</strong> como mo<strong>de</strong>lo, corren el riesgo <strong>de</strong> no aprovecharse <strong>de</strong> ellas.En muchos casos, las suposiciones <strong>de</strong> partida en el mundo <strong>de</strong>l<strong>software</strong> <strong>libre</strong> son tan diferentes <strong>de</strong> las habitu<strong>al</strong>es en el mundo<strong>de</strong>l <strong>software</strong> propietario que es indispensable un mínimo análisispara compren<strong>de</strong>r que lo que en un caso es habitu<strong>al</strong>, en el otropue<strong>de</strong> ser imposible, y viceversa. El <strong>de</strong>sconocimiento, por lo tanto,no pue<strong>de</strong> sino generar insatisfacciones y pérdida <strong>de</strong> oportunida<strong>de</strong>sen cu<strong>al</strong>quier persona y organización que se aproxime<strong>al</strong> <strong>software</strong> <strong>libre</strong>.• Impedimentos leg<strong>al</strong>es. Sin duda éste es el princip<strong>al</strong> problema conel que se va a encontrar el <strong>software</strong> <strong>libre</strong> en los próximos años.Aunque el entorno leg<strong>al</strong> don<strong>de</strong> se <strong>de</strong>sarrolló el <strong>software</strong> <strong>libre</strong> durantela década <strong>de</strong> 1980 y la primera mitad <strong>de</strong> la <strong>de</strong> 1990 no erai<strong>de</strong><strong>al</strong>, <strong>al</strong> menos <strong>de</strong>jaba suficiente espacio para que creciese en libertad.Des<strong>de</strong> entonces, la extensión <strong>de</strong>l ámbito <strong>de</strong> la patentabilidad<strong>al</strong> <strong>software</strong> (que se ha producido en muchos países<strong>de</strong>sarrollados) y las nuevas legislaciones sobre <strong>de</strong>rechos <strong>de</strong> autor,que limitan la libertad <strong>de</strong> creación <strong>de</strong>l <strong>de</strong>sarrollador <strong>de</strong> <strong>software</strong>,suponen cada vez barreras más <strong>al</strong>tas a la entrada <strong>de</strong>l <strong>software</strong> <strong>libre</strong>en segmentos importantes <strong>de</strong> aplicaciones.2.6. Algunas fechas <strong>de</strong> la historia <strong>de</strong>l <strong>software</strong> <strong>libre</strong>ANOTACIONESLectura complementaria[Ver bibliografía, apartados111 y 126]Ésta es sólo una lista <strong>de</strong> fechas que podrían ser consi<strong>de</strong>radascomo importantes en la historia <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Está basada enla que aparece en Working group on Libre Software. Free <strong>software</strong>/ open source: Information society opportunities for europe?(1999) y en ella ofrece la Open Source Initiative, que no preten<strong>de</strong>ser completa: es seguro que muchas fechas importantes no aparecen.Sin embargo, probablemente ofrece una visión lo suficientementecompleta <strong>de</strong>l panorama histórico <strong>de</strong> la evolución <strong>de</strong>lmundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Décadas <strong>de</strong> 1950 y 1960:El <strong>software</strong> se distribuye con su código fuente y sin restricciones engrupos <strong>de</strong> usuarios como SHARE (IBM) y DECUS (DEC).58


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014921969, abril:Se publica la RFC número 1, que <strong>de</strong>scribe la primera Internet (entoncesARPANET). La <strong>libre</strong> disposición <strong>de</strong> las RFC, y en particular<strong>de</strong> las especificaciones <strong>de</strong> los protocolos usados en Internet fue unfactor clave <strong>de</strong> su <strong>de</strong>sarrollo.1970, enero:IBM comienza a ven<strong>de</strong>r su <strong>software</strong> por separado, dando lugar <strong>al</strong>comienzo <strong>de</strong> la industria <strong>de</strong>l <strong>software</strong> propietario.1972:Unix comienza a distribuirse en universida<strong>de</strong>s y centros <strong>de</strong> investigación.1973:Unix llega a la Universidad <strong>de</strong> C<strong>al</strong>ifornia en Berkeley. Comienz<strong>al</strong>a historia <strong>de</strong> Unix BSD.1973:SPICE es puesto por Don<strong>al</strong>d O. Pe<strong>de</strong>rson en el dominio público.Con el tiempo se convertirá en la referencia en su campo (simuladores<strong>de</strong> circuitos integrados).1978:Don<strong>al</strong>d Knuth, <strong>de</strong> la Universidad <strong>de</strong> Stanford, comienza a trabajaren TeX, un sistema <strong>de</strong> composición electrónica que se distribuyócomo <strong>software</strong> <strong>libre</strong>.1983:Richard St<strong>al</strong>lman escribe el Manifiesto <strong>de</strong> GNU, don<strong>de</strong> pi<strong>de</strong> lavuelta a la compartición pública <strong>de</strong> <strong>software</strong>.1984:Comienza el proyecto GNU. Los <strong>de</strong>sarrolladores que colaboranen él, inici<strong>al</strong>mente coordinados por Richard St<strong>al</strong>lman, comienzana crear un gran número <strong>de</strong> herramientas similares a las quehabía en Unix, incluyendo un editor (Emacs) y un compilador(GCC). La meta es construir un sistema operativo completamente<strong>libre</strong>.ANOTACIONES59


© FUOC • XP06/M2101/01492Software <strong>libre</strong>1985:El X Consortium, basado en el MIT, distribuye el sistema X Windowcomo <strong>software</strong> <strong>libre</strong>, bajo una licencia muy poco restrictiva.1985:Richard St<strong>al</strong>lman funda la Free Software Foundation. Entre otrosfines, funcionará como centro receptor <strong>de</strong> fondos y recursos queayu<strong>de</strong>n <strong>al</strong> <strong>de</strong>sarrollo <strong>de</strong>l proyecto GNU, y como dueño <strong>de</strong> la propiedadintelectu<strong>al</strong> generada por el proyecto.1989:Se funda Cygnus, la primera empresa <strong>de</strong>dicada fundament<strong>al</strong>mentea proporcionar servicios comerci<strong>al</strong>es para el <strong>software</strong> <strong>libre</strong> (entreellos, soporte, <strong>de</strong>sarrollo y adaptación <strong>de</strong> programas <strong>libre</strong>s).1990:La Free Software Foundation anuncia su intento <strong>de</strong> construir unkernel que se llamará GNU Hurd. La meta <strong>de</strong> este proyecto escompletar el mayor hueco que queda en la estrategia <strong>de</strong>l proyectoGNU <strong>de</strong> construir un sistema operativo completo.1991:William y Lynne Jolitz escriben una serie en Dr. Dobbs Journ<strong>al</strong> sobrecómo portar BSD Unix a PC basados en i386.1991, agosto:Linus Torv<strong>al</strong>ds, estudiante finés <strong>de</strong> informática con 21 años,anuncia que ha empezado a trabajar en un kernel tipo Unix <strong>libre</strong>,usando herramientas <strong>de</strong> GNU, como GCC. Su meta en esa épocaes construir un Minix Libre.ANOTACIONES1991, octubre:Linus Torv<strong>al</strong>ds libera la primera versión <strong>de</strong> su kernel, aún muy primitiva,que es llamada Linux.1992:El Ejército <strong>de</strong>l Aire <strong>de</strong> EE.UU. conce<strong>de</strong> un contrato a la Universidad<strong>de</strong> Nueva York para construir un compilador <strong>libre</strong> para lanueva versión <strong>de</strong> Ada (en la época, lenguaje <strong>de</strong> uso casi obligadoen los contratos con el ejército <strong>de</strong> EE.UU.), Ada 95. El equipo <strong>de</strong>60


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492NYU elige a GNU GCC para la generación <strong>de</strong> código, y llama asu compilador GNAT (GNU NYU Ada 95 Translator).1992, julio:William y Lynne Jolitz liberan 386BSD 0.1, que con el tiempo darálugar a los proyectos NetBSD, FreeBSD, y más tar<strong>de</strong>, OpenBSD.1993:Se funda SuSE, en Alemania, que comienza sus negocios distribuyendoSlackware Linux, traducida <strong>al</strong> <strong>al</strong>emán.1993, agosto:Ian Murdock comienza una nueva distribución basada en Linux,llamada Debian GNU/Linux. Se convertirá en la distribuciónconstruida por <strong>de</strong>sarrolladores voluntarios con más participantes.1993, diciembre:FreeBSD 1.0, una <strong>de</strong> las primeras distribuciones estables <strong>de</strong>scendientes<strong>de</strong>l 386BSD <strong>de</strong> los Jolitz, es liberada en Internet.1994:Se funda la empresas Ada Core Technologies, por los <strong>de</strong>sarrolladores<strong>de</strong> GNAT, con el objetivo <strong>de</strong> asegurar su <strong>de</strong>sarrollo y evoluciónfuturas, y con un mo<strong>de</strong>lo <strong>de</strong> negocio basado en ofrecerservicios en torno <strong>al</strong> compilador y a sus clientes (y no en ven<strong>de</strong>r elcompilador, que sigue siendo <strong>software</strong> <strong>libre</strong>). Con el tiempo,GNAT se convertirá en el lí<strong>de</strong>r <strong>de</strong>l mercado <strong>de</strong> compiladores Ada.1994, enero:Se libera la versión 0.91 <strong>de</strong> Debian GNU/Linux, fruto <strong>de</strong>l esfuerzo<strong>de</strong> 12 <strong>de</strong>sarrolladores.1994:Marc Ewing comienza la distribución Red Hat Linux. Igu<strong>al</strong> que erael caso <strong>de</strong> Debian, trata <strong>de</strong> mejorar los resultados <strong>de</strong> la distribucióndominante en la época, Slackware.1994, marzo:Se publica el primer número <strong>de</strong> Linux Journ<strong>al</strong>.ANOTACIONES61


© FUOC • XP06/M2101/01492Software <strong>libre</strong>1994, octubre:Liberación <strong>de</strong> NetBSD 1.0.1995:Bob Young funda Red Hat Software, comprando la distribuciónRed Hat Linux a su autor Marc Ewing y fusionándola con supropio negocio, ACC, que vendía materi<strong>al</strong>es relacionados conLinux y Unix, por catálogo, <strong>de</strong>s<strong>de</strong> 1993. Poco <strong>de</strong>spués se publicaRed Hat Linux 2.0, la primera en incluir el formato <strong>de</strong> paquetesRPM.1995, enero:Liberación <strong>de</strong> FreeBSD 2.0.1995, abril:Primera liberación ofici<strong>al</strong> <strong>de</strong> Apache (0.6.2)1996:First Conference on Freely Redistributable Software (primercongreso sobre <strong>software</strong> redistribuible <strong>libre</strong>mente). Cambridge,Massachusetts, USA.1996, octubre:Anuncio <strong>de</strong>l proyecto KDE, uno <strong>de</strong> los primeros en atacar los problemas<strong>de</strong> usabilidad en entorno Unix, y el primero que trata <strong>de</strong>hacerlo en gran esc<strong>al</strong>a en el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.ANOTACIONES1997, enero:Eric S. Raymond presenta su artículo “The Cathedr<strong>al</strong> and the Bazaar”(‘La catedr<strong>al</strong> y el bazar’), con sus opiniones sobre por qué funcionanciertos mo<strong>de</strong>los <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.1997, agosto:Miguel <strong>de</strong> Icaza anuncia el proyecto GNOME, un competidor <strong>de</strong>KDE con metas similares, pero con el objetivo explícito que todoel sistema resultante fuera <strong>software</strong> <strong>libre</strong>. Nació como reacción <strong>de</strong>la Free Software Foundation y otros a los problemas <strong>de</strong> licenciasque tenía KDE, don<strong>de</strong> un componente fundament<strong>al</strong>, la biblioteca Qt,no era <strong>software</strong> <strong>libre</strong> en aquella época.62


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014921998, 22 <strong>de</strong> enero:Netscape <strong>de</strong>clara su intención <strong>de</strong> distribuir como <strong>software</strong> <strong>libre</strong> elcódigo <strong>de</strong> su Navigator, que había sido el lí<strong>de</strong>r en el mercado <strong>de</strong>navegadores <strong>de</strong> web.1998, 3 <strong>de</strong> febrero:Chris Peterson, Todd An<strong>de</strong>rson, John H<strong>al</strong>l, Larry Augustin, SamOckman y Eric Raimond se reúnen para estudiar las consecuencias<strong>de</strong>l anuncio <strong>de</strong> Netscape <strong>de</strong> liberar su navegador, y<strong>de</strong>ci<strong>de</strong>n promover el término open source <strong>software</strong> (<strong>software</strong> <strong>de</strong>fuente abierta), usándolo como una marca que garantice quelos productos que la llevan son <strong>software</strong> <strong>libre</strong>. Los promotores<strong>de</strong> este término entien<strong>de</strong>n que es más a<strong>de</strong>cuado para el mundoempresari<strong>al</strong> que el habitu<strong>al</strong> hasta ese momento, free <strong>software</strong>(‘<strong>software</strong> <strong>libre</strong>’). Para gestionar el término, se crea laOpen Source Initiative.1998, 31 <strong>de</strong> marzo:Netscape publica en Internet gran parte <strong>de</strong>l código fuente <strong>de</strong> suNavigator.1998, 7 <strong>de</strong> mayo:Corel anuncia el Netwin<strong>de</strong>r, un network computer basado en Linux.Es la primera vez que una gran empresa comerci<strong>al</strong>iza unaparato cuyo <strong>software</strong> es básicamente <strong>software</strong> <strong>libre</strong>. Poco <strong>de</strong>spuésCorel anuncia planes para portar su <strong>software</strong> <strong>de</strong> ofimática(entre el que se encuentra WordPerfect) a Linux, lo que también esnovedoso en la época.1998, 28 <strong>de</strong> mayo:Sun Microsystems y Adaptec entran a formar parte <strong>de</strong> Linux Internacion<strong>al</strong>.Son las primeras gran<strong>de</strong>s empresas informáticas que lohacen.1998, junio:La conferencia técnica <strong>de</strong> USENIX, tradicion<strong>al</strong>mente <strong>de</strong>dicada aUnix, abre una sesión par<strong>al</strong>ela llamada FREENIX, centrada en el<strong>software</strong> <strong>libre</strong>.ANOTACIONES63


© FUOC • XP06/M2101/01492Software <strong>libre</strong>1998, 22 <strong>de</strong> junio:IBM anuncia que comerci<strong>al</strong>izará y proporcionará soporte paraApache, utilizándolo como el servidor <strong>de</strong> su línea <strong>de</strong> productosWebSphere.1998, julio:Se libera Debian GNU/Linux 2.0, construida por más <strong>de</strong> 300 voluntarios.Esta distribución incluía más <strong>de</strong> 1.500 paquetes.1998, julio:Se libera KDE 1.0, la primera versión distribuida como estable.Varias distribuciones <strong>de</strong> GNU/Linux la incorporan poco <strong>de</strong>spués.1998, agosto:Linus Torv<strong>al</strong>ds y Linux aparecen en la portada <strong>de</strong> la revista Forbes.1998, 29 <strong>de</strong> septiembre:Red Hat, por entonces la empresa lí<strong>de</strong>r en el mercado <strong>de</strong> distribucionesbasadas en Linux, anuncia que Intel y Netscape han adquiridouna participación minoritaria en su capit<strong>al</strong>. El <strong>software</strong> <strong>libre</strong>comienza a <strong>de</strong>spertar el interés <strong>de</strong> los inversores.1998, noviembre:Se funda MandrakeSoft, que publica poco <strong>de</strong>spués Mandrake Linux,su distribución <strong>de</strong> GNU/Linux.ANOTACIONES1998, 1 <strong>de</strong> noviembre:Publicación <strong>de</strong> los documentos <strong>de</strong> H<strong>al</strong>loween, en los que supuestamenteMicrosoft i<strong>de</strong>ntifica a GNU/Linux y el <strong>software</strong> <strong>libre</strong> comoun competidor importante, y planea cómo combatirle.1999, 27 <strong>de</strong> enero:HP y SGI anuncian que soportarán Linux en sus máquinas, lo quemarca el comienzo <strong>de</strong> una ten<strong>de</strong>ncia: el abandono <strong>de</strong> los Unixpropietarios por los fabricantes <strong>de</strong> or<strong>de</strong>nadores que los usabancomo su sistema operativo, en favor <strong>de</strong> Linux.64


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014921999, marzo:Se libera GNOME 1.0, que fue más a<strong>de</strong>lante estabilizada (OctoberGNOME), siendo incorporada en varias distribuciones <strong>de</strong> GNU/Linux.1999, 15 <strong>de</strong> marzo:Apple libera Darwin, que será el componente centr<strong>al</strong> <strong>de</strong> su nuevoMacOSX, bajo una licencia <strong>libre</strong>.1999, agosto:Red Hat s<strong>al</strong>e a bolsa. El precio <strong>de</strong> las acciones sube enormementeen los primeros días tras la s<strong>al</strong>ida, y llega a estar capit<strong>al</strong>izada en4.800 millones <strong>de</strong> dólares. Más a<strong>de</strong>lante s<strong>al</strong>drían a bolsa otrasempresas relacionadas con el <strong>software</strong> <strong>libre</strong>, como VA Linux yAndover.net. Todas estas empresas bajarán su cotización extraordinariamenteunos años más tar<strong>de</strong>, cuando explota la burbuja <strong>de</strong>las puntocom.1999, octubre:Se fundan dos empresas para producir <strong>software</strong> en el marco <strong>de</strong>lproyecto GNOME: Eazel (que quebró en el 2002, <strong>de</strong>spués <strong>de</strong>producir Nautilus, un gestor <strong>de</strong> ficheros para GNOME) y HelixCo<strong>de</strong> (más a<strong>de</strong>lante renombrada como Ximian, que ha producido,entre otras, herramientas como Red Carpet o Evolution).1999, noviembre:Red Hat Software compra Cygnus. La empresa resultante es lamás gran<strong>de</strong> <strong>de</strong>l mundo en el campo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.2000, enero:Publicación <strong>de</strong> Mozilla M13, consi<strong>de</strong>rada como la primera versiónrazonablemente estable <strong>de</strong> Mozilla, casi dos años <strong>de</strong>spués<strong>de</strong> la liberación <strong>de</strong> gran parte <strong>de</strong>l código <strong>de</strong> Netscape Navigator.2000, mayo:Se libera GNOME 1.2 (Bongo GNOME).2000, agosto:Se anuncia la creación <strong>de</strong> la Fundación GNOME.ANOTACIONES65


© FUOC • XP06/M2101/01492Software <strong>libre</strong>2001, enero:Se publica la versión 2.4 <strong>de</strong> Linux.2002, 3 <strong>de</strong> abril:Se publica KDE 3.0, la tercera generación <strong>de</strong>l entorno <strong>de</strong> escritorioKDE. Los escritorios <strong>libre</strong>s empiezan a estar a la <strong>al</strong>tura <strong>de</strong> losescritorios comerci<strong>al</strong>es tradicion<strong>al</strong>es.2002, abril:Anuncio público <strong>de</strong>l proyecto LinEx, con el que la Junta <strong>de</strong> Extremadura(España) preten<strong>de</strong> utilizar su propia distribución <strong>de</strong>GNU/Linux para informatizar los colegios públicos <strong>de</strong> la región.2002, mayo:Publicación <strong>de</strong> Mozilla 1.0, la primera versión ofici<strong>al</strong>mente estable<strong>de</strong>l proyecto.2002, mayo:Publicación <strong>de</strong> OpenOffice.org 1.0. Pronto esta aplicación seconvertirá en la referencia ofimática en el mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong>.2002, 26 <strong>de</strong> junio:Se publica GNOME 2.0, que supone un gran paso a<strong>de</strong>lante <strong>de</strong>cara <strong>al</strong> usuario con una interfaz más cuidada y atención a lausabilidad. También se introducen aspectos para mejorar la accesiblidad.ANOTACIONES2002, 28 <strong>de</strong> julio:Se publica la versión 3.0 <strong>de</strong> Knoppix, una distribución <strong>de</strong> ev<strong>al</strong>uaciónque permite ser inst<strong>al</strong>ada en el disco duro <strong>de</strong> manera sencillay rápida. Knoppix se convierte en un fulgurante éxito.2002, diciembre:Red Hat Software anuncia que ha tenido flujo <strong>de</strong> caja positivo lostrimestres segundo y tercero <strong>de</strong> 2002.2003, enero:MandrakeSoft, empresa productora <strong>de</strong> la distribución MandrakeLinux, se <strong>de</strong>clara en suspensión <strong>de</strong> pagos.66


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014922003, 28 <strong>de</strong> mayo:El Ayuntamiento <strong>de</strong> Munich (Alemania) anuncia que reemplazaráWindows con Linux en la mayor parte <strong>de</strong> su sistema informático.2003, julio:MandrakeSoft anuncia que ha tenido flujo <strong>de</strong> caja positivo durantetodo el año, y que espera s<strong>al</strong>ir <strong>de</strong> su situación <strong>de</strong> suspensión <strong>de</strong>pagos a fin<strong>al</strong>es <strong>de</strong>l 2003.2003, 7 <strong>de</strong> julio:Carta abierta a la Organización Mundi<strong>al</strong> <strong>de</strong> la Propiedad Intelectu<strong>al</strong>(WIPO, World Intellectu<strong>al</strong> Proprierty Organization) para queexamine los nuevos mo<strong>de</strong>los <strong>de</strong> creación colectiva abierta (entrelos que se encuentra el <strong>software</strong> <strong>libre</strong>, pero también el proyectoGenoma Humano o las revistas científicas abiertas).Lectura complementaria[Ver bibliografía, apartado197]2003, 15 <strong>de</strong> julio:Se funda la Mozilla Foundation. Netscape Inc. (propiedad <strong>de</strong>AOL) anuncia que <strong>de</strong>jará <strong>de</strong> <strong>de</strong>sarrollar el navegador Netscapey, por tanto, su tutela <strong>de</strong>l proyecto Mozilla. La Fundación Mozillase constituye con una donación <strong>de</strong> dos millones <strong>de</strong> dólares porparte <strong>de</strong> AOL y apoyo materi<strong>al</strong> y humano <strong>de</strong> varias empresas, entreellas la propia AOL, Red Hat y Sun Microsystems.2003, 4 <strong>de</strong> agosto:Novell compra Ximian Inc., una <strong>de</strong> las empresas lí<strong>de</strong>res en el <strong>de</strong>sarrollo<strong>de</strong> <strong>software</strong> <strong>libre</strong> –en especi<strong>al</strong> para GNOME–, como parte<strong>de</strong> su estrategia para asentarse en el mercado <strong>de</strong> solucionessobre Linux.ANOTACIONES67


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014923. Aspectos leg<strong>al</strong>esEn este capítulo se presentan los princip<strong>al</strong>es aspectos leg<strong>al</strong>es relacionadoscon el <strong>software</strong> <strong>libre</strong>. Para ponerlos en contexto, se empiezapor una pequeña introducción a los conceptos más básicos <strong>de</strong> lapropiedad intelectu<strong>al</strong> e industri<strong>al</strong>, antes <strong>de</strong> exponer la <strong>de</strong>finición <strong>de</strong>t<strong>al</strong>lada<strong>de</strong> <strong>software</strong> <strong>libre</strong>, <strong>software</strong> <strong>de</strong> fuente abierta y otros conceptosrelacionados. Se an<strong>al</strong>izan también con cierto <strong>de</strong>t<strong>al</strong>le las licencias <strong>de</strong><strong>software</strong> <strong>libre</strong> más habitu<strong>al</strong>es y su impacto sobre los mo<strong>de</strong>los <strong>de</strong> negocio(que se tratará con más <strong>de</strong>t<strong>al</strong>le en el capítulo 5) y los mo<strong>de</strong>los<strong>de</strong> <strong>de</strong>sarrollo. También se comentarán licencias para otros recursos<strong>libre</strong>s distintos <strong>de</strong>l <strong>software</strong>.3.1. Breve introducción a la propiedad intelectu<strong>al</strong>Con el término propiedad intelectu<strong>al</strong> se agrupan distintos privilegiosque se otorgan sobre bienes intangibles con v<strong>al</strong>or económico. Deellos po<strong>de</strong>mos <strong>de</strong>stacar los <strong>de</strong> copyright (<strong>de</strong>rechos <strong>de</strong> autor) y similares,que protegen <strong>de</strong> la copia no autorizada los trabajos literarioso artísticos, programas <strong>de</strong> or<strong>de</strong>nador, recopilaciones <strong>de</strong> datos, diseñosindustri<strong>al</strong>es, etc.; las marcas, que protegen símbolos; las indicacionesgeográficas, que protegen <strong>de</strong>nominaciones <strong>de</strong> origen; elsecreto industri<strong>al</strong>, que resp<strong>al</strong>da la ocultación <strong>de</strong> información, y laspatentes, que otorgan monopolio tempor<strong>al</strong> sobre un invento a cambio<strong>de</strong> <strong>de</strong>svelarlo. En muchas legislaciones, entre ellas la española,se distingue la propiedad intelectu<strong>al</strong>, que se refiere a los <strong>de</strong>rechos <strong>de</strong>autor, <strong>de</strong> la propiedad industri<strong>al</strong>, que abarca las figuras restantes. Enel ámbito internacion<strong>al</strong>, la OMPI o WIPO (Organización Mundi<strong>al</strong> <strong>de</strong>la Propiedad Intelectu<strong>al</strong>, según siglas en español o en inglés) promueveambos tipos <strong>de</strong> propiedad en todos sus aspectos, mientrasque el acuerdo TRIPS (aspectos comerci<strong>al</strong>es <strong>de</strong> la propiedad intelectu<strong>al</strong>)establece unos mínimos <strong>de</strong> protección y obliga a todos los paísesmiembros <strong>de</strong> la OMC o WTO (Organización Mundi<strong>al</strong> <strong>de</strong>lComercio) a <strong>de</strong>sarrollarlos en unos plazos que <strong>de</strong>pen<strong>de</strong>n <strong>de</strong>l nivel <strong>de</strong><strong>de</strong>sarrollo <strong>de</strong>l país.ANOTACIONES69


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Aunque la Declaración Univers<strong>al</strong> <strong>de</strong> los Derechos Humanos (art. 27)reconoce a las personas el <strong>de</strong>recho a que se protejan los interesesmor<strong>al</strong>es y materi<strong>al</strong>es que le correspondan por razón <strong>de</strong> las produccionescientíficas, literarias o artísticas <strong>de</strong> que sean autores, en lapráctica este <strong>de</strong>recho suele ser transferido a las empresas que empleana los creadores o que comerci<strong>al</strong>izan sus creaciones. No obstante,y a pesar <strong>de</strong> ello, la propiedad intelectu<strong>al</strong> se justifica no sólopor razones mor<strong>al</strong>es, sino prácticas, para dar cumplimiento a otro<strong>de</strong>recho: el <strong>de</strong> la sociedad a beneficiarse <strong>de</strong> las creaciones, incentivándolascon beneficios y protegiendo las inversiones para la creación,investigación y <strong>de</strong>sarrollo. Para armonizar ambos <strong>de</strong>rechos, lapropiedad intelectu<strong>al</strong> es tempor<strong>al</strong>, caducando cuando ha cumplidosu función <strong>de</strong> promoción.Pero la caducidad no es la única característica que diferencia la propiedadintelectu<strong>al</strong> <strong>de</strong> la ordinaria. Los objetos <strong>de</strong> la misma pue<strong>de</strong>n copiarsefácil y económicamente, sin pérdida <strong>de</strong> c<strong>al</strong>idad, La copia no perjudicaa quien ya disfruta <strong>de</strong> lo copiado, <strong>al</strong> contrario que el robo, que sí quepriva <strong>de</strong>l objeto <strong>al</strong> poseedor origin<strong>al</strong>. La copia sí que pue<strong>de</strong> perjudicar<strong>al</strong> propietario, ya que le priva potenci<strong>al</strong>mente <strong>de</strong> los ingresos <strong>de</strong> unaventa. El control <strong>de</strong> la copia <strong>de</strong> intangibles es mucho más complicadoque el <strong>de</strong>l robo <strong>de</strong> bienes tangibles y pue<strong>de</strong> llevarnos a una sociedadpolici<strong>al</strong>, que necesite controlar todas las copias <strong>de</strong> información, y a unagran inseguridad jurídica porque aumentan las posibilida<strong>de</strong>s <strong>de</strong> violaciónacci<strong>de</strong>nt<strong>al</strong> <strong>de</strong> <strong>de</strong>rechos. A<strong>de</strong>más, la creatividad es increment<strong>al</strong>; <strong>al</strong>crear siempre copiamos <strong>al</strong>go y la línea divisoria entre la copia burda yla inspiración es sutil. Para profundizar más en todo ello, revisemos <strong>al</strong>gunas<strong>de</strong> las categorías <strong>de</strong> la propiedad intelectu<strong>al</strong>.3.1.1. Derechos <strong>de</strong> autorANOTACIONESLos <strong>de</strong>rechos <strong>de</strong> autor (copyright) protegen la expresión <strong>de</strong> un contenido,no el contenido en sí mismo. Se <strong>de</strong>sarrollaron para recompensara los autores <strong>de</strong> libros o <strong>de</strong> arte. Las obras protegidas pue<strong>de</strong>nexpresar i<strong>de</strong>as, conocimientos o métodos <strong>libre</strong>mente utilizables, perose prohíbe reproducirlas sin permiso, tot<strong>al</strong> o parci<strong>al</strong>mente, con o sinmodificaciones. Esta protección es muy sencilla, ya que entra automáticamenteen vigor en el momento <strong>de</strong> publicación <strong>de</strong> la obra conámbito casi univers<strong>al</strong>. Mo<strong>de</strong>rnamente, se ha extendido a los programas<strong>de</strong> or<strong>de</strong>nador y a recopilaciones <strong>de</strong> datos.70


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492La Ley <strong>de</strong> la Propiedad Intelectu<strong>al</strong> (LPI), en España, y leyes similaresen otros países, <strong>de</strong>sarrolladas sobre la base <strong>de</strong>l Convenio <strong>de</strong> Bernapara la protección <strong>de</strong> trabajos literarios y artísticos <strong>de</strong> 1886, regulanlos <strong>de</strong>rechos <strong>de</strong> autor. Éstos se divi<strong>de</strong>n en <strong>de</strong>rechos mor<strong>al</strong>es y patrimoni<strong>al</strong>es.Los primeros garantizan <strong>al</strong> autor el control sobre la divulgación<strong>de</strong> su obra, con nombre o seudónimo, el reconocimiento <strong>de</strong>autoría, el respeto a la integridad <strong>de</strong> la obra y el <strong>de</strong>recho <strong>de</strong> modificacióny retirada. Los segundos dan <strong>de</strong>recho a explotar económicamentela obra y pue<strong>de</strong>n ser cedidos tot<strong>al</strong> o parci<strong>al</strong>mente, <strong>de</strong> formaexclusiva o no, a un tercero. Los <strong>de</strong>rechos mor<strong>al</strong>es son vit<strong>al</strong>icios o in<strong>de</strong>finidos,mientras que los patrimoni<strong>al</strong>es tienen una duración bastantelarga (70 años <strong>de</strong>spués <strong>de</strong> la muerte <strong>de</strong>l autor, si es unapersona física, en el caso <strong>de</strong> la ley española).La cesión <strong>de</strong> <strong>de</strong>rechos se especifica por un contrato <strong>de</strong>nominado licencia.En el caso <strong>de</strong> programas propietarios, éstos gener<strong>al</strong>mente sedistribuyen por medio <strong>de</strong> licencias <strong>de</strong> uso no exclusivo que se entien<strong>de</strong>que se aceptan automáticamente <strong>al</strong> abrir o inst<strong>al</strong>ar el producto.No es necesario pues firmar el contrato, ya que, en el caso <strong>de</strong> noaceptarlo el receptor, rigen automáticamente los <strong>de</strong>rechos por omisión<strong>de</strong> la ley, es <strong>de</strong>cir, ninguno. Las licencias no pue<strong>de</strong>n restringir<strong>al</strong>gunos <strong>de</strong>rechos, como el <strong>de</strong> hacer copias privadas <strong>de</strong> arte o música,lo que nos permite reg<strong>al</strong>ar una copia <strong>de</strong> una grabación a un amigo,pero este <strong>de</strong>recho no es aplicable a los programas. Según la LPI<strong>de</strong> 1996, <strong>de</strong> los programas siempre se pue<strong>de</strong> hacer una copia <strong>de</strong> seguridad,se pue<strong>de</strong>n estudiar para hacer programas compatibles y sepue<strong>de</strong>n corregir y adaptar a nuestras necesida<strong>de</strong>s (difícil, porque nosolemos disponer <strong>de</strong> los códigos fuentes). Estos <strong>de</strong>rechos no pue<strong>de</strong>nser restringidos por licencias, aunque las leyes están en proceso <strong>de</strong>revisión, en una ten<strong>de</strong>ncia aparentemente imparable a reducir los<strong>de</strong>rechos <strong>de</strong> los usuarios. Las recopilaciones organizadas <strong>de</strong> obras odatos ajenos también están sometidas a <strong>de</strong>rechos <strong>de</strong> autor, si bienlos términos son distintos y la duración menor.Las nuevas tecnologías <strong>de</strong> la información, y en especi<strong>al</strong> la Red, hantrastocado profundamente la protección <strong>de</strong> los <strong>de</strong>rechos <strong>de</strong> autor, yaque las expresiones <strong>de</strong> contenidos son mucho más fáciles <strong>de</strong> copiarque los contenidos mismos. Y en el caso <strong>de</strong> los programas y <strong>al</strong>gunasobras <strong>de</strong> arte (música, imágenes, películas, e incluso literatura) funcionanautomáticamente en el or<strong>de</strong>nador, sin necesidad <strong>de</strong> un esfuerzohumano apreciable. En cambio, los diseños o inventos hay que cons-Lectura complementaria[Ver bibliografía, apartado61]ANOTACIONES71


© FUOC • XP06/M2101/01492Software <strong>libre</strong>truirlos y, posiblemente, ponerlos en producción. Esta posibilidad <strong>de</strong>crear riqueza sin coste ha llevado a gran parte <strong>de</strong> la sociedad, en particulara los países pobres, a duplicar programas sin pagar licencia,no existiendo una conciencia soci<strong>al</strong> <strong>de</strong> que el actuar <strong>de</strong> este modo seauna m<strong>al</strong>a acción (por contra, sí que la suele haber con respecto <strong>al</strong> robo<strong>de</strong> bienes físicos, por ejemplo). Por otro lado, los fabricantes <strong>de</strong> programas,solos o en co<strong>al</strong>ición (p. ej.: la BSA o Business Software Alliance)presionan fuertemente para que las licencias se paguen y losgobiernos persigan lo que se ha dado en llamar piratería.NotaLectura complementaria[Ver bibliografía, apartado191]El término piratería se ha popularizado como sinónimo<strong>de</strong> violación <strong>de</strong> cu<strong>al</strong>quier forma <strong>de</strong> propiedad intelectu<strong>al</strong>,especi<strong>al</strong>mente en el caso <strong>de</strong> la copia ileg<strong>al</strong><strong>de</strong> programas, música y películas. El término pareceexagerado, y en el diccionario <strong>de</strong> la Re<strong>al</strong> Aca<strong>de</strong>miaEspañola <strong>de</strong> la Lengua aparece como una acepciónen sentido figurado, ya que el término origin<strong>al</strong> se refierea robo con violencia en el mar. Por ello RichardSt<strong>al</strong>lman recomienda evitarla.3.1.2. Secreto comerci<strong>al</strong>Otro <strong>de</strong> los recursos <strong>de</strong> que disponen las empresas para rentabilizarsus inversiones es el secreto comerci<strong>al</strong>, protegido por las leyes <strong>de</strong>propiedad industri<strong>al</strong>, siempre que las empresas tomen las medidassuficientes para ocultar la información que no quieren <strong>de</strong>svelar. Enel caso <strong>de</strong> productos químicos o farmacéuticos que requieran aprobacióngubernament<strong>al</strong>, el Estado se compromete a no <strong>de</strong>svelar losdatos entregados que no sea obligatorio hacer públicos.ANOTACIONESUna <strong>de</strong> las aplicaciones <strong>de</strong>l secreto comerci<strong>al</strong> más conocidas se encuentraen la industria <strong>de</strong>l <strong>software</strong> propietario, que gener<strong>al</strong>mentecomerci<strong>al</strong>iza programas compilados sin dar acceso <strong>al</strong> código fuente,para impedir así el <strong>de</strong>sarrollo <strong>de</strong> programas <strong>de</strong>rivados.A primera vista parece que la protección <strong>de</strong>l secreto comerci<strong>al</strong> esperversa, ya que pue<strong>de</strong> privar in<strong>de</strong>finidamente a la sociedad <strong>de</strong> conocimientosútiles. En cierto modo así lo entien<strong>de</strong>n <strong>al</strong>gunas legisla-72


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492ciones, permitiendo la ingeniería inversa para <strong>de</strong>sarrollar productossustitutos, aunque la presión <strong>de</strong> las industrias ha conseguido que enmuchos países ésta sea una actividad prohibida y en otros sólo estépermitida en aras <strong>de</strong> la compatibilidad.Sea perverso o no el secreto comerci<strong>al</strong>, en muchos casos es mejorque una patente, ya que permite una ventaja competitiva <strong>al</strong> que poneun producto en el mercado, mientras la competencia trata <strong>de</strong> imitarlocon ingeniería inversa. Cuanto más sofisticado sea el producto,más costará a la competencia reproducirlo, mientras que si es trivi<strong>al</strong>,lo copiará rápidamente. La imitación con mejoras ha sido fundament<strong>al</strong>para el <strong>de</strong>sarrollo <strong>de</strong> las que hoy son superpotencias (EstadosUnidos y Japón) y es muy importante para la in<strong>de</strong>pen<strong>de</strong>ncia económica<strong>de</strong> los países en <strong>de</strong>sarrollo.3.1.3. Patentes y mo<strong>de</strong>los <strong>de</strong> utilidadLa <strong>al</strong>ternativa <strong>al</strong> secreto comerci<strong>al</strong> es la patente. A cambio <strong>de</strong> un monopolio<strong>de</strong> 17 a 25 años y un <strong>de</strong>terminado coste económico, un inventoes revelado públicamente, <strong>de</strong> forma que sea fácilmentereproducible. Con la patente se preten<strong>de</strong> promover la investigaciónprivada, sin coste para el contribuyente y sin que el resultado se pierda.El poseedor <strong>de</strong> una patente pue<strong>de</strong> <strong>de</strong>cidir si permite a otros utilizarlay el precio que <strong>de</strong>be pagar por la licencia.La doctrina ofici<strong>al</strong> es que el sistema <strong>de</strong> patentes promueve la innovación,pero cada vez más se hacen oír voces que afirman que la dificulta,ya sea porque opinan que el sistema está m<strong>al</strong> implementado,ya porque creen que es perverso en sí mismo.Lectura complementaria[Ver bibliografía, apartados75 y 173]Lo que se consi<strong>de</strong>ra un invento ha ido variando con el tiempo, congran<strong>de</strong>s presiones para ampliar la cobertura <strong>de</strong>l sistema, incluyendo<strong>al</strong>goritmos, programas, mo<strong>de</strong>los <strong>de</strong> negocio, sustancias natur<strong>al</strong>es,genes y formas <strong>de</strong> vida, incluidas plantas y anim<strong>al</strong>es. TRIPS exige queel sistema <strong>de</strong> patentes no discrimine ningún ámbito <strong>de</strong>l saber. Laspresiones <strong>de</strong> la Organización Mundi<strong>al</strong> <strong>de</strong> la Propiedad Intelectu<strong>al</strong>(OMPI o WIPO) preten<strong>de</strong>n eliminar la necesidad <strong>de</strong> que el inventotenga aplicación industri<strong>al</strong> y también rebajar los estándares <strong>de</strong> inventivaexigibles en una patente. Estados Unidos está a la cabeza <strong>de</strong>los países con un mínimo <strong>de</strong> exigencias sobre lo que es patentable,ANOTACIONES73


© FUOC • XP06/M2101/01492Software <strong>libre</strong>siendo a<strong>de</strong>más el más beligerante para que otros países adopten susestándares, sin acordarse que él mismo se negó a aceptar las patentesextranjeras cuando era un país sub<strong>de</strong>sarrollado.Una vez obtenida una patente, los <strong>de</strong>rechos <strong>de</strong>l poseedor son in<strong>de</strong>pendientes<strong>de</strong> la c<strong>al</strong>idad <strong>de</strong>l invento y <strong>de</strong>l esfuerzo invertido en obtenerlo.Dado el coste <strong>de</strong> mantenimiento <strong>de</strong> una patente y los costes<strong>de</strong> litigación, solamente las gran<strong>de</strong>s empresas pue<strong>de</strong>n mantener ymantienen una amplia cartera <strong>de</strong> patentes que la sitúan en una posiciónque les permite ahogar cu<strong>al</strong>quier competencia. Dada la facilidadpara colocar patentes sobre soluciones trivi<strong>al</strong>es o <strong>de</strong> muy ampliaaplicabilidad, pue<strong>de</strong>n monopolizar para sí un espacio muy amplio<strong>de</strong> actividad económica.Con patentes, muchas activida<strong>de</strong>s, especi<strong>al</strong>mente la programación,se hacen extremadamente arriesgadas, ya que es muy fácil que en el<strong>de</strong>sarrollo <strong>de</strong> un programa complicado se viole acci<strong>de</strong>nt<strong>al</strong>mente <strong>al</strong>gunapatente. Cuando dos o más empresas están investigando pararesolver un problema, es muy probable que lleguen a una soluciónsimilar casi <strong>al</strong> mismo tiempo, pero sólo una (gener<strong>al</strong>mente la <strong>de</strong> másrecursos) logrará patentar su invento, perdiendo las otras toda posibilidad<strong>de</strong> rentabilizar su inversión. Todo <strong>de</strong>sarrollo técnico complejopue<strong>de</strong> convertirse en una pesadilla si para cada una <strong>de</strong> las soluciones<strong>de</strong> sus partes es necesario investigar si la solución encontradaestá patentada (o en trámite), para intentar obtener la licencia o parabuscar una solución <strong>al</strong>ternativa. Este problema <strong>de</strong>viene especi<strong>al</strong>mentegrave en el <strong>software</strong> <strong>libre</strong>, don<strong>de</strong> las violaciones <strong>de</strong> patentes <strong>de</strong> <strong>al</strong>goritmosson evi<strong>de</strong>ntes por simple inspección <strong>de</strong>l código. Aunque enEuropa aún es ileg<strong>al</strong> patentar un <strong>al</strong>goritmo, pue<strong>de</strong> serlo en muy breveplazo, quizá cuando el lector lea estas líneas.ANOTACIONES3.1.4. Marcas y logotiposSon nombres y símbolos que representan un acervo <strong>de</strong> c<strong>al</strong>idad (o unagran inversión en propaganda). No tienen gran importancia <strong>de</strong>ntro <strong>de</strong>l<strong>software</strong> <strong>libre</strong>, posiblemente porque supone un coste registrarlas. Así,solamente <strong>al</strong>gunos nombres importantes, como Open Source (porOpen Source Foundation), Debian, (por Software in the Public Interest),GNOME (GNOME Foundation), GNU (Free Software Foundation) estánregistrados, y sólo en <strong>al</strong>gunos países. Sin embargo, el no registro <strong>de</strong>74


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492nombres ha provocado problemas. Por ejemplo, en Estados Unidos(1996) y en Corea (1997) ha habido personas que han registrado elnombre Linux y han <strong>de</strong>mandado dinero por su uso. La resolución <strong>de</strong> estasdisputas supone costes leg<strong>al</strong>es y la necesidad <strong>de</strong> <strong>de</strong>mostrar el uso<strong>de</strong>l nombre anterior a la fecha <strong>de</strong>l registro.3.2. Licencias en el <strong>software</strong> <strong>libre</strong>Estrictamente hablando, lo que diferencia <strong>al</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>l resto <strong>de</strong>l<strong>software</strong> es un aspecto leg<strong>al</strong>: la licencia. Se trata, en p<strong>al</strong>abras <strong>de</strong> uso común,<strong>de</strong> un contrato entre el autor (o propietario <strong>de</strong> los <strong>de</strong>rechos) y losusuarios, que estipula lo que los éstos pue<strong>de</strong>n hacer con su obra: uso,redistribución, modificación, etc., y en qué condiciones.Aunque en esencia <strong>software</strong> <strong>libre</strong> y <strong>software</strong> propietario se diferencienen la licencia con la que los autores publican sus programas, es importantehacer hincapié en que las diferencias entre las diferentes licencias,aunque puedan parecer nimias, suelen suponer condiciones <strong>de</strong> uso yredistribución tot<strong>al</strong>mente diferentes y, como se ha podido <strong>de</strong>mostrar <strong>al</strong>o largo <strong>de</strong> los últimos años, han <strong>de</strong>sembocado no sólo en métodos <strong>de</strong><strong>de</strong>sarrollo tot<strong>al</strong>mente diferentes, sino incluso en una forma <strong>al</strong>ternativa<strong>de</strong> enten<strong>de</strong>r la informática.La legislación sobre <strong>de</strong>rechos <strong>de</strong> autor, plasmada en las leyes sobrepropiedad intelectu<strong>al</strong>, asegura que por <strong>de</strong>fecto no se pue<strong>de</strong> hacer casinada con una obra (en nuestro caso, un programa) que se recibe o secompra si su autor (o el que posea los <strong>de</strong>rechos <strong>de</strong> la misma) no nos lopermite explícitamente. Las licencias <strong>de</strong> <strong>software</strong> <strong>libre</strong> dan ciertos permisosexplícitos: Cuando recibes un programa <strong>libre</strong> pue<strong>de</strong>s redistribuirlo ono, pero si lo redistribuyes, sólo pue<strong>de</strong>s hacerlo porque la licencia te lopermite. Pero para ello es preciso cumplir con la licencia... En <strong>de</strong>finitiva,la licencia contiene las normas <strong>de</strong> uso a las que han <strong>de</strong> atenerse usuarios,distribuidores, integradores y otras partes implicadas en el mundo<strong>de</strong> la informática.Las condiciones y/o restricciones que imponen las licencias sólo pue<strong>de</strong>nser precisadas por los propios autores, que según la normativa <strong>de</strong> propiedadintelectu<strong>al</strong> son los propietarios <strong>de</strong> la obra. En cu<strong>al</strong>quier caso, lapropiedad <strong>de</strong> la obra será <strong>de</strong> los autores, ya que la licencia no suponeANOTACIONES75


© FUOC • XP06/M2101/01492Software <strong>libre</strong>transferencia <strong>de</strong> propiedad, sino solamente <strong>de</strong>recho <strong>de</strong> uso y, en <strong>al</strong>gunoscasos, <strong>de</strong> distribución.Para compren<strong>de</strong>r plenamente todos los entresijos leg<strong>al</strong>es que se van apresentar en este capítulo (y que, sin duda, son muy importantes paraenten<strong>de</strong>r la natur<strong>al</strong>eza <strong>de</strong>l <strong>software</strong> <strong>libre</strong>) también es necesario saberque cada nueva versión <strong>de</strong> un programa es consi<strong>de</strong>rada como una nuevaobra. El autor tiene, otra vez, plena potestad para hacer con su obr<strong>al</strong>o que le apetezca, incluso distribuirla con términos y condiciones tot<strong>al</strong>mentediferentes (o sea, una licencia diferente a la anterior). Así, si el lectores autor único <strong>de</strong> un programa podrá publicar una versión bajo un<strong>al</strong>icencia <strong>de</strong> <strong>software</strong> <strong>libre</strong> y, si le apeteciere, otra posterior bajo una licenciapropietaria. En caso <strong>de</strong> existir más autores, y que la nueva versióncontenga código cuya autoría les corresponda y que se vaya a publicarbajo otras condiciones, todos ellos han <strong>de</strong> dar el visto bueno <strong>al</strong> cambio<strong>de</strong> licencia.Un tema todavía por discernir, y por tanto abierto, es conocer la licenciaque cubre a las contribuciones externas. Gener<strong>al</strong>mente, se supone queuna persona que contribuya <strong>al</strong> proyecto acepta <strong>de</strong> facto que su contribuciónse ajuste a las condiciones especificadas por la licencia <strong>de</strong>l proyecto,aunque suponemos que ello pue<strong>de</strong> tener poco resp<strong>al</strong>do jurídico.La iniciativa <strong>de</strong> la Free Software Foundation <strong>de</strong> pedir mediante carta (física)la cesión <strong>de</strong> todos los <strong>de</strong>rechos <strong>de</strong> copyright a cu<strong>al</strong>quiera que contribuyacon más <strong>de</strong> diez líneas <strong>de</strong> código a un subproyecto <strong>de</strong> GNU esuna buena muestra <strong>de</strong> que esto no tiene por qué ser así.ANOTACIONESPartiendo <strong>de</strong> todo lo dicho, vamos a centrarnos ya el resto <strong>de</strong> este capítuloen el análisis <strong>de</strong> diversas licencias. Para poner en contexto este estudio,es preciso recordar que <strong>de</strong> ahora en a<strong>de</strong>lante cuando <strong>de</strong>cimosque una licencia es <strong>de</strong> <strong>software</strong> <strong>libre</strong>, lo <strong>de</strong>cimos en el sentido <strong>de</strong> quecumple las <strong>de</strong>finiciones <strong>de</strong> <strong>software</strong> <strong>libre</strong> que se presentaron en el apartado1.1.1.3.2.1. Licencias tipo BSDLa licencia BSD (Berkeley Software Distribution) tiene su origen en la publicación<strong>de</strong> versiones <strong>de</strong> UNIX re<strong>al</strong>izadas por la universidad c<strong>al</strong>iforniana<strong>de</strong> Berkeley, en EE.UU. La única obligación que exige es la <strong>de</strong> darcrédito a los autores, mientras que permite tanto la redistribución bina-76


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492ria, como la <strong>de</strong> loscódigos fuentes, aunque no obliga a ninguna <strong>de</strong> lasdos en ningún caso. Asimismo, da permiso para re<strong>al</strong>izar modificacionesy ser integrada con otros programas casi sin restricciones.La licencia BSD es ciertamente muy popular, como se pue<strong>de</strong> ver a partir<strong>de</strong>l hecho <strong>de</strong> que existen varias licencias <strong>de</strong> condiciones similares (XWindow,Tcl/Tk, Apache), que se han venido a llamar licencias tipo BSD. Estaslicencias reciben el nombre <strong>de</strong> minim<strong>al</strong>istas, ya que las condicionesque imponen son pocas, básicamente asignar la autoría a los autoresorigin<strong>al</strong>es. Su concepción se <strong>de</strong>be <strong>al</strong> hecho <strong>de</strong> que el <strong>software</strong> publicadobajo esta licencia era <strong>software</strong> generado en universida<strong>de</strong>s con proyectos<strong>de</strong> investigación financiados por el gobierno <strong>de</strong> los Estados Unidos; lasuniversida<strong>de</strong>s prescindían <strong>de</strong> la comerci<strong>al</strong>ización <strong>de</strong>l <strong>software</strong> creado,ya que asumían que ya había sido pagado previamente por el gobierno,y por tanto con los impuestos <strong>de</strong> todos los contribuyentes, por lo quecu<strong>al</strong>quier empresa o particular podía utilizar el <strong>software</strong> casi sin restricciones,incluso redistribuyendo modificaciones <strong>al</strong> mismo <strong>de</strong> manera binariasin tener que entregar las fuentes.Este último punto hace que a partir <strong>de</strong> un programa distribuido bajouna licencia <strong>de</strong> tipo BSD pueda crearse otro programa (en re<strong>al</strong>idadotra versión <strong>de</strong>l programa) propietario, o sea, que se distribuyeracon una licencia más restrictiva. Los críticos <strong>de</strong> las licencias BSD venen esta característica un peligro, ya que no se garantiza la libertad<strong>de</strong> versiones futuras <strong>de</strong> los programas. Los partidarios <strong>de</strong> la misma,por contra, ven en ella la máxima expresión <strong>de</strong> la libertad y argumentanque, a fin <strong>de</strong> cuentas, se pue<strong>de</strong> hacer (casi) lo que se quieracon el <strong>software</strong>.NotaUna <strong>de</strong> las consecuencias prácticas <strong>de</strong> las licenciastipo BSD ha sido la difusión <strong>de</strong> estándares, ya que los<strong>de</strong>sarrolladores no encuentran ningún obstáculo parare<strong>al</strong>izar programas compatibles con una implementación<strong>de</strong> referencia bajo este tipo <strong>de</strong> licencia. De hecho,ésta es una <strong>de</strong> las razones <strong>de</strong> la extraordinaria y rápidadifusión <strong>de</strong> los protocolos <strong>de</strong> Internet y <strong>de</strong> la interfaz<strong>de</strong> programación basada en sockets, ya que lamayoría <strong>de</strong> los <strong>de</strong>sarrolladores comerci<strong>al</strong>es <strong>de</strong>rivó sure<strong>al</strong>ización <strong>de</strong> la <strong>de</strong> la Universidad <strong>de</strong> Berkeley.ANOTACIONES77


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Entre las licencias <strong>de</strong>l tipo BSD po<strong>de</strong>mos encontrar la <strong>de</strong> XWindow,Tcl/Tk y Apache. La mayoría <strong>de</strong> ellas son una copia c<strong>al</strong>cada <strong>de</strong> la origin<strong>al</strong><strong>de</strong> Berkeley, modificando todo lo referente a la autoría. Otras,como la Apache, incluyen <strong>al</strong>guna cláusula adicion<strong>al</strong>, como la imposibilidad<strong>de</strong> llamar las versiones redistribuidas <strong>de</strong> igu<strong>al</strong> manera. Todassuelen incluir, como ella, la prohibición <strong>de</strong> usar el nombre <strong>de</strong>lpropietario <strong>de</strong> los <strong>de</strong>rechos para promocionar productos <strong>de</strong>rivados.Asimismo, todas las licencias, sean <strong>de</strong> tipo BSD o no, incluyen un<strong>al</strong>imitación <strong>de</strong> garantía que es en re<strong>al</strong>idad una negación <strong>de</strong> garantía,necesaria para evitar <strong>de</strong>mandas leg<strong>al</strong>es por garantías implícitas.Aunque se ha criticado mucho esta negación <strong>de</strong> garantía en el <strong>software</strong><strong>libre</strong>, es práctica habitu<strong>al</strong> en el <strong>software</strong> propietario, que gener<strong>al</strong>mentesólo garantiza que el soporte es correcto y el programa encuestión se ejecuta.aaaEsquema resumen <strong>de</strong> la licencia BSD: Copyright © elpropietario. Todos los <strong>de</strong>rechos reservados.Se permite la redistribución en fuente y en binario cono sin modificación, siempre que se cumplan las condicionessiguientes:1. Las redistribuciones en fuente <strong>de</strong>ben retener la nota<strong>de</strong> copyright y listar estas condiciones y la limitación<strong>de</strong> garantía,ANOTACIONES2. Las redistribuciones en binario <strong>de</strong>ben reproducir lanota <strong>de</strong> copyright y listar estas condiciones y la limitación<strong>de</strong> garantía en la documentación.3. Ni el nombre <strong>de</strong>l propietario ni <strong>de</strong> los que han contribuidopue<strong>de</strong>n usarse sin permiso para promocionarproductos <strong>de</strong>rivados <strong>de</strong> este programa.ESTE PROGRAMA SE PROPORCIONA TAL CUAL, SINGARANTÍAS EXPRESAS NI IMPLÍCITAS, TALES COMOSU APLICABILIDAD COMERCIAL O SU ADECUACIÓN78


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492aaaPARA UN PROPÓSITO DETERMINADO. EN NINGÚNCASO EL PROPIETARIO SERÁ RESPONSABLE DE NIN-GÚN DAÑO CAUSADO POR SU USO (INCLUYENDOPÉRDIDA DE DATOS, DE BENEFICIOS O INTERRUP-CIÓN DE NEGOCIO).3.2.2. La Licencia Pública Gener<strong>al</strong> <strong>de</strong> GNU (GNU GPL)La Licencia Pública Gener<strong>al</strong> <strong>de</strong>l proyecto GNU (más conocida porsu acrónimo en inglés GPL) es con diferencia la licencia más populary conocida <strong>de</strong> todas las licencias <strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Su autoría correspon<strong>de</strong> a la Free Software Foundation(promotora <strong>de</strong>l proyecto GNU) y en un principio fue creada paraser la licencia <strong>de</strong> todo el <strong>software</strong> generado por la FSF. Sin embargo,su utilización ha ido más <strong>al</strong>lá hasta convertirse en la licenciamás utilizada (más <strong>de</strong>l 70% <strong>de</strong> los proyectos anunciados enFreshMeat están licenciados bajo la GPL), incluso por proyectosban<strong>de</strong>ra <strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, como es el caso <strong>de</strong>l núcleoLinux.La licencia GPL es interesante <strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista leg<strong>al</strong> porquehace un uso tan curioso <strong>de</strong> la legislación <strong>de</strong> copyright que haciendoestricto uso <strong>de</strong>l término llega a una solución tot<strong>al</strong>mente contraria <strong>al</strong>a origin<strong>al</strong>, hecho por el que también se ha venido a llamar una licenciacopyleft. Alguien, con una pizca <strong>de</strong> humor, llegó incluso <strong>al</strong>anzar el eslogan copyleft, <strong>al</strong>l rights reversed.En líneas básicas, la licencia GPL permite la redistribución binaria yla <strong>de</strong> las fuentes, aunque, en el caso <strong>de</strong> que redistribuya <strong>de</strong> manerabinaria, obliga a que también se pueda acce<strong>de</strong>r a las fuentes. Asimismo,está permitido re<strong>al</strong>izar modificaciones sin restricciones, aunquesólo se pueda integrar código licenciado bajo GPL con otrocódigo que se encuentre bajo una licencia idéntica o compatible, loque ha venido a llamarse el efecto vir<strong>al</strong> <strong>de</strong> la GPL, ya que el códigopublicado una vez con esas condiciones nunca pue<strong>de</strong> cambiar <strong>de</strong>condiciones.ANOTACIONES79


© FUOC • XP06/M2101/01492Software <strong>libre</strong>NotaUna licencia es incompatible con la GPL cuando restringe<strong>al</strong>guno <strong>de</strong> los <strong>de</strong>rechos que la GPL garantiza, yasea explícitamente contradiciendo <strong>al</strong>guna cláusula, yaimplícitamente, imponiendo <strong>al</strong>guna nueva. Por ejemplo,la licencia BSD actu<strong>al</strong> es compatible, pero la origin<strong>al</strong>(o la <strong>de</strong> Apache), que exige en los materi<strong>al</strong>es <strong>de</strong>propaganda que se mencione explícitamente que eltrabajo combinado contiene código <strong>de</strong> todos y cadauno <strong>de</strong> los titulares <strong>de</strong> <strong>de</strong>rechos, la hace incompatible.La licencia GPL está pensada para asegurar la libertad <strong>de</strong>l código entodo momento, ya que un programa publicado y licenciado bajo suscondiciones nunca podrá ser hecho propietario. Es más, ni ese programani modificaciones <strong>al</strong> mismo pue<strong>de</strong>n ser publicados con un<strong>al</strong>icencia diferente a la propia GPL. Los partidarios <strong>de</strong> las licencias tipoBSD ven en esta cláusula un recorte <strong>de</strong> la libertad, mientras que susseguidores ven en ello una forma <strong>de</strong> asegurarse que ese <strong>software</strong>siempre va a ser <strong>libre</strong>. Por otro lado, se pue<strong>de</strong> consi<strong>de</strong>rar que la licenciaGPL maximiza las liberta<strong>de</strong>s <strong>de</strong> los usuarios, mientras que las<strong>de</strong> tipo BSD lo hacen para los <strong>de</strong>sarrolladores. Nótese, sin embargo,que en el segundo caso estamos hablando <strong>de</strong> los <strong>de</strong>sarrolladores engener<strong>al</strong> y no <strong>de</strong> los autores, ya que muchos autores consi<strong>de</strong>ran quela licencia GPL es más beneficiosa para sus intereses, ya que obligaa sus competidores a publicar sus modificaciones (mejoras, correcciones,etc.) en caso <strong>de</strong> redistribuir el <strong>software</strong>, mientras que con un<strong>al</strong>icencia tipo BSD éste no tiene por qué ser el caso. De cu<strong>al</strong>quier modo,po<strong>de</strong>mos ver que la elección <strong>de</strong> licencia no es una tarea fácil yque hay que tener multitud <strong>de</strong> factores en cuenta.ANOTACIONESEn cuanto a la natur<strong>al</strong>eza contraria <strong>al</strong> copyright, esto se <strong>de</strong>be a quela filosofía que hay <strong>de</strong>trás <strong>de</strong> esta licencia (y <strong>de</strong>trás <strong>de</strong> la Free SoftwareFoundation) es que el <strong>software</strong> no <strong>de</strong>be tener propietarios.Aunque es cierto que el <strong>software</strong> licenciado con la GPL tiene un autor,que es el que a fin <strong>de</strong> cuentas permite la aplicación <strong>de</strong> la legislación<strong>de</strong> copyright sobre su obra, las condiciones bajo las quepublica su obra confieren a la misma t<strong>al</strong> carácter que po<strong>de</strong>mos consi<strong>de</strong>rarque la propiedad <strong>de</strong>l <strong>software</strong> correspon<strong>de</strong> a quien lo tiene yno a quien lo ha creado.80


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Por supuesto, también incluye negaciones <strong>de</strong> garantía para protegera los autores. Asimismo, y para proteger la buena fama <strong>de</strong> los autoresorigin<strong>al</strong>es, toda modificación <strong>de</strong> un fichero fuente <strong>de</strong>be incluiruna nota con la fecha y autor <strong>de</strong> cada modificación.La GPL contempla también a las patentes <strong>de</strong> <strong>software</strong>, exigiendo quesi el código lleva <strong>al</strong>goritmos patentados (como dijimos, <strong>al</strong>go leg<strong>al</strong> yusu<strong>al</strong> en Estados Unidos y práctica irregular en Europa), o se conce<strong>de</strong>licencia <strong>de</strong> uso <strong>de</strong> la patente <strong>libre</strong> <strong>de</strong> tasas, o no se pue<strong>de</strong> distribuirbajo la GPL.La licencia GPL se encuentra en la actu<strong>al</strong>idad, y <strong>de</strong>s<strong>de</strong> hace más <strong>de</strong>diez años, en su segunda versión y es posible que en próximas fechasse publique una tercera. Gener<strong>al</strong>mente, esto no supone mayor problema,ya que la mayoría <strong>de</strong> los autores suelen publicar los programasbajo las condiciones <strong>de</strong> la segunda versión <strong>de</strong> la GPL ocu<strong>al</strong>quier posterior publicada por la Free Software Foundation.Como anécdota, cabe <strong>de</strong>cir que Linus Torv<strong>al</strong>ds, creador <strong>de</strong> Linux,publica su <strong>software</strong> sólo bajo las condiciones <strong>de</strong> la segunda versión<strong>de</strong> la GPL, buscando <strong>de</strong>smarcarse <strong>de</strong> las posturas –a veces <strong>de</strong>masiadoradic<strong>al</strong>es, según él– <strong>de</strong> la Free Software Foundation.3.2.3. La Licencia Pública Gener<strong>al</strong> Menor <strong>de</strong> GNU (GNULGPL)La Licencia Pública Gener<strong>al</strong> Menor <strong>de</strong>l proyecto GNU (comúnmenteconocida por sus inici<strong>al</strong>es en inglés LGPL) es la otra licencia <strong>de</strong> laFree Software Foundation. Pensada en sus inicios para su uso en bibliotecas(la L en sus comienzos venía <strong>de</strong> library, ‘biblioteca’), fuemodificada recientemente para ser consi<strong>de</strong>rada la hermana menor(lesser,’menor’) <strong>de</strong> la GPL.Lectura complementaria[Ver bibliografía, apartado97]La LGPL permite el uso <strong>de</strong> programas <strong>libre</strong>s con <strong>software</strong> propietario.El programa en sí se redistribuye como si estuviera bajo la licenciaGPL, pero se permite la integración con cu<strong>al</strong>quier otro <strong>software</strong> sinprácticamente limitaciones.Como se pue<strong>de</strong> ver, en un principio esta licencia estaba orientada <strong>al</strong>as bibliotecas, <strong>de</strong> manera que se pudiera potenciar su uso y <strong>de</strong>sarrollosin tener los problemas <strong>de</strong> integración que implica la GPL. Sin embar-ANOTACIONES81


© FUOC • XP06/M2101/01492Software <strong>libre</strong>go, cuando se vio que el efecto buscado <strong>de</strong> popularizar las bibliotecas<strong>libre</strong>s no se veía compensado por la generación <strong>de</strong> programas <strong>libre</strong>s,la Free Software Foundation <strong>de</strong>cidió el cambio <strong>de</strong> library a lesser y <strong>de</strong>saconsejósu uso, s<strong>al</strong>vo para condiciones muy puntu<strong>al</strong>es y especi<strong>al</strong>es.Hoy en día, existen muchos programas que no son bibliotecas licenciadosbajo las condiciones <strong>de</strong> la LGPL. Por ejemplo, el navegadorMozilla está licenciado, entre otras, también bajo la LGPL.3.2.4. Otras licencias <strong>de</strong> programasLa variedad <strong>de</strong> licencias <strong>libre</strong>s es gran<strong>de</strong>, aunque por razones prácticasla mayoría <strong>de</strong> los proyectos se adaptan a las <strong>de</strong>scritas anteriormente:en efecto muchos proyectos no quieren o pue<strong>de</strong>n <strong>de</strong>dicarrecursos a diseñar una licencia propia y la mayoría <strong>de</strong> los usuariosprefieren referirse a unas siglas, que leer y an<strong>al</strong>izar licencias completas.Que una licencia sea <strong>libre</strong> o no, <strong>de</strong>pen<strong>de</strong> <strong>de</strong>l concepto <strong>de</strong> libertadque tenga el que la clasifica, aunque existe consenso para lamayoría <strong>de</strong> ellas.SugerenciaANOTACIONESPue<strong>de</strong> ver recopiladas y comentadas tanto licenciasconsi<strong>de</strong>radas <strong>libre</strong>s, como licencias consi<strong>de</strong>radas no <strong>libre</strong>so <strong>libre</strong>s pero incompatibles con la GPL <strong>de</strong>s<strong>de</strong> elpunto <strong>de</strong> vista <strong>de</strong> la FSF en [fsf:licences]. El punto <strong>de</strong>vista filosóficamente diferente <strong>de</strong> la Open Source Initiativese refleja en su listado[osi:licenses]. Pue<strong>de</strong>n versediscrepancias en <strong>al</strong>gunas licencias, como la Apple PublicSource License Ver. 1.2, consi<strong>de</strong>rada no <strong>libre</strong> porla FSF por la obligación <strong>de</strong> publicar todos los cambios(aunque sean privados), notificar a Apple <strong>de</strong> las redistribuciones,o por la posibilidad <strong>de</strong> revocación unilater<strong>al</strong>.No obstante, la presión <strong>de</strong> esta clasificación hahecho que Apple publique la versión 2.0 en agosto <strong>de</strong>l2003, ya consi<strong>de</strong>rada <strong>libre</strong> por la FSF.A modo <strong>de</strong> ejemplo, se incluyen a continuación dos pequeños listadoscon <strong>al</strong>gunas licencias <strong>de</strong> <strong>software</strong> <strong>libre</strong> no tratadas hasta el momento.82


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492En el primero pue<strong>de</strong>n encontrarse licencias que no imponen condicionesespeci<strong>al</strong>es en la segunda redistribución (esto es, que sólo especificanque el <strong>software</strong> se pue<strong>de</strong> redistribuir o modificar, pero no imponencondiciones especi<strong>al</strong>es si se hace, lo que permite, por ejemplo, que <strong>al</strong>guienque recibe el programa pueda <strong>de</strong>spués redistribuirlo como <strong>software</strong>propietario). En el segundo se incluyen las que, <strong>al</strong> estilo <strong>de</strong> laGNU GPL, imponen condiciones en caso <strong>de</strong> que se quiera redistribuirel <strong>software</strong>, condiciones que van en la línea <strong>de</strong> forzar a que se sigancumpliendo las condiciones <strong>de</strong> la licencia <strong>de</strong>spués <strong>de</strong> la primera redistribución.Mientras que el primer grupo hace énfasis en la libertad <strong>de</strong>quien recibe un programa, ya que le permite hacer casi lo que quieracon él (en términos <strong>de</strong> condiciones <strong>de</strong> futuras redistribuciones), el segundolo hace en la libertad <strong>de</strong> cu<strong>al</strong>quiera que potenci<strong>al</strong>mente puedarecibir <strong>al</strong>gún día un trabajo <strong>de</strong>rivado <strong>de</strong>l programa (ya que obliga aque las sucesivas modificaciones y redistribuciones respeten los términos<strong>de</strong> la licencia origin<strong>al</strong>). La diferencia entre estos dos tipos <strong>de</strong> licenciasha sido (y es) tema <strong>de</strong> <strong>de</strong>bate en la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.En el resto <strong>de</strong> este apartado llamaremos “licencias permisivas” o “licenciastipo BSD” a las <strong>de</strong>l primer tipo, y “licencias robustas” o “licenciascopyleft”a las <strong>de</strong>l segundo. En cu<strong>al</strong>quier caso, es convenienterecordar que todas ellas son licencias <strong>libre</strong>s.NotaEl término copyleft aplicado a una licencia, usado sobretodo por la Free Software Foundation para <strong>de</strong>finir sus licencias,tiene implicaciones similares a las <strong>de</strong>l término“licencia robusta”, t<strong>al</strong> y como lo usamos en este texto.Algunas licencias permisivas:Lectura complementaria• Licencia <strong>de</strong> X Window versión 11 (X11)Es la licencia usada para la distribución <strong>de</strong>l sistema X Window, el sistema<strong>de</strong> ventanas más ampliamente usado en el mundo Unix, y tambiénen entornos GNU/Linux. Es una licencia muy similar a la licenciaBSD, que permite redistribución, uso y modificación prácticamentesin restricciones. A veces, esta licencia es llamada “licencia MIT” (conpeligrosa poca precisión, porque el MIT ha usado otros tipos <strong>de</strong> licencias).Bajo esta licencia se distribuyen también trabajos <strong>de</strong>rivados<strong>de</strong> X Windows, como XFree86.[Ver bibliografía, apartados57 y 60]ANOTACIONES83


© FUOC • XP06/M2101/01492Software <strong>libre</strong>• Zope Public License 2.0Esta licencia (habitu<strong>al</strong>mente llamada “ZPL”) es usada para la distribución<strong>de</strong> Zope (un servidor <strong>de</strong> aplicaciones) y otros productos relacionados.Es una licencia similar a la BSD, con el interesante <strong>de</strong>t<strong>al</strong>le<strong>de</strong> prohibir expresamente el uso <strong>de</strong> marcas registradas por ZopeCorporation.• Licencia <strong>de</strong> ApacheLicencia bajo la que se distribuyen la mayor parte <strong>de</strong> los programasproducidos por el proyecto Apache. Es similar a la licencia BSD.Hay <strong>al</strong>gunos programas <strong>libre</strong>s que no se distribuyen con una licenciaespecífica, sino que su autor los <strong>de</strong>clara explícitamente publicdomain (en el dominio público, o <strong>de</strong>l común). La princip<strong>al</strong> consecuencia<strong>de</strong> esta <strong>de</strong>claración es que el autor renuncia a todos sus <strong>de</strong>rechossobre el programa, y por lo tanto pue<strong>de</strong> modificarse,redistribuirse, usarse, etc. <strong>de</strong> cu<strong>al</strong>quier manera. A efectos prácticos,esta situación es muy similar a que el programa esté bajo una licenciatipo BSD.Lectura complementaria[Ver bibliografía, apartados49, 50, 21, 20, 62, 34 y 39]Algunas licencias robustas:• Licencia <strong>de</strong> SleepycatANOTACIONESEs la licencia bajo la que la empresa Sleepycat distribuye sus programas(entre ellos el conocido Berkeley DB). Obliga a ciertas condicionessiempre que se redistribuye el programa o trabajos <strong>de</strong>rivados <strong>de</strong>lprograma. En particular, obliga a ofrecer el código fuente (incluidaslas modificaciones, si se trata <strong>de</strong> un trabajo <strong>de</strong>rivado), y a que la redistribuciónimponga <strong>al</strong> receptor las mismas condiciones. Aunquemucho más corta que la GNU GPL, es muy similar a ésta en sus efectosprincip<strong>al</strong>es.• eCos License 2.0Es la licencia bajo la que se distribuye eCos, un sistema operativo <strong>de</strong>tiempo re<strong>al</strong>. Es una modificación <strong>de</strong> la GNU GPL, que no consi<strong>de</strong>ra84


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492que el código que se enlace con programas protegidos por ella que<strong>de</strong>nsujetos a las cláusulas <strong>de</strong> la GNU GPL si se redistribuyen. Des<strong>de</strong>este punto <strong>de</strong> vista, sus efectos son similares a los <strong>de</strong> la GNU LGPL.• Affero Gener<strong>al</strong> Public LicenseInteresante modificación <strong>de</strong> la GNU GPL, que consi<strong>de</strong>ra el caso <strong>de</strong>los programas que ofrecen servicios vía web, o en gener<strong>al</strong>, vía re<strong>de</strong>s<strong>de</strong> or<strong>de</strong>nadores. Este tipo <strong>de</strong> programas plantean un problema <strong>de</strong>s<strong>de</strong>el punto <strong>de</strong> vista <strong>de</strong> las licencias robustas. Como el uso <strong>de</strong>l programano implica haberlo recibido mediante una redistribución,aunque el programa esté licenciado, por ejemplo, bajo la GNU GPL,<strong>al</strong>guien pue<strong>de</strong> modificarlo y ofrecer un servicio en la red usándolo,sin redistribuirlo <strong>de</strong> ninguna forma, y por tanto sin estar obligado,por ejemplo, a distribuir el código fuente. La Affero GPL tiene unacláusula que obliga a que, si el programa tiene un medio para proporcionarsu código fuente vía web a quien lo use, no se pueda <strong>de</strong>sactivaresa característica. Esto significa que, si el autor origin<strong>al</strong>incluye esa capacidad en el código fuente, cu<strong>al</strong>quier usuario pue<strong>de</strong>obtenerlo, y a<strong>de</strong>más esa redistribución está sometida a las condiciones<strong>de</strong> la licencia. La Free Software Foundation está consi<strong>de</strong>rando incluirprovisiones similares en la versión 3 <strong>de</strong> su GNU GPL.• IBM Public License Version 1.0Es una licencia que permite la redistribución binaria <strong>de</strong> trabajos <strong>de</strong>rivadossólo si (entre otras condiciones) se prevé <strong>al</strong>gún mecanismo paraque quien reciba el programa pueda recibir su código fuente. La redistribución<strong>de</strong>l código fuente se ha <strong>de</strong> hacer bajo la misma licencia.A<strong>de</strong>más, esta licencia es interesante por obligar <strong>al</strong> que redistribuye elprograma con modificaciones a licenciar automática y gratuitamentelas patentes que puedan afectar a esas modificaciones, y que seanpropiedad <strong>de</strong>l redistribuidor, a quien reciba el programa.• Mozilla Public License 1.1Ejemplo <strong>de</strong> licencia <strong>libre</strong> con origen en una empresa. Es una evolución<strong>de</strong> la primera licencia <strong>libre</strong> que tuvo el Netscape Navigator, y ensu momento fue muy importante por ser la primera vez que una em-ANOTACIONES85


© FUOC • XP06/M2101/01492Software <strong>libre</strong>presa muy conocida <strong>de</strong>cidió distribuir un programa bajo su propi<strong>al</strong>icencia <strong>libre</strong>.3.2.5. Distribución bajo varias licenciasHasta ahora hemos ido suponiendo que cada programa tenía unaúnica licencia en la que se especificaban las condiciones <strong>de</strong> uso yredistribución, entre otras. Sin embargo, un autor pue<strong>de</strong> distribuirobras con distintas licencias. Para enten<strong>de</strong>rlo, <strong>de</strong>bemos tener encuenta que cada publicación es una nueva obra y que se pue<strong>de</strong>dar el caso <strong>de</strong> que se distribuyan versiones que sólo difieren en l<strong>al</strong>icencia. Como veremos, en la mayoría <strong>de</strong> los casos esto se traduceen que, <strong>de</strong>pendiendo <strong>de</strong> lo que el usuario quiera hacer con el<strong>software</strong>, se encontrará con que tiene que obe<strong>de</strong>cer una licenciau otra.ANOTACIONESEl ejemplo más conocido <strong>de</strong> doble licencia es el <strong>de</strong> la biblioteca Qt,sobre la que se fundamenta el entorno <strong>de</strong> escritorio KDE. Trolltech,una empresa afincada en Noruega, distribuía Qt con una licenciapropietaria, aunque eximía <strong>de</strong>l pago a los programas que hicieranuso <strong>de</strong> la misma sin ánimo <strong>de</strong> lucro. Por esta causa y por su potenciatécnica fue elegida a mediados <strong>de</strong> la década <strong>de</strong> los noventa porel proyecto KDE, lo que supuso una ardua polémica con la FreeSoftware Foundation, ya que KDE <strong>de</strong>jaba <strong>de</strong> ser entonces <strong>software</strong><strong>libre</strong> en su conjunto, <strong>al</strong> <strong>de</strong>pen<strong>de</strong>r <strong>de</strong> una biblioteca propietaria. Trasun largo <strong>de</strong>bate –en el que, entre otras cosas, apareció GNOMEcomo competidor <strong>libre</strong> <strong>de</strong> KDE en el escritorio– Trolltech <strong>de</strong>cidió utilizarel sistema <strong>de</strong> doble licencia para su producto estrella: los programasbajo GPL podían hacer uso <strong>de</strong> una versión <strong>de</strong> Qt GPL,mientras que los que no lo eran, <strong>de</strong>bían comprarles una licencia.Esta solución satisfizo a todas las partes, por lo que hoy en día KDEes consi<strong>de</strong>rado <strong>software</strong> <strong>libre</strong>.Otros ejemplos <strong>de</strong> licencias du<strong>al</strong>es los po<strong>de</strong>mos encontrar en StarOfficey OpenOffice.org, o en el ya difunto Netscape Communicator yMozilla. En ambos casos el primer producto es propietario, mientrasque el segundo es una versión <strong>libre</strong> (gener<strong>al</strong>mente bajo lascondiciones <strong>de</strong> varias licencias <strong>libre</strong>s). Aunque en un principio losproyectos <strong>libre</strong>s eran versiones limitadas <strong>de</strong> sus hermanos propie-86


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492tarios, con el tiempo han ido tomando su propio camino, por loque a día <strong>de</strong> hoy tienen un grado <strong>de</strong> in<strong>de</strong>pen<strong>de</strong>ncia bastantegran<strong>de</strong>.3.3. Licencias <strong>de</strong> otros recursos <strong>libre</strong>sLas licencias <strong>de</strong> <strong>software</strong> <strong>libre</strong> han sido fuente <strong>de</strong> inspiración paraotros recursos intelectu<strong>al</strong>es, <strong>de</strong> t<strong>al</strong> modo que muchos <strong>de</strong> ellos la hanadoptado directamente, especi<strong>al</strong>mente en el caso <strong>de</strong> la documentación,en otros casos las han adaptado ligeramente, como es el caso<strong>de</strong> la pionera Open Audio License. La mayoría <strong>de</strong> ellas son <strong>de</strong> tipocopyleft si permiten trabajos <strong>de</strong>rivados.Lectura complementaria[Ver bibliografía, apartado94]Incluso se han utilizado licencias <strong>de</strong> programas (GPL y LGPL) parahardware, aunque esta materia es compleja y difícil <strong>de</strong> conciliar conla leg<strong>al</strong>idad vigente. En efecto, los diseños y diagramas pue<strong>de</strong>n serutilizados, sin copiarlos físicamente, para extraer i<strong>de</strong>as que se utilicenpara nuevos diseños cerrados. Por ejemplo, la OpenIPCoreHardware Gener<strong>al</strong> Public License contempla la prohibición <strong>de</strong> estaapropiación, pero su leg<strong>al</strong>idad es dudosa. La única posibilidad <strong>de</strong>proteger esas i<strong>de</strong>as es por medio <strong>de</strong> <strong>al</strong>gún tipo <strong>de</strong> patente <strong>libre</strong>, <strong>al</strong>goaún no <strong>de</strong>sarrollado y fuera <strong>de</strong>l <strong>al</strong>cance <strong>de</strong> los que no tienen intencióno posibilidad <strong>de</strong> hacer negocio con ellas.Lectura complementaria[Ver bibliografía, apartados135 y 188]3.3.1. Licencia <strong>de</strong> documentación <strong>libre</strong> <strong>de</strong> GNUUna <strong>de</strong> las licencias tipo copyleft más conocidas para la documentacióntécnica, ya sea <strong>de</strong> programas o <strong>de</strong> cu<strong>al</strong>quier otra cosa, es la<strong>de</strong> la Free Software Foundation. Después <strong>de</strong> darse cuenta <strong>de</strong> que undocumento no es lo mismo que un programa, Richard St<strong>al</strong>lman promovióuna licencia para los documentos que acompañan a los programasy para otros documentos <strong>de</strong> carácter técnico o didáctico.Para facilitar el <strong>de</strong>sarrollo <strong>de</strong> versiones <strong>de</strong>rivadas, hay que poner adisposición <strong>de</strong> quien lo requiera una copia transparente <strong>de</strong>l documento,en el sentido <strong>de</strong>l apartado 1.4.1 y <strong>de</strong>finida en el apéndice B,apartado B.2, a<strong>de</strong>más <strong>de</strong> las copias opacas, en una an<strong>al</strong>ogía entelos códigos fuentes y los objetos <strong>de</strong> los programas.ANOTACIONES87


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Una <strong>de</strong> las preocupaciones <strong>de</strong> la licencia es reconocer la autoría eimpedir que se tergiversen i<strong>de</strong>as u opiniones expresadas por el autor.Para ello, se exige que las obras <strong>de</strong>rivadas exhiban en la portada untítulo distinto a los <strong>de</strong> las versiones anteriores (s<strong>al</strong>vo permiso expreso)y se nombre expresamente <strong>de</strong> dón<strong>de</strong> se pue<strong>de</strong> conseguir el origin<strong>al</strong>.También <strong>de</strong>ben listarse como autores los más importantes <strong>de</strong> los origin<strong>al</strong>es–a<strong>de</strong>más <strong>de</strong> los autores <strong>de</strong> las modificaciones– y conservarsetodas las notas sobre <strong>de</strong>rechos <strong>de</strong> autor. Deben conservarse, asimismo,agra<strong>de</strong>cimientos, <strong>de</strong>dicatorias, así como respetarse el apartado<strong>de</strong> historia, si lo tiene, añadiendo las modificaciones nuevas. Incluso,y esto es lo más criticado <strong>de</strong> la licencia, pue<strong>de</strong>n nombrarse seccionesinvariantes y textos <strong>de</strong> cubiertas, que nadie pue<strong>de</strong> modificar ni eliminar,si bien la licencia sólo permite consi<strong>de</strong>rar invariante textos notécnicos, llamados secundarios por la misma.Esta licencia ha generado gran polémica en el mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong>, hasta el punto <strong>de</strong> que en la distribución Debian se está discutiendo(en el momento <strong>de</strong> publicar este libro) si eliminar o pasar a lasección extraofici<strong>al</strong> no <strong>libre</strong> todo documento con la misma. Inclusoaunque no existan secciones invariantes, <strong>al</strong> regirse los trabajos <strong>de</strong>rivadospor la misma licencia, las pue<strong>de</strong>n añadir. Se argumenta, porejemplo, que <strong>al</strong>gunas secciones invariantes pue<strong>de</strong>n ser incorrectas uestar obsoletas, pero <strong>de</strong>ben mantenerse. En todo caso la licencia esincompatible con las directrices <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong> Debian, pero lacuestión quizá esté en si la documentación <strong>de</strong>be cumplirlas (porejemplo, los textos <strong>de</strong> las licencias tampoco se pue<strong>de</strong>n modificar).SugerenciaANOTACIONESLectura complementaria[Ver bibliografía, apartados18 y 154]Este texto está amparado en esta licencia, por lo quese incluye su versión origin<strong>al</strong> en el apéndice A, y unatraducción en el apéndice B. Estudiar cu<strong>al</strong>quiera <strong>de</strong> lasversiones y formarse una opinión.3.3.2. Licencias <strong>de</strong> Creative CommonsEn el 2001 se fundó Creative Commons, dirigido por expertos en propiedadintelectu<strong>al</strong>, <strong>de</strong>recho en la sociedad <strong>de</strong> la información, e infor-88


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492mática, con el propósito <strong>de</strong> fomentar la existencia, conservación yaccesibilidad <strong>de</strong> recursos intelectu<strong>al</strong>es cedidos a la comunidad <strong>de</strong> diversasmaneras. Uno <strong>de</strong> sus proyectos más conocidos fue el <strong>de</strong>sarrollo,a fin<strong>al</strong>es <strong>de</strong>l 2002 <strong>de</strong> una serie <strong>de</strong> licencias concebidas, no para<strong>software</strong>, sino para trabajos literarios, artísticos, didácticos, etc. Sucaracterística más sobres<strong>al</strong>iente, a<strong>de</strong>más <strong>de</strong> estar av<strong>al</strong>adas por profesion<strong>al</strong>es<strong>de</strong>l <strong>de</strong>recho, es que permiten <strong>al</strong> autor seleccionar qué tipo<strong>de</strong> liberta<strong>de</strong>s ce<strong>de</strong>, a<strong>de</strong>más <strong>de</strong> la <strong>de</strong> copia, según cuatro dimensiones:dar crédito <strong>al</strong> autor origin<strong>al</strong>, permitir trabajos <strong>de</strong>rivados, permitirredistribución comerci<strong>al</strong> y permitir cambiar la licencia. Así, porejemplo, la licencia <strong>de</strong> los cursos <strong>de</strong>l MIT (MIT Open Courseware LicenseVersion 1.0) está basada en la <strong>de</strong> Creative Commons que obligaa dar crédito, impi<strong>de</strong> el uso comerci<strong>al</strong> y obliga a conservar l<strong>al</strong>icencia en trabajos <strong>de</strong>rivados.aaaA pesar <strong>de</strong> haber 4 dimensiones, no hay 16 licencias,sino 11 solamente. En la tabla siguiente se nombran yse muestran los símbolos utilizados para <strong>de</strong>signarlasgráficamente:AttributionAttribution-NoDerivsAttribution-NoDerivs-NonCommerci<strong>al</strong>Attribution-NonCommerci<strong>al</strong>Attribution-NonCommerci<strong>al</strong>-ShareAlikeAttribution-ShareAlikeNoDerivs¿Por qué no existen las 16?3.4. ResumenEn este capítulo hemos podido ver la importancia que tienen las licencias<strong>de</strong>ntro <strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> y <strong>de</strong> los <strong>de</strong>más recursosANOTACIONES89


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>libre</strong>s. Asimismo, hemos presentado la gran variedad <strong>de</strong> licenciasexistentes, su motivación, sus repercusiones y sus ventajas e inconvenientes.En <strong>de</strong>finitiva, po<strong>de</strong>mos <strong>de</strong>cir que la GPL trata <strong>de</strong> maximizarlas liberta<strong>de</strong>s que tiene el usuario <strong>de</strong>l <strong>software</strong> –lo reciba directamente<strong>de</strong> su autor o no– mientras que las licencias tipo BSD lo que hacenes maximizar las liberta<strong>de</strong>s <strong>de</strong>l modificador o redistribuidor.A la vista <strong>de</strong> lo que se ha comentado en este capítulo, se <strong>de</strong>duce quees muy importante <strong>de</strong>cidir pronto qué licencia va a tener un proyectoy conocer <strong>de</strong>t<strong>al</strong>ladamente sus ventajas e inconvenientes, ya que unamodificación posterior suele ser muy difícil, sobre todo si el número<strong>de</strong> contribuciones externas es muy gran<strong>de</strong>.Para fin<strong>al</strong>izar, queremos hacer hincapié en el hecho <strong>de</strong> que el <strong>software</strong><strong>libre</strong> y el <strong>software</strong> propietario se diferencien <strong>de</strong> manera estrictaúnica y exclusivamente en la licencia con la que se publican los programas.En próximos capítulos veremos, sin embargo, que esta puntu<strong>al</strong>izaciónmeramente leg<strong>al</strong> pue<strong>de</strong> tener consecuencias –o pue<strong>de</strong>que no– en la manera como se <strong>de</strong>sarrolla el <strong>software</strong>, dando lugara un nuevo mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo que se diferencie en mayor o menormedida, según el caso, <strong>de</strong> los métodos <strong>de</strong> <strong>de</strong>sarrollos tradicion<strong>al</strong>esutilizados en la industria <strong>de</strong>l <strong>software</strong>.ANOTACIONES90


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014924. El <strong>de</strong>sarrollador y sus motivaciones4.1. IntroducciónEl <strong>de</strong>sarrollo parci<strong>al</strong>mente anónimo y distribuido <strong>de</strong>l <strong>software</strong> <strong>libre</strong> hapermitido que durante muchos años los recursos humanos con los quecuenta el <strong>software</strong> <strong>libre</strong> sean <strong>de</strong>sconocidos. Consecuencia <strong>de</strong> este <strong>de</strong>sconocimientoha sido la mistificación, <strong>al</strong> menos parci<strong>al</strong>, <strong>de</strong>l mundo <strong>de</strong>l<strong>software</strong> <strong>libre</strong> y <strong>de</strong> la vida <strong>de</strong> los que están <strong>de</strong>trás <strong>de</strong> él, amparándoseen tópicos más o menos extendidos sobre la cultura hacker y los or<strong>de</strong>nadores.Des<strong>de</strong> hace unos pocos años, se ha venido re<strong>al</strong>izando un granesfuerzo por parte <strong>de</strong> la comunidad científica para conocer mejor a laspersonas que participan en proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>, su proce<strong>de</strong>ncia,sus motivaciones, su preparación y otros aspectos que pudieran parecerinteresantes. Des<strong>de</strong> el punto <strong>de</strong> vista puramente pragmático, conocerquién se implica y por qué en este tipo <strong>de</strong> proyectos pue<strong>de</strong> ser <strong>de</strong> granutilidad para la generación <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Algunos científicos, princip<strong>al</strong>menteeconomistas, psicólogos y sociólogos, han querido ir más <strong>al</strong>láy han visto en esta comunidad el germen <strong>de</strong> futuras comunida<strong>de</strong>s virtu<strong>al</strong>escon reglas y jerarquías propias, en muchos casos tot<strong>al</strong>mente diferentesa las que conocemos en la sociedad tradicion<strong>al</strong>. Entre lasincógnitas más importantes está la <strong>de</strong> conocer los motivos que llevan <strong>al</strong>os <strong>de</strong>sarrolladores a ser partícipes en una comunidad <strong>de</strong> estas características,habida cuenta <strong>de</strong> que los beneficios económicos, <strong>al</strong> menos losdirectos, son prácticamente inexistentes, mientras los indirectos son difícilmentecuantificables.4.2. ¿Quiénes son los <strong>de</strong>sarrolladores?Este apartado preten<strong>de</strong> ofrecer una visión glob<strong>al</strong> <strong>de</strong> las personas que<strong>de</strong>dican su tiempo y su esfuerzo a participar en proyectos <strong>de</strong> <strong>software</strong><strong>libre</strong>. Los datos que se van a mostrar provienen en su mayoría <strong>de</strong> estudioscientíficos re<strong>al</strong>izados en los últimos años, siendo los más significativos–aunque, por supuesto, no los únicos.ANOTACIONESLectura complementaria[Ver bibliografía, apartados104 y 176]91


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong> son gener<strong>al</strong>mente personasjóvenes. La media <strong>de</strong> edad está situada en torno a los 27 años. Lavarianza <strong>de</strong> la edad es muy gran<strong>de</strong>, ya que el grupo predominantese encuentra en una horquilla que va <strong>de</strong>s<strong>de</strong> los 21 a los 24 años,siendo la mediana –el v<strong>al</strong>or que aparece con mayor frecuencia–los 23 años. Es interesante observar cómo la edad <strong>de</strong> incorporación<strong>al</strong> movimiento <strong>de</strong> <strong>software</strong> <strong>libre</strong> tiene sus máximos entre los18 y 25 años –siendo especi<strong>al</strong>mente pronunciada entre los 21 y 23años–, lo que equiv<strong>al</strong>dría a la edad universitaria. Esta evi<strong>de</strong>nciacontrasta con la afirmación <strong>de</strong> que el <strong>software</strong> <strong>libre</strong> es cosa princip<strong>al</strong>mente<strong>de</strong> adolescentes, aunque su presencia es evi<strong>de</strong>nte (<strong>al</strong>re<strong>de</strong>dor<strong>de</strong> un 20% <strong>de</strong> los <strong>de</strong>sarrolladores tiene menos <strong>de</strong> 20años). En <strong>de</strong>finitiva, po<strong>de</strong>mos ver cómo los <strong>de</strong>sarrolladores suelenser mayoritariamente veinteañeros (un 60%), mientras que los menores<strong>de</strong> 20 y los mayores <strong>de</strong> 30 se reparten a partes igu<strong>al</strong>es el40% restante.De la edad <strong>de</strong> incorporación se pue<strong>de</strong> <strong>de</strong>ducir que existe una graninfluencia universitaria en el <strong>software</strong> <strong>libre</strong>. Esto no es <strong>de</strong> extrañar, yaque, como se ha podido ver en el capítulo <strong>de</strong> historia, el <strong>software</strong> <strong>libre</strong>–antes incluso <strong>de</strong> llevar esta <strong>de</strong>nominación– ha estado íntimamenteligado a las instituciones educativas superiores. Aún hoy, elverda<strong>de</strong>ro motor <strong>de</strong>l uso y expansión <strong>de</strong>l <strong>software</strong> <strong>libre</strong> siguen siendolas universida<strong>de</strong>s y los grupos <strong>de</strong> usuarios estudiantiles. No es, portanto, <strong>de</strong> extrañar que más <strong>de</strong> un 70% <strong>de</strong> los <strong>de</strong>sarrolladores cuentencon una preparación universitaria. El dato tiene mayor importanciasi tenemos en cuenta que <strong>de</strong>l 30% restante muchos no son universitariosporque todavía están en su fase escolar. Aun así, también tienencabida –y no por ello son menos apreciados– <strong>de</strong>sarrolladoresque no han accedido nunca a estudios superiores, pero que sonamantes <strong>de</strong> la informática.ANOTACIONESEl <strong>de</strong>sarrollador <strong>de</strong> <strong>software</strong> <strong>libre</strong> es gener<strong>al</strong>mente varón. Las cifrasque se manejan en las diferentes encuestas sobre la presencia <strong>de</strong>mujeres en la comunidad varían entre un 1% y un 3%, compitiendocon el propio margen <strong>de</strong> error <strong>de</strong> las encuestas. Por otro lado, unamayoría (60%) afirma tener pareja, mientras que el número <strong>de</strong> <strong>de</strong>sarrolladorescon hijos sólo es <strong>de</strong> un 16%. Dados los márgenes <strong>de</strong>eda<strong>de</strong>s en los que están comprendidos los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong><strong>libre</strong>, estos datos concuerdan bastante bien con una muestra<strong>al</strong>eatoria, por lo que se pue<strong>de</strong>n consi<strong>de</strong>rar norm<strong>al</strong>es. El mito <strong>de</strong>l <strong>de</strong>-92


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492sarrollador solitario, cuya afición por la informática es lo único ensu vida, se muestra, como pue<strong>de</strong> verse, como una excepción a laregla.4.3. ¿Qué hacen los <strong>de</strong>sarrolladores?Profesion<strong>al</strong>mente, los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong> se <strong>de</strong>finencomo ingenieros <strong>software</strong> (33%), estudiantes (21%), programadores(11%), consultores (10%), profesores <strong>de</strong> universidad (7%), etc. En ellado contrario, po<strong>de</strong>mos ver cómo no suelen integrar ni los <strong>de</strong>partamentoscomerci<strong>al</strong>es, ni <strong>de</strong> marketing (<strong>al</strong>re<strong>de</strong>dor <strong>de</strong> un 1%). Es interesanteobservar cómo muchos <strong>de</strong> ellos se <strong>de</strong>finen a sí mismos comoingenieros <strong>software</strong> antes que programadores –casi tres veces más–, teniendo en cuenta, como se verá en el capítulo <strong>de</strong>dicado a la ingeniería<strong>de</strong>l <strong>software</strong>, que la aplicación <strong>de</strong> las técnicas clásicas <strong>de</strong> ingeniería<strong>de</strong> <strong>software</strong> (e incluso <strong>al</strong>gunas mo<strong>de</strong>rnas) no suele estarmuy arraigada en el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.El vínculo universitario que ya ha sido mostrado con anterioridadvuelve a aparecer en este apartado. Alre<strong>de</strong>dor <strong>de</strong> uno <strong>de</strong> cada tres<strong>de</strong>sarrolladores es estudiante o profesor <strong>de</strong> universidad, lo que vienea <strong>de</strong>mostrar que existe una gran colaboración entre gente provenienteprincip<strong>al</strong>mente <strong>de</strong> la industria <strong>de</strong>l <strong>software</strong> (los dos tercios restantes)y el ámbito académico.Por otro lado, también se ha podido constatar una gran interdisciplinariedad:uno <strong>de</strong> cada cinco <strong>de</strong>sarrolladores proviene <strong>de</strong> campos diferentes<strong>al</strong> <strong>de</strong> las tecnologías <strong>de</strong> la información. Esto, unido <strong>al</strong> hecho<strong>de</strong> que existe también un número similar <strong>de</strong> <strong>de</strong>sarrolladores no universitarios,refleja la existencia <strong>de</strong> una gran riqueza en cuanto a intereses,proce<strong>de</strong>ncias y, en <strong>de</strong>finitiva, a la composición <strong>de</strong> losequipos <strong>de</strong> <strong>de</strong>sarrollo. Es muy difícil encontrar una industria mo<strong>de</strong>rnadon<strong>de</strong> el grado <strong>de</strong> heterogeneidad sea tan gran<strong>de</strong> como el quese pue<strong>de</strong> ver en el <strong>software</strong> <strong>libre</strong>, si es que existe.A<strong>de</strong>más <strong>de</strong> aproximadamente el 20% <strong>de</strong> estudiantes, los <strong>de</strong>sarrolladoressuelen ser en su gran mayoría as<strong>al</strong>ariados (64%), mientras queel porcentaje <strong>de</strong> autónomos es <strong>de</strong>l 14%. Fin<strong>al</strong>mente, sólo un 3% diceANOTACIONES93


© FUOC • XP06/M2101/01492Software <strong>libre</strong>encontrarse en paro, siendo este dato significativo, ya que la encuestafue hecha tras el comienzo <strong>de</strong> la crisis <strong>de</strong> las puntocom.NotaEl hecho <strong>de</strong> que la financiación <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, <strong>al</strong>contrario que pasa con el propietario, no pueda hacersemediante la venta <strong>de</strong> licencias ha propiciado<strong>de</strong>s<strong>de</strong> siempre ac<strong>al</strong>orados <strong>de</strong>bates en torno a cómo<strong>de</strong>ben ganarse la vida los programadores. En las encuestasque se están comentando en este capítulo,más <strong>de</strong> un 50% <strong>de</strong> los <strong>de</strong>sarrolladores <strong>de</strong>cían habersebeneficiado económicamente <strong>de</strong> manera directa o indirecta<strong>de</strong> su implicación en el <strong>software</strong> <strong>libre</strong>. Sin embargo,hay muchos que no lo ven tan claro. El propioRichard St<strong>al</strong>lman, fundador <strong>de</strong>l proyecto GNU, ante lapregunta <strong>de</strong> qué es lo que <strong>de</strong>be hacer un <strong>de</strong>sarrollador<strong>de</strong> <strong>software</strong> <strong>libre</strong> para ganar dinero, suele respon<strong>de</strong>rque pue<strong>de</strong> trabajar como camarero.4.4. Distribución geográficaANOTACIONESLectura complementaria[Ver bibliografía, apartado166]La obtención <strong>de</strong> datos geográficos <strong>de</strong> los <strong>de</strong>sarrolladores es unacuestión que todavía ha <strong>de</strong> ser abordada <strong>de</strong> manera más científica.El problema que presentan los estudios cuyos resultados se estánmostrando en este capítulo es que <strong>al</strong> tratarse <strong>de</strong> encuestas en Internetabiertas a todo aquel que quiera participar, la participación <strong>de</strong>pen<strong>de</strong>mucho <strong>de</strong> los sitios don<strong>de</strong> se haya anunciado, así como <strong>de</strong> la formacomose anunció. Para ser estrictos, cabe mencionar que las encuestasno buscaban representatividad en este sentido, sino más bien obtenerla respuesta y/o la opinión <strong>de</strong>l mayor número posible <strong>de</strong><strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong>.Sin embargo, po<strong>de</strong>mos aventurarnos a hacer unas cuantas afirmaciones<strong>al</strong> respecto, a sabiendas <strong>de</strong> que los datos no son tan fiablescomo los expuestos con anterioridad y que el margen <strong>de</strong> errores, por tanto, mucho más gran<strong>de</strong>. Lo que parece un hecho constatablees que la gran mayoría <strong>de</strong> los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong><strong>libre</strong> provienen <strong>de</strong> países industri<strong>al</strong>izados, siendo escasa la pre-94


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492sencia <strong>de</strong> <strong>de</strong>sarrolladores <strong>de</strong> países <strong>de</strong>l llamado tercer mundo.No es <strong>de</strong> extrañar, por consiguiente, que el mapa <strong>de</strong> <strong>de</strong>sarrolladores<strong>de</strong>l proyecto Debian, por poner un ejemplo, concuer<strong>de</strong> conlas fotografías <strong>de</strong> la Tierra <strong>de</strong> noche: <strong>al</strong>lí don<strong>de</strong> hay luz –léasedon<strong>de</strong> hay civilización industri<strong>al</strong>izada– es don<strong>de</strong> suelen concentrarseen mayor medida los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Estoque en un principio podría parecer lógico, contrasta con las posibilida<strong>de</strong>spotenci<strong>al</strong>es que el <strong>software</strong> <strong>libre</strong> ofrece para países <strong>de</strong>ltercer mundo.Un claro ejemplo lo po<strong>de</strong>mos encontrar en la siguiente tabla, quecontiene los países <strong>de</strong> origen más frecuentes para los <strong>de</strong>sarrolladores<strong>de</strong>l proyecto Debian a lo largo <strong>de</strong> los últimos cuatro años. Se pue<strong>de</strong>observar una ten<strong>de</strong>ncia a la <strong>de</strong>scentr<strong>al</strong>ización <strong>de</strong>l proyecto, <strong>al</strong>goque se constata en el hecho <strong>de</strong> que el crecimiento <strong>de</strong> los <strong>de</strong>sarrolladoresen Estados Unidos –el país que más aporta– es inferior a lamedia. Y es que, por lo gener<strong>al</strong>, los países han conseguido doblar elnúmero <strong>de</strong> voluntarios en los últimos cuatro años, siendo Francia elejemplo más claro en este sentido, ya que ha conseguido multiplicarpor cinco su presencia. Consi<strong>de</strong>rando que los primeros pasos <strong>de</strong> Debiantuvieron lugar en el continente americano (en particular en EstadosUnidos y Canadá), po<strong>de</strong>mos ver que en los últimos cuatroaños ha sufrido una europeización <strong>de</strong>l proyecto. Suponemos que elsiguiente paso será la ansiada mundi<strong>al</strong>ización con la incorporación<strong>de</strong> países sudamericanos, africanos y asiáticos (exceptuando Coreay Japón, ya bien representadas), aunque los datos que manejamos(dos <strong>de</strong>sarrolladores en Egipto, China e India, uno en México, Turquíay Colombia en junio <strong>de</strong>l 2003) no son muy h<strong>al</strong>agüeños en estesentido.Tabla 4-1. Países con mayor número <strong>de</strong> <strong>de</strong>sarrolladores <strong>de</strong> DebianPaís 1.7.1999 1.7.2000 1.7.2001 1.7.2002 20.6.2003EstadosUnidos162 169 256 278 297Alemania 54 58 101 121 136ReinoUnido34 34 55 63 75Austr<strong>al</strong>ia 23 26 41 49 52Francia 11 11 24 44 51ANOTACIONES95


© FUOC • XP06/M2101/01492Software <strong>libre</strong>País 1.7.1999 1.7.2000 1.7.2001 1.7.2002 20.6.2003Canadá 20 22 41 47 49España 10 11 25 31 34Japón 15 15 27 33 33It<strong>al</strong>ia 9 9 22 26 31PaísesBajos14 14 27 29 29Suecia 13 13 20 24 27Dentro <strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> (y no sólo en el caso <strong>de</strong> Debian),se mantiene una amplia discusión sobre la supremacía en el mundo<strong>de</strong>l <strong>software</strong> <strong>libre</strong> entre Europa y Estados Unidos. Casi todos los estudiosque se han venido re<strong>al</strong>izando muestran que la presencia <strong>de</strong><strong>de</strong>sarrolladores europeos es ligeramente superior a la americana,efecto que queda mitigado por el hecho <strong>de</strong> que la población europeaes mayor que la americana. Nos encontramos entonces anteuna situación <strong>de</strong> guerra <strong>de</strong> cifras, ya que el número <strong>de</strong> <strong>de</strong>sarrolladoresper cápita favorece entonces a los norteamericanos, pero vuelvea ser favorable a los europeos si tenemos en cuenta en vez <strong>de</strong> las cifras<strong>de</strong> población absolutas solamente aquellas personas que cuentancon acceso a Internet.En cuanto a países, las zonas con mayor implantación (en número<strong>de</strong> <strong>de</strong>sarrolladores dividido por población) son las <strong>de</strong>l norte <strong>de</strong> Europa(Finlandia, Suecia, Noruega, Dinamarca e Islandia) y centroeuropeas(Benelux, Alemania y Chequia), seguidos <strong>de</strong> Austr<strong>al</strong>ia, Canadá,Nueva Zelanda y Estados Unidos. La zona mediterránea, a pesar<strong>de</strong> ser importante en magnitu<strong>de</strong>s absolutas (<strong>de</strong>bido a la granpoblación que tienen Francia, It<strong>al</strong>ia y España), sin embargo, se encuentrapor <strong>de</strong>bajo <strong>de</strong> la media.ANOTACIONES4.5. DedicaciónEl número <strong>de</strong> horas que los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>dican<strong>al</strong> <strong>software</strong> <strong>libre</strong> es uno <strong>de</strong> los aspectos más <strong>de</strong>sconocidos.Nótese, a<strong>de</strong>más, que se trata <strong>de</strong> una <strong>de</strong> las gran<strong>de</strong>s diferenciascon el <strong>software</strong> generado por una empresa, don<strong>de</strong> tanto el equipocomo la <strong>de</strong>dicación <strong>de</strong> cada miembro <strong>de</strong>l equipo <strong>al</strong> <strong>de</strong>sarrollo esconocido. El tiempo que los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>-96


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492dican se pue<strong>de</strong> tomar como una medida indirecta <strong>de</strong>l grado <strong>de</strong>profesion<strong>al</strong>ización. Antes <strong>de</strong> mostrar los datos <strong>de</strong> los que se disponeen la actu<strong>al</strong>idad, es importante hacer notar que los datoshan sido obtenidos <strong>de</strong> las estimaciones que los propios <strong>de</strong>sarrolladoreshan proporcionado en varias encuestas, por lo que a lainexactitud inherente a este tipo <strong>de</strong> recolección <strong>de</strong> datos se ha <strong>de</strong>añadir un margen <strong>de</strong> error <strong>de</strong>bido princip<strong>al</strong>mente a lo que cada<strong>de</strong>sarrollador entienda como tiempo <strong>de</strong> <strong>de</strong>sarrollo. De esta forma,es seguro que muchos <strong>de</strong>sarrolladores no cuentan el tiempoque <strong>de</strong>dican a leer el correo (o quizás sí), indicando sólo el tiempoque <strong>de</strong>dican a programar y a <strong>de</strong>purar. Por eso, todas las cifrasque se muestren a continuación han <strong>de</strong> tomarse con el <strong>de</strong>bido cuidado.Los estudios que se han re<strong>al</strong>izado hasta ahora muestran quecomo media cada <strong>de</strong>sarrollador <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>dica en tornoa 11 horas seman<strong>al</strong>es. Sin embargo, esta cifra pue<strong>de</strong> llevar rápidamente<strong>al</strong> engaño, ya que existe una gran varianza en la <strong>de</strong>dicación<strong>de</strong> los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong>. En el estudio Rishab A.Ghosh; Ruediger Glott; Bernhard Krieger; Gregorio Robles(2002). Free/<strong>libre</strong> and open source soft-ware: Survey and study -part iv: Survey of <strong>de</strong>velopers, un 22,5% <strong>de</strong> los encuestados indicóque su aportación era inferior a las dos horas seman<strong>al</strong>es, cifraque subía <strong>al</strong> 26,5% para los que <strong>de</strong>dicaban entre 2 y 5 horas seman<strong>al</strong>es.Entre 6 y 10 horas es el tiempo que <strong>de</strong>dica un 21,0%,mientras que el 14,1% lo hacía entre 11 y 20 horas seman<strong>al</strong>es. El9,2% y el 7,1% <strong>de</strong> los encuestados afirmaban respectivamenteque el tiempo que <strong>de</strong>dicaban a <strong>de</strong>sarrollar <strong>software</strong> <strong>libre</strong> era entre20 y 40 horas seman<strong>al</strong>es y más <strong>de</strong> 40 horas seman<strong>al</strong>es.Lectura complementaria[Ver bibliografía, apartados122 y 104]Tabla 4-2. Dedicación en horas seman<strong>al</strong>esHoras seman<strong>al</strong>esPorcentajeMenos <strong>de</strong> 2 horas 22,5%Entre 2 y 5 horas 26,1%Entre 5 y 10 horas 21,0%Entre 10 y 20 horas 14,1%Entre 20 y 40 horas 9,2%Más <strong>de</strong> 40 horas 7,1%ANOTACIONES97


© FUOC • XP06/M2101/01492Software <strong>libre</strong>NotaA<strong>de</strong>más <strong>de</strong> po<strong>de</strong>r ver la profesion<strong>al</strong>ización <strong>de</strong> losequipos <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>, la <strong>de</strong>dicaciónen horas es un parámetro <strong>de</strong> gran importancia a lahora <strong>de</strong> po<strong>de</strong>r re<strong>al</strong>izar estimaciones <strong>de</strong> coste y hacercomparaciones con los mo<strong>de</strong>los <strong>de</strong> <strong>de</strong>sarrollo propietariosque se siguen en la industria. En el <strong>software</strong> <strong>libre</strong>,por ahora, sólo contamos con productos fin<strong>al</strong>es(nuevas entregas <strong>de</strong>l <strong>software</strong>, sincronización <strong>de</strong> códigonuevo en los sistemas <strong>de</strong> versiones) que no nos permitenconocer cuánto tiempo ha necesitado el<strong>de</strong>sarrollador en conseguirlo.El análisis <strong>de</strong> estas cifras nos muestra que en torno a un 80% <strong>de</strong> los<strong>de</strong>sarrolladores re<strong>al</strong>izan estas tareas en su tiempo <strong>libre</strong>, mientrasque sólo uno <strong>de</strong> cada cinco podría consi<strong>de</strong>rarse como que <strong>de</strong>dicatanto tiempo a esta actividad como un profesion<strong>al</strong>. Más a<strong>de</strong>lante, enel capítulo <strong>de</strong> ingeniería <strong>de</strong>l <strong>software</strong> podremos ver cómo este datoconcuerda con la contribución <strong>de</strong> los <strong>de</strong>sarrolladores, ya que ambasparecen seguir la ley <strong>de</strong> Pareto (ver apartado 7.6).4.6. MotivacionesANOTACIONESLectura complementaria[Ver bibliografía, apartado72]Se ha especulado y se sigue especulando mucho sobre las motivacionesque hay <strong>de</strong>trás <strong>de</strong>l <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>, sobre todo ensu vertiente <strong>de</strong> actividad <strong>de</strong> tiempo <strong>libre</strong> (que, como hemos visto, correspon<strong>de</strong>a cerca <strong>de</strong> un 80% <strong>de</strong> los <strong>de</strong>sarrolladores). Como en losapartados anteriores, sólo contamos con los datos <strong>de</strong> las encuestas,por lo que es importante darse cuenta <strong>de</strong> que se trata <strong>de</strong> lo que los<strong>de</strong>sarrolladores respon<strong>de</strong>n, que pue<strong>de</strong> ser más o menos coherentecon la re<strong>al</strong>idad. Los porcentajes que se van a mostrar a continuaciónsuperan en suma el 100%, ya que se daba la posibilidad a los encuestados<strong>de</strong> elegir varias respuestas.En cu<strong>al</strong>quier caso, <strong>de</strong> sus respuestas parece <strong>de</strong>spren<strong>de</strong>rse que lamayoría quiere apren<strong>de</strong>r y <strong>de</strong>sarrollar nuevas habilida<strong>de</strong>s (cerca<strong>de</strong> un 80%) y que muchos lo hacen para compartir conocimientosy habilida<strong>de</strong>s (50%) o para participar en una nueva forma <strong>de</strong> cooperación(<strong>al</strong>re<strong>de</strong>dor <strong>de</strong> un tercio). El primer dato no parece nada98


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492sorpren<strong>de</strong>nte, habida cuenta <strong>de</strong> que un profesion<strong>al</strong> con mayoresconocimientos se encuentra más cotizado que uno que no los posee.El segundo dato, sin embargo, no es tan fácil <strong>de</strong> explicar eincluso parece ir en contra <strong>de</strong> la afirmación <strong>de</strong> Nikolai Bezroukov,que viene a <strong>de</strong>cir que los lí<strong>de</strong>res <strong>de</strong> los proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>tienen a buena cuenta no compartir toda la información <strong>de</strong> la queposeen para perpetuar su po<strong>de</strong>r. Mientras tanto, la tercera opciónmás frecuente es, sin lugar a dudas, fiel reflejo <strong>de</strong> que los propios<strong>de</strong>sarrolladores se muestran entusiasmados por la forma en laque gener<strong>al</strong>mente se crea el <strong>software</strong> <strong>libre</strong>; es difícil encontrar unaindustria en la que un grupo <strong>de</strong> voluntarios levemente organizadospueda plantar cara tecnológicamente a las gran<strong>de</strong>s compañías<strong>de</strong>l sector.Mientras la teoría clásica para explicar los motivos por los que los <strong>de</strong>sarrolladores<strong>de</strong> <strong>software</strong> <strong>libre</strong> se <strong>de</strong>dican a aportar en proyectos <strong>de</strong><strong>software</strong> <strong>libre</strong> gira en torno a la reputación y a beneficios económicosindirectos a medio y largo plazo, parece que los propios <strong>de</strong>sarrolladoresno están <strong>de</strong> acuerdo con estas afirmaciones. Sólo un 5% <strong>de</strong> losencuestados respon<strong>de</strong> que <strong>de</strong>sarrolla <strong>software</strong> <strong>libre</strong> para ganar dinero,mientras que el número <strong>de</strong> ellos que lo hacen por obtener reputaciónascien<strong>de</strong> a un 9%, lejos <strong>de</strong> las respuestas que se hanpresentado en el párrafo anterior. En cu<strong>al</strong>quier caso, parece que elestudio <strong>de</strong> las motivaciones que tienen los <strong>de</strong>sarrolladores para entrara formar parte <strong>de</strong> la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es una <strong>de</strong> lastareas primordi<strong>al</strong>es con las que se han <strong>de</strong> enfrentar sociólogos y psicólogosen los próximos tiempos.4.7. Li<strong>de</strong>razgoReputación y li<strong>de</strong>razgo son dos características con las que se hatratado <strong>de</strong> explicar el éxito <strong>de</strong>l <strong>software</strong> <strong>libre</strong> y en especi<strong>al</strong> el <strong>de</strong>lmo<strong>de</strong>lo <strong>de</strong> bazar, t<strong>al</strong> y como se verá en el capítulo <strong>de</strong>dicado a laingeniería <strong>de</strong>l <strong>software</strong>. Como pudimos ver en otro capítulo, el <strong>de</strong>dicadoa las licencias <strong>de</strong>l <strong>software</strong>, existen ciertas diferencias entrelas licencias <strong>de</strong> <strong>software</strong> <strong>libre</strong> y sus homólogas en el campo <strong>de</strong> ladocumentación. Esas diferencias radican en la forma como sepreservan la autoría y la opinión <strong>de</strong>l autor –más acentuada en textosque en programas.ANOTACIONES99


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Lectura complementaria[Ver bibliografía, apartado104]En Rishab A. Ghosh; Ruediger Glott; Bernhard Krieger; Gregorio Robles(2002). Free/<strong>libre</strong> and open source soft-ware: Survey and study -part iv: Survey of <strong>de</strong>velopers, se incluyó una pregunta en la que se instabaa los <strong>de</strong>sarrolladores a indicar qué personas <strong>de</strong> una lista dada leeran conocidas, no necesariamente e manera person<strong>al</strong>. Los resultadosse muestran en la tabla 4-3. Éstos <strong>de</strong>terminan que se pue<strong>de</strong>n aglutinara estas personas en tres grupos claramente diferenciados:Tabla 4-3. Grado <strong>de</strong> conocimiento <strong>de</strong> <strong>de</strong>sarrolladores importantesDesarrolladorConocido porLinus Torv<strong>al</strong>ds 96,5%Richard St<strong>al</strong>lman 93,3%Miguel <strong>de</strong> Icaza 82,1%Eric Raymond 81,1%Bruce Perens 57,7%Jamie Zawinski 35,8%Mathias Ettrich 34,2%Jörg Schilling 21,5%Marco Presenti Gritti 5,7%Bryan Andrews 5,6%Guenter Bartsch 3,5%Arpad Gereoffy 3,3%Martin Hoffste<strong>de</strong> 2,9%Angelo Roulini 2,6%S<strong>al</strong> V<strong>al</strong>liger 1,2%ANOTACIONESLectura complementaria[Ver bibliografía, apartado195]Lectura complementaria[Ver bibliografía, apartados185, 184, 187 y 95]Un primer grupo <strong>de</strong> gente con claras connotaciones filosófico-históricas<strong>de</strong>ntro <strong>de</strong>l mundo <strong>de</strong> <strong>software</strong> <strong>libre</strong> (aunque cuenten, como sepue<strong>de</strong> ver, también con aptitu<strong>de</strong>s técnicas notables):• Linus Torv<strong>al</strong>ds: creador <strong>de</strong>l núcleo Linux, el kernel <strong>de</strong>l sistemaoperativo más utilizado. Coautor <strong>de</strong> Just For Fun: the story of anacci<strong>de</strong>nt<strong>al</strong> revolutionary.• Richard St<strong>al</strong>lman: i<strong>de</strong>ólogo y fundador <strong>de</strong> la Fundación <strong>de</strong>l SoftwareLibre y <strong>de</strong>sarrollador en varios proyectos GNU. Autor <strong>de</strong> variosescritos muy importantes <strong>de</strong>ntro <strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>100


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492• Miguel <strong>de</strong> Icaza: cofundador <strong>de</strong>l proyecto GNOME y <strong>de</strong> XimianInc. Desarrollador <strong>de</strong> parte <strong>de</strong> GNOME y <strong>de</strong> MONO• Eric Raymond: impulsor <strong>de</strong> la Open Source Initiative, autor <strong>de</strong> “Lacatedr<strong>al</strong> y el bazar”. Desarrollador princip<strong>al</strong> <strong>de</strong> fetchmail.• Bruce Perens: antiguo lí<strong>de</strong>r <strong>de</strong>l proyecto Debian. Impulsor (converso)<strong>de</strong> la Open Source Initiative. Desarrollador <strong>de</strong> la herramientae-fence• Jamie Zawinsky: ex-<strong>de</strong>sarrollador <strong>de</strong> Mozilla, famoso por unacarta en 1999 en la que <strong>de</strong>jaba el proyecto Mozilla argumentandoque el mo<strong>de</strong>lo utilizado no iba a dar frutos nunca.Lectura complementaria[Ver bliografía, apartado214]• Mathias Ettrich: fundador <strong>de</strong> KDE. Desarrollador <strong>de</strong> LyX y otros.En el segundo grupo tenemos a <strong>de</strong>sarrolladores. Para esta encuestase tomaron los nombres <strong>de</strong> los <strong>de</strong>sarrolladores princip<strong>al</strong>es <strong>de</strong> los seisproyectos más populares en el índice <strong>de</strong> aplicaciones <strong>de</strong> <strong>software</strong> <strong>libre</strong>FreshMeat. Se pue<strong>de</strong> ver que (a excepción <strong>de</strong> Linus Torv<strong>al</strong>ds, pormotivos obvios, y <strong>de</strong> Jörg Schilling), el grado <strong>de</strong> conocimiento <strong>de</strong> estos<strong>de</strong>sarrolladores es pequeño.• Jörg Schilling, creador <strong>de</strong> cdrecord entre otras aplicaciones• Marco Presenti Gritti, <strong>de</strong>sarrollador princip<strong>al</strong> <strong>de</strong> G<strong>al</strong>eon• Bryan Andrews, <strong>de</strong>sarrollador <strong>de</strong> Apache Toolbox• Guenther Bartsch, creador <strong>de</strong> xine• Arpad Gereoffy, <strong>de</strong>sarrollador <strong>de</strong> MPEGplayerEl tercer grupo lo componen los nombres <strong>de</strong> las últimas tres personas.Estosnombres fueron inventados por el equipo <strong>de</strong> la encuestapara po<strong>de</strong>r comprobar el margen <strong>de</strong> error <strong>de</strong> las respuestas.De los resultados se pue<strong>de</strong>n observar dos cosas: lprimera es que elmargen <strong>de</strong> error <strong>de</strong> las respuestas se pue<strong>de</strong> consi<strong>de</strong>rar pequeño(menor a un 3%). Y la segunda es que la mayoría <strong>de</strong> los <strong>de</strong>sarrolladores<strong>de</strong> las aplicaciones <strong>de</strong> <strong>software</strong> <strong>libre</strong> más populares son tan conocidoscomo personas que no existen. Este dato pue<strong>de</strong> dar quepensar a los que aducen el hecho <strong>de</strong> buscar fama como una <strong>de</strong> lasprimeras causas para <strong>de</strong>sarrollar <strong>software</strong> <strong>libre</strong>.ANOTACIONES101


© FUOC • XP06/M2101/01492Software <strong>libre</strong>4.8. Resumen y conclusionesEste capítulo ha pretendido arrojar un poco <strong>de</strong> luz sobre el ampliamente<strong>de</strong>sconocido tema <strong>de</strong> la gente que <strong>de</strong>dica su tiempo <strong>al</strong> <strong>software</strong><strong>libre</strong>. En líneas gener<strong>al</strong>es se pue<strong>de</strong> afirmar que el <strong>de</strong>sarrollador<strong>de</strong> <strong>software</strong> <strong>libre</strong> es un varón joven con estudios universitarios (o envías <strong>de</strong> conseguirlos). La relación <strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> con launiversidad (estudiantes y profesores) es muy estrecha, aunque siguepredominando el <strong>de</strong>sarrollador que no tiene que ver nada con elámbito académico.En cuanto a la <strong>de</strong>dicación en número <strong>de</strong> horas, se ha mostradocómo existe una gran <strong>de</strong>sigu<strong>al</strong>dad <strong>al</strong> estilo <strong>de</strong> la postulada en la ley<strong>de</strong> Pareto. Las motivaciones <strong>de</strong> los <strong>de</strong>sarrolladores –según ellos mismos–lejos <strong>de</strong> ser monetarias y egocéntricas, t<strong>al</strong> y como suelen asumireconomistas y psicólogos, está más bien centrada en compartiry apren<strong>de</strong>r. Para fin<strong>al</strong>izar, se ha mostrado un cuadro <strong>de</strong> los personajes<strong>de</strong>l mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> más significantes (y otros no tanto,como se ha podido ver) y se ha <strong>de</strong>mostrado que la reputación en lagran comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong> suele <strong>de</strong>pen<strong>de</strong>r <strong>de</strong> más razonesque solamente <strong>de</strong> la codificación <strong>de</strong> una aplicación <strong>libre</strong> exitosa.ANOTACIONES102


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014925. EconomíaEn este capítulo se tratan <strong>al</strong>gunos aspectos económicos relacionadoscon el <strong>software</strong> <strong>libre</strong>. Se comienza mostrando cómo se financian losproyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> (cuando efectivamente se financian, yaque en muchos casos se <strong>de</strong>sarrollan únicamente con trabajo y recursosaportados voluntariamente). A continuación, se exponen los princip<strong>al</strong>esmo<strong>de</strong>los <strong>de</strong> negocio que están poniendo en práctica lasempresas relacionadas directamente con el <strong>software</strong> <strong>libre</strong>. El capítulotermina con un pequeño estudio sobre la relación entre el <strong>software</strong><strong>libre</strong> y los monopolios en la industria <strong>de</strong>l <strong>software</strong>.5.1. Financiación <strong>de</strong> proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>El <strong>software</strong> <strong>libre</strong> se <strong>de</strong>sarrolla <strong>de</strong> muchas formas distintas, y con mecanismospara conseguir recursos que varían muchísimo <strong>de</strong> un casoa otro. Cada proyecto <strong>libre</strong> tiene su propia forma <strong>de</strong> financiarse, <strong>de</strong>s<strong>de</strong>el que está formado completamente por <strong>de</strong>sarrolladores voluntariosy utiliza solamente recursos cedidos <strong>al</strong>truistamente, hasta el quees llevado a cabo por una empresa que factura el 100% <strong>de</strong> sus costesa una entidad interesada en el <strong>de</strong>sarrollo correspondiente.En este apartado nos vamos a centrar en los proyectos don<strong>de</strong> hay financiaciónexterna, y no todo el trabajo re<strong>al</strong>izado es voluntario. Enestos casos, hay <strong>al</strong>gún tipo <strong>de</strong> flujo <strong>de</strong> capit<strong>al</strong> con origen externo <strong>al</strong>proyecto que se encarga <strong>de</strong> aportar recursos para su <strong>de</strong>sarrollo. Deesta manera, el <strong>software</strong> <strong>libre</strong> construido pue<strong>de</strong> consi<strong>de</strong>rarse, <strong>de</strong> <strong>al</strong>gunamanera, como un producto <strong>de</strong> esta financiación externa. Porello, es común que sea esa fuente externa quien <strong>de</strong>ci<strong>de</strong> (<strong>al</strong> menosparci<strong>al</strong>mente) cómo y en qué se gastan los recursos.En cierto sentido, esta financiación externa para proyectos <strong>libre</strong>s pue<strong>de</strong>consi<strong>de</strong>rarse como un tipo <strong>de</strong> patrocinio, aunque este patrocinono tiene por qué ser <strong>de</strong>sinteresado (y habitu<strong>al</strong>mente no lo es). En lossiguientes apartados se comentan los tipos <strong>de</strong> financiación externamás habitu<strong>al</strong>es. Mientras el lector se <strong>de</strong>dique a ellos, conviene, noANOTACIONES103


© FUOC • XP06/M2101/01492Software <strong>libre</strong>obstante, no olvidar que ésta es sólo una <strong>de</strong> las maneras que tienenlos proyectos que construyen <strong>software</strong> <strong>libre</strong> <strong>de</strong> conseguir recursos.Hay otras, y entre ellas la más importante: el trabajo <strong>de</strong> muchos <strong>de</strong>sarrolladoresvoluntarios (como se discute en el capítulo 4).5.1.1. Financiación públicaUn tipo muy especi<strong>al</strong> <strong>de</strong> financiación <strong>de</strong> proyectos <strong>libre</strong>s es la pública.La entidad financiadora pue<strong>de</strong> ser directamente un gobierno(loc<strong>al</strong>, region<strong>al</strong>, nacion<strong>al</strong> o incluso supranacion<strong>al</strong>) o una instituciónpública (por ejemplo, una fundación). En estos casos, la financiaciónsuele ser similar a la <strong>de</strong> los proyectos <strong>de</strong> investigación y <strong>de</strong>sarrollo,y <strong>de</strong> hecho es muy habitu<strong>al</strong> que provenga <strong>de</strong> entida<strong>de</strong>spúblicas promotoras <strong>de</strong> I+D. Norm<strong>al</strong>mente, la entidad financiadorano busca recuperar la inversión (o <strong>al</strong> menos no <strong>de</strong> forma directa),aunque suele tener objetivos claros (favorecer la creación <strong>de</strong>tejido industri<strong>al</strong> e investigador, promover cierta tecnología o ciertotipo <strong>de</strong> aplicaciones, etc.).En la mayor parte <strong>de</strong> estos casos, no se encuentra explícitamente lafinanciación <strong>de</strong> productos o servicios relacionados con <strong>software</strong> <strong>libre</strong>,sino que suelen ser el subproducto <strong>de</strong> un contrato con otros fines másgener<strong>al</strong>es. Por ejemplo, la Comisión Europea, <strong>de</strong>ntro <strong>de</strong> sus programas<strong>de</strong> investigación, financia proyectos orientados a mejorar lacompetitividad europea en ciertas áreas. Algunos <strong>de</strong> estos proyectostienen como parte <strong>de</strong> sus objetivos usar, mejorar y crear <strong>software</strong> <strong>libre</strong>en su ámbito <strong>de</strong> investigación (como herramienta para la investigación,o como producto <strong>de</strong>rivado <strong>de</strong> ella).ANOTACIONESLas motivaciones para este tipo <strong>de</strong> financiación son muy variadas,pero pue<strong>de</strong>n <strong>de</strong>stacarse las siguientes:• CientíficaÉste es el caso más habitu<strong>al</strong> en proyectos <strong>de</strong> investigación financiadoscon fondos públicos. Aunque su objetivo no es producir<strong>software</strong>, sino investigar en un <strong>de</strong>terminado campo (relacionadoo no con la informática), es muy posible que para ello sea preciso<strong>de</strong>sarrollar programas que se usen como herramientas necesarias104


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492para <strong>al</strong>canzar las metas <strong>de</strong>l proyecto. Norm<strong>al</strong>mente, el proyectono está interesado en comerci<strong>al</strong>izar estas herramientas, o inclusoestá activamente interesado en que otros grupos las utilicen y mejoren.En estos casos, es bastante habitu<strong>al</strong> distribuirlos como <strong>software</strong><strong>libre</strong>. Cabe mencionar que los recursos que consiguió elgrupo que re<strong>al</strong>iza la investigación se <strong>de</strong>dicaron en parte a la producción<strong>de</strong> este <strong>software</strong>, por lo que se pue<strong>de</strong> <strong>de</strong>cir que fue <strong>de</strong>sarrolladocon financiación pública.• Promoción <strong>de</strong> estándaresTener una implementación <strong>de</strong> referencia es una <strong>de</strong> las mejores formas<strong>de</strong> promover un estándar. En muchos casos eso supone tenerprogramas que formen parte <strong>de</strong> esa implementación (o si el estándarse refiere <strong>al</strong> campo <strong>de</strong>l <strong>software</strong>, que sean la implementaciónellos mismos). Para que la implementación <strong>de</strong> referencia sea <strong>de</strong> utilida<strong>de</strong>n la promoción <strong>de</strong>l estándar, es preciso que esté disponible,<strong>al</strong> menos para comprobar su interoperabilidad entre todos los quequieran <strong>de</strong>sarrollar productos que se acojan a ese estándar. En muchoscasos es conveniente también que los fabricantes puedan directamenteadaptar la implementación <strong>de</strong> referencia para usarlaen sus productos, si así lo <strong>de</strong>sean. De esta manera se <strong>de</strong>sarrollaron,por ejemplo, muchos <strong>de</strong> los protocolos <strong>de</strong> Internet que hoy se hanconvertido en norma univers<strong>al</strong>. En estos casos, la liberación <strong>de</strong> esasimplementaciones <strong>de</strong> referencia como <strong>software</strong> <strong>libre</strong> pue<strong>de</strong> ayudarmucho en esa promoción, ya que el <strong>software</strong> <strong>libre</strong> es un subproducto<strong>de</strong> la promoción <strong>de</strong>l estándar, y habitu<strong>al</strong>mente, quien se encarga<strong>de</strong> esta promoción es una entidad pública (aunque a veces es unconsorcio privado).• Soci<strong>al</strong>El <strong>software</strong> <strong>libre</strong> es una herramienta <strong>de</strong> gran interés en la creación<strong>de</strong> la infraestructura básica para la sociedad <strong>de</strong> la información.Las entida<strong>de</strong>s interesadas en utilizar <strong>software</strong> <strong>libre</strong> para ayudar <strong>al</strong>acceso univers<strong>al</strong> a esta sociedad <strong>de</strong> la información pue<strong>de</strong>n financiarproyectos relacionados con el <strong>software</strong> <strong>libre</strong> (norm<strong>al</strong>menteproyectos <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> nuevas aplicaciones o <strong>de</strong> adaptación<strong>de</strong> otras existentes).ANOTACIONES105


© FUOC • XP06/M2101/01492Software <strong>libre</strong>NotaUn ejemplo <strong>de</strong> financiación pública con fin<strong>al</strong>idad fundament<strong>al</strong>mentesoci<strong>al</strong> es el caso <strong>de</strong> LinEx, promovido porla Junta <strong>de</strong> Extremadura (Extremadura, España) parapromover la sociedad <strong>de</strong> la información fundament<strong>al</strong>menteen lo que a <strong>al</strong>fabetización informática se refiere.La Junta ha financiado el <strong>de</strong>sarrollo <strong>de</strong> una distribuciónbasada en Debian para conseguir este fin. Otro caso similares el <strong>de</strong> la financiación por parte <strong>de</strong>l Gobierno <strong>al</strong>emán<strong>de</strong> <strong>de</strong>sarrollos <strong>de</strong> GnuPG orientados a facilitar suuso a los usuarios no experimentados, con la i<strong>de</strong>a <strong>de</strong> favorecerel uso <strong>de</strong>l correo seguro entre sus ciudadanos.El <strong>de</strong>sarrollo <strong>de</strong> GNATEjemploUn caso notorio <strong>de</strong> financiación pública para el <strong>de</strong>sarrollo<strong>de</strong> <strong>software</strong> <strong>libre</strong> fue el <strong>de</strong>l compilador GNAT. GNAT,compilador <strong>de</strong> Ada, fue financiado por el proyecto Ada9X<strong>de</strong>l Departamento <strong>de</strong> Defensa <strong>de</strong> EE.UU., con la i<strong>de</strong>a <strong>de</strong>disponer <strong>de</strong> un compilador <strong>de</strong> la nueva versión <strong>de</strong>l lenguaje<strong>de</strong> programación Ada (la que luego fue Ada95),cuyo uso trataba <strong>de</strong> promover en aquella época. Una <strong>de</strong>las causas que se habían i<strong>de</strong>ntificado en cuanto a laadopción <strong>de</strong> la primera versión <strong>de</strong> Ada (Ada83) por lasempresas <strong>de</strong> <strong>software</strong> era la tardía disposición <strong>de</strong> uncompilador <strong>de</strong>l lenguaje, y su <strong>al</strong>to precio cuando estuvofin<strong>al</strong>mente disponible. Por ello, trataron <strong>de</strong> que no ocurrieselo mismo con Ada95, asegurándose <strong>de</strong> que hubieraun compilador <strong>de</strong> forma prácticamente simultánea conla publicación <strong>de</strong>l nuevo estándar <strong>de</strong>l lenguaje.ANOTACIONESPara lograrlo, el proyecto Ada9X contrató un proyectocon un equipo <strong>de</strong> la Universidad <strong>de</strong> Nueva York (NYU),por un importe aproximado <strong>de</strong> 1 millón <strong>de</strong> USD, par<strong>al</strong>a re<strong>al</strong>ización <strong>de</strong> una “prueba <strong>de</strong> concepto” <strong>de</strong> compilador<strong>de</strong> Ada95. Con estos fondos, y aprovechando laexistencia <strong>de</strong> GCC (el compilador <strong>de</strong> C <strong>de</strong> GNU, <strong>de</strong>lque se aprovechó la mayor parte <strong>de</strong>l dors<strong>al</strong>), el equipo<strong>de</strong> NYU construyó efectivamente el primer compilador106


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492<strong>de</strong> Ada95, que liberó bajo la GNU GPL. El compiladortuvo tanto éxito que <strong>al</strong> fin<strong>al</strong>izar el proyecto parte <strong>de</strong> susconstructores fundaron una empresa (Ada Core Tecnologies),que <strong>de</strong>s<strong>de</strong> entonces se ha convertido en lí<strong>de</strong>r enel mercado <strong>de</strong> compiladores y herramientas <strong>de</strong> ayudaa la construcción <strong>de</strong> programas en Ada.Es notable cómo en este proyecto se pue<strong>de</strong> ver la combinación<strong>de</strong> elementos <strong>de</strong> investigación (este proyecto avanzóen el conocimiento sobre la construcción <strong>de</strong> front<strong>al</strong>es y<strong>de</strong> sistemas <strong>de</strong> tiempo <strong>de</strong> ejecución para compiladores <strong>de</strong>lenguajes tipo Ada) y <strong>de</strong> promoción <strong>de</strong> estándares (queera el objetivo más claro <strong>de</strong> su financiador).5.1.2. Financiación privada sin ánimo <strong>de</strong> lucroÉste es un tipo <strong>de</strong> financiación con muchas características similares a las<strong>de</strong>l caso anterior, don<strong>de</strong> la financiación la re<strong>al</strong>izan norm<strong>al</strong>mente fundacionesu organizaciones no gubernament<strong>al</strong>es. La motivación directa enestos casos suele ser producir <strong>software</strong> <strong>libre</strong> para su uso en <strong>al</strong>gún ámbitoque la entidad financiadora consi<strong>de</strong>ra especi<strong>al</strong>mente relevante, perotambién pue<strong>de</strong> encontrarse la motivación indirecta <strong>de</strong> contribuir a resolverun problema (por ejemplo, una fundación <strong>de</strong>dicada a promover lainvestigación sobre una enfermedad pue<strong>de</strong> financiar la construcción <strong>de</strong>un programa estadístico que ayu<strong>de</strong> <strong>al</strong> análisis <strong>de</strong> grupos <strong>de</strong> experimentacióndon<strong>de</strong> se está estudiando esa enfermedad).En gener<strong>al</strong>, tanto los motivos para re<strong>al</strong>izar esta financiación comosus mecanismos son muy similares a los <strong>de</strong> financiación pública,aunque natur<strong>al</strong>mente están siempre marcados por los objetivos <strong>de</strong>la entidad que financia.NotaProbablemente el caso paradigmático <strong>de</strong> fundaciónque promueve el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong> sea la FreeSoftware Foundation (FSF). Des<strong>de</strong> mediados <strong>de</strong> la década<strong>de</strong> 1980 esta fundación se <strong>de</strong>dica a la promoción<strong>de</strong>l proyecto GNU, y a fomentar en gener<strong>al</strong> el <strong>de</strong>sarrollo<strong>de</strong>l <strong>software</strong> <strong>libre</strong>.ANOTACIONES107


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Otro caso interesante, aunque en otro ámbito bastantediferente, es la Open Bioinformatics Foundation.Entre los fines <strong>de</strong> esta fundación se encuentra la <strong>de</strong>promover el <strong>de</strong>sarrollo <strong>de</strong> los programas informáticosque son básicos para investigación en cu<strong>al</strong>quiera <strong>de</strong>las ramas <strong>de</strong> la bioinformática. Y en gener<strong>al</strong>, re<strong>al</strong>izaesta promoción financiando y ayudando a la construcción<strong>de</strong> programas <strong>libre</strong>s.5.1.3. Financiación por quien necesita mejorasOtro tipo <strong>de</strong> financiación para el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>, ya notan <strong>al</strong>truista, es el que tiene lugar cuando <strong>al</strong>guien necesita mejorasen un producto <strong>libre</strong>. Por ejemplo, una empresa necesita para usointerno cierta funcion<strong>al</strong>idad en un programa dado. O bien necesitaque ciertos errores en un programa sean corregidos. En este tipo <strong>de</strong>casos, lo habitu<strong>al</strong> es que la empresa en cuestión contrate el <strong>de</strong>sarrolloque necesita. Este <strong>de</strong>sarrollo muy habitu<strong>al</strong>mente (bien porque loimpone la licencia <strong>de</strong>l programa modificado, bien porque la empres<strong>al</strong>o <strong>de</strong>ci<strong>de</strong> así) es <strong>software</strong> <strong>libre</strong>.El caso <strong>de</strong> Corel y WineEjemploANOTACIONESA fin<strong>al</strong>es <strong>de</strong> la década <strong>de</strong> 1990, Corel <strong>de</strong>cidió portarsus productos a GNU/Linux. En el proceso <strong>de</strong> re<strong>al</strong>izarlo,<strong>de</strong>scubrió que un programa <strong>libre</strong> diseñado para facilitarla ejecución <strong>de</strong> binarios para Windows enentornos Linux podría permitirle muchos ahorros <strong>de</strong><strong>de</strong>sarrollo. Pero para ello era preciso mejorarlo, fundament<strong>al</strong>menteañadiéndole la emulación <strong>de</strong> cierta funcion<strong>al</strong>idad<strong>de</strong> Windows que usaban los programas <strong>de</strong>Corel.Para que se re<strong>al</strong>izaran estas mejoras, Corel contrató aMacadamian, que contribuyó con sus mejoras <strong>al</strong> proyectoWine. Con ello, tanto Corel como Wine s<strong>al</strong>ieronbeneficiados.108


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014925.1.4. Financiación con beneficios relacionadosEn este caso, lo que busca la entidad financiadora es conseguir beneficiosen productos relacionados con el programa a cuyo <strong>de</strong>sarrolloaporta recursos. Norm<strong>al</strong>mente, en estos casos los beneficios queobtiene la empresa financiadora no son exclusivos, ya que otras pue<strong>de</strong>nentrar también en el mercado <strong>de</strong> la venta <strong>de</strong> productos relacionados.Pero, o bien la cuota <strong>de</strong> mercado que tiene es suficiente comopara que no le preocupe mucho repartir la tarta con otros, o bien tiene<strong>al</strong>guna ventaja competitiva clara.Algunos ejemplos <strong>de</strong> productos relacionados con un <strong>software</strong> dado son:• LibrosLa empresa en cuestión ven<strong>de</strong> manu<strong>al</strong>es, guías <strong>de</strong> uso, textos paracursos, etc. relacionados con el programa <strong>libre</strong> que ayuda a financiar.Por supuesto otras empresas pue<strong>de</strong>n ven<strong>de</strong>r también libros relacionadoscon aquél, pero norm<strong>al</strong>mente el hecho <strong>de</strong> financiar el proyecto leproporcionará acceso a <strong>de</strong>sarrolladores clave antes que a sus competidores,o simplemente conseguirá con ello una buena imagen <strong>de</strong> caraa la comunidad <strong>de</strong> usuarios <strong>de</strong>l programa en cuestión.• HardwareSi una empresa financia el <strong>de</strong>sarrollo <strong>de</strong> sistemas <strong>libre</strong>s para ciertotipo <strong>de</strong> hardware, pue<strong>de</strong> <strong>de</strong>dicarse a ven<strong>de</strong>r con más facilidad esetipo <strong>de</strong> hardware. De nuevo, <strong>al</strong> ser <strong>libre</strong> el <strong>software</strong> <strong>de</strong>sarrollado,pue<strong>de</strong>n aparecer competidores que vendan aparatos <strong>de</strong>l mismo tipo,usando esos <strong>de</strong>sarrollos, pero sin colaborar a su financiación. Aunasí, la empresa en cuestión dispone <strong>de</strong> varias ventajas sobre suscompetidores, y una <strong>de</strong> ellas pue<strong>de</strong> ser que su posición como aportadora<strong>de</strong> recursos para el proyecto le permite influir para conseguirque los <strong>de</strong>sarrollos que se re<strong>al</strong>icen con prioridad sean los que másle interesen.• CD con programasProbablemente el mo<strong>de</strong>lo <strong>de</strong> este tipo más conocido es el <strong>de</strong> las empresasque financian ciertos <strong>de</strong>sarrollos que luego aplican a su dis-ANOTACIONES109


© FUOC • XP06/M2101/01492Software <strong>libre</strong>tribución <strong>de</strong> <strong>software</strong>. Por ejemplo, tener un buen entorno <strong>de</strong>escritorio pue<strong>de</strong> ayudar mucho a ven<strong>de</strong>r CD con una cierta distribución<strong>de</strong> GNU/Linux, y por tanto financiar su <strong>de</strong>sarrollo pue<strong>de</strong> ser unbuen negocio para quien los ven<strong>de</strong>.Es importante darse cuenta <strong>de</strong> que, para estar en este apartado, lafinanciación en cuestión ha <strong>de</strong> hacerse con ánimo <strong>de</strong> lucro, y paraello la entidad financiadora <strong>de</strong>be percibir <strong>al</strong>gún beneficio posible enesta financiación. En los casos re<strong>al</strong>es, sin embargo, es habitu<strong>al</strong> quehaya siempre una combinación <strong>de</strong> ánimo <strong>de</strong> lucro y <strong>al</strong>truismo cuandouna empresa aporta recursos para que se re<strong>al</strong>ice un program<strong>al</strong>ibre <strong>de</strong>l cu<strong>al</strong> espera beneficiarse indirectamente.NotaUn caso muy conocido <strong>de</strong> aporte <strong>de</strong> recursos a un proyecto,si bien <strong>de</strong> forma relativamente indirecta, es laayuda que la editori<strong>al</strong> O'Reilly presta <strong>al</strong> <strong>de</strong>sarrollo <strong>de</strong>Perl. Natur<strong>al</strong>mente, no es casu<strong>al</strong>idad que esa editori<strong>al</strong>sea también una <strong>de</strong> las princip<strong>al</strong>es editoras sobre temasrelacionados con Perl. En cu<strong>al</strong>quier caso, es obvioque O'Reilly no tiene la exclusiva <strong>de</strong> la edición <strong>de</strong> libros<strong>de</strong> ese tipo, y otras editori<strong>al</strong>es compiten en esesegmento <strong>de</strong> mercado, con diverso éxito.VA Software (en sus comienzos VA Research, y mástar<strong>de</strong> VA Linux) ha colaborado activamente en el <strong>de</strong>sarrollo<strong>de</strong>l kernel <strong>de</strong> Linux. Con ello ha conseguido,entre otras cosas, colaborar a que su su continuida<strong>de</strong>sté asegurada, lo que era especi<strong>al</strong>mente crítico paraella, <strong>de</strong> cara a sus clientes, cuando su princip<strong>al</strong> negocioera ven<strong>de</strong>r equipos con GNU/Linux preinst<strong>al</strong>ado.ANOTACIONESRed Hat ha financiado el <strong>de</strong>sarrollo <strong>de</strong> muchos componentes<strong>de</strong> GNOME, con lo que ha conseguido fundament<strong>al</strong>mentetener un entorno <strong>de</strong> escritorio para sudistribución, lo que ha contribuido a aumentar susventas. Como en otros casos, otros fabricantes <strong>de</strong> distribucionesse han beneficiado <strong>de</strong> este <strong>de</strong>sarrollo,aunque muchos <strong>de</strong> ellos no hayan colaborado con elproyecto GNOME en la misma medida que Red Hat (y110


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492no son pocos los que no han colaborado en nada). Apesar <strong>de</strong> ello, Red Hat se beneficia <strong>de</strong> su contribucióna GNOME.5.1.5. Financiación como inversión internaHay empresas que, directamente como parte <strong>de</strong> su mo<strong>de</strong>lo <strong>de</strong> negocio,<strong>de</strong>sarrollan <strong>software</strong> <strong>libre</strong>. Por ejemplo, una empresa pue<strong>de</strong> <strong>de</strong>cidiriniciar un nuevo proyecto <strong>libre</strong> en un ámbito don<strong>de</strong> percibe quepue<strong>de</strong> haber oportunida<strong>de</strong>s <strong>de</strong> negocio, con la i<strong>de</strong>a <strong>de</strong> rentabilizarposteriormente esta inversión. Este mo<strong>de</strong>lo podría consi<strong>de</strong>rarse unavariante <strong>de</strong>l anterior (financiación indirecta), siendo los “beneficiosrelacionados” las ventajas que obtenga la empresa por la producción<strong>de</strong>l programa <strong>libre</strong>. Pero, por ser en este caso el producto <strong>libre</strong>en sí mismo el que se espera que produzca los beneficios, parececonveniente abrir una clasificación específica para estos casos.Este tipo <strong>de</strong> financiación da lugar a varios mo<strong>de</strong>los <strong>de</strong> negocio. Cuandose an<strong>al</strong>icen éstos –en el apartado 5.2– se explicarán también lasventajas que norm<strong>al</strong>mente obtiene una empresa <strong>de</strong> esta inversión enun proyecto, y qué métodos suelen utilizarse para rentabilizarla. De todosmodos, cabe <strong>de</strong>stacar que en <strong>al</strong>gunos casos pue<strong>de</strong> que el <strong>software</strong>en cuestión se <strong>de</strong>sarrolle simplemente para satisfacer lasnecesida<strong>de</strong>s <strong>de</strong> la propia empresa, y que sólo <strong>de</strong>spués se <strong>de</strong>cida liberar,y quizás abrir una línea <strong>de</strong> negocio relacionada con él.NotaDigit<strong>al</strong> Creations (hoy Zope Corporation) es uno <strong>de</strong> loscasos más conocidos <strong>de</strong> empresa que se <strong>de</strong>dica <strong>al</strong> <strong>de</strong>sarrollo<strong>de</strong> <strong>software</strong> <strong>libre</strong> con la esperanza <strong>de</strong> rentabilizarsu inversión. El proyecto <strong>libre</strong> en que más está invirtiendoes Zope, un servidor <strong>de</strong> aplicaciones que está teniendoun cierto éxito. Su historia con el <strong>software</strong> <strong>libre</strong> comenzócuando la entonces Digit<strong>al</strong> Creations buscaba capit<strong>al</strong>riesgopara <strong>de</strong>sarrollar su servidor <strong>de</strong> aplicaciones propietario,hacia 1998. Uno <strong>de</strong> los grupos interesados eninvertir en ellos (Optic<strong>al</strong>ity Ventures) les puso como condiciónque el producto resultante <strong>de</strong>bía ser <strong>libre</strong>, porqueANOTACIONES111


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Notaen caso contrario no veían cómo iba a po<strong>de</strong>r conseguiruna cuota <strong>de</strong> mercado significativa. Digit<strong>al</strong> Creations se<strong>de</strong>cidió por ese camino, y pocos meses <strong>de</strong>spués anunciab<strong>al</strong>a primera versión <strong>de</strong> Zope (unos años <strong>de</strong>spués cambiósu nombre). Hoy día Zope Corporation estáespeci<strong>al</strong>izada en ofrecer servicios <strong>de</strong> consultoría, formacióny soporte para sistemas <strong>de</strong> gestión <strong>de</strong> contenidosbasados en Zope, y otros productos en los que sin dudaZope es la piedra angular.Ximian (antes Helix Co<strong>de</strong>) es un caso bien conocido <strong>de</strong><strong>de</strong>sarrollo <strong>de</strong> aplicaciones <strong>libre</strong>s en entorno empresari<strong>al</strong>.Muy ligada <strong>de</strong>s<strong>de</strong> sus orígenes <strong>al</strong> proyecto GNOME, Ximianha producido sistemas <strong>software</strong> como Evolution (ungestor <strong>de</strong> información person<strong>al</strong> que tiene una funcion<strong>al</strong>idadrelativamente similar a la ofrecida por MS Outlook),Red Carpet (un sistema fácil <strong>de</strong> usar para lagestión <strong>de</strong> paquetería en un sistema operativo) y Mono(una implementación <strong>de</strong> gran parte <strong>de</strong> .NET). La empresafue fundada en octubre <strong>de</strong> 1999, y atrajo a muchos<strong>de</strong>sarrolladores <strong>de</strong> GNOME que pasaron a formar parte<strong>de</strong> sus <strong>de</strong>sarrolladores (en muchos casos, continuandosu colaboración con el proyecto GNOME). Ximian se posicionócomo una empresa <strong>de</strong> ingeniería experta enadaptaciones <strong>de</strong> GNOME, en la construcción <strong>de</strong> aplicacionesbasadas en GNOME, y en gener<strong>al</strong> en proporcionarservicios <strong>de</strong> <strong>de</strong>sarrollo basados en <strong>software</strong> <strong>libre</strong>,especi<strong>al</strong>mente <strong>de</strong> herramientas relacionadas con el entorno<strong>de</strong> escritorio. En agosto <strong>de</strong>l 2003, Ximian fue adquiridapor Novell.ANOTACIONESLectura complementaria[Ver bliografía, apartado16]Cisco Enterprise Print System (CEPS) es un sistema <strong>de</strong>gestión <strong>de</strong> impresión para organizaciones con grancantidad <strong>de</strong> impresoras. Fue <strong>de</strong>sarrollado internamenteen Cisco, para satisfacer sus propias necesida<strong>de</strong>s,y liberado en el año 2000 bajo la GNU GPL. Esdifícil estar seguro <strong>de</strong> los motivos que tuvo Cisco parahacer esto, pero es posible que tuviera que ver con labúsqueda <strong>de</strong> contribuciones externas (informes <strong>de</strong>112


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492error, nuevos controladores, parches, etc.). En cu<strong>al</strong>quiercaso, lo que está claro es que, <strong>al</strong> no tener Cisco ningúnplan para comerci<strong>al</strong>izar el producto y no estarmuy claro su mercado potenci<strong>al</strong>, no tenía mucho queper<strong>de</strong>r con esta <strong>de</strong>cisión.5.1.6. Otros modos <strong>de</strong> financiaciónHay otros modos <strong>de</strong> financiación difíciles <strong>de</strong> clasificar entre los anteriores.Entre ellos pue<strong>de</strong>n <strong>de</strong>stacarse, a modo <strong>de</strong> ejemplo, los siguientes:• Utilización <strong>de</strong> mercados para poner en contacto a <strong>de</strong>sarrolladoresy clientesLa i<strong>de</strong>a que sostiene este modo <strong>de</strong> financiación es que, sobre todopara pequeños <strong>de</strong>sarrollos, es difícil que un cliente que lo <strong>de</strong>sea puedaentrar en contacto con un <strong>de</strong>sarrollador que pueda acometerlo <strong>de</strong>forma eficiente. Para mejorar esta situación, se postulan los mercados<strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>, don<strong>de</strong> los <strong>de</strong>sarrolladores publicaríansus habilida<strong>de</strong>s y los clientes los <strong>de</strong>sarrollos que precisan. Unavez un <strong>de</strong>sarrollador y un cliente se han puesto <strong>de</strong> acuerdo, tenemosuna situación similar a la ya <strong>de</strong>scrita como “financiación por quiennecesita las mejoras” en el apartado 5.1.3.SourceXchangeEjemploSourceXchange fue un ejemplo <strong>de</strong> mercado para poneren contacto a <strong>de</strong>sarrolladores con sus clientes potenci<strong>al</strong>es.Para ofrecer un proyecto, un cliente escribía unaRFP (request for propos<strong>al</strong>, o ‘petición <strong>de</strong> propuesta’),especificando qué <strong>de</strong>sarrollo se necesita y cuántos recursosse está dispuesto a proporcionar para ese <strong>de</strong>sarrollo.Estas RFP se publicaban en el sitio. Cuando un<strong>de</strong>sarrollador veía una que le interesaba, hacía unaoferta para ella. Cuando un <strong>de</strong>sarrollador y un clientese ponían <strong>de</strong> acuerdo en los términos <strong>de</strong>l <strong>de</strong>sarrollo,ANOTACIONES113


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Esta i<strong>de</strong>a <strong>de</strong> financiación es similar a la <strong>de</strong> los mercados <strong>de</strong> bonos <strong>al</strong>os que acu<strong>de</strong>n las empresas, pero orientado <strong>al</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong><strong>libre</strong>. Presenta unas cuantas variantes, pero una <strong>de</strong> las más conocidasfunciona como sigue. Cuando un <strong>de</strong>sarrollador (individu<strong>al</strong> oempresa) tiene i<strong>de</strong>a <strong>de</strong> un nuevo programa o <strong>de</strong> una mejora a unoexistente, lo escribe en forma <strong>de</strong> especificación, estima el coste quetendría su <strong>de</strong>sarrollo y emite bonos para su construcción. Estos bonostienen un v<strong>al</strong>or que se ejecuta sólo si el proyecto fin<strong>al</strong>mente se termina.Cuando el <strong>de</strong>sarrollador ha vendido suficientes bonos, comienzael <strong>de</strong>sarrollo, que va financiando con préstamos basados en ´éstos.Cuando termina el <strong>de</strong>sarrollo y se certifica por <strong>al</strong>guna tercera partein<strong>de</strong>pendiente que efectivamente lo re<strong>al</strong>izado cumple con las especificaciones,el <strong>de</strong>sarrollador “ejecuta” los bonos que había vendido,paga sus <strong>de</strong>udas, y lo que le queda son los beneficios que obtienepor el <strong>de</strong>sarrollo.¿Quién estaría interesado en adquirir los mencionados bonos? Obviamente,los usuarios que <strong>de</strong>searan que ese nuevo programa o esamejora a uno ya existente se re<strong>al</strong>izaran. De <strong>al</strong>guna manera, este sistema<strong>de</strong> bonos permitiría que las partes interesadas fijaran (siquieraparci<strong>al</strong>mente) las priorida<strong>de</strong>s <strong>de</strong> los <strong>de</strong>sarrolladores mediante lacompra <strong>de</strong> bonos. Ello permitiría <strong>al</strong> mismo tiempo que no hiciese f<strong>al</strong>comenzabaun proyecto. Norm<strong>al</strong>mente, cada proyectoestaba supervisado por un peer reviewer, un revisor,que se encargaba <strong>de</strong> asegurarse <strong>de</strong> que el <strong>de</strong>sarrolladorcumplía las especificaciones, que efectivamente éstastenían sentido, que aconsejaba sobre cómo llevara<strong>de</strong>lante el proyecto, etc. SourceXchange (propiedad<strong>de</strong> la empresa CollabNet) se encargaba <strong>de</strong> ofrecer elsitio, garantizar la competencia <strong>de</strong> los revisores, asegurarse<strong>de</strong>l pago en caso <strong>de</strong> que los proyectos se completasen,y ofrecer herramientas para el seguimiento <strong>de</strong>lproyecto (servicios que facturaba <strong>al</strong> cliente). El primerproyecto mediado por SourceXchange se terminó enmarzo <strong>de</strong>l 2000, pero poco más <strong>de</strong> un año <strong>de</strong>spués, enabril <strong>de</strong>l 2001, el sitio cerró.• Venta <strong>de</strong> bonos para financiar un proyectoANOTACIONES114


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492ta que una sola entidad asumiese los costes <strong>de</strong> <strong>de</strong>sarrollo, sino quepodrían repartirse entre muchas (incluyendo individuos), que a<strong>de</strong>mássólo tendrían que pagar si fin<strong>al</strong>mente el proyecto termina conéxito. Un mecanismo muy similar a éste se propone, con mucho más<strong>de</strong>t<strong>al</strong>le, en Chris Rasch. (2001). “The W<strong>al</strong>l Street performer protocol.using <strong>software</strong> completion bonds to fund open source <strong>software</strong> <strong>de</strong>velopment”.First Monday, (vol. 6, núm. 6, mayo).NotaEl sistema <strong>de</strong> bonos <strong>de</strong>scrito está basado en el StreetPerformer Protocol (protocolo <strong>de</strong>l artista c<strong>al</strong>lejero), unmecanismo basado en el comercio electrónico diseñadopara facilitar la financiación privada <strong>de</strong> trabajos <strong>de</strong>creación <strong>libre</strong>s. Resumiendo, quien esté interesado enque se re<strong>al</strong>ice un <strong>de</strong>terminado trabajo prometerá form<strong>al</strong>mentepagar una cierta cantidad si el trabajo sere<strong>al</strong>iza y es publicado <strong>libre</strong>mente. Sus intenciones sonbuscar una nueva manera <strong>de</strong> financiar trabajos relativamentepequeños que que<strong>de</strong>n a disposición <strong>de</strong> todoel mundo, pero pue<strong>de</strong> exten<strong>de</strong>rse <strong>de</strong> muchas formas(los bonos para la construcción <strong>de</strong> <strong>software</strong> <strong>libre</strong> sonuna <strong>de</strong> ellas). Pue<strong>de</strong> verse un pequeño caso <strong>de</strong> puestaen práctica <strong>de</strong> un <strong>de</strong>rivado <strong>de</strong> este protocolo (el Ration<strong>al</strong>Street Performer Protocol, Protocolo Racion<strong>al</strong> <strong>de</strong>lArtista C<strong>al</strong>lejero, Paul Harrison en http://thecircle.org.au/funding_results.html,don<strong>de</strong> se aplica a laconsecución <strong>de</strong> fondos para la financiación <strong>de</strong> parte<strong>de</strong> The Circle, un proyecto <strong>de</strong> <strong>software</strong> <strong>libre</strong>.Lectura complementaria[Ver bibliografía, apartados132, 133 y 116]• Cooperativas <strong>de</strong> <strong>de</strong>sarrolladoresEn este caso, los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong>, en lugar <strong>de</strong> trabajarindividu<strong>al</strong>mente o para una empresa, se reúnen en <strong>al</strong>gún tipo<strong>de</strong> asociación (norm<strong>al</strong>mente similar a una cooperativa). Por lo <strong>de</strong>más,su funcionamiento es similar <strong>al</strong> <strong>de</strong> una empresa, matizado quizáspor su compromiso ético con el <strong>software</strong> <strong>libre</strong>, que pue<strong>de</strong> serparte <strong>de</strong> sus estatutos (aunque también una empresa pue<strong>de</strong> haceresto). En este tipo <strong>de</strong> organizaciones pue<strong>de</strong>n darse combinacionesvariadas <strong>de</strong> trabajo voluntario con trabajo remunerado. Un ejemplo<strong>de</strong> este tipo <strong>de</strong> organización es Free Developers.ANOTACIONES115


© FUOC • XP06/M2101/01492Software <strong>libre</strong>5.2. Mo<strong>de</strong>los <strong>de</strong> negocio basados en <strong>software</strong> <strong>libre</strong>A<strong>de</strong>más <strong>de</strong> los mecanismos <strong>de</strong> financiación <strong>de</strong> los proyectos, ya tratados,otro aspecto muy relacionado con la economía que merece lapena tratar es el <strong>de</strong> los mo<strong>de</strong>los <strong>de</strong> negocio. Ya <strong>al</strong> hablar <strong>de</strong> estosmecanismos <strong>de</strong> financiación se han mencionado <strong>al</strong>gunos brevemente,ahora en este apartado los <strong>de</strong>scribiremos <strong>de</strong> forma <strong>al</strong>go más metódica.En gener<strong>al</strong>, pue<strong>de</strong> <strong>de</strong>cirse que son muchos los mo<strong>de</strong>los <strong>de</strong> negocioque se están explorando en torno <strong>al</strong> <strong>software</strong> <strong>libre</strong>, <strong>al</strong>gunos más clásicosy otros más innovadores. Hay que tener en cuenta que entre losmo<strong>de</strong>los más habitu<strong>al</strong>es en la industria <strong>de</strong>l <strong>software</strong> no es fácil usaraquellos basados en la venta <strong>de</strong> licencias <strong>de</strong> uso <strong>de</strong> programas producidos,pues en el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> ése es un mecanismo<strong>de</strong> financiación muy difícil <strong>de</strong> explotar. Sin embargo, sí que se pue<strong>de</strong>nutilizar los que están basados en el servicio a terceros, con laventaja <strong>de</strong> que, sin ser necesariamente el productor <strong>de</strong> un programa,pue<strong>de</strong> darse soporte completo sobre él.aaaVenta <strong>de</strong> <strong>software</strong> <strong>libre</strong> a tanto por copiaANOTACIONESEn el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es difícil cobrar licencias<strong>de</strong> uso, pero en gener<strong>al</strong> no imposible. Norm<strong>al</strong>mente,no hay nada en las <strong>de</strong>finiciones <strong>de</strong> <strong>software</strong> <strong>libre</strong> queimpida que una empresa cree un producto y sólo se lodistribuya a quien le pague una cierta cantidad. Porejemplo, un <strong>de</strong>terminado productor podría <strong>de</strong>cidir distribuirsu producto con una licencia <strong>libre</strong>, pero sólo aquien le pague 1.000 euros por copia (<strong>de</strong> forma similara como se hace en el mundo clásico <strong>de</strong>l <strong>software</strong> propietario).Sin embargo, aunque esto es teóricamente posible, enla práctica es bastante difícil <strong>de</strong> que suceda. Porqueuna vez que el productor ha vendido la primera copia,quien la recibe pue<strong>de</strong> estar motivado a tratar <strong>de</strong> recu-116


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492aaaperar su inversión vendiendo más copias a menor precio(<strong>al</strong>go que no pue<strong>de</strong> prohibir la licencia <strong>de</strong>l programa,si éste es <strong>libre</strong>). En el ejemplo anterior, podríatratar <strong>de</strong> ven<strong>de</strong>r 10 copias a 100 euros cada una, conlo que el producto le s<strong>al</strong>dría gratis (y a<strong>de</strong>más dificultaríamucho que el productor origin<strong>al</strong> vendiese otra copiaa 1.000 euros, si el producto pue<strong>de</strong> obtenerse leg<strong>al</strong>mentepor la décima parte). Es fácil <strong>de</strong>ducir cómo esteproceso continuaría en cascada hasta la venta <strong>de</strong> copiasa un precio cercano <strong>al</strong> coste margin<strong>al</strong> <strong>de</strong> copia,que con las tecnologías actu<strong>al</strong>es es prácticamente cero.Aun así, y teniendo en cuenta que el mecanismo <strong>de</strong>scritopropiciará que norm<strong>al</strong>mente el productor no puedaponer un precio (especi<strong>al</strong>mente un precio <strong>al</strong>to) <strong>al</strong>simple hecho <strong>de</strong> la redistribución <strong>de</strong>l programa, haymo<strong>de</strong>los <strong>de</strong> negocio que implícitamente hacen justamenteeso. Un ejemplo es el <strong>de</strong> las distribuciones <strong>de</strong>GNU/Linux, que se ven<strong>de</strong>n por un precio muy bajocomparado con sus competidores propietarios, perosuperior (y norm<strong>al</strong>mente claramente superior) <strong>al</strong> coste<strong>de</strong> copia (incluso cuando se pue<strong>de</strong>n bajar <strong>libre</strong>mente<strong>de</strong> Internet). Por supuesto, en estos casos juegan a<strong>de</strong>másotros factores, como la imagen <strong>de</strong> marca o la comodidadpara el consumidor. Pero no es éste el únicocaso. Por lo tanto, más que indicar que con <strong>software</strong> <strong>libre</strong>no se pue<strong>de</strong> ven<strong>de</strong>r a tanto por copia, hay que teneren cuenta que es más difícil <strong>de</strong> hacer, y probablementese obtendrá menos beneficio, pero que pue<strong>de</strong> habermo<strong>de</strong>los basados justamente en eso.Dadas estas limitaciones (y estas ventajas) <strong>de</strong>s<strong>de</strong> hace unos años se estánprobando variantes <strong>de</strong> los mo<strong>de</strong>los <strong>de</strong> negocio habitu<strong>al</strong>es en la industriaque son viables con <strong>software</strong>, a la vez que se buscan mo<strong>de</strong>losinnovadores, que tratan <strong>de</strong> explotar las nuevas posibilida<strong>de</strong>s que ofreceel <strong>software</strong> <strong>libre</strong>. Sin duda en los próximos años veremos aún más experimentaciónen este campo, y también tendremos más informaciónsobre qué mo<strong>de</strong>los pue<strong>de</strong>n funcionar bien, y en qué circunstancias.ANOTACIONES117


© FUOC • XP06/M2101/01492Software <strong>libre</strong>En este apartado vamos a ofrecer una panorámica <strong>de</strong> los que máshabitu<strong>al</strong>mente nos encontramos hoy día, agrupados con la intención<strong>de</strong> mostrar <strong>al</strong> lector lo que tienen en común y lo que les diferencia,centrándonos en los mo<strong>de</strong>los basados en el <strong>de</strong>sarrollo y los serviciosen torno a un producto <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Los ingresos en este casoprovienen directamente <strong>de</strong> estas activida<strong>de</strong>s <strong>de</strong> <strong>de</strong>sarrollo y serviciospara el producto, pero no necesariamente implican <strong>de</strong>sarrollo <strong>de</strong>nuevos productos. Cuando sí que se hace <strong>de</strong>sarrollo, estos mo<strong>de</strong>lostienen como subproducto la financiación <strong>de</strong> productos <strong>de</strong> <strong>software</strong> <strong>libre</strong>,por lo que son mo<strong>de</strong>los especi<strong>al</strong>mente interesantes, y su impactosobre el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en gener<strong>al</strong> pue<strong>de</strong> ser gran<strong>de</strong>.En cu<strong>al</strong>quier caso, y aunque aquí ofrecemos una clasificación relativamenteestricta, no hay que olvidar que casi todas las empresasusan en re<strong>al</strong>idad mo<strong>de</strong>los mixtos, que son combinaciones <strong>de</strong>los mo<strong>de</strong>los que hemos <strong>de</strong>scrito, entre sí y con otros más tradicion<strong>al</strong>es.5.2.1. Mejor conocimientoLa empresa que utiliza este mo<strong>de</strong>lo <strong>de</strong> negocio trata <strong>de</strong> rentabilizarsu conocimiento <strong>de</strong> un producto (o conjunto <strong>de</strong> productos) <strong>libre</strong>s. Susingresos provendrán <strong>de</strong> clientes a los que ven<strong>de</strong>rá servicios relacionadoscon ese conocimiento, típicamente <strong>de</strong>sarrollos basados en elproducto, modificaciones, adaptaciones, inst<strong>al</strong>aciones e integracionescon otros. La ventaja competitiva <strong>de</strong> la empresa estará en granmedida relacionada con el mejor conocimiento <strong>de</strong>l producto encuestión que el que tienen sus competidores: por ello, la empresa estaráespeci<strong>al</strong>mente bien situada si es productora <strong>de</strong>l producto o participaen el proyecto que lo produce.ANOTACIONESÉsta es una <strong>de</strong> las razones por la que las empresas que utilizan estemo<strong>de</strong>lo suelen participar activamente en los proyectos relacionadoscon el <strong>software</strong> sobre el que tratan <strong>de</strong> ven<strong>de</strong>r servicios: es una formamuy eficiente <strong>de</strong> obtener conocimiento sobre él, y lo que es más importante,<strong>de</strong> que ese conocimiento sea reconocido. Des<strong>de</strong> luego, explicarlea un cliente que entre los empleados hay varios<strong>de</strong>sarrolladores <strong>de</strong>l proyecto que produce el <strong>software</strong>, que, por ejemplo,se quiere modificar, pue<strong>de</strong> ser una buena garantía.118


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492aaaRelación con los proyectos <strong>de</strong> <strong>de</strong>sarrolloPor lo tanto, este tipo <strong>de</strong> empresas tiene un gran interésen dar la imagen <strong>de</strong> que poseen un buen conocimiento<strong>de</strong> <strong>de</strong>terminados productos <strong>libre</strong>s. Unainteresante consecuencia <strong>de</strong> ello es que su apoyo aproyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> (por ejemplo, participandoactivamente en ellos, o permitiendo a sus empleadosque lo hagan durante su jornada labor<strong>al</strong>) no espor lo tanto <strong>al</strong>go meramente filantrópico. Por el contrario,pue<strong>de</strong> ser uno <strong>de</strong> los activos más rentables <strong>de</strong>la empresa, ya que sus clientes lo v<strong>al</strong>orarán muy positivamentecomo una muestra clara <strong>de</strong> que conocenel producto en cuestión. A<strong>de</strong>más, <strong>de</strong> esta forma podránseguir muy <strong>de</strong> cerca el <strong>de</strong>sarrollo, tratando <strong>de</strong>asegurarse, por ejemplo, <strong>de</strong> que <strong>al</strong>gunas <strong>de</strong> las mejoras<strong>de</strong>mandadas por sus clientes pasan a formarparte <strong>de</strong>l producto <strong>de</strong>sarrollado por el proyecto.An<strong>al</strong>izándolo <strong>de</strong>s<strong>de</strong> un punto <strong>de</strong> vista más gener<strong>al</strong>,ésta es una situación don<strong>de</strong> ambas partes, la empresay el proyecto <strong>de</strong> <strong>de</strong>sarrollo, ganan con la colaboraciónque se lleva a cabo. El proyecto gana por el<strong>de</strong>sarrollo re<strong>al</strong>izado por la empresa, o porque <strong>al</strong>gunos<strong>de</strong> sus <strong>de</strong>sarrolladores pasan a ser remunerados(siquiera parci<strong>al</strong>mente) por su trabajo en el proyecto.La empresa gana en conocimiento <strong>de</strong>l producto, enimagen hacia sus clientes y en una cierta influenciasobre el proyecto.Los servicios que proporcionan este tipo <strong>de</strong> empresas pue<strong>de</strong>n sermuy amplios, pero norm<strong>al</strong>mente consisten en <strong>de</strong>sarrollos a medida,adaptaciones o integraciones <strong>de</strong> los productos en los que son expertas,o bien servicios <strong>de</strong> consultoría, don<strong>de</strong> aconsejan a sus clientescómo utilizar mejor el producto en cuestión (especi<strong>al</strong>mente si es complejo,o si su correcto funcionamiento es crítico para el cliente encuestión).ANOTACIONES119


© FUOC • XP06/M2101/01492Software <strong>libre</strong>EjemploAlgunos ejemplos <strong>de</strong> empresas que hasta cierto puntoutilizan este mo<strong>de</strong>lo <strong>de</strong> negocio son los siguientes:• LinuxCareLectura complementaria[Ver bibliografía, apartado84]Fundada en 1996, proporcionaba en sus orígenes servicios<strong>de</strong> consultoría y soporte para GNU/Linux y <strong>software</strong><strong>libre</strong> en EE.UU., y su plantilla estaba compuestafundament<strong>al</strong>mente por expertos en GNU/Linux. Sinembargo, en 1992 cambió sus objetivos, y <strong>de</strong>s<strong>de</strong> entoncesse ha especi<strong>al</strong>izado en proporcionar servicioscasi exclusivamente a Linux ejecutando sobre máquinasvirtu<strong>al</strong>es z/VM en gran<strong>de</strong>s or<strong>de</strong>nadores <strong>de</strong> IBM. Sumo<strong>de</strong>lo <strong>de</strong> negocio ha cambiado también a mejor conocimientocon limitaciones, <strong>al</strong> ofrecer como parte fundament<strong>al</strong><strong>de</strong> sus servicios una aplicación no <strong>libre</strong>,Levanta.• AlcoveANOTACIONESLectura complementaria[Ver bibliografía, apartados4 y 5]Fundada en 1997 en Francia, proporciona fundament<strong>al</strong>menteservicios <strong>de</strong> consultoría, consultoría estratégica,soporte y <strong>de</strong>sarrollo para <strong>software</strong> <strong>libre</strong>. Des<strong>de</strong> sufundación, Alcove ha mantenido en plantilla a <strong>de</strong>sarrolladores<strong>de</strong> varios proyectos <strong>libre</strong>s, y ha tratado <strong>de</strong> rentabilizarloen términos <strong>de</strong> imagen. También ha tratado<strong>de</strong> ofrecer una imagen, en gener<strong>al</strong>, <strong>de</strong> empresa vinculadaa la comunidad <strong>de</strong> <strong>software</strong> <strong>libre</strong>, por ejemplo,colaborando con asociaciones <strong>de</strong> usuarios y dando publicidada sus colaboraciones con proyectos <strong>libre</strong>s (porejemplo, <strong>de</strong>s<strong>de</strong> Alcove-Labs).5.2.2. Mejor conocimiento con limitacionesEstos mo<strong>de</strong>los son similares a los expuestos en el apartado anterior,pero tratando <strong>de</strong> limitar la competencia a que pue<strong>de</strong>n verse sometidos.Mientras que en los mo<strong>de</strong>los puros basados en el mejor conocimientocu<strong>al</strong>quiera pue<strong>de</strong>, en principio, entrar en competencia, ya120


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492que el <strong>software</strong> utilizado es el mismo (y <strong>libre</strong>), en este caso se trata<strong>de</strong> evitar esa situación poniendo barreras a esa competencia. Estasbarreras suelen consistir en patentes o licencias propietarias, quenorm<strong>al</strong>mente afectan a una parte pequeña (pero fundament<strong>al</strong>) <strong>de</strong>lproducto <strong>de</strong>sarrollado. Por esta razón, estos mo<strong>de</strong>los pue<strong>de</strong>n consi<strong>de</strong>rarseen re<strong>al</strong>idad como mixtos, en el sentido <strong>de</strong> que están a cab<strong>al</strong>loentre el <strong>software</strong> <strong>libre</strong> y el propietario.En muchos casos, la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong> <strong>de</strong>sarrolla su propiaversión para ese componente, con lo que la ventaja competitivapue<strong>de</strong> <strong>de</strong>saparecer, o incluso volverse en contra <strong>de</strong> la empresa encuestión si su competidor <strong>libre</strong> se convierte en el estándar <strong>de</strong>l mercadoy es <strong>de</strong>mandado por sus propios clientes.EjemploSon muchos los casos don<strong>de</strong> se usa este mo<strong>de</strong>lo <strong>de</strong> negocio,ya que es común consi<strong>de</strong>rarlo como menosarriesgado que el <strong>de</strong> conocimiento puro. Sin embargo,las empresas que lo han usado han tenido evolucionesvariadas. Algunas <strong>de</strong> ellas son:• C<strong>al</strong><strong>de</strong>raLa historia <strong>de</strong> C<strong>al</strong><strong>de</strong>ra es complicada. En sus inicios,creó su propia distribución <strong>de</strong> GNU/Linux, orientada <strong>al</strong>as empresas: C<strong>al</strong><strong>de</strong>ra OpenLinux. En el 2001, compróla división <strong>de</strong> Unix <strong>de</strong> SCO, y en el 2002 cambió sunombre a “SCO Group”. Su estrategia empresari<strong>al</strong> hadado tantos vuelcos como su nombre, <strong>de</strong>s<strong>de</strong> su tot<strong>al</strong>apoyo a Linux hasta sus <strong>de</strong>mandas contra IBM y RedHat en el 2003, y su abandono <strong>de</strong> su propia distribución.Pero en lo que se refiere a este apartado, el negocio<strong>de</strong> C<strong>al</strong><strong>de</strong>ra, <strong>al</strong> menos hasta el 2002, es un claroexponente <strong>de</strong>l mejor conocimiento con limitaciones.C<strong>al</strong><strong>de</strong>ra trataba <strong>de</strong> explotar su conocimiento <strong>de</strong> la plataformaGNU/Linux, pero limitando la competencia aque podía verse sometida mediante la inclusión <strong>de</strong> <strong>software</strong>propietario en su distribución. Esto hacía difícil asus clientes cambiar <strong>de</strong> distribución una vez que la habíanadoptado, pues aunque las <strong>de</strong>más distribucionesLectura complementaria[Ver bibliografía, apartado15]ANOTACIONES121


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>de</strong> GNU/Linux incluían la parte <strong>libre</strong> <strong>de</strong> C<strong>al</strong><strong>de</strong>ra Open-Linux, no encontraban en ellas la parte propietaria.• XimianLectura complementaria[Ver bibliografía, apartado58]Fundada en 1999 con el nombre <strong>de</strong> Helix Co<strong>de</strong> por<strong>de</strong>sarrolladores muy vinculados <strong>al</strong> proyecto GNOME,fue adquirida en agosto <strong>de</strong>l 2003 por Novell. La mayorparte <strong>de</strong>l <strong>software</strong> que ha <strong>de</strong>sarrollado ha sido <strong>libre</strong> (engener<strong>al</strong>, parte <strong>de</strong> GNOME). Sin embargo, en un ámbitomuy concreto Ximian <strong>de</strong>cidió licenciar un componentecomo <strong>software</strong> propietario: el Connector forExchange. Éste es un módulo que permite a uno <strong>de</strong> susproductos estrella, Evolution (un gestor <strong>de</strong> informaciónperson<strong>al</strong> que incluye correo electrónico, agenda, c<strong>al</strong>endario,etc.) interactuar con servidores MS Exchange,muy utilizados en gran<strong>de</strong>s organizaciones. De esta manera,trata <strong>de</strong> competir ventajosamente con otras empresasque proporcionan servicios basados enGNOME, quizás con los productos <strong>de</strong>sarrollados por lapropia Ximian, que no podrán interaccionar tan fácilmentecon Exchange. S<strong>al</strong>vo por este producto, el mo<strong>de</strong>lo<strong>de</strong> Ximian ha sido <strong>de</strong> mejor conocimiento, ytambién basado en ser la fuente <strong>de</strong> un programa (vermás a<strong>de</strong>lante).5.2.3. Fuente <strong>de</strong> un producto <strong>libre</strong>ANOTACIONESEste mo<strong>de</strong>lo es similar <strong>al</strong> basado en el mejor conocimiento, pero especi<strong>al</strong>izándolo<strong>de</strong> forma que la empresa que lo utiliza es productora, casien su tot<strong>al</strong>idad, <strong>de</strong> un producto <strong>libre</strong>. Natur<strong>al</strong>mente, la ventaja competitivaaumenta <strong>al</strong> ser éstos los <strong>de</strong>sarrolladores <strong>de</strong>l producto en cuestión,controlar su evolución, y tenerlo antes que la competencia. Todo ello posicionaa la empresa <strong>de</strong>sarrolladora en un lugar muy bueno <strong>de</strong> cara <strong>al</strong>os clientes que <strong>de</strong>seen servicios sobre ese programa. A<strong>de</strong>más, es unmo<strong>de</strong>lo muy interesante en términos <strong>de</strong> imagen, ya que la empresa ha<strong>de</strong>mostrado su potenci<strong>al</strong> <strong>de</strong>sarrollador con la creación y mantenimiento<strong>de</strong> la aplicación en cuestión, lo que pue<strong>de</strong> ser muy interesante <strong>de</strong> cara122


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492a convencer a posibles clientes <strong>de</strong> sus capacida<strong>de</strong>s. Igu<strong>al</strong>mente, proporcionamuy buena imagen <strong>de</strong> cara a la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong> engener<strong>al</strong>, ya que reciben <strong>de</strong> la empresa un nuevo producto <strong>libre</strong> quepasa a formar parte <strong>de</strong>l acervo común.EjemploSon muchos los productos <strong>libre</strong>s que comenzaron su<strong>de</strong>sarrollo <strong>de</strong>ntro <strong>de</strong> una empresa, y muy habitu<strong>al</strong>menteha continuado siendo esa empresa quien ha guiadosu <strong>de</strong>sarrollo posterior. A modo <strong>de</strong> ejemplo, po<strong>de</strong>moscitar los siguientes casos:• XimianYa hemos mencionado cómo, en parte, ha usado el mo<strong>de</strong>lo<strong>de</strong> mejor conocimiento con limitaciones. Pero, engener<strong>al</strong>, Ximian ha seguido un claro mo<strong>de</strong>lo basado enser la fuente <strong>de</strong> programas <strong>libre</strong>s. Sus princip<strong>al</strong>es productos,como Evolution, RedCarpet o Mono se han distribuidobajo licencias <strong>de</strong> GNU, y Ximian los ha<strong>de</strong>sarrollado casi en exclusiva <strong>de</strong>s<strong>de</strong> el comienzo. Laempresa ha tratado <strong>de</strong> rentabilizar este <strong>de</strong>sarrollo consiguiendocontratos para hacerlos evolucionar en ciertossentidos, para adaptarlos a las necesida<strong>de</strong>s <strong>de</strong> sus clientesy ofreciendo person<strong>al</strong>ización y mantenimiento.• Zope CorporationEn 1995 se funda Digit<strong>al</strong> Creations, que <strong>de</strong>sarrolla unproducto propietario para la gestión <strong>de</strong> anuncios clasificadosvía web. En 1997 recibió una inyección <strong>de</strong> capit<strong>al</strong>por parte, entre otros, <strong>de</strong> una empresa <strong>de</strong> capit<strong>al</strong>-riesgo,Optic<strong>al</strong>ity Ventures. Lo extraño (en aquella época) <strong>de</strong> estainversión es que le pusieron como condición que distribuyeracomo <strong>software</strong> <strong>libre</strong> la evolución <strong>de</strong> su producto, loque más a<strong>de</strong>lante fue Zope, uno <strong>de</strong> los gestores <strong>de</strong> contenidosmás populares en Internet. El mo<strong>de</strong>lo <strong>de</strong> negocio<strong>de</strong> la empresa <strong>de</strong>s<strong>de</strong> entonces fue producir Zope y productosrelacionados con él, y ofrecer servicios <strong>de</strong> adaptacióny mantenimiento para todos ellos. Zope CorporationLectura complementaria[Ver bibliografía, apartado59]ANOTACIONES123


© FUOC • XP06/M2101/01492Software <strong>libre</strong>ha sabido, a<strong>de</strong>más, crear una dinámica comunidad <strong>de</strong><strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> sus productos,y colaborar activamente con ellos.5.2.4. Fuente <strong>de</strong> un producto con limitacionesEste mo<strong>de</strong>lo es similar <strong>al</strong> anterior, pero incluye medidas para limitarla competencia o maximizar los ingresos. Entre las limitaciones máshabitu<strong>al</strong>es po<strong>de</strong>mos consi<strong>de</strong>rar las siguientes:• Distribución propietaria durante un tiempo, luego <strong>libre</strong>Con o sin promesa <strong>de</strong> distribución <strong>libre</strong> posterior, cada nueva versión<strong>de</strong>l producto se ven<strong>de</strong> como <strong>software</strong> propietario. Pasado untiempo (norm<strong>al</strong>mente, cuando se empieza a comerci<strong>al</strong>izar unanueva versión, también como <strong>software</strong> propietario), esa versiónpasa a distribuirse con una licencia <strong>libre</strong>. De esta manera, la empresaproductora obtiene ingresos <strong>de</strong> los clientes interesados endisponer lo antes posible <strong>de</strong> nuevas versiones, y a la vez minimiz<strong>al</strong>a competencia, ya que cu<strong>al</strong>quier empresa que quiera competirusando ese producto sólo podrá hacerlo con la versión <strong>libre</strong> (disponiblesólo cuando ya existe una nueva versión propietaria, supuestamentemejor y más completa).• Distribución limitada durante un tiempoANOTACIONESEn este caso, el <strong>software</strong> es <strong>libre</strong> <strong>de</strong>s<strong>de</strong> que se comienza a distribuir.Pero como nada en una licencia <strong>libre</strong> obliga a distribuir el programaa quien lo quiera (esto es <strong>al</strong>go que quien tiene el <strong>software</strong> pue<strong>de</strong> hacero no), lo que hace el productor es distribuirlo durante un tiemposólo a sus clientes, que le pagan por ello (norm<strong>al</strong>mente en forma <strong>de</strong>contrato <strong>de</strong> mantenimiento). Al cabo <strong>de</strong> un tiempo, el productor lodistribuye a cu<strong>al</strong>quiera, por ejemplo poniéndolo en un archivo <strong>de</strong> accesopúblico. De esta manera, el productor obtiene ingresos <strong>de</strong> susclientes, que perciben esta disposición preferente <strong>de</strong>l <strong>software</strong> comoun v<strong>al</strong>or añadido. Natur<strong>al</strong>mente, el mo<strong>de</strong>lo sólo funciona si los clientesa su vez no hacen público el programa cuando lo reciben. Paracierto tipo <strong>de</strong> clientes, esto pue<strong>de</strong> no ser habitu<strong>al</strong>.124


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492En gener<strong>al</strong>, en estos casos las empresas <strong>de</strong>sarrolladoras obtienen losbeneficios mencionados, pero no a coste cero. Debido <strong>al</strong> retraso conel que el producto está disponible para la comunidad <strong>de</strong>l <strong>software</strong><strong>libre</strong>, es prácticamente imposible que ésta pueda colaborar en su <strong>de</strong>sarrollo,por lo que el productor se beneficiará muy poco <strong>de</strong> contribucionesexternas.EjemploAlgunos casos <strong>de</strong> empresas que utilizan este mo<strong>de</strong>lo <strong>de</strong>negocio son lo siguientes:• artofco<strong>de</strong> LLCDes<strong>de</strong> el año 2000, artofco<strong>de</strong> comerci<strong>al</strong>iza Ghostscripten tres versiones (anteriormente lo hacía Alladin Enterprises,con un mo<strong>de</strong>lo similar). La versión más actu<strong>al</strong> ladistribuye como AFPL Ghostscript, bajo una licenciapropietaria (que permite el uso y la distribución no comerci<strong>al</strong>).La siguiente (con un retraso <strong>de</strong> un año, más omenos) la distribuye como GNU Ghostscript, bajo laGNU GPL. Por ejemplo, en el verano <strong>de</strong>l 2003, la versiónAFPL es la 8.11 (liberada el 16 <strong>de</strong> agosto), mientrasque la versión GNU es la 7.07 (distribuida comot<strong>al</strong> el 17 <strong>de</strong> mayo, pero cuya versión AFPL equiv<strong>al</strong>entees <strong>de</strong>l 2002). A<strong>de</strong>más, artofco<strong>de</strong> ofrece una terceraversión, con una licencia propietaria que permite la integraciónen productos no compatibles con la GNUGPL (en este caso usa un mo<strong>de</strong>lo du<strong>al</strong>, que será <strong>de</strong>scritomás a<strong>de</strong>lante).Lectura complementaria[Ver bibliografía, apartado9]• Ada Core TechnologiesFue fundada en 1994 por los autores <strong>de</strong>l primer compilador<strong>de</strong> Ada 95, cuyo <strong>de</strong>sarrollo fue financiado enparte por el Gobierno <strong>de</strong> EE.UU., y que estaba basadoen GCC, el compilador <strong>de</strong> GNU. Des<strong>de</strong> el principio susproductos han sido <strong>software</strong> <strong>libre</strong>. Pero la mayoría <strong>de</strong>ellos los ofrecen primero a sus clientes, como parte <strong>de</strong>un contrato <strong>de</strong> mantenimiento. Por ejemplo, su compilador,que sigue estando basado en GCC y se distribu-ANOTACIONESLectura complementaria[Ver bibliografía, apartado2]125


© FUOC • XP06/M2101/01492Software <strong>libre</strong>ye bajo la GNU GPL, se ofrece a sus clientes comoGnat Pro. Ada Core Technologies no ofrece este compilador<strong>al</strong> público en gener<strong>al</strong> <strong>de</strong> ninguna manera, ynorm<strong>al</strong>mente no se encuentran versiones <strong>de</strong>l mismo enla Red. Sin embargo, con un retraso variable (en tornoa un año), Ada Core Technologies ofrece las versionespúblicas <strong>de</strong> su compilador, muy similares pero sin ningúntipo <strong>de</strong> soporte, en un archivo <strong>de</strong> ftp anónimo.5.2.5. Licencias especi<strong>al</strong>esEn estos mo<strong>de</strong>los, la empresa produce un producto que distribuyebajo dos licencias o más. Al menos una <strong>de</strong> ellas es <strong>de</strong> <strong>software</strong> <strong>libre</strong>,pero las otras son típicamente propietarias y le permiten ven<strong>de</strong>r elproducto <strong>de</strong> una forma más o menos tradicion<strong>al</strong>. Norm<strong>al</strong>mente, estasventas se complementan con la oferta <strong>de</strong> consultoría y <strong>de</strong>sarrollosrelacionados con el producto. Por ejemplo, una empresa pue<strong>de</strong> distribuirun producto como <strong>software</strong> <strong>libre</strong> bajo la GNU GPL, pero ofrecertambién una versión propietaria (simultáneamente, y sin retrasopara ninguna <strong>de</strong> las dos) para quien no quiera las condiciones <strong>de</strong> laGPL, por ejemplo, porque quiere integrar el producto con uno propietario(<strong>al</strong>go que la GPL no permite).EjemploANOTACIONESLectura complementaria[Ver bibliografía, apartado50]Sleepycat Software fue fundada en 1996, y anunciaque <strong>de</strong>s<strong>de</strong> ese momento ha tenido beneficios (lo que<strong>de</strong>s<strong>de</strong> luego es notable en una empresa relacionadacon el <strong>software</strong>). Sus productos, incluyendo Berkeley DB(un gestor <strong>de</strong> datos muy popular y que pue<strong>de</strong> empotrarsefácilmente en otras aplicaciones) se distribuyenbajo una licencia <strong>libre</strong> que especifica que en caso <strong>de</strong>empotrarse en otro producto, ha <strong>de</strong> ofrecerse el códigofuente <strong>de</strong> ambos. Sleepycat ofrece servicios <strong>de</strong> consultoríay <strong>de</strong>sarrollo para sus productos, pero a<strong>de</strong>más losofrece bajo licencias que permiten empotrarlos sin tenerque distribuir el código fuente. Natur<strong>al</strong>mente, estolo hace bajo contrato específico, y en gener<strong>al</strong> en régimen<strong>de</strong> venta como <strong>software</strong> propietario.126


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014925.2.6. Venta <strong>de</strong> marcaAunque puedan conseguirse productos muy similares por menos dinero,muchos clientes están dispuestos a pagar el extra por comprar unamarca. Este principio es utilizado por empresas que invierten en estableceruna marca con buena imagen, y bien reconocida, que más a<strong>de</strong>lanteles permita ven<strong>de</strong>r con suficiente margen productos <strong>libre</strong>s. En muchoscasos no sólo ven<strong>de</strong>n esos productos, sino que los acompañan <strong>de</strong> serviciosque los clientes aceptarán también como v<strong>al</strong>or añadido.Los casos más conocidos <strong>de</strong> este mo<strong>de</strong>lo <strong>de</strong> negocio son las empresasque comerci<strong>al</strong>izan distribuciones GNU/Linux. Estas empresas tratan<strong>de</strong> ven<strong>de</strong>r <strong>al</strong>go que en gener<strong>al</strong> se pue<strong>de</strong> obtener a un costebastante menor en la Red (o en otras fuentes con menos imagen <strong>de</strong>marca). Por ello han <strong>de</strong> conseguir que el consumidor reconozca sumarca, y esté dispuesto a pagar el sobreprecio. Para ello, no sólo inviertenen publicidad, sino que también ofrecen ventajas objetivas(por ejemplo, una distribución bien conjuntada o un can<strong>al</strong> <strong>de</strong> distribuciónque llegue hasta las cercanías <strong>de</strong>l cliente). A<strong>de</strong>más, suelenofrecer a su <strong>al</strong>re<strong>de</strong>dor una gran cantidad <strong>de</strong> servicios, tratando <strong>de</strong>rentabilizar el máximo posible esa imagen <strong>de</strong> marca (<strong>de</strong>s<strong>de</strong> formaciónhasta programas <strong>de</strong> certificación para terceras partes).EjemploLa distribución Red Hat Linux comenzó a distribuirse en1994 (la empresa empezó a conocerse con el nombreactu<strong>al</strong> en 1995). Des<strong>de</strong> entonces, Red Hat ha conseguidoposicionar su nombre como el <strong>de</strong> la distribución <strong>de</strong>GNU/Linux por excelencia. Hoy día, en torno a esenombre Red Hat comerci<strong>al</strong>iza todo tipo <strong>de</strong> servicios relacionadoscon la distribución, con GNU/Linux, y con<strong>software</strong> <strong>libre</strong> en gener<strong>al</strong>.5.3. Otras clasificaciones <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> negocioHay otras clasificaciones <strong>de</strong> mo<strong>de</strong>los <strong>de</strong> negocio clásicas en la literaturasobre <strong>software</strong> <strong>libre</strong>. A modo <strong>de</strong> ejemplo ofrecemos a continuaciónuna <strong>de</strong> las más clásicas.Lectura complementaria[Ver bibliografía, apartado46]ANOTACIONES127


© FUOC • XP06/M2101/01492Software <strong>libre</strong>5.3.1. Clasificación <strong>de</strong> HeckerLectura complementaria[Ver bibliografía, apartado120]La clasificación que se ofrece en Frank Hecker (mayo, 1998). Settingup shop: The business of open-source <strong>software</strong> fue la más usada porla publicidad <strong>de</strong> la Open Source Initiative, y también una <strong>de</strong> las primerasen tratar <strong>de</strong> categorizar los negocios que estaban surgiendopor aquella época. Sin embargo, incluye varios mo<strong>de</strong>los poco centradosen <strong>software</strong> <strong>libre</strong> (en ellos es poco más que un acompañante<strong>de</strong>l mo<strong>de</strong>lo princip<strong>al</strong>). En cu<strong>al</strong>quier caso, los mo<strong>de</strong>los que <strong>de</strong>scribeson los siguientes:• Support seller (venta <strong>de</strong> servicios relacionados con el producto).La empresa promueve un producto <strong>libre</strong> (que ha <strong>de</strong>sarrollado o encuyo <strong>de</strong>sarrollo participa activamente) y ven<strong>de</strong> servicios, como consultoríao adaptación a necesida<strong>de</strong>s concretas para él.• Loss lea<strong>de</strong>r (venta <strong>de</strong> otros productos propietarios).En este caso, el programa <strong>libre</strong> se utiliza para promover <strong>de</strong> <strong>al</strong>gunaforma la venta <strong>de</strong> otros productos propietarios relacionadoscon él.• Widget frosting (venta <strong>de</strong> hardware).El negocio fundament<strong>al</strong> es la venta <strong>de</strong> hardware, y el <strong>software</strong> <strong>libre</strong>se consi<strong>de</strong>ra un complemento para él, que pue<strong>de</strong> ayudar a la empresaa obtener una ventaja competitiva.ANOTACIONES• Accessorizing (venta <strong>de</strong> accesorios).Se comerci<strong>al</strong>izan productos relacionados con el <strong>software</strong> <strong>libre</strong>, comolibros, dispositivos informáticos, etc.• Service enabler (venta <strong>de</strong> servicios).El <strong>software</strong> <strong>libre</strong> sirve para crear un servicio (norm<strong>al</strong>mente accesibleen línea) <strong>de</strong>l que la empresa obtiene <strong>al</strong>gún beneficio.128


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492• Brand licensing (venta <strong>de</strong> marca).Una empresa registra marcas que consigue asociar con programas<strong>libre</strong>s, probablemente <strong>de</strong>sarrollados por ella. Luego obtiene ingresoscuando ven<strong>de</strong> <strong>de</strong>rechos <strong>de</strong>l uso <strong>de</strong> esas marcas.• Sell it, free it (ven<strong>de</strong>, libera).Mo<strong>de</strong>lo similar a loss lea<strong>de</strong>r, pero re<strong>al</strong>izado <strong>de</strong> forma cíclica. Primerose comerci<strong>al</strong>iza un producto como <strong>software</strong> <strong>libre</strong>. Si se consigueque tenga cierto éxito, la siguiente versión se distribuye como <strong>software</strong>propietario durante un tiempo, y pasado éste también se libera.Para entonces, se empieza a distribuir una nueva versión propietaria,y así sucesivamente.• Software franchising (franquicia <strong>de</strong> <strong>software</strong>).Una empresa franquicia el uso <strong>de</strong> sus marcas, relacionadas con unprograma <strong>libre</strong> <strong>de</strong>terminado.NotaEl lector habrá podido observar cómo esta clasificaciónes bastante diferente <strong>de</strong> la que hemos ofrecidonosotros, pero aun así <strong>al</strong>gunas <strong>de</strong> sus categorías coinci<strong>de</strong>ncasi exactamente con <strong>al</strong>gunas <strong>de</strong> las nuestras.5.4. Impacto sobre las situaciones <strong>de</strong> monopolioEl mercado informático tien<strong>de</strong> a la dominación <strong>de</strong> un producto encada uno <strong>de</strong> sus segmentos. Los usuarios quieren rentabilizar el esfuerzore<strong>al</strong>izado en apren<strong>de</strong>r cómo funciona un programa, las empresasquieren encontrar gente formada en el uso <strong>de</strong> su <strong>software</strong>, ytodos quieren que los datos que gestionan puedan ser entendidospor los programas <strong>de</strong> las empresas y por las personas con las que serelacionan. Por esta razón, cu<strong>al</strong>quier iniciativa <strong>de</strong>dicada a romperuna situación <strong>de</strong> facto don<strong>de</strong> un producto domina claramente elmercado está <strong>de</strong>stinada a producir más <strong>de</strong> lo mismo: si tiene éxito,ANOTACIONES129


© FUOC • XP06/M2101/01492Software <strong>libre</strong>vendrá otro a ocupar ese hueco, y en breve tendremos un nuevo dominante.Sólo los cambios tecnológicos producen, durante un tiempo,la inestabilidad suficiente como para que nadie domineclaramente.Pero el que haya un producto dominante no ha <strong>de</strong> llevar necesariamentea la constitución <strong>de</strong> un monopolio empresari<strong>al</strong>. Por ejemplo,la gasolina es un producto que casi domina el mercado <strong>de</strong> combustiblespara turismos, pero (en un mercado <strong>de</strong> la gasolina <strong>libre</strong>) haymuchas empresas que producen y distribuyen este producto. En re<strong>al</strong>idad,cuando hablamos <strong>de</strong> <strong>software</strong>, lo preocupante es lo que ocurrecuando un producto llega a dominar el mercado, porque eseproducto tiene una sola empresa proveedora posible. El <strong>software</strong> <strong>libre</strong>ofrece una <strong>al</strong>ternativa a esta situación: los productos <strong>libre</strong>s pue<strong>de</strong>nestar promovidos por una empresa en concreto, pero estaempresa no los controla, o <strong>al</strong> menos no lo hace hasta el extremo <strong>al</strong>que nos tiene acostumbrados el <strong>software</strong> propietario. En el mundo<strong>de</strong>l <strong>software</strong> <strong>libre</strong>, un producto dominante no supone necesariamenteun monopolio <strong>de</strong> empresa. Por el contrario, sea el que sea el productoque domina el mercado, muchas empresas pue<strong>de</strong>n competiren proporcionarlo, mejorarlo, adaptarlo a las necesida<strong>de</strong>s <strong>de</strong> susclientes y ofrecer servicios <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> él.5.4.1. Elementos que favorecen los productos dominantesEn informática es muy común que haya un producto claramente dominanteen cada segmento <strong>de</strong> mercado. Y eso es norm<strong>al</strong> por variosmotivos, entre los que cabe <strong>de</strong>stacar los siguientes:• Formatos <strong>de</strong> datosANOTACIONESEn muchos casos el formato <strong>de</strong> datos está fuertemente ligado a unaaplicación. Cuando un número suficientemente <strong>al</strong>to <strong>de</strong> gente la usa,su formato <strong>de</strong> datos se convierte en estándar <strong>de</strong> facto, y las presionespara usarlo (y la aplicación por tanto) son formidables.• Ca<strong>de</strong>nas <strong>de</strong> distribuciónNorm<strong>al</strong>mente, uno <strong>de</strong> los problemas para empezar a usar un programaes obtener una copia <strong>de</strong> él. Y norm<strong>al</strong>mente es difícil encontrar130


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492programas que no son lí<strong>de</strong>res en su mercado. Las ca<strong>de</strong>nas <strong>de</strong> distribuciónson costosas <strong>de</strong> mantener, <strong>de</strong> forma que los competidoresminoritarios lo tienen difícil para llegar a la tienda <strong>de</strong> informática,don<strong>de</strong> el usuario fin<strong>al</strong> pueda comprarlos. El producto dominante, sinembargo, lo tiene fácil: el primer interesado en tenerlo va a ser lapropia tienda <strong>de</strong> informática.• MarketingEl marketing “gratuito” que obtiene un producto una vez que lo usauna fracción significativa <strong>de</strong> una población <strong>de</strong>terminada es enorme.El boca a oreja funciona muy bien, también preguntar e intercambiarinformación con los conocidos. Pero, sobre todo, el impacto en losmedios es muy gran<strong>de</strong>: las revistas <strong>de</strong> informática hablarán una yotra vez <strong>de</strong> un producto si parece ser el que más se usa. Habrá cursos<strong>de</strong> formación para él, libros que lo <strong>de</strong>scriban, entrevistas a sus usuarios,etc.• Inversión en formaciónUna vez se han invertido tiempo y recursos en apren<strong>de</strong>r cómo funcionauna herramienta, se está muy motivado para no cambiar. A<strong>de</strong>más,usu<strong>al</strong>mente esa herramienta es la que ya domina el mercado,porque es más fácil encontrar person<strong>al</strong> y materi<strong>al</strong> que ayu<strong>de</strong>n aapren<strong>de</strong>r a usarla.• Software preinst<strong>al</strong>adoRecibir una máquina con <strong>software</strong> ya inst<strong>al</strong>ado <strong>de</strong>s<strong>de</strong> luego es ungran incentivo para usarlo, incluso si hay que pagar por él aparte. Ynorm<strong>al</strong>mente, el tipo <strong>de</strong> <strong>software</strong> que el ven<strong>de</strong>dor <strong>de</strong> la máquina vaa estar dispuesto a preinst<strong>al</strong>ar será solamente el más utilizado.5.4.2. El mundo <strong>de</strong>l <strong>software</strong> propietarioEn el mundo <strong>de</strong>l <strong>software</strong> propietario la aparición <strong>de</strong> un producto dominanteen un segmento cu<strong>al</strong>quiera equiv<strong>al</strong>e a un monopolio porparte <strong>de</strong> la empresa que lo produce. Por ejemplo, tenemos estas situacionesmonopolísticas <strong>de</strong> facto (o casi) <strong>de</strong> producto y empresa enANOTACIONES131


© FUOC • XP06/M2101/01492Software <strong>libre</strong>los mercados <strong>de</strong> sistemas operativos, autoedición, bases <strong>de</strong> datos,diseño gráfico, procesadores <strong>de</strong> textos, hojas <strong>de</strong> cálculo, etc.Y esto es así porque la empresa en cuestión tiene un gran control sobreel producto lí<strong>de</strong>r. Tan gran<strong>de</strong>, que sólo ellos pue<strong>de</strong>n marcar laevolución <strong>de</strong>l producto, las líneas fundament<strong>al</strong>es don<strong>de</strong> se va a <strong>de</strong>sarrollar,su c<strong>al</strong>idad, etc. Los usuarios tienen muy poco control, dadoque estarán muy poco motivados para probar con otros productos(por los motivos que se han comentado en el apartado anterior).Ante esto, poco podrán hacer, s<strong>al</strong>vo tratar <strong>de</strong> <strong>de</strong>safiar la posición dominante<strong>de</strong>l producto mejorando excepcion<strong>al</strong>mente los suyos (paratratar <strong>de</strong> contrarrestar esos mismos motivos), norm<strong>al</strong>mente con pocoéxito.Esta situación pone a todo el sector en manos <strong>de</strong> la estrategia <strong>de</strong> laempresa dominante. Todos los actores <strong>de</strong>pen<strong>de</strong>n <strong>de</strong> ella, e inclusoel <strong>de</strong>sarrollo <strong>de</strong> la tecnología <strong>software</strong> en ese campo estará mediatizadopor las mejoras que le haga a su producto. En el caso gener<strong>al</strong>,ésta es una situación don<strong>de</strong> aparecen los peores efectos económicos<strong>de</strong>l monopolio, y en particular, la f<strong>al</strong>ta <strong>de</strong> motivación <strong>de</strong> la empres<strong>al</strong>í<strong>de</strong>r para acercar el producto a las necesida<strong>de</strong>s (siempre en evolución)<strong>de</strong> sus clientes. Éstos se han convertido en un mercado cautivo.5.4.3. La situación con <strong>software</strong> <strong>libre</strong>ANOTACIONESSin embargo, en el caso <strong>de</strong>l <strong>software</strong> <strong>libre</strong> un producto dominante nose traduce automáticamente en un monopolio <strong>de</strong> empresa. Si el productoes <strong>libre</strong>, cu<strong>al</strong>quier empresa pue<strong>de</strong> trabajar con él, mejorarlo,adaptarlo a las necesida<strong>de</strong>s <strong>de</strong> un cliente y en gener<strong>al</strong>, ayudar en suevolución. A<strong>de</strong>más, precisamente por su posición dominante, seránmuchas las empresas interesadas en trabajar con él. Si el productor“origin<strong>al</strong>” (la empresa que <strong>de</strong>sarrolló origin<strong>al</strong>mente el producto)quiere permanecer en el negocio ha <strong>de</strong> competir con todas ellas, ypor eso estará muy motivado para hacer evolucionar el productoprecisamente en la línea que sus usuarios quieran. Natur<strong>al</strong>mente,tendrán la ventaja <strong>de</strong> un mejor conocimiento <strong>de</strong>l programa, pero esoes todo. Tienen que competir por cada cliente.La aparición <strong>de</strong> productos dominantes se traduce en el mundo<strong>de</strong>l <strong>software</strong> <strong>libre</strong>, por lo tanto, en mayor competencia entre em-132


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492presas. Y con ello los usuarios retoman el control: las empresasen competencia no pue<strong>de</strong>n más que hacerles caso si quieren sobrevivir.Y precisamente esto es lo que asegurará que el productomejore.aaaProductos <strong>libre</strong>s que son dominantes en su sectorApache es <strong>de</strong>s<strong>de</strong> hace tiempo lí<strong>de</strong>r en el mercado <strong>de</strong>servidores <strong>de</strong> web. Pero hay muchas empresas que están<strong>de</strong>trás <strong>de</strong> Apache, <strong>de</strong>s<strong>de</strong> <strong>al</strong>gunas muy gran<strong>de</strong>s (comoIBM) a otras muy pequeñas. Y todas ellas no tienenmás remedio que competir mejorándolo, y norm<strong>al</strong>mentecontribuyendo <strong>al</strong> proyecto con sus mejoras. Apesar <strong>de</strong> que Apache es casi un monopolio en muchosámbitos (por ejemplo, es casi el único servidor web quese consi<strong>de</strong>ra sobre la plataforma GNU/Linux o *BSD),no <strong>de</strong>pen<strong>de</strong> <strong>de</strong> una sola empresa, sino <strong>de</strong> liter<strong>al</strong>mente<strong>de</strong>cenas <strong>de</strong> ellas.Las distribuciones <strong>de</strong> GNU/Linux son también un casointeresante. GNU/Linux no es <strong>de</strong>s<strong>de</strong> luego un monopolio,pero es posiblemente la segunda opción en elmercado <strong>de</strong> sistemas operativos. Y ello no ha forzadola situación don<strong>de</strong> una empresa tenga su control. Alcontrario, hay <strong>de</strong>cenas <strong>de</strong> distribuciones, re<strong>al</strong>izadaspor empresas diferentes, que compiten <strong>libre</strong>mente enel mercado. Cada una <strong>de</strong> ellas trata <strong>de</strong> ofrecer mejorasque sus competidores tienen que adoptar a riesgo<strong>de</strong> ser echados <strong>de</strong>l mercado. Pero a<strong>de</strong>más no pue<strong>de</strong>nsepararse <strong>de</strong>masiado <strong>de</strong> lo que es “GNU/Linux estándar”,pues eso es rechazado por los usuarios comouna “s<strong>al</strong>ida <strong>de</strong> la norma”. La situación <strong>de</strong>spués <strong>de</strong> variosaños <strong>de</strong> crecimiento <strong>de</strong> la cuota <strong>de</strong> mercado <strong>de</strong>GNU/Linux nos muestra a <strong>de</strong>cenas <strong>de</strong> empresas compitiendoy haciendo evolucionar el sistema. Y <strong>de</strong> nuevotodas ellas están <strong>de</strong>trás <strong>de</strong> satisfacer lasnecesida<strong>de</strong>s <strong>de</strong> sus usuarios. Sólo así pue<strong>de</strong>n mantenerseen el mercado.ANOTACIONES133


© FUOC • XP06/M2101/01492Software <strong>libre</strong>aaaGCC es un producto dominante en el mundo <strong>de</strong> compiladoresC y C++ para el mercado GNU/Linux. Y sinembargo, eso no ha llevado a ninguna situación <strong>de</strong>monopolio <strong>de</strong> empresa, incluso cuando Cygnus (hoyRedHat) se ha encargado durante mucho tiempo <strong>de</strong> coordinarsu <strong>de</strong>sarrollo. Hay muchas empresas que hacenmejoras <strong>al</strong> sistema, y todas ellas compiten, cadauna en su nicho específico, por satisfacer las <strong>de</strong>mandas<strong>de</strong> sus usuarios. De hecho, cuando <strong>al</strong>guna empresa uorganización específica ha f<strong>al</strong>lado en el trabajo <strong>de</strong> coordinación(o así lo ha percibido una parte <strong>de</strong> los usuarios)ha habido espacio para un fork (división) <strong>de</strong>lproyecto, con dos productos en par<strong>al</strong>elo durante untiempo, hasta que eventu<strong>al</strong>mente han vuelto a unirse(como está ocurriendo ahora con GCC 3.x).5.4.4. Estrategias para constituirse en monopoliocon <strong>software</strong> <strong>libre</strong>A pesar <strong>de</strong> que el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es mucho más hostil a losmonopolios <strong>de</strong> empresa que el mundo <strong>de</strong>l <strong>software</strong> propietario, hayestrategias que una empresa pue<strong>de</strong> utilizar para tratar <strong>de</strong> aproximarsea una situación <strong>de</strong> dominación monopolística <strong>de</strong> un mercado.Éstas son prácticas comunes en muchos otros sectores económicos,y para evitarlas trabajan las entida<strong>de</strong>s <strong>de</strong> regulación <strong>de</strong> la competencia,por lo que no hablaremos <strong>de</strong> ellas en <strong>de</strong>t<strong>al</strong>le. Sin embargo,sí que mencionaremos una que es hasta cierto punto específica <strong>de</strong>lmercado <strong>de</strong>l <strong>software</strong>, y que ya está siendo experimentada en <strong>al</strong>gunassituaciones: la aceptación <strong>de</strong> productos certificados por terceros.ANOTACIONESCuando una empresa quiere distribuir un producto <strong>software</strong> (<strong>libre</strong> opropietario) que funcione en combinación con otros, es común “certificar”ese producto para una cierta combinación. El fabricante secompromete a ofrecer servicios (actu<strong>al</strong>ización, soporte, resolución <strong>de</strong>problemas, etc.) sólo si el cliente le asegura que está usando el productoen un entorno certificado por él. Por ejemplo, un fabricante <strong>de</strong>gestores <strong>de</strong> bases <strong>de</strong> datos pue<strong>de</strong> certificar su producto para una <strong>de</strong>terminadadistribución <strong>de</strong> Linux, y para ninguna otra. Eso implicará134


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492que sus clientes tendrán que usar esa distribución <strong>de</strong> Linux u olvidarse<strong>de</strong>l soporte por parte <strong>de</strong>l fabricante (lo que, si el producto es propietario,pue<strong>de</strong> ser imposible en la práctica). Si un fabricante dadoconsigue una posición claramente dominante como producto certificado<strong>de</strong> terceras partes, los usuarios no van a tener otras posibilida<strong>de</strong>smás que la <strong>de</strong> utilizar ese producto. Si en ese segmento lacertificación es importante, estamos <strong>de</strong> nuevo ante una situación <strong>de</strong>empresa monopolística.NotaHasta cierto punto, en el mercado <strong>de</strong> distribuciones <strong>de</strong>GNU/Linux se están empezando a observar ciertos casos<strong>de</strong> situaciones ten<strong>de</strong>ntes <strong>al</strong> monopolio <strong>de</strong> facto enla certificación. Por ejemplo, hay muchos fabricantes<strong>de</strong> productos propietarios que sólo certifican sus productossobre una distribución <strong>de</strong> GNU/Linux dada(muy habitu<strong>al</strong>mente Red Hat Linux). Por el momentoesto no parece redundar en una situación monopolísticapor parte <strong>de</strong> ninguna empresa, lo que podría ser<strong>de</strong>bido a que en el mercado <strong>de</strong> distribuciones <strong>de</strong>GNU/Linux la certificación tenga poca importanciapara los usuarios. Pero sólo el futuro dirá si en <strong>al</strong>gúnmomento esta situación se acerca a una <strong>de</strong> monopolio<strong>de</strong> facto.Sin embargo, es importante tener en cuenta dos comentarios conrespecto a lo dicho. El primero es que estas posiciones monopolísticasno serán fáciles <strong>de</strong> conseguir, y en cu<strong>al</strong>quier caso lo serán pormecanismos en gener<strong>al</strong> “no informáticos” (a diferencia <strong>de</strong> la situación<strong>de</strong> producto dominante, que como ya vimos es relativamentenorm<strong>al</strong> y se llega a ella por medio <strong>de</strong> mecanismos puramente relacionadoscon la informática y sus patrones <strong>de</strong> uso). El segundo esque si todo el <strong>software</strong> utilizado es <strong>libre</strong>, esta estrategia tiene pocasposibilida<strong>de</strong>s <strong>de</strong> éxito (si tiene <strong>al</strong>guna). Un fabricante podrá conseguirque muchas empresas certifiquen sus productos, pero los clientessiempre podrán buscar fuentes <strong>de</strong> servicio y soporte diferentes <strong>de</strong>esas empresas que han certificado para él, si así lo consi<strong>de</strong>ran convenientes.ANOTACIONES135


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014926. Iniciativas públicasLas instituciones públicas, tanto las que tienen capacidad legislativacomo las que se <strong>de</strong>dican a administrar el Estado (las “administracionespúblicas”) tienen en gener<strong>al</strong> mucho que <strong>de</strong>cir en lo que se refierea adopción y promoción <strong>de</strong> tecnologías. Aunque <strong>de</strong>s<strong>de</strong> el comienzo<strong>de</strong> su historia hasta prácticamente el año 2000 no había habido (s<strong>al</strong>vocasos casi anecdóticos) interés por parte <strong>de</strong> estas instituciones porel fenómeno <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, la situación está cambiando radic<strong>al</strong>mentea partir <strong>de</strong> esa fecha. En primer lugar, las administracionespúblicas cada vez son más usuarias <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. En segundo,en su papel <strong>de</strong> promotoras <strong>de</strong> la sociedad <strong>de</strong> la información, cadavez son más las administraciones que están promoviendo directa oindirectamente el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>. En tercer lugar, los enteslegislativos se van poco a poco ocupando <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, aunqueno siempre para mejorar el entorno don<strong>de</strong> se <strong>de</strong>sarrolla.Dado que el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> se <strong>de</strong>sarrolló durante tantotiempo <strong>al</strong> margen <strong>de</strong>l apoyo explícito (e incluso <strong>de</strong>l interés) <strong>de</strong> las institucionespúblicas, la situación actu<strong>al</strong> causa sus polémicas y sus problemas,no sólo entre otros actores <strong>de</strong>l sector <strong>de</strong> las tecnologías <strong>de</strong>la información, sino también <strong>de</strong>ntro <strong>de</strong> la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.En este capítulo trataremos <strong>de</strong> exponer cuál es la situación actu<strong>al</strong>,y qué peculiarida<strong>de</strong>s tiene el <strong>software</strong> <strong>libre</strong> cuando se relacionacon “lo público”.6.1. Impacto <strong>de</strong>l <strong>software</strong> <strong>libre</strong>en las administraciones públicasEl impacto potenci<strong>al</strong> <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en las administraciones públicas,tanto en su faceta <strong>de</strong> consumidores como en su faceta <strong>de</strong>promotores (que se estudiarán con más <strong>de</strong>t<strong>al</strong>le más a<strong>de</strong>lante,apartado 6.2) presenta ciertos aspectos gener<strong>al</strong>es, que vamos a estudiaren este apartado.ANOTACIONES137


© FUOC • XP06/M2101/01492Software <strong>libre</strong>6.1.1. Impactos princip<strong>al</strong>esLos impactos princip<strong>al</strong>es <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, y las princip<strong>al</strong>es nuevasperspectivas que permite, son los siguientes:• Aprovechamiento más a<strong>de</strong>cuado <strong>de</strong> los recursosMuchas aplicaciones utilizadas o promovidas por las administracionespúblicas son también utilizadas por muchos otros sectores <strong>de</strong> lasociedad. Por ello, cu<strong>al</strong>quier inversión pública en el <strong>de</strong>sarrollo <strong>de</strong> unproducto <strong>libre</strong> que le interesa redundará en beneficios no sólo en lapropia administración, sino en todos los ciudadanos que podránusar ese producto para sus tareas informáticas, probablemente conlas mejoras aportadas por la administración.NotaUn caso muy especi<strong>al</strong>, pero <strong>de</strong> gran impacto, quemuestra claramente este aprovechamiento <strong>de</strong> los recursospúblicos pue<strong>de</strong> encontrarse en la loc<strong>al</strong>ización(adaptación a los usos y costumbres <strong>de</strong> una comunidad)<strong>de</strong> un programa. Aunque el aspecto más visible<strong>de</strong> la loc<strong>al</strong>ización es la traducción <strong>de</strong> todos los textosque utiliza el programa, y <strong>de</strong> su documentación, hayotros muchos que son también afectados por ella (<strong>de</strong>s<strong>de</strong>el uso <strong>de</strong> símbolos para la moneda loc<strong>al</strong> o la presentación<strong>de</strong> la fecha y hora en formatos habitu<strong>al</strong>es enla comunidad en cuestión hasta el uso <strong>de</strong> ejemplos yformas <strong>de</strong> expresión a<strong>de</strong>cuadas a las costumbres loc<strong>al</strong>esen la documentación).ANOTACIONESEn cu<strong>al</strong>quier caso, es claro que si una administraciónpública <strong>de</strong>dica recursos a que una <strong>de</strong>terminada aplicaciónsea loc<strong>al</strong>izada para sus necesida<strong>de</strong>s, es másque probable que esas necesida<strong>de</strong>s coincidan con las<strong>de</strong> sus ciudadanos. De forma que no sólo consigue tenerun programa informático que satisfaga sus necesida<strong>de</strong>s,sino que también pue<strong>de</strong>, sin gasto extra,ponerlo a disposición <strong>de</strong> cu<strong>al</strong>quier ciudadano quepueda utilizarlo con provecho. Por ejemplo, cuandouna administración pública financia la adaptación <strong>de</strong>138


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492un programa ofimático a una lengua que se habla ensu ámbito <strong>de</strong> actuación, no sólo podrá usarlo en suspropias <strong>de</strong>pen<strong>de</strong>ncias, sino que también podrá ofrecerloa sus ciudadanos, con lo que ello pue<strong>de</strong> suponer<strong>de</strong> fomento <strong>de</strong> la sociedad <strong>de</strong> la información.• Fomento <strong>de</strong> la industria loc<strong>al</strong>Una <strong>de</strong> las mayores ventajas <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es la posibilidad <strong>de</strong><strong>de</strong>sarrollar industria loc<strong>al</strong> <strong>de</strong> <strong>software</strong>. Cuando se usa <strong>software</strong> propietario,todo lo gastado en licencias va directamente <strong>al</strong> fabricante<strong>de</strong>l producto, y a<strong>de</strong>más esa compra redunda en el fort<strong>al</strong>ecimiento <strong>de</strong>su posición. Lo cu<strong>al</strong> no es necesariamente perjudici<strong>al</strong>, pero poco eficientepara la región vinculada a la administración si an<strong>al</strong>izamos la<strong>al</strong>ternativa <strong>de</strong> usar un programa <strong>libre</strong>.En este caso, las empresas loc<strong>al</strong>es podrán competir proporcionandoservicios (y el propio programa) a la administración, en condicionesmuy similares a cu<strong>al</strong>quier otra empresa. Digamos que, <strong>de</strong> <strong>al</strong>gunamanera, la administración está <strong>al</strong>lanando el campo <strong>de</strong> juego, y haciendomás fácil que cu<strong>al</strong>quiera pueda competir en él. Y natur<strong>al</strong>mente,entre esos cu<strong>al</strong>quiera estarán las empresas loc<strong>al</strong>es, que tendránla posibilidad <strong>de</strong> aprovechar sus ventajas competitivas (mejor conocimiento<strong>de</strong> las necesida<strong>de</strong>s <strong>de</strong>l cliente, cercanía geográfica, etc.).• In<strong>de</strong>pen<strong>de</strong>ncia <strong>de</strong> proveedorEs obvio que cu<strong>al</strong>quier organización preferirá <strong>de</strong>pen<strong>de</strong>r <strong>de</strong> un mercadoen régimen <strong>de</strong> competencia que <strong>de</strong> un solo proveedor quepue<strong>de</strong> imponer las condiciones en que proporciona su producto.Sin embargo, en el mundo <strong>de</strong> la administración esta preferencia seconvierte en requisito fundament<strong>al</strong>, y hasta en obligación leg<strong>al</strong> en<strong>al</strong>gunos casos. La administración no pue<strong>de</strong>, en gener<strong>al</strong>, elegir contratarcon un suministrador dado, sino que <strong>de</strong>be especificar sus necesida<strong>de</strong>s<strong>de</strong> forma que cu<strong>al</strong>quier empresa interesada, que cumplaunas ciertas características técnicas, y que proporcione el servicio oel producto <strong>de</strong>mandado con una cierta c<strong>al</strong>idad, pueda optar a uncontrato.ANOTACIONES139


© FUOC • XP06/M2101/01492Software <strong>libre</strong>De nuevo, en el caso <strong>de</strong>l <strong>software</strong> propietario, para cada productono hay más que un proveedor (aunque use una variedad <strong>de</strong> intermediarios).Si se especifica un producto dado, se está <strong>de</strong>cidiendo tambiénqué proveedor contratará con la administración. Y en muchoscasos es prácticamente imposible evitar especificar un cierto productocuando estamos hablando <strong>de</strong> programas <strong>de</strong> or<strong>de</strong>nador. Razones<strong>de</strong> compatibilidad <strong>de</strong>ntro <strong>de</strong> la organización, o <strong>de</strong> ahorros en formacióny administración, u otros muchos, hacen habitu<strong>al</strong> que una administración<strong>de</strong>cida usar un cierto producto.La única s<strong>al</strong>ida a esta situación es que el producto especificado se<strong>al</strong>ibre. En ese caso, cu<strong>al</strong>quier empresa interesada podrá proporcionarlo,y también cu<strong>al</strong>quier tipo <strong>de</strong> servicio sobre él (sujeto únicamentea sus capacida<strong>de</strong>s y conocimientos <strong>de</strong>l producto). A<strong>de</strong>más, encaso <strong>de</strong> contratar <strong>de</strong> esta manera, la administración pertinente podráen el futuro cambiar inmediatamente <strong>de</strong> proveedor si así lo <strong>de</strong>sea,y sin ningún problema técnico, pues aunque cambie <strong>de</strong>empresa, el producto que usará será el mismo.• Adaptación a las necesida<strong>de</strong>s exactasAunque la adaptación a sus necesida<strong>de</strong>s exactas es <strong>al</strong>go que necesitacu<strong>al</strong>quier organización que precisa <strong>de</strong> la informática, las peculiarida<strong>de</strong>s<strong>de</strong> la administración hacen que éste sea un factor muyimportante para el éxito <strong>de</strong> la implantación <strong>de</strong> un sistema informático.En el caso <strong>de</strong> usar <strong>software</strong> <strong>libre</strong>, la adaptación pue<strong>de</strong> hacersecon mucha mayor facilidad, y lo que es más importante, sirviéndose<strong>de</strong> un mercado con competencia, si hace f<strong>al</strong>ta contratarla.ANOTACIONESCuando una administración compra un producto propietario, modificarlopasa norm<strong>al</strong>mente por <strong>al</strong>canzar un acuerdo con su productor,que es el único que leg<strong>al</strong>mente (y muchas veces técnicamente) pue<strong>de</strong>hacerlo. En esas condiciones, es difícil re<strong>al</strong>izar buenas negociaciones,sobre todo si el productor no está excesivamente interesado enel mercado que le ofrece la administración en cuestión. Sin embargo,usando un producto <strong>libre</strong>, esa administración pue<strong>de</strong> modificarlo a suantojo, si dispone <strong>de</strong> person<strong>al</strong> para ello, o contratar externamente lamodificación. Esta contratación la pue<strong>de</strong> re<strong>al</strong>izar en principio cu<strong>al</strong>quierempresa que tenga los conocimientos y capacida<strong>de</strong>s para ello,por lo que es <strong>de</strong> esperar que haya concurrencia <strong>de</strong> varias empresas.140


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Este hecho, necesariamente tien<strong>de</strong> a abaratar los costes y a mejorarla c<strong>al</strong>idad.• Escrutinio público <strong>de</strong> seguridadPara una administración pública po<strong>de</strong>r garantizar que sus sistemasinformáticos hacen sólo lo que está previsto que hagan es un requisitofundament<strong>al</strong>, y en muchos estados, un requisito leg<strong>al</strong>. No sonpocas las veces que esos sistemas manejan datos privados, en losque pue<strong>de</strong>n estar interesados muchos terceros (pensemos en datosfisc<strong>al</strong>es, pen<strong>al</strong>es, cens<strong>al</strong>es, elector<strong>al</strong>es, etc.). Difícilmente, si se usauna aplicación propietaria sin código fuente disponible, pue<strong>de</strong> asegurarseque efectivamente esa aplicación trata esos datos como <strong>de</strong>be.Pero incluso si se ofrece su código fuente, las posibilida<strong>de</strong>s quetendrá una institución pública para asegurar que no contiene códigoextraño serán muy limitadas. Sólo si se pue<strong>de</strong> encargar ese trabajo<strong>de</strong> forma habitu<strong>al</strong> y rutinaria a terceros, y cu<strong>al</strong>quier parte interesadapue<strong>de</strong> escrutarlos, podrá estar la administración razonablemente segura<strong>de</strong> cumplir con ese <strong>de</strong>ber fundament<strong>al</strong>, o <strong>al</strong> menos <strong>de</strong> tomartodas las medidas en su mano para hacerlo.• Disponibilidad a largo plazoMuchos datos que manejan las administraciones y los programasque sirven para c<strong>al</strong>cularlos han <strong>de</strong> estar disponibles <strong>de</strong>ntro <strong>de</strong> <strong>de</strong>cenas<strong>de</strong> años. Es muy difícil asegurar que un programa propietariocu<strong>al</strong>quiera estará disponible cuando hayan pasado esosperiodos <strong>de</strong> tiempo, y más si lo que se <strong>de</strong>sea es que funcione enla plataforma habitu<strong>al</strong> en ese momento futuro. Por el contrario, esmuy posible que su productor haya perdido interés en el productoy no lo haya portado a nuevas plataformas, o que sólo esté dispuestoa hacerlo ante gran<strong>de</strong>s contraprestaciones económicas.De nuevo, hay que recordar que sólo él pue<strong>de</strong> hacer ese porte, ypor lo tanto será difícil negociar con él. En el caso <strong>de</strong>l <strong>software</strong> <strong>libre</strong>,por el contrario, la aplicación está disponible con seguridadpara que cu<strong>al</strong>quiera la porte y la <strong>de</strong>je funcionando según las necesida<strong>de</strong>s<strong>de</strong> la administración. Si eso no suce<strong>de</strong> <strong>de</strong> forma espontánea,la administración siempre pue<strong>de</strong> dirigirse a variasempresas buscando la mejor oferta para hacer el trabajo. De estaANOTACIONES141


© FUOC • XP06/M2101/01492Software <strong>libre</strong>forma pue<strong>de</strong> garantizarse que la aplicación y los datos que manejaestarán disponibles cuando haga f<strong>al</strong>ta.Lectura recomendada[Ver bibliografía, apartado192]SugerenciaEl lector interesado en un informe sobre las ventajas<strong>de</strong>l <strong>software</strong> <strong>libre</strong> para la administración, escrito en elcontexto estadouni<strong>de</strong>nse <strong>de</strong> 1999, pue<strong>de</strong> consultar“The Case for Government Promotion of Open SourceSoftware”.6.1.2. Dificulta<strong>de</strong>s <strong>de</strong> adopciónSi bien las ventajas <strong>de</strong> uso <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en las administracionesson muchas, también son muchas las dificulta<strong>de</strong>s cuando se enfrentana su puesta en práctica. Entre éstas pue<strong>de</strong>n <strong>de</strong>stacarse:• Desconocimiento y f<strong>al</strong>ta <strong>de</strong> <strong>de</strong>cisión políticaEl primer problema que se encuentra el <strong>software</strong> <strong>libre</strong> para su introducciónen las administraciones es uno que, sin duda, comparte conotras organizaciones: es aún muy <strong>de</strong>sconocido entre quienes tomanlas <strong>de</strong>cisiones.Afortunadamente, éste es un problema que cada vez se va solucionandomejor, pero en muchos ámbitos <strong>de</strong> las administraciones el<strong>software</strong> <strong>libre</strong> aún es percibido como <strong>al</strong>go extraño, y tomar <strong>de</strong>cisionesen la línea <strong>de</strong> usarlo implica asumir ciertos riesgos.ANOTACIONESUnido a todo ello suele encontrarse un problema <strong>de</strong> <strong>de</strong>cisión política.La princip<strong>al</strong> ventaja <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en la administraciónno es el coste (siendo éste, <strong>de</strong> todas formas, importante, sobretodo cuando se habla <strong>de</strong> <strong>de</strong>spliegues para gran cantidad <strong>de</strong> puestos).Las princip<strong>al</strong>es ventajas, como ya hemos visto, son sobretodo <strong>de</strong> fondo, estratégicas. Y por tanto quedan en gran medidaen el ámbito <strong>de</strong> las <strong>de</strong>cisiones políticas, no técnicas. Sin voluntadpolítica <strong>de</strong> cambiar los sistemas informáticos y la filosofía con que142


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492se contratan, es difícil avanzar en la implantación <strong>de</strong> <strong>software</strong> <strong>libre</strong>en la administración.• Poca a<strong>de</strong>cuación <strong>de</strong> los mecanismos <strong>de</strong> contrataciónLos mecanismos <strong>de</strong> contratación que se usan hoy día en la administración,<strong>de</strong>s<strong>de</strong> los mo<strong>de</strong>los <strong>de</strong> concurso público habitu<strong>al</strong>es hasta ladivisión <strong>de</strong>l gasto en partidas, están diseñados fundament<strong>al</strong>mentepara la compra <strong>de</strong> productos informáticos, y no tanto para la adquisición<strong>de</strong> servicios relacionados con los programas. Sin embargo,cuando se utiliza <strong>software</strong> <strong>libre</strong>, habitu<strong>al</strong>mente no hay producto quecomprar, o su precio es casi <strong>de</strong>spreciable. Por el contrario, paraaprovechar las posibilida<strong>de</strong>s que ofrece el <strong>software</strong> <strong>libre</strong>, es convenientepo<strong>de</strong>r contratar servicios a su <strong>al</strong>re<strong>de</strong>dor. Esto hace precisoque, antes <strong>de</strong> utilizar seriamente <strong>software</strong> <strong>libre</strong>, se hayan diseñadomecanismos burocráticos a<strong>de</strong>cuados que faciliten la contratación enestos casos.• F<strong>al</strong>ta <strong>de</strong> estrategia <strong>de</strong> implantaciónEn muchos casos, el <strong>software</strong> <strong>libre</strong> comienza a usarse en una administraciónsimplemente porque el coste <strong>de</strong> adquisición es más bajo.Es muy habitu<strong>al</strong> en estos casos que el producto en cuestión se incorpore<strong>al</strong> sistema informático sin mayor planificación, y en gener<strong>al</strong> sinuna estrategia glob<strong>al</strong> <strong>de</strong> uso y aprovechamiento <strong>de</strong> <strong>software</strong> <strong>libre</strong>.Esto causa que la mayor parte <strong>de</strong> las ventajas <strong>de</strong>l <strong>software</strong> <strong>libre</strong> sepierdan en el camino, ya que todo queda en el uso <strong>de</strong> un productomás barato, cuando ya hemos visto que en gener<strong>al</strong> las mayores ventajasson <strong>de</strong> otro tipo.Si a esto unimos que el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong>, si no se diseña el cambioa él a<strong>de</strong>cuadamente, pue<strong>de</strong> suponer unos costes <strong>de</strong> transición no<strong>de</strong>spreciables, hace que experiencias aisladas, y fuera <strong>de</strong> un marcoclaro, <strong>de</strong> uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> en la administración puedan resultarf<strong>al</strong>lidas y frustrantes.• Escasez o ausencia <strong>de</strong> productos <strong>libre</strong>s en ciertos segmentosLa implantación <strong>de</strong> <strong>software</strong> <strong>libre</strong> en cu<strong>al</strong>quier organización pue<strong>de</strong>chocar con la f<strong>al</strong>ta <strong>de</strong> <strong>al</strong>ternativas <strong>libre</strong>s <strong>de</strong> la c<strong>al</strong>idad a<strong>de</strong>cuada paraANOTACIONES143


© FUOC • XP06/M2101/01492Software <strong>libre</strong>cierto tipo <strong>de</strong> aplicaciones. En esos casos, la solución es complicada:lo único que se pue<strong>de</strong> hacer es tratar <strong>de</strong> promover la aparición <strong>de</strong>lproducto <strong>libre</strong> que se necesita.Afortunadamente, las administraciones públicas están en una buenaposición para estudiar seriamente si les conviene fomentar, o inclusofinanciar o cofinanciar el <strong>de</strong>sarrollo <strong>de</strong> ese producto. Hay que recordarque entre sus fines suele estar, por ejemplo, que sus administradospuedan acce<strong>de</strong>r mejor a la sociedad <strong>de</strong> la información, o elfomento <strong>de</strong>l tejido industria loc<strong>al</strong>. Sin duda, la creación <strong>de</strong> muchosprogramas <strong>libre</strong>s incidirá positivamente en ambos objetivos, por loque <strong>al</strong> mero cálculo <strong>de</strong> coste/beneficio directo habría que sumar losbeneficios indirectos que esta <strong>de</strong>cisión causaría.6.2. Actuaciones <strong>de</strong> las administraciones públicasen el mundo <strong>de</strong>l <strong>software</strong>Las administraciones públicas actúan sobre el mundo <strong>de</strong>l <strong>software</strong> <strong>al</strong>menos <strong>de</strong> tres maneras:• Comprando programas y servicios relacionados con ellas. Lasadministraciones, como gran<strong>de</strong>s usuarios <strong>de</strong> informática, son unactor fundament<strong>al</strong> en el mercado <strong>de</strong>l <strong>software</strong>.ANOTACIONES• Promoviendo <strong>de</strong> diversas formas el uso (y la adquisición) <strong>de</strong> ciertosprogramas en la sociedad. Esta promoción se hace a vecesofreciendo incentivos económicos (<strong>de</strong>sgravaciones fisc<strong>al</strong>es, incentivosdirectos, etc.), a veces con información y recomendaciones,a veces por “efecto ejemplo”.• Financiando (directa o indirectamente) proyectos <strong>de</strong> investigacióny <strong>de</strong>sarrollo que están diseñando el futuro <strong>de</strong> la informática.En cada uno <strong>de</strong> estos ámbitos el <strong>software</strong> <strong>libre</strong> pue<strong>de</strong> presentar ventajasespecíficas (a<strong>de</strong>más <strong>de</strong> las ya <strong>de</strong>scritas en el apartado anterior),interesantes tanto para la administración como para la sociedad engener<strong>al</strong>.144


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014926.2.1. ¿Cómo satisfacer mejor las necesida<strong>de</strong>s<strong>de</strong> las administraciones públicas?Las administraciones públicas son gran<strong>de</strong>s consumidoras <strong>de</strong> informática.En lo que <strong>al</strong> <strong>software</strong> se refiere, compran habitu<strong>al</strong>mente tantoproductos <strong>de</strong> consumo masivo (off-the-shelf), como sistemas amedida. Des<strong>de</strong> este punto <strong>de</strong> vista, son fundament<strong>al</strong>mente gran<strong>de</strong>scentros <strong>de</strong> compras, similares a las gran<strong>de</strong>s empresas, aunque consus propias peculiarida<strong>de</strong>s. Por ejemplo, en muchos ámbitos se suponeque las <strong>de</strong>cisiones <strong>de</strong> compra <strong>de</strong> las administraciones públicasno han <strong>de</strong> tener en cuenta simplemente parámetros <strong>de</strong> coste frentea funcion<strong>al</strong>idad, sino que otros, como el impacto <strong>de</strong> la compra en eltejido industri<strong>al</strong> y soci<strong>al</strong>, o consi<strong>de</strong>raciones estratégicas a largo plazo,pue<strong>de</strong>n ser asimismo importantes.En cu<strong>al</strong>quier caso, lo habitu<strong>al</strong> hoy día en lo que se refiere a <strong>software</strong><strong>de</strong> consumo masivo es utilizar los productos propietarios lí<strong>de</strong>res <strong>de</strong>lmercado. La cantidad <strong>de</strong> recursos públicos que se gastan los ayuntamientos,las comunida<strong>de</strong>s autónomas, la Administración centr<strong>al</strong> y lasadministraciones europeas en comprar licencias <strong>de</strong> Windows, Office uotros productos similares es ciertamente consi<strong>de</strong>rable. Pero cada vezmás las soluciones <strong>libre</strong>s están penetrando en este mercado y cada vezmás se están consi<strong>de</strong>rando soluciones basadas en <strong>software</strong> <strong>libre</strong> par<strong>al</strong>os servidores. Productos como OpenOffice, y GNU/Linux con GNO-ME o KDE son cada vez más consi<strong>de</strong>rados en el escritorio.¿Qué se pue<strong>de</strong> ganar con esta migración a <strong>software</strong> <strong>libre</strong>? Para ilustrarlo,consi<strong>de</strong>remos el siguiente escenario. Supongamos que conuna fracción <strong>de</strong> lo gastado en dos o tres productos propietarios “estrella”por todas las administraciones europeas (o probablemente las<strong>de</strong> cu<strong>al</strong>quier estado <strong>de</strong>sarrollado <strong>de</strong> tamaño medio), se podría promoverun concurso público para que una empresa (o dos, o tres, ocuatro) mejorasen y adaptasen los programas <strong>libre</strong>s ahora disponiblespara que en el plazo <strong>de</strong> uno o dos años estuvieran listos para suuso masivo <strong>al</strong> menos para ciertas tareas típicas (si no lo estuvieranya). Imaginad, por ejemplo, un esfuerzo coordinado, a esc<strong>al</strong>a nacion<strong>al</strong>o europea, para que todas las administraciones participasen enun consorcio que se encargase <strong>de</strong> la gestión <strong>de</strong> estos concursos. Enpoco tiempo habría una industria “loc<strong>al</strong>” especi<strong>al</strong>izada en re<strong>al</strong>izarestas mejoras y estas adaptaciones. Y las administraciones podríanelegir entre las tres o cuatro distribuciones <strong>libre</strong>s producidas por estaANOTACIONES145


© FUOC • XP06/M2101/01492Software <strong>libre</strong>industria. Para fomentar la competencia se podría recompensar económicamentea cada empresa según la cantidad <strong>de</strong> administracionesque eligiesen usar su distribución. Y todo el resultado <strong>de</strong> estaoperación, <strong>al</strong> ser <strong>software</strong> <strong>libre</strong>, estaría también a disposición <strong>de</strong> empresasy usuarios individu<strong>al</strong>es, que en muchos casos tendrían necesida<strong>de</strong>ssimilares a las <strong>de</strong> las administraciones.En el caso <strong>de</strong>l <strong>software</strong> hecho a medida, el proceso habitu<strong>al</strong> por elmomento pasa norm<strong>al</strong>mente por contratar con una empresa los programasnecesarios bajo un mo<strong>de</strong>lo propietario. Todo el <strong>de</strong>sarrollore<strong>al</strong>izado a petición <strong>de</strong> la administración es propiedad <strong>de</strong> la empresaque lo <strong>de</strong>sarrolla. Y norm<strong>al</strong>mente la administración contratante quedaatada a su proveedor para todo lo que tenga que ver con mejoras,actu<strong>al</strong>izaciones y soporte, en un círculo vicioso que dificultamucho la competencia y r<strong>al</strong>entiza el proceso <strong>de</strong> mo<strong>de</strong>rnización <strong>de</strong>las administraciones públicas. Lo que es peor, en muchos casos elmismo programa es vendido una y otra vez a administraciones similares,aplicando en cada nuevo caso los costes que habría supuestovolver a re<strong>al</strong>izar el <strong>de</strong>sarrollo <strong>de</strong>s<strong>de</strong> cero.ANOTACIONESConsi<strong>de</strong>remos <strong>de</strong> nuevo un escenario que muestre cómo podrían ser lascosas <strong>de</strong> otra forma. Un consorcio <strong>de</strong> administraciones públicas con necesida<strong>de</strong>s<strong>de</strong> un cierto <strong>software</strong> a medida podría exigir que el resultadoobtenido fuera <strong>software</strong> <strong>libre</strong>. Ello permitiría que otras administracionesse beneficiasen también <strong>de</strong>l trabajo, y a medio plazo estuvieran interesadasen colaborar con el consorcio para que se tuvieran en cuenta susnecesida<strong>de</strong>s peculiares. Al ser el <strong>software</strong> resultante <strong>libre</strong>, no habríaobligación <strong>de</strong> contratar las mejoras y adaptaciones <strong>al</strong> mismo proveedor,introduciendo <strong>de</strong> esta forma competencia en ese mercado (que hoypor hoy es casi cautivo). Y en cu<strong>al</strong>quier caso, el coste fin<strong>al</strong> para cu<strong>al</strong>quiera<strong>de</strong> las administraciones implicadas no sería nunca mayor que si sehubiera utilizado un mo<strong>de</strong>lo propietario.¿Son estos escenarios ciencia ficción? Como se verá más a<strong>de</strong>lante,ya hay tímidas iniciativas en direcciones similares a las que se exponenen ellos. A<strong>de</strong>más <strong>de</strong> ayudar a crear y mantener una industria enel ámbito <strong>de</strong> la administración pública que re<strong>al</strong>iza la compra, el <strong>software</strong><strong>libre</strong> tiene más ventajas específicas en el entorno público. Porejemplo, es la forma más efectiva <strong>de</strong> tener <strong>software</strong> <strong>de</strong>sarrollado enlenguas minoritarias (preocupación esenci<strong>al</strong> <strong>de</strong> muchas administra-146


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492ciones públicas). También pue<strong>de</strong> ayudar mucho en el mantenimiento<strong>de</strong> la in<strong>de</strong>pen<strong>de</strong>ncia estratégica a largo plazo, y en asegurar el accesoa los datos que custodian las administraciones públicas <strong>al</strong> cabo<strong>de</strong> un cierto tiempo. Por todo ello, las entida<strong>de</strong>s públicas están cadavez más interesadas en el <strong>software</strong> <strong>libre</strong> como usuarias.Algunos casos relacionados con administraciones<strong>al</strong>emanasEjemploEn julio <strong>de</strong>l 2003 se liberó la primera versión estable <strong>de</strong>Kolab, un producto <strong>de</strong>l proyecto Kroupware. Kolab esun sistema <strong>libre</strong> <strong>de</strong> ayuda informática <strong>al</strong> trabajo engrupo (groupware) basado en KDE. El motivo por elque mencionamos este proyecto en este punto es porquesu origen fue un concurso <strong>de</strong>l Bun<strong>de</strong>samt für Sicherheitin <strong>de</strong>r Informationstechnik (BSI) <strong>de</strong>l Gobierno<strong>al</strong>emán (podría traducirse como Agencia Fe<strong>de</strong>r<strong>al</strong> <strong>de</strong>Seguridad en Tecnologías <strong>de</strong> la Información). El concursopedía la provisión <strong>de</strong> una solución que interoperasecon Windows y Outlook por un lado y GNU/Linuxy KDE por otro. Entre las ofertas presentadas, ganó lapropuesta conjunta <strong>de</strong> tres empresas, Erfrakon, Intevationy Klarälvd<strong>al</strong>ens Datakonsult, que proponían unasolución <strong>libre</strong> basada parci<strong>al</strong>mente en <strong>software</strong> ya <strong>de</strong>sarrolladopor el proyecto KDE, completado con <strong>de</strong>sarrollospropios <strong>libre</strong>s, que dieron lugar a Kolab.En mayo <strong>de</strong>l 2003 el Ayuntamiento <strong>de</strong> Munich (Alemania)aprobó la migración a GNU/Linux y aplicaciones<strong>de</strong> ofimática <strong>libre</strong>s <strong>de</strong> todos los or<strong>de</strong>nadores usadoscomo escritorios, unos 14.000. La <strong>de</strong>cisión <strong>de</strong> hacerlono fue sólo económica: también se tuvieron en cuentaaspectos estratégicos y cu<strong>al</strong>itativos, según <strong>de</strong>clararonsus responsables. En el exhaustivo estudio que se re<strong>al</strong>izópreviamente a la <strong>de</strong>cisión, la solución fin<strong>al</strong>menteelegida (GNU/Linux más OpenOffice, fundament<strong>al</strong>mente)obtuvo 6.218 puntos (<strong>de</strong> un máximo <strong>de</strong>10.000) frente a los poco más <strong>de</strong> 5.000 que obtuvo lasolución “tradicion<strong>al</strong>” basada en <strong>software</strong> <strong>de</strong> Microsoft.ANOTACIONES147


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Lectura complementaria[Ver bibliografía, apartado88]En julio <strong>de</strong>l 2003 se hizo público por parte <strong>de</strong>l Koordinierungs-undBeratungsstelle <strong>de</strong>r Bun<strong>de</strong>sregierungfür Informationstechnik in <strong>de</strong>r Bun<strong>de</strong>sverw<strong>al</strong>tung(KBSt), <strong>de</strong>l Ministerio <strong>al</strong>emán <strong>de</strong>l Interior, el documentoLeitfa<strong>de</strong>n für die Migration von Basis<strong>software</strong>komponentenauf Server- und Arbeitsplatzsystemen(‘Guía <strong>de</strong> migración para componentes <strong>de</strong> <strong>software</strong>básicos en servidores y estaciones <strong>de</strong> trabajo’), queofrece un conjunto <strong>de</strong> orientaciones sobre cómo pue<strong>de</strong>nmigrar a soluciones basadas en <strong>software</strong> <strong>libre</strong>las entida<strong>de</strong>s públicas <strong>al</strong>emanas. Estas orientacionesestán diseñadas para que quien esté a cargo <strong>de</strong> latoma <strong>de</strong> <strong>de</strong>cisiones pueda ev<strong>al</strong>uar si conviene unamigración a <strong>software</strong> <strong>libre</strong>, y en qué condiciones hacerlasi toma esa <strong>de</strong>cisión.6.2.2. Promoción <strong>de</strong> <strong>software</strong>Las entida<strong>de</strong>s públicas <strong>de</strong>dican muchos recursos a la promoción <strong>de</strong>planes que incentivan el gasto en informática. Ésta es una herramientaformidable, que pue<strong>de</strong> ayudar mucho a la extensión <strong>de</strong> nuevastecnologías por la sociedad. Pero también es una herramientapeligrosa. Por ejemplo, pue<strong>de</strong> no ser muy buena i<strong>de</strong>a promover eluso <strong>de</strong> Internet en la sociedad recomendando un <strong>de</strong>terminado navegadorque fomente la posición <strong>de</strong> monopolio <strong>de</strong> facto <strong>de</strong> una empresa,lo que a la larga podría ser perjudici<strong>al</strong> para la sociedad quese está tratando <strong>de</strong> beneficiar.ANOTACIONESDe nuevo, el <strong>software</strong> <strong>libre</strong> pue<strong>de</strong> ayudar en estas situaciones. Enprimer lugar, es neutro frente a fabricantes, ya que ninguno tienela exclusiva <strong>de</strong> ningún programa <strong>libre</strong>. Si una administraciónquiere promover el uso <strong>de</strong> una familia <strong>de</strong> programas <strong>libre</strong>s, pue<strong>de</strong>re<strong>al</strong>izar concursos, a los que se pue<strong>de</strong> presentar cu<strong>al</strong>quier empresa<strong>de</strong>l sector, para gestionar su entrega a los ciudadanos, su mejorao ampliación con las funcion<strong>al</strong>ida<strong>de</strong>s que se <strong>de</strong>see, etc. Ensegundo lugar, pue<strong>de</strong> ayudar mucho en los aspectos económicos.Por ejemplo, en muchos casos pue<strong>de</strong> utilizarse la misma cantidad<strong>de</strong> recursos en adquirir una cierta cantidad <strong>de</strong> licencias <strong>de</strong> un programapropietario para su uso por los ciudadanos, o en adquirir148


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492una copia <strong>de</strong> uno <strong>libre</strong>, y contratar soporte o adaptaciones paraél. O incluso en negociar con un productor <strong>de</strong> <strong>software</strong> propietariola compra <strong>de</strong> los <strong>de</strong>rechos <strong>de</strong> su producto para convertirlo en<strong>software</strong> <strong>libre</strong>.En otro ámbito, po<strong>de</strong>mos imaginar que parte <strong>de</strong> la cantidad <strong>de</strong>stinadaa un programa <strong>de</strong> informatización <strong>de</strong> escuelas se <strong>de</strong>dica a crearuna distribución <strong>de</strong> GNU/Linux adaptada a las necesida<strong>de</strong>s <strong>de</strong> la docenciaen enseñanza primaria. Y con el resto <strong>de</strong> los recursos, se contratasoporte para que el <strong>software</strong> sea mantenido en esas escuelas,<strong>de</strong> forma que no sea un simple “<strong>software</strong> florero”, sino que re<strong>al</strong>mentehaya gente encargada <strong>de</strong> su correcto funcionamiento. De esta manerase cubren no sólo las necesida<strong>de</strong>s <strong>de</strong>l sistema educativo, sinoque a<strong>de</strong>más se genera un mercado para empresas, habitu<strong>al</strong>mente<strong>de</strong> ámbito loc<strong>al</strong>, capaces <strong>de</strong> ofrecer servicios <strong>de</strong> mantenimiento. Ypor supuesto, se <strong>de</strong>ja completamente abierto el camino <strong>al</strong> futuro: el<strong>software</strong> no quedará obsoleto en pocos años obligando a recomenzar<strong>de</strong>s<strong>de</strong> cero, sino que se podrá ir actu<strong>al</strong>izando increment<strong>al</strong>mente,año tras año, manteniendo los beneficios <strong>de</strong>l programa con una inversiónsimilar.NotaEl lector conocedor <strong>de</strong> las iniciativas públicas conrespecto <strong>al</strong> <strong>software</strong> <strong>libre</strong> reconocerá en este ejemploel caso <strong>de</strong> LinEx. A fin<strong>al</strong>es <strong>de</strong>l 2001 la Junta <strong>de</strong>Extremadura (España) <strong>de</strong>cidió utilizar una distribución<strong>de</strong> GNU/Linux para informatizar todos los colegiospúblicos <strong>de</strong> la región. Para ello, financió laconstrucción <strong>de</strong> LinEx, una distribución basada enDebian GNU/Linux que fue anunciada en primavera<strong>de</strong>l 2002, y se encargó <strong>de</strong> que fuera un requisitoen todos los concursos <strong>de</strong> adquisición <strong>de</strong> equipamientoinformático para centros educativos. A<strong>de</strong>más,inició programas <strong>de</strong> formación y capacitación<strong>de</strong> profesores, <strong>de</strong> creación <strong>de</strong> materi<strong>al</strong>es docentes y<strong>de</strong> extensión <strong>de</strong> la experiencia a otros ámbitos. Amediados <strong>de</strong>l 2003, la experiencia parece ser unéxito, que ya se está extendiendo institucion<strong>al</strong>mentea otras regiones (por ejemplo, a And<strong>al</strong>ucía, tambiénen España, mediante el proyecto GuadaLinex).ANOTACIONES149


© FUOC • XP06/M2101/01492Software <strong>libre</strong>6.2.3. Fomento <strong>de</strong> la investigaciónEl <strong>software</strong> también tiene interesantes ventajas en política <strong>de</strong> I+Dque merece la pena an<strong>al</strong>izar. Con dinero público se están financiandolos <strong>de</strong>sarrollos <strong>de</strong> gran cantidad <strong>de</strong> <strong>software</strong> <strong>de</strong>l que la sociedadno acaba beneficiándose ni siquiera indirectamente. Habitu<strong>al</strong>mente,los programas públicos <strong>de</strong> fomento <strong>de</strong> la investigación y <strong>de</strong>sarrollofinancian tot<strong>al</strong> o parci<strong>al</strong>mente proyectos que crean programas sinaten<strong>de</strong>r a los <strong>de</strong>rechos que va a tener el público sobre ellos. En muchoscasos, los resultados, sin un plan a<strong>de</strong>cuado <strong>de</strong> comerci<strong>al</strong>ización,simplemente quedan en <strong>al</strong>gún cajón cubriéndose <strong>de</strong> polvo. Enotros, las mismas personas que financiaron un programa vía impuestosacaban pagándolo <strong>de</strong> nuevo si lo quieren usar (ya que tienenque adquirir licencias <strong>de</strong> uso).El <strong>software</strong> <strong>libre</strong> ofrece una opción interesante, que está siendo consi<strong>de</strong>radacon atención, poco a poco, por las autorida<strong>de</strong>s encargadas<strong>de</strong> la política <strong>de</strong> innovación en muchas administraciones. Especi<strong>al</strong>menteen los casos don<strong>de</strong> la investigación es precompetitiva (lo máshabitu<strong>al</strong> en los casos <strong>de</strong> financiación pública), que los programas resultantessean <strong>libre</strong>s permite que la industria en su conjunto (y poren<strong>de</strong> la sociedad) se beneficie gran<strong>de</strong>mente <strong>de</strong>l dinero público gastadoen I+D en el campo <strong>de</strong>l <strong>software</strong>. Don<strong>de</strong> una empresa pue<strong>de</strong>ver un resultado <strong>de</strong> imposible comerci<strong>al</strong>ización, otra pue<strong>de</strong> ver unaoportunidad <strong>de</strong> negocio. Así, por un lado, se maximizan los resultados<strong>de</strong> los programas <strong>de</strong> investigación. Y por otro, se favorece lacompetencia entre las empresas que quieran utilizar los resultados<strong>de</strong> un proyecto, ya que todas ellas competirán a partir <strong>de</strong> los mismosprogramas resultado <strong>de</strong>l proyecto.ANOTACIONESEste mo<strong>de</strong>lo no es nuevo. En gran medida es el que ha permitido el<strong>de</strong>sarrollo <strong>de</strong> Internet. Si las administraciones públicas exigen que losresultados <strong>de</strong> la investigación re<strong>al</strong>izada con sus fondos sean distribuidosen forma <strong>de</strong> programas <strong>libre</strong>s, no sería extraño que apareciesen,en diversas esc<strong>al</strong>as, casos similares. O bien los resultados <strong>de</strong>esas investigaciones son m<strong>al</strong>os o inútiles (y en ese caso <strong>de</strong>bería replantearsela forma <strong>de</strong> selección <strong>de</strong> los proyectos), o bien la dinamizaciónque supondría <strong>de</strong>jarlos listos para que cu<strong>al</strong>quier empresapueda convertirlos en producto permitiría <strong>de</strong>sarrollos sencillamenteimpre<strong>de</strong>cibles.150


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014926.3. Iniciativas legislativasvEn los siguientes apartados se repasan <strong>al</strong>gunas iniciativas que lospo<strong>de</strong>res legislativos están llevando a cabo en diversos países <strong>de</strong>lmundo, centrándonos en las iniciativas pioneras. Des<strong>de</strong> luego, est<strong>al</strong>ista <strong>de</strong> iniciativas no es exhaustiva. El lector interesado en completarlapue<strong>de</strong> consultar GrULIC. Legislación sobre el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong>en el estado, don<strong>de</strong> se citan gran cantidad <strong>de</strong> iniciativas por todoel mundo.Lectura complementaria[Ver bibliografía, apartado112]6.3.1. Proyectos <strong>de</strong> ley en FranciaEn 1999 y 2000 se presentaron en Francia dos proyectos <strong>de</strong> ley relacionadoscon el <strong>software</strong> <strong>libre</strong> que fueron los pioneros <strong>de</strong> una largaserie <strong>de</strong> <strong>de</strong>bates legislativos sobre la materia:• vEl proyecto <strong>de</strong> ley 1999-495, propuesto por Laffitte, Trégouet yCabanel, fue expuesto en el servidor web <strong>de</strong>l Senado <strong>de</strong> la repúblicafrancesa a partir <strong>de</strong> octubre <strong>de</strong> 1999. Tras un proceso <strong>de</strong>discusión pública a través <strong>de</strong> Internet que se prolongó durante dosmeses, el proyecto sufrió <strong>al</strong>gunas modificaciones. El resultado esel proyecto <strong>de</strong> ley número 2000-117, que abogaba por el usoobligatorio <strong>de</strong> <strong>software</strong> <strong>libre</strong> en la Administración, previendo excepcionesy medidas transitorias para aquellos casos en los queno sea aún técnicamente posible, en un marco más gener<strong>al</strong> queintentaba gener<strong>al</strong>izar en la Administración francesa el uso <strong>de</strong> Internety <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Lectura complementaria[Ver bibliografía, apartados83 y 141]• En abril <strong>de</strong> 2000 los diputados Jean-Yves Le Déaut, Christian Pauly Pierre Cohen propusieron una nueva ley, cuyo objetivo es similar<strong>al</strong> proyecto <strong>de</strong> Laffitte, Trégouet y Cabanel: reforzar las liberta<strong>de</strong>sy la seguridad <strong>de</strong>l consumidor, así como mejorar la igu<strong>al</strong>dad <strong>de</strong><strong>de</strong>rechos en la sociedad <strong>de</strong> la información.Sin embargo, a diferencia <strong>de</strong>l proyecto <strong>de</strong> ley <strong>de</strong> Laffitte, Trégouet yCabanel, este otro no fuerza a utilizar <strong>software</strong> <strong>libre</strong> en la administración.Este proyecto <strong>de</strong> ley se centra en que el <strong>software</strong> utilizado enla Administración tenga el código fuente disponible, si bien no obligaa que éste se distribuya con licencias <strong>de</strong> <strong>software</strong> <strong>libre</strong>.ANOTACIONES151


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Lectura complementaria[Ver bibliografía, apartado92]Para conseguir sus objetivos, los legisladores preten<strong>de</strong>n garantizar el“<strong>de</strong>recho a la compatibilidad” <strong>de</strong>l <strong>software</strong>, proporcionando mecanismosque lleven a la práctica el principio <strong>de</strong> interoperabilidad plasmadoen la Directiva <strong>de</strong>l Consejo Europeo relativa a la protecciónjurídica <strong>de</strong> programas <strong>de</strong> or<strong>de</strong>nador.Ninguno <strong>de</strong> los dos proyectos franceses se convirtió en ley, pero amboshan servido <strong>de</strong> inspiración a la mayoría <strong>de</strong> las iniciativas posterioresen todo el mundo, y por ello es especi<strong>al</strong>mente interesante suestudio. El segundo (propuesto por Le Déaut, Paul y Cohen) perseguí<strong>al</strong>a compatibilidad e interoperabilidad <strong>de</strong>l <strong>software</strong>, haciendohincapié en la disponibilidad <strong>de</strong>l código fuente <strong>de</strong>l <strong>software</strong> utilizadoen la Administración. Sin embargo, no requiere que las aplicaciones<strong>de</strong>sarrolladas sean <strong>software</strong> <strong>libre</strong>, entendido como aquel que se distribuyecon licencias que garantizan la libertad <strong>de</strong> modificación, usoy redistribución <strong>de</strong>l programa.Más a<strong>de</strong>lante (apartados 6.4.1 y 6.4.2) reproducimos <strong>de</strong> maneracasi íntegra el articulado y la exposición <strong>de</strong> motivos <strong>de</strong> ambos proyectos<strong>de</strong> ley. En particular, las exposiciones <strong>de</strong> motivos son <strong>de</strong> especi<strong>al</strong>interés, pues res<strong>al</strong>tan cuáles son los problemas que acechan hoydía a las administraciones públicas en relación con el uso <strong>de</strong> <strong>software</strong>en gener<strong>al</strong>.6.3.2. Proyecto <strong>de</strong> ley en BrasilANOTACIONESLectura complementaria[Ver bibliografía, apartado164]El diputado W<strong>al</strong>ter Pinheiro presentó en diciembre <strong>de</strong> 1999 un proyecto<strong>de</strong> ley sobre el <strong>software</strong> <strong>libre</strong> en la Cámara Fe<strong>de</strong>r<strong>al</strong> <strong>de</strong> Brasil.Este proyecto (aún en tramitación en agosto <strong>de</strong>l 2003) afecta a la utilización<strong>de</strong> <strong>software</strong> <strong>libre</strong> en la Administración pública y en las empresasprivadas controladas accionari<strong>al</strong>mente por el Estado.En él se recomienda el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> en estas entida<strong>de</strong>sque no tenga restricciones en cuanto a su préstamo, modificacióno distribución. El articulado <strong>de</strong> la ley <strong>de</strong>scribe pormenorizadamentequé se entien<strong>de</strong> por <strong>software</strong> <strong>libre</strong> y cómo <strong>de</strong>ben ser las licenciasque lo acompañen. Las <strong>de</strong>finiciones coinci<strong>de</strong>n con la<strong>de</strong>finición clásica <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>l proyecto GNU. En la exposición<strong>de</strong> motivos se repasa la historia <strong>de</strong>l proyecto GNU, an<strong>al</strong>i-152


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492zando sus ventajas y logros. Asimismo, se hace referencia a lasituación actu<strong>al</strong> <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, utilizando como ejemplo el sistemaoperativo GNU/Linux.Una <strong>de</strong> las partes más interesantes, el artículo primero, <strong>de</strong>ja bienclaro el ámbito en el que se propone el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> (teniendoen cuenta que la <strong>de</strong>finición que se ofrece en los artículosposteriores para “programa abierto” es, como ya se ha dicho,<strong>software</strong> <strong>libre</strong>):aaa“La Administración pública, en todos los niveles, los po<strong>de</strong>res<strong>de</strong> la República, las empresas estat<strong>al</strong>es y <strong>de</strong> economíamixta, las empresas públicas y todos los <strong>de</strong>másorganismos públicos o privados sujetos <strong>al</strong> control <strong>de</strong> lasociedad brasileña están obligados a utilizar preferentemente,en sus sistemas y equipamientos <strong>de</strong> informática,programas abiertos, <strong>libre</strong>s <strong>de</strong> restriccionespropietarias en cuanto a su cesión, modificación y distribución.”6.3.3. Proyectos <strong>de</strong> ley en PerúSon varios los proyectos <strong>de</strong> ley relacionados con el uso <strong>de</strong>l <strong>software</strong><strong>libre</strong> en las administraciones públicas que se han propuesto en Perú.El primero y el más conocido fue propuesto por el congresista EdgarVillanueva Núñez en diciembre <strong>de</strong>l 2001. En él se <strong>de</strong>fine <strong>software</strong> <strong>libre</strong>según la <strong>de</strong>finición clásica <strong>de</strong> las cuatro liberta<strong>de</strong>s (dándole quizásuna mayor precisión leg<strong>al</strong>, con una <strong>de</strong>finición que especifica seiscaracterísticas que ha <strong>de</strong> tener un programa <strong>libre</strong>), y propone su utilizaciónexclusiva en la administración peruana:aaa“Artículo 2. Los po<strong>de</strong>res Ejecutivo, Legislativo y Judici<strong>al</strong>,los organismos <strong>de</strong>scentr<strong>al</strong>izados y las empresas don<strong>de</strong>el Estado posea mayoría accionaria, emplearán en sussistemas y equipamientos <strong>de</strong> informática exclusivamenteprogramas o <strong>software</strong> <strong>libre</strong>s”.Lectura complementaria[Ver bibliografía, apartados163 y 199]ANOTACIONES153


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Aunque un poco más a<strong>de</strong>lante, los artículos 4 y 5 incluyen <strong>al</strong>gunasexcepciones a esta regla.Lectura complementaria[Ver bibliografía, apartado127]En su día esta propuesta <strong>de</strong> ley tuvo gran repercusión mundi<strong>al</strong>. Porun lado, fue la primera vez en que se propuso el uso exclusivo <strong>de</strong>l<strong>software</strong> <strong>libre</strong> en una administración. Pero incluso más importantepara su repercusión que esa novedad fue el intercambio epistolar entreel congresista Villanueva y la representación <strong>de</strong> Microsoft en Perú,que re<strong>al</strong>izó <strong>al</strong>egaciones a esta propuesta. También es interesanteesta propuesta <strong>de</strong> ley por la posición que tomó <strong>al</strong> respecto la embajada<strong>de</strong> EE.UU., que incluso llegó a enviar por conducto ofici<strong>al</strong> unanotificación (adjuntando un informe elaborado por Microsoft) <strong>al</strong>Congreso peruano expresando su “preocupación sobre las recientespropuestas <strong>de</strong>l Congreso <strong>de</strong> la República para restringir las compraspor parte <strong>de</strong>l Gobierno peruano <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto o<strong>software</strong> <strong>libre</strong>”. Entre otros motivos, tanto las <strong>al</strong>egaciones <strong>de</strong> Microsoftcomo <strong>de</strong> la Embajada <strong>de</strong> EE.UU. trataban <strong>de</strong> mostrar cómo lapropuesta <strong>de</strong> ley discriminaría a unas empresas frente a otras, y haríaimposible las inversiones necesarias para la creación <strong>de</strong> una industrianacion<strong>al</strong> <strong>de</strong> creación <strong>de</strong> <strong>software</strong>. Ante esto, Villanuevaargumenta cómo su proposición <strong>de</strong> ley no discrimina ni favorece <strong>de</strong>ninguna manera a ninguna empresa en particular, pues no especificaquién podrá ser proveedor <strong>de</strong> la Administración, sino cómo (enqué condiciones) tendrá que re<strong>al</strong>izarse la provisión <strong>de</strong> <strong>software</strong>. Estaargumentación es muy clara para enten<strong>de</strong>r cómo la promoción <strong>de</strong>l<strong>software</strong> <strong>libre</strong> en la Administración no perjudica en ningún caso a l<strong>al</strong>ibre competencia entre las empresas suministradoras.ANOTACIONESLectura complementaria[Ver bibliografía, apartado200]Más a<strong>de</strong>lante, los congresistas peruanos Edgar Villanueva Núñez yJacques Rodrich Ackerman presentaron un nuevo proyecto <strong>de</strong> ley, elnúmero 2485 <strong>de</strong> 8 <strong>de</strong> abril <strong>de</strong>l 2002, que en agosto <strong>de</strong>l 2003 siguesu trámite parlamentario. Este proyecto es una evolución <strong>de</strong>l proyecto<strong>de</strong> ley 1609, ya que recoge varios comentarios y mejoras sobre él, ypue<strong>de</strong> consi<strong>de</strong>rarse como un buen ejemplo <strong>de</strong> proyecto <strong>de</strong> ley quepropone el uso exclusivo <strong>de</strong> <strong>software</strong> <strong>libre</strong> en las administracionespúblicas, s<strong>al</strong>vo en ciertos casos excepcion<strong>al</strong>es. Por su interés, incluimossu texto íntegro (apartado 6.4.3). En particular, su exposición <strong>de</strong>motivos es un buen resumen <strong>de</strong> las características que <strong>de</strong>bería tenerel <strong>software</strong> utilizado por las administraciones públicas, y cómo éstaslas cumple mejor el <strong>software</strong> <strong>libre</strong> que el propietario.154


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014926.3.4. Proyectos <strong>de</strong> ley en EspañaEn España ha habido varias iniciativas legislativas relacionadas conel <strong>software</strong> <strong>libre</strong>. Citamos a continuación <strong>al</strong>gunas <strong>de</strong> ellas:• Decreto <strong>de</strong> medidas <strong>de</strong> impulso <strong>de</strong> la sociedad <strong>de</strong>l conocimientoen And<strong>al</strong>ucíaUna <strong>de</strong> las iniciativas legislativas más importantes (por haber entradoen vigor) que han tenido lugar en España ha sido sin duda laadoptada por And<strong>al</strong>ucía. En el <strong>de</strong>creto <strong>de</strong> medidas <strong>de</strong> impulso <strong>de</strong> lasociedad <strong>de</strong>l conocimiento en And<strong>al</strong>ucía se trata el uso <strong>de</strong> <strong>software</strong><strong>libre</strong>, fundament<strong>al</strong>mente (pero no sólo) en el entorno educativo.Lectura complementaria[Ver bibliografía, apartado80]Entre otros <strong>de</strong>t<strong>al</strong>les, fomenta el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong> forma preferenteen los centros docentes públicos, obliga a que todo el equipamientoadquirido para estos centros sea compatible con sistemasoperativos <strong>libre</strong>s, y lo mismo para los centros <strong>de</strong> la Junta que ofrezcanacceso público a Internet.• Proposición <strong>de</strong> ley <strong>de</strong> <strong>software</strong> <strong>libre</strong> en el marco <strong>de</strong> la Administraciónpública <strong>de</strong> Cat<strong>al</strong>uñaEn otras comunida<strong>de</strong>s se han discutido proposiciones más ambiciosas,pero sin que hayan logrado la mayoría necesaria. Entre ellas, lamás conocida es probablemente la <strong>de</strong>batida en el Parlamento <strong>de</strong>Cat<strong>al</strong>uña, muy similar a la que el mismo partido (Esquerra Republicana<strong>de</strong> Cat<strong>al</strong>unya) presentó en el Congreso <strong>de</strong> los Diputados, <strong>de</strong> laque se habla a continuación. Esta propuesta no prosperó cuando fuesometida a votación.Lectura complementaria[Ver bibliografía, apartado198]• Proyecto <strong>de</strong> ley <strong>de</strong> Puigcercós Boixassa en el Congreso <strong>de</strong> los DiputadosTambién ha habido una iniciativa en el Congreso <strong>de</strong> los Diputados,propuesta por Joan Puigcercós Boixassa (Esquerra Republicana <strong>de</strong>Cat<strong>al</strong>unya). Esta iniciativa propone la preferencia <strong>de</strong>l uso <strong>de</strong> <strong>software</strong><strong>libre</strong> en la Administración <strong>de</strong>l Estado, y en ese sentido es similar aotras iniciativas con ese fin. Sin embargo, tiene la peculiaridad interesante<strong>de</strong> hacer énfasis en la disposición <strong>de</strong> los programas <strong>libre</strong>s lo-ANOTACIONESLectura complementaria[Ver bibliografía, apartado167]155


© FUOC • XP06/M2101/01492Software <strong>libre</strong>c<strong>al</strong>izados para los idiomas coofici<strong>al</strong>es (en las comunida<strong>de</strong>sautónomas que los tienen). La iniciativa no consiguió ser aprobadaen el trámite parlamentario.6.4. Textos <strong>de</strong> <strong>al</strong>gunas propuestas legislativasy documentos relacionadosA continuación se ofrece el texto liter<strong>al</strong> <strong>de</strong> <strong>al</strong>gunas <strong>de</strong> las propuestaslegislativas mencionadas en este capítulo, y <strong>de</strong> <strong>al</strong>gunos documentosrelacionados con éstas.6.4.1. Proyecto <strong>de</strong> ley <strong>de</strong> Laffitte, Trégouet y Cabanel(Francia)Lectura complementaria[Ver bibliografía, apartado140]A continuación reproducimos una traducción <strong>al</strong> español <strong>de</strong>l proyecto<strong>de</strong> ley re<strong>al</strong>izado en octubre <strong>de</strong> 1999 por los senadores franceses PierreLaffitte, René Trégouët y Guy Cabanel.Exposición <strong>de</strong> motivos(Se incluyen solamente aquellos párrafos relativos <strong>al</strong> <strong>software</strong> <strong>libre</strong>)ANOTACIONES[...] Para garantizar la perennidad <strong>de</strong> los datos accesibles, facilitar suintercambio y asegurar el <strong>libre</strong> acceso <strong>de</strong> los ciudadanos a la información,es necesario que su utilización en la Administración no <strong>de</strong>penda<strong>de</strong> la buena voluntad <strong>de</strong> los fabricantes <strong>de</strong> <strong>software</strong>. Senecesitan sistemas <strong>libre</strong>s cuya evolución pueda garantizarse graciasa la disponibilidad por parte <strong>de</strong> todos <strong>de</strong>l código fuente utilizado porel fabricante.El <strong>de</strong>sarrollo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es actu<strong>al</strong>mente muy fuerte. Son muchaslas gran<strong>de</strong>s empresas <strong>de</strong> informática que reconocen que el futuro<strong>de</strong> su negocio no estará en ven<strong>de</strong>r <strong>software</strong>, sino en facilitar suuso mediante la prestación <strong>de</strong> servicios asociados.Nuestro proyecto <strong>de</strong> ley prevé que <strong>de</strong>spués <strong>de</strong> un periodo transitorio<strong>de</strong>finido por <strong>de</strong>creto, el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> en las administracionespúblicas sea obligatorio.156


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Sólo se podrá utilizar <strong>software</strong> propietario cuyo código fuente no estédisponible en casos concretos si media una autorización <strong>de</strong> unaagencia <strong>de</strong>l <strong>software</strong> <strong>libre</strong> [...].Artículos• Artículo 1. Sobre la inmateri<strong>al</strong>ización <strong>de</strong> los intercambios <strong>de</strong> la informacióny datos entre las administraciones públicas.Los servicios <strong>de</strong>l Estado, las administraciones loc<strong>al</strong>es y los organismospúblicos se asegurarán <strong>de</strong> intercambiar sus datos e informacionesen soporte electrónico y con re<strong>de</strong>s electrónicas, a partir <strong>de</strong>lprimero <strong>de</strong> enero <strong>de</strong>l 2002.Las condiciones que regularán la situación transitoria entre el actu<strong>al</strong>intercambio mediante papel y el intercambio sobre soporte y re<strong>de</strong>selectrónicas se precisarán mediante <strong>de</strong>creto.• Artículo 2. Sobre la <strong>de</strong>smateri<strong>al</strong>ización <strong>de</strong> los procesos <strong>de</strong> losmercados públicos.Con el fin <strong>de</strong> conseguir una gran transparencia y un acceso rápidoa la información por parte <strong>de</strong> las empresas, las convocatorias <strong>de</strong>ofertas públicas así como los documentos anexos serán objeto <strong>de</strong> publicida<strong>de</strong>n soporte y re<strong>de</strong>s electrónicas a partir <strong>de</strong>l primero <strong>de</strong> enero<strong>de</strong>l 2002. Asimismo, <strong>de</strong>berá respon<strong>de</strong>rse a las convocatorias <strong>de</strong>ofertas públicas en soporte y mediante re<strong>de</strong>s electrónicas.Un <strong>de</strong>creto <strong>de</strong>terminará los mecanismos <strong>de</strong> transición a los procesoselectrónicos.• Artículo 3. Sobre las tecnologías abiertas.Los servicios <strong>de</strong>l Estado, las administraciones loc<strong>al</strong>es y los organismospúblicos sólo podrán utilizar a partir <strong>de</strong>l primero <strong>de</strong> enero <strong>de</strong>l 2002, excepciónhecha <strong>de</strong> lo dispuesto en el artículo 4, <strong>software</strong> cuyo uso y modificaciónsean <strong>libre</strong>s y para los que el código fuente esté disponible.Un <strong>de</strong>creto fijará las condiciones <strong>de</strong> transición.ANOTACIONES157


© FUOC • XP06/M2101/01492Software <strong>libre</strong>• Artículo 4. Sobre la agencia <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Se creará la Agencia <strong>de</strong>l Software Libre. Estará encargada <strong>de</strong> informara los servicios <strong>de</strong>l Estado, a las administraciones loc<strong>al</strong>es y a losorganismos públicos <strong>de</strong> las condiciones <strong>de</strong> aplicación <strong>de</strong> la presenteley. La Agencia <strong>de</strong>terminará las licencias <strong>de</strong> utilización <strong>de</strong> <strong>software</strong>que se a<strong>de</strong>cuan <strong>al</strong> marco fijado por la presente ley.La Agencia velará por la interoperabilidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong> <strong>de</strong>ntro<strong>de</strong> las administraciones públicas.La Agencia re<strong>al</strong>izará el inventario, por sectores <strong>de</strong> actividad, <strong>de</strong> lascarencias <strong>de</strong>l <strong>software</strong> cuyo uso y modificación sean <strong>libre</strong>s y cuyo códigofuente esté disponible. En función <strong>de</strong> este inventario, la Agenciaautorizará a las administraciones públicas a no aplicar la presenteley.La Agencia <strong>de</strong>l <strong>software</strong> <strong>libre</strong> estará abierta a los internautas y sus<strong>de</strong>cisiones <strong>de</strong>berán estar precedidas <strong>de</strong> consultas re<strong>al</strong>izadas a través<strong>de</strong> Internet.Se <strong>de</strong>signará a una persona <strong>de</strong> enlace con la Agencia <strong>de</strong>l <strong>software</strong><strong>libre</strong> en cada prefectura.Las mod<strong>al</strong>ida<strong>de</strong>s <strong>de</strong> funcionamiento <strong>de</strong> la Agencia <strong>de</strong>l <strong>software</strong> <strong>libre</strong>se establecerán mediante <strong>de</strong>creto.• Artículo 5. Sobre la difusión <strong>de</strong> las modificaciones <strong>de</strong>l <strong>software</strong>utilizado en el marco <strong>de</strong> la presente ley.ANOTACIONESLa Agencia <strong>de</strong>l Software Libre velará, respetando los <strong>de</strong>rechos <strong>de</strong> losautores, porque sean difundidas las modificaciones <strong>al</strong> <strong>software</strong> re<strong>al</strong>izadasen el marco <strong>de</strong> la presente ley.• Artículo 6.Los gastos que re<strong>al</strong>ice el Estado con motivo <strong>de</strong> la presente ley seráncompensados mediante un incremento <strong>de</strong> los <strong>de</strong>rechos apuntadosen los artículos 575 y 575A <strong>de</strong>l código gener<strong>al</strong> <strong>de</strong> impuestos.158


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014926.4.2. Proyecto <strong>de</strong> ley <strong>de</strong> Le Déaut, Paul y Cohen (Francia)A continuación mostramos la traducción <strong>al</strong> español <strong>de</strong>l texto prácticamenteíntegro <strong>de</strong>l proyecto <strong>de</strong> ley presentado por Jean-Yves LeDéaut, Christian Paul y Pierre Cohe en abril <strong>de</strong>l 2000:Exposición <strong>de</strong> motivosEl incremento fulgurante <strong>de</strong> la utilización <strong>de</strong> las nuevas tecnologías<strong>de</strong> la información y <strong>de</strong> las telecomunicaciones precisa <strong>de</strong> un acompañamientolegislativo. Los servicios públicos y las administracionesloc<strong>al</strong>es <strong>de</strong>ben convertirse en mo<strong>de</strong>lo y motor <strong>de</strong> la sociedad <strong>de</strong> la informaciónque sea garante <strong>de</strong> las liberta<strong>de</strong>s individu<strong>al</strong>es, <strong>de</strong> la seguridad<strong>de</strong>l consumidor y <strong>de</strong> la igu<strong>al</strong>dad <strong>de</strong> oportunida<strong>de</strong>s en lamateria que nos ocupa.Varios ejemplos muestran que, a pesar <strong>de</strong> <strong>al</strong>gunos progresos importantesre<strong>al</strong>izados gracias a la acción <strong>de</strong>l Gobierno en el área <strong>de</strong> lasociedad <strong>de</strong> la información, los servicios <strong>de</strong>l Estado suelen utilizar estándares<strong>de</strong> comunicación ligados íntimamente a un proveedor privadoúnico, lo que restringe a un usuario o a una colectividad a sercliente <strong>de</strong> este mismo proveedor, reforzando así <strong>de</strong> manera significativ<strong>al</strong>os fenómenos <strong>de</strong> abuso <strong>de</strong> posición dominante.Los servicios <strong>de</strong>l Estado utilizan a menudo <strong>software</strong> cuyo código fuenteno está disponible, lo que les impi<strong>de</strong> hacer que se corrijan los erroresque los propios proveedores se niegan a corregir o verificar siexisten <strong>de</strong>fectos <strong>de</strong> seguridad en las aplicaciones sensibles. Los servicios<strong>de</strong>l Estado utilizan, a veces sin saberlo, <strong>software</strong> que transmitesecretamente información consi<strong>de</strong>rada a priori como confi<strong>de</strong>nci<strong>al</strong> asocieda<strong>de</strong>s u organismos extranjeros.Ahora bien, los mo<strong>de</strong>los económicos <strong>de</strong> la industria <strong>de</strong>l <strong>software</strong> y <strong>de</strong>las telecomunicaciones <strong>de</strong>sarrollados por el mercado se basan engran medida en la apropiación <strong>de</strong> una clientela y en la v<strong>al</strong>oración exponenci<strong>al</strong><strong>de</strong> la captación <strong>de</strong> los perfiles <strong>de</strong> los usuarios. Estos mo<strong>de</strong>loseconómicos favorecen estrategias <strong>de</strong> incompatibilidad, <strong>de</strong> secreto industri<strong>al</strong>,<strong>de</strong> obsolescencia programada y <strong>de</strong> violación <strong>de</strong> las liberta<strong>de</strong>sindividu<strong>al</strong>es. Si bien el Estado francés no pue<strong>de</strong> preten<strong>de</strong>r eliminar porley estas ten<strong>de</strong>ncias subyacentes <strong>de</strong>bido <strong>al</strong> carácter transnacion<strong>al</strong> <strong>de</strong>ANOTACIONES159


© FUOC • XP06/M2101/01492Software <strong>libre</strong>las re<strong>de</strong>s <strong>de</strong> comunicación, sí que pue<strong>de</strong>, sin embargo, favorecer el<strong>de</strong>sarrollo sobre suelo francés <strong>de</strong> una sociedad <strong>de</strong> la información quesea respetuosa con las liberta<strong>de</strong>s públicas, con la seguridad <strong>de</strong>l consumidory con la igu<strong>al</strong>dad <strong>de</strong> oportunida<strong>de</strong>s, y cabe esperar que juegueun papel precursor en Europa y en el mundo.La ley que proponemos se fundamenta en cinco principios: el <strong>libre</strong>acceso <strong>de</strong>l ciudadano a la información pública, la perennidad <strong>de</strong> losdatos públicos, la seguridad <strong>de</strong>l Estado, la seguridad <strong>de</strong>l consumidoren la sociedad <strong>de</strong> la información y el principio <strong>de</strong> interoperabilidad<strong>de</strong> la legislación sobre <strong>software</strong>.Para garantizar el <strong>libre</strong> acceso <strong>de</strong>l ciudadano a la información pública,hace f<strong>al</strong>ta que la codificación <strong>de</strong> los datos informáticos comunicadospor la Administración no esté ligada a un proveedor único. Losestándares abiertos, es <strong>de</strong>cir, aquellos cuyas reglas <strong>de</strong> codificación<strong>de</strong> la información son públicas, permiten garantizar ese <strong>libre</strong> acceso<strong>al</strong> permitir, si es necesario, el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong> compatible.Para garantizar la perennidad <strong>de</strong> los datos públicos, es necesarioque la utilización y mantenimiento <strong>de</strong>l <strong>software</strong> no <strong>de</strong>penda <strong>de</strong> labuena intención <strong>de</strong> los creadores <strong>de</strong>l <strong>software</strong>. Hacen f<strong>al</strong>ta sistemascuya evolución esté siempre garantizada mediante la disponibilidad<strong>de</strong>l código fuente. El principio <strong>de</strong> disponibilidad <strong>de</strong>l código fuente enel marco <strong>de</strong> los contratos basados en licencias, principio presente afecha <strong>de</strong> hoy solamente como opción en la legislación sobre compraspúblicas <strong>de</strong> utilida<strong>de</strong>s y paquetes <strong>software</strong>, <strong>de</strong>be convertirse enla regla y aplicarse a todas las compras públicas <strong>de</strong> <strong>software</strong>.ANOTACIONESHemos <strong>de</strong>sechado voluntariamente una aproximación legislativa basadaexclusivamente en el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Sería inoportunoque, cu<strong>al</strong>quiera que fuese la c<strong>al</strong>idad reconocida <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, elEstado favoreciese un <strong>de</strong>terminado mo<strong>de</strong>lo económico <strong>de</strong> edición <strong>de</strong><strong>software</strong>. Al contrario, el recurso obligatorio a estándares <strong>de</strong> comunicaciónabiertos y la publicación <strong>de</strong>l código fuente garantizan unaigu<strong>al</strong>dad <strong>de</strong> oportunida<strong>de</strong>s conforme <strong>al</strong> principio <strong>de</strong> interoperabilidad<strong>de</strong> la legislación sobre <strong>software</strong>.Para garantizar la seguridad nacion<strong>al</strong>, son necesarios sistemas <strong>de</strong>sprovistos<strong>de</strong> elementos que permitan un control a distancia o la160


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492transmisión involuntaria <strong>de</strong> información a un tercero. Necesitamossistemas cuyo código fuente esté accesible <strong>libre</strong>mente <strong>al</strong> público parapermitir el examen por un gran número <strong>de</strong> expertos mundi<strong>al</strong>es in<strong>de</strong>pendientes.Nuestro proyecto <strong>de</strong> ley <strong>de</strong>bería aportar más seguridad<strong>al</strong> Estado, pues el conocimiento <strong>de</strong>l código fuente eliminará el númerocreciente <strong>de</strong> <strong>software</strong> que contiene “puertas traseras”.Nuestro proyecto <strong>de</strong> ley <strong>de</strong>bería asimismo reforzar la seguridad <strong>de</strong>lconsumidor en la sociedad <strong>de</strong> la información, <strong>al</strong> permitir el surgimiento<strong>de</strong> una oferta <strong>de</strong> <strong>software</strong> <strong>de</strong>sprovisto <strong>de</strong> “puertas traseras”,que amenazan el respeto <strong>de</strong> la vida privada y <strong>de</strong> las liberta<strong>de</strong>s individu<strong>al</strong>es.Pero para que emerja la igu<strong>al</strong>dad <strong>de</strong> oportunida<strong>de</strong>s es preciso quese reafirme y refuerce el principio <strong>de</strong> interoperabilidad introducidoen la legislación sobre <strong>software</strong> y en la legislación sobre la compatibilidad.Ambos <strong>de</strong>rechos están hoy amenazados por los actores quegozan <strong>de</strong> una posición dominante, quienes ponen trabas <strong>al</strong> surgimiento<strong>de</strong> la competencia.Para garantizar la interoperabilidad <strong>de</strong>l <strong>software</strong>, es necesario quelos <strong>de</strong>rechos <strong>de</strong> propiedad intelectu<strong>al</strong> o industri<strong>al</strong> <strong>de</strong> un creador <strong>de</strong><strong>software</strong> no bloqueen el <strong>de</strong>sarrollo <strong>de</strong>l nuevo <strong>software</strong> compatibleque compita con él. El <strong>de</strong>recho a la compatibilidad para todos, es<strong>de</strong>cir, el <strong>de</strong>recho a <strong>de</strong>sarrollar, publicar y utilizar <strong>libre</strong>mente un <strong>software</strong>origin<strong>al</strong> compatible con otro, <strong>de</strong>be estar garantizado por la ley.Asimismo, el principio <strong>de</strong> interoperabilidad introducido por el <strong>de</strong>rechoeuropeo <strong>de</strong>l <strong>software</strong> <strong>de</strong>be prev<strong>al</strong>ecer sobre los otros <strong>de</strong>rechoseventu<strong>al</strong>es <strong>de</strong> propiedad intelectu<strong>al</strong> o industri<strong>al</strong>. En particular, laexistencia <strong>de</strong> una marca sobre un estándar <strong>de</strong> comunicaciones o <strong>de</strong>una patente sobre un proceso industri<strong>al</strong> necesario para implementarun estándar <strong>de</strong> comunicaciones, no <strong>de</strong>bería permitir a su poseedorbloquear o limitar la difusión <strong>libre</strong> <strong>de</strong> <strong>software</strong> compatible.Nuestro proyecto <strong>de</strong> ley pue<strong>de</strong> aplicarse inmediatamente. En efecto,la mayoría <strong>de</strong> los editores <strong>de</strong> <strong>software</strong> están dispuestos a adoptar estándares<strong>de</strong> comunicación abiertos como los <strong>de</strong>finidos en París, Bostony Tokio por el World Wi<strong>de</strong> Web Consortium. Existen muchoseditores <strong>de</strong> <strong>software</strong> propietario que están igu<strong>al</strong>mente dispuestos aproporcionar a la Administración francesa el código fuente <strong>de</strong> susANOTACIONES161


© FUOC • XP06/M2101/01492Software <strong>libre</strong>productos. A<strong>de</strong>más, la oferta <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>al</strong>re<strong>de</strong>dor <strong>de</strong>l sistemaoperativo Linux cubrirá en a<strong>de</strong>lante muchas <strong>de</strong> las necesida<strong>de</strong>s <strong>de</strong> laAdministración. Sin embargo, las administraciones y colectivida<strong>de</strong>sno están suficientemente informadas <strong>de</strong> la existencia <strong>de</strong> estándaresabiertos, o <strong>de</strong> la oferta <strong>de</strong> <strong>software</strong> publicado con código fuente.Para facilitar la adopción rápida <strong>de</strong> los estándares abiertos, es necesarioreforzar el papel <strong>de</strong> la comisión interministeri<strong>al</strong> <strong>de</strong> soporte técnicopara el <strong>de</strong>sarrollo <strong>de</strong> las tecnologías <strong>de</strong> la información y lacomunicación en la Administración (Mission interministérielle <strong>de</strong>soutin technique pour le développement <strong>de</strong>s technologies <strong>de</strong> l'informationet <strong>de</strong> la communication dans l'administration), y confiarle lamisión <strong>de</strong> hacer y difundir <strong>de</strong>ntro <strong>de</strong> la Administración un censo <strong>de</strong>la oferta <strong>de</strong> estándares abiertos y <strong>software</strong> publicado con códigofuente. En caso <strong>de</strong> que no exista un mercado, la MTIC se encargará<strong>de</strong> <strong>de</strong>sarrollar nuevos estándares o nuevo <strong>software</strong> publicado con sucódigo fuente. Para llevar a cabo estas nuevas misiones, la MTIC setransformará en la Agencia <strong>de</strong> Tecnologías <strong>de</strong> la Información y laComunicación (ATIC).Cuando no exista un mercado, la ATIC se encargará <strong>de</strong> <strong>de</strong>sarrollarnuevos estándares o nuevo <strong>software</strong> publicado con su código fuente.Para conseguir la igu<strong>al</strong>dad <strong>de</strong> oportunida<strong>de</strong>s, los <strong>de</strong>sarrollos <strong>de</strong> <strong>software</strong>que se produzcan se pondrán en el dominio público; por lo tanto,podrán comerci<strong>al</strong>izarse tanto como <strong>software</strong> propietario como<strong>software</strong> <strong>libre</strong>, según elija <strong>libre</strong>mente una licencia u otra el editor. LaATIC se encargará también <strong>de</strong> ev<strong>al</strong>uar el nivel <strong>de</strong> interoperabilidad,<strong>de</strong> perennidad y <strong>de</strong> seguridad <strong>de</strong>l <strong>software</strong> comprado por la Administraciónfrancesa.ANOTACIONESMás genéricamente, los sistemas <strong>de</strong> comunicación abiertos y la disponibilidad<strong>de</strong>l código fuente son indispensables para garantizar aesc<strong>al</strong>a europea la interoperabilidad entre los sistemas <strong>de</strong> información<strong>de</strong> las administraciones y <strong>de</strong> los organismos públicos nacion<strong>al</strong>es,y para evitar que la interconexión entre sistemas <strong>de</strong>pendasolamente <strong>de</strong> la buena voluntad <strong>de</strong> los editores <strong>de</strong> <strong>software</strong>. La ATICestará encargada también <strong>de</strong> participar en los trabajos <strong>de</strong> cooperacióninternacion<strong>al</strong> en el dominio <strong>de</strong> las tecnologías <strong>de</strong> la informacióny las comunicaciones, y <strong>de</strong> favorecer la interoperabilidad con los sis-162


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492temas <strong>de</strong> información <strong>de</strong> los <strong>de</strong>más países miembros <strong>de</strong> la Unión Europea.Nuestro proyecto <strong>de</strong> ley respon<strong>de</strong> a las preocupaciones enumeradasarriba. Nos recuerda que el Estado pue<strong>de</strong> jugar un papel en la economíapreservando el interés nacion<strong>al</strong> y europeo, <strong>de</strong>fendiendo <strong>al</strong>mismo tiempo la economía <strong>de</strong> mercado. Este proyecto <strong>de</strong> ley permitiráque Francia se erija en <strong>de</strong>fensora <strong>de</strong> las liberta<strong>de</strong>s <strong>de</strong>ntro <strong>de</strong> lasnuevas tecnologías <strong>de</strong> la información y las comunicaciones.Artículos• Artículo 1Para todos los intercambios <strong>de</strong> datos informáticos, la Administración<strong>de</strong>l Estado, las administraciones loc<strong>al</strong>es y los organismos públicos,tienen la obligación <strong>de</strong> emplear estándares <strong>de</strong> comunicación abiertos,constituidos por reglas y procedimientos públicos <strong>de</strong> intercambio<strong>de</strong> datos digit<strong>al</strong>es.• Artículo 2La Administración, los organismos públicos y las administracionespúblicas territori<strong>al</strong>es están obligadas a utilizar <strong>software</strong> cuyo códigofuente esté accesible.• Artículo 3Toda persona física o jurídica tiene <strong>de</strong>recho a <strong>de</strong>sarrollar, publicar outilizar <strong>software</strong> origin<strong>al</strong> compatible con los estándares <strong>de</strong> comunicación<strong>de</strong> cu<strong>al</strong>quier otro <strong>software</strong>.• Artículo 4Se creará un organismo público <strong>de</strong>l Estado, <strong>de</strong>nominado Agencia <strong>de</strong>las Tecnologías <strong>de</strong> la Información y las Comunicaciones. Este organismoserá tutelado por el Ministerio <strong>de</strong> Industria. La ATIC tiene lamisión <strong>de</strong> informar y aconsejar a los servicios <strong>de</strong>l Estado, a las colec-ANOTACIONES163


© FUOC • XP06/M2101/01492Software <strong>libre</strong>tivida<strong>de</strong>s y a los organismos públicos acerca <strong>de</strong> la concepción y lai<strong>de</strong>ntificación <strong>de</strong> las necesida<strong>de</strong>s técnicas en materia <strong>de</strong> tecnologías<strong>de</strong> la información y las comunicaciones. I<strong>de</strong>ntificará las necesida<strong>de</strong>s<strong>de</strong> los servicios públicos en materia <strong>de</strong> equipos y <strong>software</strong>, velará porla armonización <strong>de</strong> los estándares <strong>de</strong> comunicación y propondrá lasprácticas técnicas <strong>al</strong> uso. Re<strong>al</strong>izará el inventario por sectores <strong>de</strong> actividad<strong>de</strong> los estándares abiertos y <strong>de</strong>l <strong>software</strong> disponible.En función <strong>de</strong> este inventario, apoyará el <strong>de</strong>sarrollo <strong>de</strong> estándaresabiertos y <strong>de</strong> <strong>software</strong> publicado con su código fuente, y favorecerála utilización <strong>de</strong> éste en el dominio público para p<strong>al</strong>iar las carencias<strong>de</strong>l mercado.La ATIC favorecerá la interoperabilidad con los sistemas <strong>de</strong> información<strong>de</strong> otros países miembros <strong>de</strong> la Unión Europea y participará enlos proyectos <strong>de</strong> cooperación internacion<strong>al</strong> en el dominio <strong>de</strong> las tecnologías<strong>de</strong> la información y las comunicaciones. La ATIC tendrá uninterlocutor en cada prefectura.Las mod<strong>al</strong>ida<strong>de</strong>s <strong>de</strong> funcionamiento <strong>de</strong> la ATIC se establecerán mediante<strong>de</strong>creto.• Artículo 5Las mod<strong>al</strong>ida<strong>de</strong>s <strong>de</strong> aplicación <strong>de</strong> la presente ley, así como las condiciones<strong>de</strong> transición <strong>de</strong>s<strong>de</strong> la situación actu<strong>al</strong>, se fijarán mediante<strong>de</strong>creto <strong>de</strong>l Consejo <strong>de</strong> Estado.• Artículo 6ANOTACIONESLectura complementaria[Ver bibliografía, apartado200]Los gastos <strong>de</strong>l Estado resultantes <strong>de</strong> la aplicación <strong>de</strong> la presente leyse pagarán con cargo a las partidas fijadas en los artículos 575 y575A <strong>de</strong>l Código gener<strong>al</strong> <strong>de</strong> Impuestos.6.4.3. Proyecto <strong>de</strong> ley <strong>de</strong> Villanueva y Rodrich (Perú)Texto liter<strong>al</strong> <strong>de</strong> gran parte <strong>de</strong>l proyecto <strong>de</strong> ley número 2485, “Ley <strong>de</strong>Uso <strong>de</strong> Software Libre en la Administración Pública” <strong>de</strong> los congresistasperuanos Edgar Villanueva Núñez y Jacques Rodrich Ackerman.164


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Exposición <strong>de</strong> motivosLa complejidad <strong>de</strong>l mundo en que vivimos exige permanentemente<strong>de</strong> los países una constante revisión y adaptación <strong>de</strong> sus marcos institucion<strong>al</strong>es,por lo que, <strong>de</strong> este modo consigue mantenerse <strong>al</strong> compás<strong>de</strong> los nuevos retos que nos impone el sorpren<strong>de</strong>nte <strong>de</strong>sarrollotecnológico.El <strong>de</strong>scubrimiento <strong>de</strong> nuevas tecnologías informáticas, entre ellas la<strong>de</strong>l <strong>software</strong> <strong>libre</strong>, se ha configurado con el <strong>de</strong>venir <strong>de</strong>l tiempo en uninstrumento idóneo para asegurar <strong>de</strong> una manera más idónea laprotección <strong>de</strong> la información con la que cuenta el Estado.De esta manera, la tecnología cumple su función facilitadora <strong>de</strong> lasdiferentes y múltiples activida<strong>de</strong>s humanas, siendo una <strong>de</strong> ellas elmanejo <strong>de</strong> información reservada en las canteras <strong>de</strong>l Estado.Según la Constitución Política <strong>de</strong> Perú, en el inciso 5 <strong>de</strong>l artículo 2,“toda persona tiene <strong>de</strong>recho a solicitar sin expresión <strong>de</strong> causa la informaciónque requiera y a recibirla <strong>de</strong> cu<strong>al</strong>quier entidad pública, enel plazo leg<strong>al</strong>, con el costo que suponga el pedido. Se exceptúan lasinformaciones que afectan a la intimidad person<strong>al</strong> y las que expresamentese excluyen por ley o por razones <strong>de</strong> seguridad nacion<strong>al</strong>”.Del mismo modo, el inciso 6 <strong>de</strong>l mismo artículo enfatiza el <strong>de</strong>recho<strong>de</strong> toda persona a “que los servicios informáticos, computarizados ono, públicos o privados, no suministren informaciones que afecten <strong>al</strong>a intimidad person<strong>al</strong> y familiar”.En este or<strong>de</strong>n <strong>de</strong> i<strong>de</strong>as, es evi<strong>de</strong>nte la preocupación que muestranuestra carta fundament<strong>al</strong> por establecer reaseguros institucion<strong>al</strong>esque por un lado protejan la libertad <strong>de</strong> los ciudadanos para acce<strong>de</strong>ra información pública y por el otro, la <strong>de</strong> guardar la <strong>de</strong>bida reserva<strong>de</strong> información que afecten a la intimidad person<strong>al</strong> y familiar, asícomo razones <strong>de</strong> seguridad nacion<strong>al</strong>.La garantía <strong>de</strong> estos <strong>de</strong>rechos consagrados en nuestra Constituciónno pasa únicamente por la buena voluntad <strong>de</strong> los agentes <strong>de</strong>l Estadopara el cumplimiento normativo <strong>de</strong> la misma, sino también por elANOTACIONES165


© FUOC • XP06/M2101/01492Software <strong>libre</strong>empleo <strong>de</strong> tecnologías que en unos casos coadyuvan y en otros no auna efectiva protección <strong>de</strong> dichos <strong>de</strong>rechos ciudadanos.En este contexto, es imperioso para el Estado incorporar aquellas tecnologíasque ayudan a reforzar el ejercicio <strong>de</strong>l <strong>de</strong>recho <strong>de</strong> la información<strong>de</strong> los ciudadanos y su <strong>de</strong>bida reserva en los casos que loameritan.La utilización <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en todas las instituciones <strong>de</strong>l Estadoapunta en este sentido. Básicamente, po<strong>de</strong>mos <strong>de</strong>cir que los principioselement<strong>al</strong>es que animan <strong>al</strong> presente proyecto <strong>de</strong> ley se vinculana garantías básicas <strong>de</strong>l Estado <strong>de</strong>mocrático <strong>de</strong> <strong>de</strong>recho y lo po<strong>de</strong>mosresumir en los siguientes:1. Libre acceso <strong>de</strong>l ciudadano a la información pública2. Perennidad <strong>de</strong> los datos públicos3. Seguridad <strong>de</strong>l Estado y <strong>de</strong> los ciudadanosPara garantizar el <strong>libre</strong> acceso <strong>de</strong> los ciudadanos a la informaciónpública, resulta indispensable que la codificación <strong>de</strong> los datos no estéligada a un único proveedor. El uso <strong>de</strong> formatos estándar y abiertospermite garantizar este <strong>libre</strong> acceso, logrando si fuera necesario lacreación <strong>de</strong> <strong>software</strong> compatible.ANOTACIONESPara garantizar la perennidad <strong>de</strong> los datos públicos, es indispensableque la utilización y el mantenimiento <strong>de</strong>l <strong>software</strong> no <strong>de</strong>pendan<strong>de</strong> la buena voluntad <strong>de</strong> los proveedores, ni <strong>de</strong> lascondiciones monopólicas, impuestas por éstos. Se precisan sistemascuya evolución pueda ser garantizada gracias a la disponibilidad<strong>de</strong>l código fuente.Para garantizar la seguridad nacion<strong>al</strong>, resulta indispensable contarcon sistemas <strong>de</strong>sprovistos <strong>de</strong> elementos que permitan el control adistancia o la transmisión no <strong>de</strong>seada <strong>de</strong> información a terceros. Porlo tanto, se requieren sistemas cuyo código fuente sea <strong>libre</strong>mente accesible<strong>al</strong> público para permitir su examen por parte <strong>de</strong>l propio Estado,los ciudadanos y un gran número <strong>de</strong> expertos in<strong>de</strong>pendientes enel mundo.166


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Esta propuesta aporta mayor seguridad, pues el conocimiento <strong>de</strong>lcódigo fuente eliminará el creciente número <strong>de</strong> programas con códigoespía.De igu<strong>al</strong> forma, la iniciativa <strong>de</strong> ley potencia la seguridad <strong>de</strong> los ciudadanos,tanto en su condición <strong>de</strong> titulares legítimos <strong>de</strong> la informaciónmanejada por el Estado, cuanto en su condición <strong>de</strong>consumidores. En este último caso, permite el surgimiento <strong>de</strong> unaoferta extensa <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>sprovisto <strong>de</strong> potenci<strong>al</strong> código espíasusceptible <strong>de</strong> poner en riesgo la vida privada y las liberta<strong>de</strong>sindividu<strong>al</strong>es.El Estado, en aras <strong>de</strong> mejorar la c<strong>al</strong>idad <strong>de</strong> la gestión pública en tantocustodio y administrador <strong>de</strong> información privada, establecerá lascondiciones en que los organismos estat<strong>al</strong>es adquirirán <strong>software</strong> enel futuro, es <strong>de</strong>cir <strong>de</strong> un modo compatible con las garantías constitucion<strong>al</strong>esy principios básicos antes <strong>de</strong>sarrollados.El proyecto expresa claramente que para que un programa o <strong>software</strong>cu<strong>al</strong>quiera sea aceptable por el Estado, no basta con que elprograma sea técnicamente suficiente para llevar a cabo una tarea,sino que a<strong>de</strong>más las condiciones <strong>de</strong> contratación <strong>de</strong>ben satisfaceruna serie <strong>de</strong> requisitos en materia <strong>de</strong> licencia, sin los cu<strong>al</strong>es el Estadono pue<strong>de</strong> garantizar <strong>al</strong> ciudadano el procesamiento a<strong>de</strong>cuado <strong>de</strong>sus datos, velando por su integridad, confi<strong>de</strong>nci<strong>al</strong>idad y accesibilidada lo largo <strong>de</strong>l tiempo, aspectos críticos para su <strong>de</strong>sempeño.El Estado establece condiciones para el empleo <strong>de</strong>l <strong>software</strong> por parte<strong>de</strong> las instituciones estat<strong>al</strong>es, sin inmiscuirse <strong>de</strong> modo <strong>al</strong>guno enlas transacciones <strong>de</strong>l sector privado. Constituye un principio jurídicamentereconocido que el Estado no tiene el amplio espectro <strong>de</strong> libertadcontractu<strong>al</strong> <strong>de</strong>l sector privado, pues precisamente está limitadoen sus acciones por el <strong>de</strong>ber <strong>de</strong> transparencia <strong>de</strong> los actos públicos,y en este sentido, la tutela <strong>de</strong>l mejor interés común <strong>de</strong>be tener preeminenciacuando se legisla sobre la materia.El proyecto, asimismo, garantiza el principio <strong>de</strong> igu<strong>al</strong>dad ante l<strong>al</strong>ey, pues ninguna persona natur<strong>al</strong> y jurídica está excluida <strong>de</strong>l <strong>de</strong>recho<strong>de</strong> proveer estos bienes, en las condiciones fijadas en la pre-ANOTACIONES167


© FUOC • XP06/M2101/01492Software <strong>libre</strong>sente iniciativa y sin más limitaciones que las establecidas en la Ley<strong>de</strong> Contrataciones y Adquisiciones <strong>de</strong>l Estado (TUO Decreto SupremoN 012-2001-PCM).Adicion<strong>al</strong>mente a estas ventajas, po<strong>de</strong>mos res<strong>al</strong>tar una serie <strong>de</strong> beneficiosque como consecuencia <strong>de</strong> esta medida se manifestarán inmediatamente<strong>de</strong>spués <strong>de</strong> ser ejecutadas.En primer lugar están las oportunida<strong>de</strong>s <strong>de</strong> trabajo para programadoresloc<strong>al</strong>es. Del universo <strong>de</strong> <strong>software</strong>1 para servidores que se comerci<strong>al</strong>izóen EE.UU. el año pasado, el 27% correspondió aprogramas “<strong>libre</strong>s”, proporción verda<strong>de</strong>ramente significativa paraese enorme y exigente mercado. La cifra es elocuente y constituyeuna respuesta contun<strong>de</strong>nte a quienes creen que el <strong>software</strong> <strong>libre</strong> implicaráuna fuerte limitación a la ocupación <strong>de</strong> los programadores<strong>de</strong>l país. Al contrario, la iniciativa permitirá liberar una gran cantidad<strong>de</strong> recursos, y un incentivo para potenciar la creatividad humana.Al emplear el <strong>software</strong> <strong>libre</strong>, los profesion<strong>al</strong>es pue<strong>de</strong>n an<strong>al</strong>izar a fondolos problemas y mejorar los <strong>de</strong>sarrollos en todos los casos quesea necesario, nutriéndose <strong>de</strong>l <strong>software</strong> <strong>libre</strong> disponible glob<strong>al</strong>mentebajo distintas licencias. Constituye un campo i<strong>de</strong><strong>al</strong> para aplicar creatividad,aspecto en el que los jóvenes peruanos <strong>al</strong>canzarían buenos<strong>de</strong>sempeños.ANOTACIONESPor otro lado, mediante el <strong>software</strong> <strong>libre</strong> se elimina el uso <strong>de</strong> <strong>software</strong>ileg<strong>al</strong> que se “pasea” por <strong>al</strong>gunas instituciones <strong>de</strong>l Estado. El uso nopermitido <strong>de</strong> <strong>software</strong> <strong>de</strong>ntro <strong>de</strong>l Estado o la mera sospecha <strong>de</strong> elloconstituye un po<strong>de</strong>roso incentivo para cu<strong>al</strong>quier funcionario públicopara modificar esa situación que atentaría contra los <strong>de</strong>rechos <strong>de</strong>propiedad intelectu<strong>al</strong>.Si bien es correcto <strong>de</strong>cir que no es necesaria la adopción <strong>de</strong> <strong>software</strong><strong>libre</strong> para cumplir con la ley, su empleo gener<strong>al</strong>izado reducirá drásticamentelas situaciones irregulares y obrará como vector <strong>de</strong> contagioleg<strong>al</strong>, tanto <strong>de</strong>ntro <strong>de</strong>l Estado como en el ámbito privado.Son muchos los países que están reconociendo form<strong>al</strong>mente el usoexclusivo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en el sector estat<strong>al</strong>.168


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Entre ellos tenemos a Francia, don<strong>de</strong> está en discusión una norma leg<strong>al</strong>sobre el tema. El Gobierno <strong>de</strong> la ciudad <strong>de</strong> México, D.F. ya ha iniciadouna importante migración para la adopción <strong>de</strong> <strong>software</strong> <strong>libre</strong> enforma gener<strong>al</strong>izada, siendo este país lí<strong>de</strong>r en Occi<strong>de</strong>nte. También enBrasil, el estado <strong>de</strong> Recife ha <strong>de</strong>cidido su adopción. La República PopularChina ha adoptado <strong>de</strong>s<strong>de</strong> hace varios años el <strong>software</strong> <strong>libre</strong>como una política <strong>de</strong> Estado. Al igu<strong>al</strong> que en los países escandinavos.En EE.UU., la NASA y la US NAVY, entre muchas otras organizaciones,han adoptado <strong>software</strong> <strong>libre</strong> para <strong>al</strong>guna <strong>de</strong> sus necesida<strong>de</strong>s, entreotras iniciativas gubernament<strong>al</strong>es y <strong>de</strong>l sector privado.Fin<strong>al</strong>mente, el proyecto <strong>de</strong> ley en cuestión otorga a la Presi<strong>de</strong>ncia <strong>de</strong>lConsejo <strong>de</strong> Ministros la ejecución <strong>de</strong> la presente ley por ser este organismoel que concentra la dirección <strong>de</strong> todas las instituciones gubernament<strong>al</strong>es.En este sentido, tiene una ventaja estratégica parare<strong>al</strong>izar la reforma pertinente y el proceso migratorio <strong>de</strong> <strong>software</strong>propietario a <strong>software</strong> <strong>libre</strong>.Es en este or<strong>de</strong>n <strong>de</strong> i<strong>de</strong>as como se han precisado estos aspectos enla presente proposición legislativa.Análisis coste-beneficioLa presente iniciativa no genera gasto <strong>al</strong>guno <strong>al</strong> erario nacion<strong>al</strong>. Esosí, para el cumplimiento <strong>de</strong> sus fines será necesario producir una reasignación<strong>de</strong>l gasto gubernament<strong>al</strong>, cuya inci<strong>de</strong>ncia se circunscribea lo efectivamente gastado por cada organismo gubernament<strong>al</strong> enlos procesos <strong>de</strong> contrataciones y licitaciones <strong>de</strong>l Estado para la adquisición<strong>de</strong> programas informáticos.Si bien es cierto que el <strong>software</strong> <strong>libre</strong> con relación <strong>al</strong> <strong>software</strong> propietariorepresenta un ahorro sustanci<strong>al</strong> a la economía <strong>de</strong>l Estado, noes el punto princip<strong>al</strong> <strong>de</strong> apoyo. Como señ<strong>al</strong>amos antes, su ventajacomparativa se foc<strong>al</strong>iza en los reaseguros tecnológicos que el programaotorga a la información con la que cuenta el Estado, informaciónque en muchos casos es <strong>de</strong> carácter reservado.En este sentido, una mejor protección <strong>de</strong> los <strong>de</strong>rechos ciudadanosconstituye un beneficio inconmensurable que <strong>de</strong>be ser reconocido<strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista <strong>de</strong>l análisis coste-beneficio.ANOTACIONES169


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Po<strong>de</strong>mos resumir los beneficios <strong>de</strong>l proyecto en los siguientes tópicos:• Seguridad nacion<strong>al</strong>El Estado para cumplir sus funciones <strong>de</strong>be <strong>al</strong>macenar y procesar informaciónrelativa a los ciudadanos. La relación entre el individuoy el Estado <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la privacidad e integridad <strong>de</strong> estos datos,que <strong>de</strong>ben ser a<strong>de</strong>cuadamente resguardados contra tres riesgosespecíficos:• 1. Riesgo <strong>de</strong> filtración, los datos confi<strong>de</strong>nci<strong>al</strong>es <strong>de</strong>ben ser tratados<strong>de</strong> t<strong>al</strong> manera que el acceso a ellos sea posible exclusivamentepara las personas e instituciones autorizadas.• 2. Riesgo <strong>de</strong> imposibilidad <strong>de</strong> acceso, los datos <strong>de</strong>ben ser <strong>al</strong>macenados<strong>de</strong> t<strong>al</strong> forma que el acceso a ellos por parte <strong>de</strong> las personase instituciones autorizadas esté garantizado durante toda lavida útil <strong>de</strong> la información.• 3. Riesgo <strong>de</strong> manipulación, la modificación <strong>de</strong> los datos <strong>de</strong>beestar restringida nuevamente a las personas e instituciones autorizadas.Con el <strong>software</strong> <strong>libre</strong> estos riesgos se atenúan consi<strong>de</strong>rablemente.ANOTACIONESPermite <strong>al</strong> usuario la inspección completa y exhaustiva <strong>de</strong>l mecanismomediante el cu<strong>al</strong> procesa los datos. El hecho <strong>de</strong> que el programa <strong>de</strong><strong>software</strong> <strong>libre</strong> permite la inspección <strong>de</strong>l programa es una excelente medida<strong>de</strong> seguridad, ya que <strong>al</strong> estar expuestos los mecanismos, éstos estánconstantemente a la vista <strong>de</strong> profesion<strong>al</strong>es capacitados, con lo quese vuelve inmensamente más difícil ocultar funciones m<strong>al</strong>iciosas, auncuando el usuario fin<strong>al</strong> no se toma el trabajo <strong>de</strong> buscarlas él mismo.• In<strong>de</strong>pen<strong>de</strong>ncia tecnológicaCon el <strong>software</strong> propietario no hay libertad <strong>de</strong> contratación en lo quese refiere a ampliaciones y correcciones <strong>de</strong>l sistema que utiliza, seproduce una <strong>de</strong>pen<strong>de</strong>ncia tecnológica en la que el proveedor está encondiciones <strong>de</strong> dictar unilater<strong>al</strong>mente términos, plazos y precios.170


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Con el <strong>software</strong> <strong>libre</strong> se permite <strong>al</strong> usuario el control, corrección ymodificación <strong>de</strong>l programa para a<strong>de</strong>cuarlo a sus necesida<strong>de</strong>s. Est<strong>al</strong>ibertad no está <strong>de</strong>stinada solamente a los programadores Si bienson éstos los que pue<strong>de</strong>n capit<strong>al</strong>izarla <strong>de</strong> primera mano, los usuariostambién se benefician enormemente, porque <strong>de</strong> esta manera pue<strong>de</strong>ncontratar a cu<strong>al</strong>quier programador (no necesariamente <strong>al</strong> autororigin<strong>al</strong>) para que corrija errores o añada funcion<strong>al</strong>idad.• El <strong>de</strong>sarrollo loc<strong>al</strong>En el caso <strong>de</strong>l <strong>software</strong> propietario, el usuario está habilitado paraejecutar un programa, pero no para inspeccionarlo ni modificarlo,entonces no pue<strong>de</strong> apren<strong>de</strong>r <strong>de</strong> él, se vuelve <strong>de</strong>pendiente <strong>de</strong> una tecnologíaque no sólo no compren<strong>de</strong>, sino que le está expresamentevedada. Los profesion<strong>al</strong>es <strong>de</strong> su entorno, que podrían ayudarlo a <strong>al</strong>canzarsus metas, están igu<strong>al</strong>mente limitados: como el funcionamiento<strong>de</strong>l programa es secreto y su inspección está prohibida, no esposible arreglarlo. De esa manera los profesion<strong>al</strong>es loc<strong>al</strong>es ven susposibilida<strong>de</strong>s <strong>de</strong> ofrecer v<strong>al</strong>or agregado cada vez más limitadas, ysus horizontes labor<strong>al</strong>es se estrechan junto con sus oportunida<strong>de</strong>s <strong>de</strong>apren<strong>de</strong>r más. Con el <strong>software</strong> <strong>libre</strong> se neutr<strong>al</strong>izan enormemente estas<strong>de</strong>sventajas <strong>de</strong>l <strong>software</strong> propietario.• El coste <strong>de</strong>l <strong>software</strong>Se reduce consi<strong>de</strong>rablemente <strong>al</strong> ser <strong>libre</strong>, pues no hay necesidad <strong>de</strong> estarsolicitando sistemáticamente las licencias <strong>de</strong>l caso para continuarcon la utilización <strong>de</strong>l programa. Esto suce<strong>de</strong> con el <strong>software</strong> propietario.Es importante para el usuario po<strong>de</strong>r mantener estos costes bajo control,pues <strong>de</strong> lo contrario pue<strong>de</strong> llegar a verse impedido para llevar a cabosus metas, a fuerza <strong>de</strong> <strong>de</strong>rogaciones no planificadas. He aquí una vezmás la <strong>de</strong>pen<strong>de</strong>ncia tecnológica que ayuda a enfrentar el <strong>software</strong> <strong>libre</strong>.• Mayores fuentes <strong>de</strong> trabajoCon el <strong>software</strong> <strong>libre</strong> se libera mano <strong>de</strong> obra existente en el país queestaba embotellada como consecuencia <strong>de</strong> la <strong>de</strong>pen<strong>de</strong>ncia tecnológica<strong>de</strong>l <strong>software</strong> propietario. Ahora se asignarían recursos <strong>de</strong> losusuarios (en este caso las instituciones <strong>de</strong>l Estado) para mantenimientoy soporte informático <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.ANOTACIONES171


© FUOC • XP06/M2101/01492Software <strong>libre</strong>• Fomento <strong>de</strong> la creatividad e iniciativa empresari<strong>al</strong>CostesEl gran coste que supone el cambio <strong>de</strong> <strong>software</strong> propietario a <strong>software</strong><strong>libre</strong> se circunscribe <strong>al</strong> proceso migratorio. Si bien es cierto queel proceso migratorio involucra costes en relevamientos, toma <strong>de</strong> <strong>de</strong>cisionespara implementar los nuevos sistemas, mano <strong>de</strong> obra paraimplementar el cambio, conversión <strong>de</strong> datos, reentrenamiento <strong>de</strong>lperson<strong>al</strong> y, eventu<strong>al</strong>mente, gastos en licencias y/o <strong>de</strong>sarrollo y tiempo;no es menos cierto que todos estos costes son fijos y se paganpor única vez; en cambio, el <strong>software</strong> propietario en funcionamientoahora, también tiene sus costes fijos que fueron pagados y no pue<strong>de</strong>nser recuperados. Pero, a<strong>de</strong>más <strong>de</strong> estos costes hay otros involucradosen el <strong>software</strong> propietario: actu<strong>al</strong>izaciones permanentes (aveces acentuada por un monopolio autosostenido) y sobre todo el inmensoprecio que tiene para el Estado la pérdida <strong>de</strong> las liberta<strong>de</strong>s,que le garantizan el control <strong>de</strong> su propia información. Estos costesson permanentes y crecientes a lo largo <strong>de</strong>l tiempo, y tar<strong>de</strong> o tempranosuperan a los costes fijos <strong>de</strong> re<strong>al</strong>izar una migración.En fin, son mayores los beneficios que los costes que supone el proceso<strong>de</strong> migración.Fórmula leg<strong>al</strong>Artículo 1. Objeto <strong>de</strong> la leyANOTACIONESEn todas las instituciones <strong>de</strong>l Estado se emplea el uso exclusivo <strong>de</strong>programas o <strong>software</strong> <strong>libre</strong>s en sus sistemas y equipamientos <strong>de</strong> informática.Artículo 2. Ámbito <strong>de</strong> aplicaciónLos po<strong>de</strong>res Ejecutivo, Legislativo y Judici<strong>al</strong>, los organismos autónomosy <strong>de</strong>scentr<strong>al</strong>izados, sean region<strong>al</strong>es o loc<strong>al</strong>es, y las empresasdon<strong>de</strong> el Estado posea mayoría accionaria, harán uso <strong>de</strong>programas o <strong>software</strong> <strong>libre</strong>s en sus sistemas y equipamientos <strong>de</strong>informática.172


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Artículo 3. Autoridad <strong>de</strong> aplicaciónLa autoridad encargada <strong>de</strong> poner en ejecución la presente ley serála Presi<strong>de</strong>ncia <strong>de</strong>l Consejo <strong>de</strong> Ministros.Artículo 4. Definición <strong>de</strong> <strong>software</strong> <strong>libre</strong>Para los efectos <strong>de</strong> la presente ley se enten<strong>de</strong>rá por programa o <strong>software</strong><strong>libre</strong> aquel cuya licencia <strong>de</strong> uso garantice <strong>al</strong> usuario, sin costeadicion<strong>al</strong>, las siguientes faculta<strong>de</strong>s:• 1. Uso irrestricto <strong>de</strong>l programa para cu<strong>al</strong>quier propósito.• 2. Acceso irrestricto <strong>al</strong> código fuente o <strong>de</strong> origen respectivo.• 3. Inspección exhaustiva <strong>de</strong> los mecanismos <strong>de</strong> funcionamiento<strong>de</strong>l programa.• 4. Uso <strong>de</strong> los mecanismos internos y <strong>de</strong> porciones arbitrarias <strong>de</strong>lprograma para adaptarlos a las necesida<strong>de</strong>s <strong>de</strong>l usuario.• 5. Confección y distribución <strong>libre</strong> <strong>de</strong> copias <strong>de</strong>l programa.• 6. Modificación <strong>de</strong>l programa y distribución <strong>libre</strong>, tanto <strong>de</strong> las <strong>al</strong>teracionescomo <strong>de</strong>l nuevo programa resultante, bajo las mismascondiciones <strong>de</strong>l programa origin<strong>al</strong>.Artículo 5. ExcepcionesEn caso <strong>de</strong> no existir una solución que utilice <strong>software</strong> <strong>libre</strong> y permitasatisfacer una necesidad <strong>de</strong>terminada, las instituciones <strong>de</strong>l Estadopodrán adoptar las siguientes <strong>al</strong>ternativas, atendiendo <strong>al</strong> or<strong>de</strong>n <strong>de</strong>prelación siguiente:Si median exigencias <strong>de</strong> tiempo verificables para aten<strong>de</strong>r un problematécnico y se h<strong>al</strong>la disponible en el mercado <strong>software</strong> propietario,el organismo que lo <strong>de</strong>man<strong>de</strong> podrá gestionar ante la autoridad <strong>de</strong>ANOTACIONES173


© FUOC • XP06/M2101/01492Software <strong>libre</strong>aplicación un permiso <strong>de</strong> excepción <strong>de</strong> utilización <strong>de</strong> <strong>software</strong> propietarioque reúna las siguientes características:• 1. Se seleccionará en primer término los programas que cumplancon todos los criterios enunciados en el artículo 4 <strong>de</strong> la presenteley, excepto por la facultad <strong>de</strong> distribución <strong>de</strong>l programa modificado.En este caso, el permiso <strong>de</strong> excepción podrá ser <strong>de</strong>finitivo.• 2. Si no se pue<strong>de</strong> disponer <strong>de</strong> programas <strong>de</strong> la categoría prece<strong>de</strong>nte,se <strong>de</strong>berán escoger aquéllos para los que exista un proyecto<strong>de</strong> <strong>de</strong>sarrollo avanzado <strong>de</strong> tipo <strong>libre</strong>. En este caso, el permiso<strong>de</strong> excepción será transitorio y caducará automáticamente cuandoel <strong>software</strong> <strong>libre</strong> pase a estar disponible con la funcion<strong>al</strong>idadque sea necesaria.• 3. Si no se encuentran productos <strong>de</strong> estas condiciones, se podráoptar por programas propietarios, pero el permiso <strong>de</strong> excepciónemanado <strong>de</strong> la autoridad <strong>de</strong> aplicación caducará automáticamentea los dos años <strong>de</strong> haberse emitido, <strong>de</strong>biendo ser renovadoprevia constatación <strong>de</strong> que no exista disponible en el mercadouna solución <strong>de</strong> <strong>software</strong> <strong>libre</strong> satisfactoria.La autoridad <strong>de</strong> aplicación otorgará un permiso <strong>de</strong> excepción únicamentesi el organismo estat<strong>al</strong> solicitante garantiza el <strong>al</strong>macenamiento<strong>de</strong> los datos en formatos abiertos, sin perjuicio <strong>de</strong>l pago <strong>de</strong> laslicencias propietarias respectivas.Artículo 6. Permisos educativosANOTACIONESToda entidad educativa <strong>de</strong>pendiente <strong>de</strong>l Estado está habilitada paragestionar un permiso <strong>de</strong> <strong>software</strong> propietario para su uso en investigación,previo pago <strong>de</strong> los <strong>de</strong>rechos <strong>de</strong> autor correspondientes y laslicencias <strong>de</strong>l caso, siempre que el objeto <strong>de</strong> investigación esté directamenteasociado <strong>al</strong> uso <strong>de</strong>l programa en cuestión.Artículo 7. Transparencia <strong>de</strong> las excepcionesLas excepciones emanadas <strong>de</strong> la autoridad <strong>de</strong> aplicación <strong>de</strong>beránser sustentadas y publicadas en la página web <strong>de</strong>l port<strong>al</strong> <strong>de</strong>l Estado.174


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492La resolución que autoriza la excepción <strong>de</strong>berá enumerar los requisitosfuncion<strong>al</strong>es concretos que el programa <strong>de</strong>be satisfacer.Artículo 8. Autorización excepcion<strong>al</strong>En el caso <strong>de</strong> que <strong>al</strong>guna entidad <strong>de</strong>l Estado comprendido en el artículo2.° <strong>de</strong> la presente ley sea autorizada excepcion<strong>al</strong>mente paraadquirir <strong>software</strong> propietario para <strong>al</strong>macenar o procesar datos, cuyareserva sea necesario preservar, la autoridad <strong>de</strong> aplicación <strong>de</strong>berápublicar en el port<strong>al</strong> <strong>de</strong>l Estado un informe, don<strong>de</strong> se expliquen losriesgos asociados con el uso <strong>de</strong> <strong>software</strong> <strong>de</strong> dichas característicaspara esa aplicación en particular.Los permisos <strong>de</strong> excepción otorgados a los organismos <strong>de</strong>l Estadorelacionados con la seguridad y la <strong>de</strong>fensa nacion<strong>al</strong> están exceptuados<strong>de</strong> la obligación anteriormente expuesta.Artículo 9. Responsabilida<strong>de</strong>sLa máxima autoridad administrativa y autoridad técnica e informática<strong>de</strong> cada institución <strong>de</strong>l Estado asumen la responsabilidad por elcumplimiento <strong>de</strong> esta ley.Artículo 10. Norma reglamentariaEl po<strong>de</strong>r ejecutivo reglamentará en un plazo <strong>de</strong> ciento ochenta días,las condiciones, tiempos y formas en que se efectuará la transición<strong>de</strong> la situación actu<strong>al</strong> a una que satisfaga las condiciones <strong>de</strong> la presenteLey y orientará, en t<strong>al</strong> sentido, las licitaciones y contratacionesfuturas <strong>de</strong> <strong>software</strong> re<strong>al</strong>izadas a cu<strong>al</strong>quier título.Asimismo, se encargará <strong>de</strong> dirigir el proceso migratorio <strong>de</strong>l sistema<strong>de</strong> <strong>software</strong> propietario a <strong>libre</strong>, en todos los casos que las circunstanciaslo exijan.Artículo 11. Glosario <strong>de</strong> términos• a. Programa o “<strong>software</strong>”. Cu<strong>al</strong>quier secuencia <strong>de</strong> instruccionesusada por un dispositivo <strong>de</strong> procesamiento digit<strong>al</strong> <strong>de</strong> datos paraANOTACIONES175


© FUOC • XP06/M2101/01492Software <strong>libre</strong>llevar a cabo una tarea específica o resolver un problema <strong>de</strong>terminado.• b. Ejecución o empleo <strong>de</strong> un programa. Acto <strong>de</strong> utilizarlo sobrecu<strong>al</strong>quier dispositivo <strong>de</strong> procesamiento digit<strong>al</strong> <strong>de</strong> datos para re<strong>al</strong>izaruna función.• c. Usuario. Aquella persona física o jurídica que emplea el <strong>software</strong>.• d. Código fuente o <strong>de</strong> origen, o programa fuente o <strong>de</strong> origen.Conjunto completo <strong>de</strong> instrucciones y archivos digit<strong>al</strong>es origin<strong>al</strong>escreados o modificados por quien los programa, más todos los archivosdigit<strong>al</strong>es <strong>de</strong> soporte, como tablas <strong>de</strong> datos, imágenes, especificaciones,documentación, y cu<strong>al</strong>quier otro elemento que seanecesario para producir el programa ejecutable a partir <strong>de</strong> ellos.Como excepción, podrán excluirse <strong>de</strong> este conjunto aquellas herramientasy programas que sean habitu<strong>al</strong>mente distribuidoscomo <strong>software</strong> <strong>libre</strong> por otros medios, como, entre otros, compiladores,sistemas operativos y <strong>libre</strong>rías.• e. Programa o <strong>software</strong> <strong>libre</strong>. Aquel cuyo empleo garantice <strong>al</strong>usuario, sin coste adicion<strong>al</strong>, las faculta<strong>de</strong>s siguientes:• e.1. Ejecución irrestricta <strong>de</strong>l programa para cu<strong>al</strong>quier propósito.• e.2. Acceso irrestricto <strong>al</strong> código fuente o <strong>de</strong> origen respectivo.• e.3. Inspección exhaustiva <strong>de</strong> los mecanismos <strong>de</strong> funcionamiento<strong>de</strong>l programa.ANOTACIONES• e.4. Uso <strong>de</strong> los mecanismos internos y <strong>de</strong> cu<strong>al</strong>quier porción arbitraria<strong>de</strong>l programa para adaptarlo a las necesida<strong>de</strong>s <strong>de</strong>lusuario.• e.5. Confección y distribución pública <strong>de</strong> copias <strong>de</strong>l programa.• e.6. Modificación <strong>de</strong>l programa y distribución <strong>libre</strong>, tanto <strong>de</strong>las <strong>al</strong>teraciones como <strong>de</strong>l nuevo programa resultante, bajo lasmismas condiciones <strong>de</strong>l programa origin<strong>al</strong>.176


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492• f. Software propietario (programa no <strong>libre</strong>). Aquel que no reúnetodos los requisitos señ<strong>al</strong>ados en el término prece<strong>de</strong>nte.• g. Formato abierto. Cu<strong>al</strong>quier modo <strong>de</strong> codificación <strong>de</strong> informacióndigit<strong>al</strong> que satisface tanto los estándares existentes, como lascondiciones siguientes, que:• g.1. su documentación técnica completa esté disponible públicamente.• g.2. el código fuente <strong>de</strong> <strong>al</strong> menos una implementación <strong>de</strong> referenciacompleta esté disponible públicamente.• g.3. no existan restricciones para la confección <strong>de</strong> programasque <strong>al</strong>macenan, transmiten, reciben o acce<strong>de</strong>n a datos codificados<strong>de</strong> esta manera.6.4.4. Cartas <strong>de</strong> Microsoft Perú y <strong>de</strong>l congresistaVillanuevaEl 21 <strong>de</strong> marzo <strong>de</strong>l 2002, Juan Alberto González, como gerente gener<strong>al</strong><strong>de</strong> Microsoft Perú, envió una carta <strong>al</strong> congresista Edgar VillanuevaNúñez, con motivo <strong>de</strong> su proyecto <strong>de</strong> ley sobre <strong>software</strong> <strong>libre</strong>.El 8 <strong>de</strong> abril el congresista respondió. Aquí se incluyen los textos liter<strong>al</strong>esy casi completos <strong>de</strong> ambas cartas (se excluyen los párrafos norelacionados con el proyecto <strong>de</strong> ley).Lectura complementaria[Ver bibliografía, apartados107 y 159]Carta <strong>de</strong> Microsoft PerúDe otro lado, como quedamos en esta reunión, nosotros asistimos <strong>al</strong>Foro re<strong>al</strong>izado en el Congreso <strong>de</strong> la República el 6 <strong>de</strong> marzo, a propósito<strong>de</strong>l proyecto <strong>de</strong> ley que Usted li<strong>de</strong>ra, en don<strong>de</strong> pudimos escucharlas diferentes presentaciones que hoy nos llevan a exponernuestra posición a fin <strong>de</strong> que Usted tenga un panorama más amplio<strong>de</strong> la re<strong>al</strong> situación.El proyecto establece la obligatoriedad <strong>de</strong> que todo organismo público<strong>de</strong>be emplear exclusivamente <strong>software</strong> <strong>libre</strong>, es <strong>de</strong>cir <strong>de</strong> códigoANOTACIONES177


© FUOC • XP06/M2101/01492Software <strong>libre</strong>abierto, lo cu<strong>al</strong> transgre<strong>de</strong> los principios <strong>de</strong> la igu<strong>al</strong>dad ante la ley,el <strong>de</strong> no discriminación y los <strong>de</strong>rechos a la <strong>libre</strong> iniciativa privada, libertad<strong>de</strong> industria y contratación protegidos en la constitución.El proyecto, <strong>al</strong> hacer obligatorio el uso <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto,establecería un tratamiento discriminatorio y no competitivo en lacontratación y adquisición <strong>de</strong> los organismos públicos contraviniendolos principios <strong>de</strong> base <strong>de</strong> la Ley 26850 <strong>de</strong> Contrataciones y Adquisiciones<strong>de</strong>l Estado.Así, <strong>al</strong> obligar <strong>al</strong> Estado a favorecer un mo<strong>de</strong>lo <strong>de</strong> negocios que apoyaríaexclusivamente el <strong>software</strong> <strong>de</strong> código abierto, el proyecto sóloestaría <strong>de</strong>s<strong>al</strong>entando a las compañías fabricantes loc<strong>al</strong>es e internacion<strong>al</strong>esque son las que verda<strong>de</strong>ramente re<strong>al</strong>izan importantes inversiones,crean un significativo número <strong>de</strong> puestos <strong>de</strong> empleos directose indirectos, a<strong>de</strong>más <strong>de</strong> contribuir <strong>al</strong> PBI vs. un mo<strong>de</strong>lo <strong>de</strong> <strong>software</strong><strong>de</strong> código abierto que tien<strong>de</strong> a tener un impacto económico cada vezmenor <strong>de</strong>bido a que crea princip<strong>al</strong>mente empleos en servicio.El proyecto <strong>de</strong> ley impone el uso <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto sinconsi<strong>de</strong>rar los peligros que esto pueda conllevar <strong>de</strong>s<strong>de</strong> el punto <strong>de</strong>vista <strong>de</strong> seguridad, garantía y posible violación <strong>de</strong> los <strong>de</strong>rechos <strong>de</strong>propiedad intelectu<strong>al</strong> <strong>de</strong> terceros.El proyecto maneja <strong>de</strong> manera errónea los conceptos <strong>de</strong> <strong>software</strong> <strong>de</strong>código abierto, que no necesariamente implica que sea <strong>software</strong> <strong>libre</strong>o <strong>de</strong> coste cero, llegando a re<strong>al</strong>izar conclusiones equívocas sobreahorros para el Estado, sin ningún sustento coste-beneficio que v<strong>al</strong>i<strong>de</strong>la posición.ANOTACIONESEs equivocado pensar que el <strong>software</strong> <strong>de</strong> código abierto es gratuito.Investigaciones re<strong>al</strong>izadas por Gartner Group (importante investigadora<strong>de</strong>l mercado tecnológico reconocida a nivel mundi<strong>al</strong>) han señ<strong>al</strong>adoque el coste <strong>de</strong> adquisición <strong>de</strong>l <strong>software</strong> (sistema operativo yaplicaciones) se reduce a sólo el 8% <strong>de</strong>l tot<strong>al</strong> <strong>de</strong> costes que las empresase instituciones <strong>de</strong>ben asumir como consecuencia <strong>de</strong>l uso racion<strong>al</strong>y re<strong>al</strong>mente provechoso <strong>de</strong> la tecnología. El otro 92% loconstituyen: costes <strong>de</strong> implantación, capacitación, soporte, mantenimiento,administración e inoperatividad.178


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Uno <strong>de</strong> los argumentos que sustentan el proyecto <strong>de</strong> ley es la supuestagratuidad <strong>de</strong>l <strong>software</strong> <strong>de</strong> código abierto, comparado con los costes<strong>de</strong>l <strong>software</strong> comerci<strong>al</strong>, sin tener en cuenta que existenmod<strong>al</strong>ida<strong>de</strong>s <strong>de</strong> licenciamiento por volumen que pue<strong>de</strong>n ser sumamenteventajosas para el Estado, t<strong>al</strong> como se ha logrado en otrospaíses.Adicion<strong>al</strong>mente, la <strong>al</strong>ternativa adoptada por el proyecto (i) es claramentemás costosa por los <strong>al</strong>tos costes que supone una migración y(ii) pone en riesgo la compatibilidad y posibilidad <strong>de</strong> interoperabilidad<strong>de</strong> las plataformas informáticas <strong>de</strong>ntro <strong>de</strong>l Estado, y entre el Estadoy el sector privado, dada la centena <strong>de</strong> versiones que existen <strong>de</strong><strong>software</strong> <strong>de</strong> código abierto en el mercado.El <strong>software</strong> <strong>de</strong> código abierto en su mayoría no ofrece los niveles <strong>de</strong>servicio a<strong>de</strong>cuados ni la garantía <strong>de</strong> fabricantes reconocidos para lograrmayor productividad por parte <strong>de</strong> los usuarios, lo cu<strong>al</strong> ha motivadoque diferentes entida<strong>de</strong>s públicas hayan retrocedido en su<strong>de</strong>cisión <strong>de</strong> ir por una solución <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto y se encuentrenutilizando <strong>software</strong> comerci<strong>al</strong> en su lugar.El proyecto <strong>de</strong>sincentiva la creatividad <strong>de</strong> la industria peruana <strong>de</strong><strong>software</strong>, que factura US$ 40 millones/año, exporta US$ 4 millones(10.º en el ranking <strong>de</strong> productos <strong>de</strong> exportación no tradicion<strong>al</strong>, másque artesanías) y es una fuente <strong>de</strong> empleo <strong>al</strong>tamente c<strong>al</strong>ificado. Conuna ley que incentive el uso <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto, los programadores<strong>de</strong> <strong>software</strong> pier<strong>de</strong>n sus <strong>de</strong>rechos <strong>de</strong> propiedad intelectu<strong>al</strong>y su princip<strong>al</strong> fuente <strong>de</strong> retribución.El <strong>software</strong> <strong>de</strong> código abierto, <strong>al</strong> po<strong>de</strong>r ser distribuido gratuitamente,tampoco permite generar ingresos para sus <strong>de</strong>sarrolladores por medio<strong>de</strong> la exportación. De este modo, se <strong>de</strong>bilita el efecto multiplicador<strong>de</strong> la venta <strong>de</strong> <strong>software</strong> a otros países y por lo tanto elcrecimiento <strong>de</strong> esta industria, cuando contrariamente las normas <strong>de</strong>un gobierno <strong>de</strong>ben estimular la industria loc<strong>al</strong>.En el foro se discutió sobre la importancia <strong>de</strong>l uso <strong>de</strong> <strong>software</strong> <strong>de</strong> códigoabierto en la educación, sin comentar el rotundo fracaso <strong>de</strong> estainiciativa en un país como México, don<strong>de</strong> precisamente los funcionarios<strong>de</strong>l Estado que fundamentaron el proyecto, hoy expresan que elANOTACIONES179


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>software</strong> <strong>de</strong> código abierto no permitió brindar una experiencia <strong>de</strong>aprendizaje a <strong>al</strong>umnos en la escuela, no se contó con los niveles <strong>de</strong>capacitación a nivel nacion<strong>al</strong> para dar soporte a<strong>de</strong>cuado a la plataforma,y el <strong>software</strong> no contó y no cuenta con los niveles <strong>de</strong> integraciónpara la plataforma que existe en las escuelas.Si el <strong>software</strong> <strong>de</strong> código abierto satisface todos lo requerimientos <strong>de</strong>las entida<strong>de</strong>s <strong>de</strong>l Estado ¿por qué se requiere una ley para adoptarlo?¿No <strong>de</strong>bería ser el mercado el que <strong>de</strong>cida <strong>libre</strong>mente cuáles sonlos productos que le dan más beneficios o v<strong>al</strong>or?Respuesta <strong>de</strong>l congresista VillanuevaAnte todo, agra<strong>de</strong>zco su carta <strong>de</strong>l 25 <strong>de</strong> marzo <strong>de</strong>l 2002 don<strong>de</strong> manifiest<strong>al</strong>a posición ofici<strong>al</strong> <strong>de</strong> Microsoft respecto <strong>al</strong> Proyecto <strong>de</strong> Ley N.1609, Software Libre en la Administración Pública, que sin duda seh<strong>al</strong>la inspirada en el <strong>de</strong>seo <strong>de</strong> que el Perú logre situarse a<strong>de</strong>cuadamenteen el contexto tecnológico glob<strong>al</strong>. Animado <strong>de</strong> ese mismo espírituy convencido <strong>de</strong> que a través <strong>de</strong>l intercambio <strong>de</strong> i<strong>de</strong>as claras yabiertas hemos <strong>de</strong> encontrar las mejores soluciones, me permitocontestar mediante la presente los comentarios incluidos en su carta.Sin <strong>de</strong>jar <strong>de</strong> reconocer que opiniones como la suya constituyen unaporte significativo, me hubiese resultado aún más v<strong>al</strong>ioso si, a<strong>de</strong>más<strong>de</strong> formular objeciones <strong>de</strong> índole gener<strong>al</strong> (que luego an<strong>al</strong>izaremosen <strong>de</strong>t<strong>al</strong>le) hubiera agregado argumentos sólidos sobre lasventajas que el <strong>software</strong> propietario pue<strong>de</strong> reportar <strong>al</strong> Estado peruanoy a sus ciudadanos en gener<strong>al</strong>, pues ello habría permitido un intercambioa todas luces más esclarecedor respecto <strong>de</strong> cada una <strong>de</strong>nuestras posiciones.ANOTACIONESCon el objetivo <strong>de</strong> or<strong>de</strong>nar el <strong>de</strong>bate, asumiremos que lo que Ud. llama<strong>software</strong> <strong>de</strong> código abierto es lo que el proyecto <strong>de</strong>fine como <strong>software</strong><strong>libre</strong>, puesto que existe <strong>software</strong> cuyo código es distribuido juntocon los programas, pero no encaja en la <strong>de</strong>finición establecida en elproyecto; y lo que Ud. llama <strong>software</strong> comerci<strong>al</strong> es lo que el proyecto<strong>de</strong>fine como propietario o no <strong>libre</strong>, puesto que existe <strong>software</strong> <strong>libre</strong>que se comerci<strong>al</strong>iza en el mercado por un precio como cu<strong>al</strong>quier otrobien o servicio.180


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492También es preciso <strong>de</strong>jar en claro que el propósito <strong>de</strong>l proyecto <strong>al</strong>que nos referimos no está directamente relacionado con la cantidad<strong>de</strong> ahorro directo que pueda obtenerse por el empleo <strong>de</strong> <strong>software</strong> <strong>libre</strong>en las instituciones estat<strong>al</strong>es. Éste es, en todo caso, un v<strong>al</strong>or agregadomargin<strong>al</strong>, pero <strong>de</strong> ninguna manera el foco <strong>de</strong>l objetivo <strong>de</strong>lproyecto. Los principios element<strong>al</strong>es que animan <strong>al</strong> proyecto se vinculana las garantías básicas <strong>de</strong> un Estado <strong>de</strong>mocrático <strong>de</strong> <strong>de</strong>recho,como:• Libre acceso <strong>de</strong>l ciudadano a la información pública.• Perennidad <strong>de</strong> los datos públicos.• Seguridad <strong>de</strong>l Estado y <strong>de</strong> los ciudadanos.Para garantizar el <strong>libre</strong> acceso <strong>de</strong> los ciudadanos a la informaciónpública, resulta indispensable que la codificación <strong>de</strong> los datos no estéligada a un único proveedor. El uso <strong>de</strong> formatos estándar y abiertospermite garantizar este <strong>libre</strong> acceso, logrando si fuera necesario lacreación <strong>de</strong> <strong>software</strong> <strong>libre</strong> compatible.Para garantizar la perennidad <strong>de</strong> los datos públicos, es indispensableque la utilización y el mantenimiento <strong>de</strong>l <strong>software</strong> no <strong>de</strong>pendan<strong>de</strong> la buena voluntad <strong>de</strong> los proveedores, ni <strong>de</strong> las condiciones monopólicasimpuestas por éstos. Por esta razón, el Estado necesita sistemascuya evolución pueda ser garantizada gracias a ladisponibilidad <strong>de</strong>l código fuente.Para garantizar la seguridad <strong>de</strong>l Estado o seguridad nacion<strong>al</strong>, resultaindispensable contar con sistemas <strong>de</strong>sprovistos <strong>de</strong> elementos quepermitan el control a distancia o la transmisión no <strong>de</strong>seada <strong>de</strong> informacióna terceros. Por lo tanto, se requieren sistemas cuyo códigofuente sea <strong>libre</strong>mente accesible <strong>al</strong> público para permitir su examenpor parte <strong>de</strong>l propio Estado, los ciudadanos, y un gran número <strong>de</strong>expertos in<strong>de</strong>pendientes en el mundo. Nuestra propuesta aporta mayorseguridad, pues el conocimiento <strong>de</strong>l código fuente eliminará elcreciente número <strong>de</strong> programas con código espía.Asimismo, nuestra propuesta refuerza la seguridad <strong>de</strong> los ciudadanos,tanto en su condición <strong>de</strong> titulares legítimos <strong>de</strong> la informaciónmanejada por el Estado, cuanto en su condición <strong>de</strong> consumidores.En este ultimo caso, <strong>al</strong> permitir el surgimiento <strong>de</strong> una oferta extensaANOTACIONES181


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>sprovisto <strong>de</strong> potenci<strong>al</strong> código espía susceptible <strong>de</strong>poner en riesgo la vida privada y las liberta<strong>de</strong>s individu<strong>al</strong>es.En este sentido, el proyecto <strong>de</strong> ley se limita a establecer las condicionesen que los organismos estat<strong>al</strong>es adquirirán <strong>software</strong> en el futuro,es <strong>de</strong>cir, <strong>de</strong> un modo compatible con la garantía <strong>de</strong> esos principiosbásicos.De la lectura <strong>de</strong>l proyecto quedará claro que una vez aprobada:• la ley no prohíbe la producción <strong>de</strong> <strong>software</strong> propietario• la ley no prohíbe el comercio <strong>de</strong> <strong>software</strong> propietario• la ley no dicta qué <strong>software</strong> concreto usar• la ley no dicta a qué proveedor se compra el <strong>software</strong>• la ley no limita los términos en que se pue<strong>de</strong> licenciar un producto<strong>de</strong> <strong>software</strong>Lo que el proyecto expresa claramente es que el <strong>software</strong>, para seraceptable para el Estado, no basta con que sea técnicamente suficientepara llevar a cabo una tarea, sino que a<strong>de</strong>más las condiciones<strong>de</strong> contratación <strong>de</strong>ben satisfacer una serie <strong>de</strong> requisitos en materia<strong>de</strong> licencia, sin los cu<strong>al</strong>es el Estado no pue<strong>de</strong> garantizar <strong>al</strong> ciudadanoel procesamiento a<strong>de</strong>cuado <strong>de</strong> sus datos, velando por su integridad,confi<strong>de</strong>nci<strong>al</strong>idad y accesibilidad a lo largo <strong>de</strong>l tiempo, porque sonaspectos muy críticos para su norm<strong>al</strong> <strong>de</strong>sempeño.ANOTACIONESEstamos <strong>de</strong> acuerdo, Sr. González, en el hecho <strong>de</strong> que la tecnología<strong>de</strong> información y comunicaciones tiene un impacto en la c<strong>al</strong>idad <strong>de</strong>vida <strong>de</strong> los ciudadanos significativo (sin que por ello sea siempre positivoo <strong>de</strong> efecto neutro). También coincidiremos seguramente, enque los v<strong>al</strong>ores básicos que he señ<strong>al</strong>ado arriba son fundament<strong>al</strong>esen una nación <strong>de</strong>mocrática como el Perú. Des<strong>de</strong> luego estamos muyinteresados en conocer cu<strong>al</strong>quier forma <strong>al</strong>ternativa <strong>de</strong> garantizar estosprincipios, que no sea la <strong>de</strong> recurrir <strong>al</strong> empleo <strong>de</strong> <strong>software</strong> <strong>libre</strong>en los términos <strong>de</strong>finidos en el proyecto <strong>de</strong> ley.182


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492En cuanto a las observaciones que Ud. formula, pasaremos ahora aan<strong>al</strong>izarlas en <strong>de</strong>t<strong>al</strong>le:En primer lugar, señ<strong>al</strong>a que: “1. El proyecto establece la obligatoriedad<strong>de</strong> que todo organismo público <strong>de</strong>be emplear exclusivamente<strong>software</strong> <strong>libre</strong>, es <strong>de</strong>cir <strong>de</strong> código abierto, lo cu<strong>al</strong> transgre<strong>de</strong> los principios<strong>de</strong> la igu<strong>al</strong>dad ante la ley, el <strong>de</strong> no discriminación y los <strong>de</strong>rechosa la <strong>libre</strong> iniciativa privada, libertad <strong>de</strong> industria y contrataciónprotegidos en la constitución.”.Esta apreciación constituye un error. De ningún modo el proyectoafecta a los <strong>de</strong>rechos que Ud. enumera; sólo se limita a establecercondiciones para el empleo <strong>de</strong>l <strong>software</strong> por parte <strong>de</strong> las institucionesestat<strong>al</strong>es, sin inmiscuirse en modo <strong>al</strong>guno en las transacciones<strong>de</strong>l sector privado. Es un principio bien establecido que el Estado notiene el amplio espectro <strong>de</strong> libertad contractu<strong>al</strong> <strong>de</strong>l sector privado,pues precisamente está limitado en sus acciones por el <strong>de</strong>ber <strong>de</strong>transparencia <strong>de</strong> los actos públicos; y en ese sentido, la preservación<strong>de</strong>l mejor interés común <strong>de</strong>be prev<strong>al</strong>ecer cuando se legisla sobre lamateria.El proyecto protege la igu<strong>al</strong>dad ante la ley, pues ninguna personanatur<strong>al</strong> o jurídica está excluida <strong>de</strong>l <strong>de</strong>recho <strong>de</strong> ofrecer estos bienes <strong>al</strong>Estado en las condiciones fijadas en el proyecto y sin más limitacionesque las establecidas en la Ley <strong>de</strong> Contrataciones y Adquisiciones<strong>de</strong>l Estado (TUO por Decreto Supremo No. 012-2001-PCM).El proyecto no introduce discriminación <strong>al</strong>guna, pues sólo establececómo han <strong>de</strong> proveerse estos bienes (lo cu<strong>al</strong> es una potestad estat<strong>al</strong>)y no quién ha <strong>de</strong> proveerlos (lo que en efecto resultaría discriminatoriosi se impusieran restricciones basadas en origen nacion<strong>al</strong>, raza,religión, i<strong>de</strong>ología, preferencia sexu<strong>al</strong>, etc.) Por el contrario, el proyectoes <strong>de</strong>cididamente antidiscriminatorio. Es así porque <strong>al</strong> <strong>de</strong>terminarsin lugar a dudas las condiciones <strong>de</strong> provisión <strong>de</strong>l <strong>software</strong>,impi<strong>de</strong> a los organismos estat<strong>al</strong>es el uso <strong>de</strong> programas cuyo licenciamientoincluya condiciones discriminatorias.Resulta obvio por lo expuesto en los dos párrafos previos, que el proyectono atenta contra la <strong>libre</strong> iniciativa privada, pues ésta pue<strong>de</strong> elegirsiempre bajo qué condiciones producirá el <strong>software</strong>; <strong>al</strong>gunas <strong>de</strong>ANOTACIONES183


© FUOC • XP06/M2101/01492Software <strong>libre</strong>éstas serán aceptables para el Estado, y otras no lo serán porquecontrarían la garantía <strong>de</strong> los principios básicos enumerados arriba.Esta <strong>libre</strong> iniciativa es <strong>de</strong>s<strong>de</strong> luego, compatible con la libertad <strong>de</strong> industriay con la libertad <strong>de</strong> contratación (en los términos acotados enque el Estado pue<strong>de</strong> ejercer esta última). Cu<strong>al</strong>quier sujeto privadopue<strong>de</strong> producir <strong>software</strong> en las condiciones que el Estado lo requiere,o pue<strong>de</strong> abstenerse <strong>de</strong> hacerlo. Nadie está forzado a adoptar unmo<strong>de</strong>lo <strong>de</strong> producción, pero si <strong>de</strong>sea proveer <strong>software</strong> <strong>al</strong> Estado, <strong>de</strong>beráproporcionar los mecanismos que garantizan los principios básicos,y que son los manifestados en el proyecto.A manera <strong>de</strong> ejemplo: nada en el texto <strong>de</strong>l proyecto impediría a suempresa ofrecer a los organismos <strong>de</strong>l Estado su suite <strong>de</strong> oficina, enlas condiciones <strong>de</strong>finidas en el proyecto y fijando el precio que uste<strong>de</strong>sconsi<strong>de</strong>ren conveniente. Si no lo hiciera, no se <strong>de</strong>berá a restriccionesimpuestas por la ley, sino a <strong>de</strong>cisiones empresari<strong>al</strong>es respecto<strong>al</strong> modo <strong>de</strong> comerci<strong>al</strong>izar sus productos, <strong>de</strong>cisiones en las que el Estadono tiene participación.A continuación señ<strong>al</strong>a Ud. que: “2. El proyecto, <strong>al</strong> hacer obligatorioel uso <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto, establecería un tratamiento discriminatorioy no competitivo en la contratación y adquisición <strong>de</strong> losorganismos públicos [...].”Esta afirmación no es sino una reiteración <strong>de</strong> la anterior, y por en<strong>de</strong>se encuentra contestada líneas arriba. Pero <strong>de</strong>tengámonos un instanteen su apreciación sobre el “tratamiento [...] no competitivo.”ANOTACIONESPor cierto, <strong>al</strong> <strong>de</strong>finir cu<strong>al</strong>quier tipo <strong>de</strong> adquisición, el comprador fijacondiciones que se relacionan con el uso propuesto <strong>de</strong>l bien o servicio.Des<strong>de</strong> luego ello excluye a ciertos fabricantes <strong>de</strong> la posibilidad<strong>de</strong> competir, pero no los excluye a priori, sino sobre la base <strong>de</strong> unaserie <strong>de</strong> principios <strong>de</strong>cididos por la voluntad autónoma <strong>de</strong>l comprador,en tanto el proceso se lleve a cabo conforme a la ley. Y en elproyecto se establece que nadie está excluido <strong>de</strong> competir en tantogarantice el cumplimiento <strong>de</strong> los principios básicos.A<strong>de</strong>más, el proyecto estimula la competencia, pues <strong>al</strong>ienta a generaroferta <strong>de</strong> <strong>software</strong> con mejores condiciones <strong>de</strong> usabilidad, y a optimizartrabajos ya establecidos, en un mo<strong>de</strong>lo <strong>de</strong> mejora constante.184


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492De otro lado, el aspecto centr<strong>al</strong> <strong>de</strong> la competitividad es la oportunidad<strong>de</strong> proporcionar <strong>al</strong> consumidor mejores opciones. Ahorabien, es imposible <strong>de</strong>sconocer que el marketing no juega un papelneutr<strong>al</strong> a la hora <strong>de</strong> presentar la oferta <strong>al</strong> mercado (pues admitirlo contrario habilitaría a suponer que las inversiones que las empresasre<strong>al</strong>izan en marketing carecen <strong>de</strong> sentido), y por consiguienteun gasto significativo en este rubro pue<strong>de</strong> influir en las<strong>de</strong>cisiones <strong>de</strong>l comprador. Esta influencia <strong>de</strong>l marketing queda enbuena medida mitigada por el proyecto que propulsamos, pues laelección <strong>de</strong>ntro <strong>de</strong>l marco propuesto recae en el mérito técnico <strong>de</strong>lproducto y no en el esfuerzo <strong>de</strong> comerci<strong>al</strong>ización <strong>de</strong>l productor;en este sentido, la competitividad se acentúa, pues el más pequeñoproductor <strong>de</strong> <strong>software</strong> pue<strong>de</strong> competir en un pie <strong>de</strong> igu<strong>al</strong>dadcon la más po<strong>de</strong>rosa <strong>de</strong> las corporaciones.Es necesario rec<strong>al</strong>car que no hay posición más anti-competitiva quela <strong>de</strong> los gran<strong>de</strong>s productores <strong>de</strong> <strong>software</strong> propietario, que frecuentementeabusan <strong>de</strong> su posición dominante, porque en innumerablescasos proponen como soluciones a problemas planteados por losusuarios: “actu<strong>al</strong>ice su <strong>software</strong> a la nueva versión” (con cargo parael usuario, por supuesto); a<strong>de</strong>más, son comunes las interrupcionesarbitrarias <strong>de</strong> asistencia técnica para productos que <strong>al</strong> sólo juicio <strong>de</strong>lproveedor, son antiguos; luego, para recibir <strong>al</strong>gún grado <strong>de</strong> asistenciatécnica, el usuario se ve obligado a migrar (con coste no trivi<strong>al</strong>,especi<strong>al</strong>mente porque suele involucrar cambios <strong>de</strong> la plataforma <strong>de</strong>hardware) a nuevas versiones. Y como toda la infraestructura estáconsolidada en formatos <strong>de</strong> datos propietarios, el usuario quedaatrapado en la necesidad <strong>de</strong> continuar empleando los productos <strong>de</strong>lmismo proveedor, o re<strong>al</strong>izar el enorme esfuerzo <strong>de</strong> cambiar a otroambiente (también probablemente propietario).Agrega Ud.: “3. Así, <strong>al</strong> obligar <strong>al</strong> Estado a favorecer un mo<strong>de</strong>lo <strong>de</strong>negocios que apoyaría exclusivamente el <strong>software</strong> <strong>de</strong> código abierto,el proyecto sólo estaría <strong>de</strong>s<strong>al</strong>entando a las compañías fabricantes loc<strong>al</strong>ese internacion<strong>al</strong>es que son las que verda<strong>de</strong>ramente re<strong>al</strong>izan importantesinversiones, crean un significativo número <strong>de</strong> puestos <strong>de</strong>empleos directos e indirectos, a<strong>de</strong>más <strong>de</strong> contribuir <strong>al</strong> PBI vs. un mo<strong>de</strong>lo<strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto que tien<strong>de</strong> a tener un impactoeconómico cada vez menor <strong>de</strong>bido a que crea princip<strong>al</strong>mente empleosen servicio.”ANOTACIONES185


© FUOC • XP06/M2101/01492Software <strong>libre</strong>No estoy <strong>de</strong> acuerdo con lo que Ud. afirma. En parte por lo que Ud.mismo señ<strong>al</strong>a en el párrafo 6 <strong>de</strong> su carta, respecto <strong>de</strong>l peso relativo<strong>de</strong> los servicios en el contexto <strong>de</strong>l uso <strong>de</strong> <strong>software</strong>. Esta contradicción,<strong>de</strong> por sí, inv<strong>al</strong>idaría su postura. El mo<strong>de</strong>lo <strong>de</strong> servicios, adoptadopor gran número <strong>de</strong> corporaciones en la industria informática, esmucho más significativo, en términos económicos y con ten<strong>de</strong>nciacreciente, que el licenciamiento <strong>de</strong> programas.Por otra parte, el sector privado <strong>de</strong> la economía tiene la más ampli<strong>al</strong>ibertad para elegir el mo<strong>de</strong>lo económico que más convenga a susintereses, aunque esta libertad <strong>de</strong> elección que<strong>de</strong> muchas veces oscurecida<strong>de</strong> manera sublimin<strong>al</strong> por las <strong>de</strong>sproporcionadas inversionesen marketing <strong>de</strong> los productores <strong>de</strong> <strong>software</strong> propietario.Adicion<strong>al</strong>mente, <strong>de</strong> la lectura <strong>de</strong> su opinión se <strong>de</strong>spren<strong>de</strong>ría que elmercado estat<strong>al</strong> es cruci<strong>al</strong> e imprescindible para la industria <strong>de</strong>l <strong>software</strong>propietario, a t<strong>al</strong> punto que la opción que el Estado estableceen este proyecto eliminaría completamente <strong>de</strong>l mercado a estas empresas.Si es así, <strong>de</strong>ducimos que el Estado estaría subsidiando a laindustria <strong>de</strong>l <strong>software</strong> propietario. En el supuesto negado que estofuese cierto, entonces el Estado tendría el <strong>de</strong>recho a aplicar los subsidios<strong>al</strong> área que consi<strong>de</strong>re <strong>de</strong> mayor v<strong>al</strong>or soci<strong>al</strong>; resultaría innegable,en esta improbable hipótesis, que si el Estado <strong>de</strong>ci<strong>de</strong> subsidiar<strong>software</strong>, <strong>de</strong>bería hacerlo escogiendo el <strong>libre</strong> por encima <strong>de</strong>l propietario,atendiendo a su efecto soci<strong>al</strong> y <strong>al</strong> uso racion<strong>al</strong> <strong>de</strong> los dineros<strong>de</strong> los contribuyentes.ANOTACIONESRespecto <strong>de</strong> los puestos <strong>de</strong> trabajo generados por el <strong>software</strong> propietarioen países como el nuestro, éstos tratan mayoritariamente tareastécnicas <strong>de</strong> poco v<strong>al</strong>or agregado; a nivel loc<strong>al</strong>, los técnicos que prestansoporte a <strong>software</strong> propietario producido por empresas transnacion<strong>al</strong>esno están en condiciones <strong>de</strong> solucionar un bug, nonecesariamente por f<strong>al</strong>ta capacidad técnica o t<strong>al</strong>ento, sino porqueno disponen <strong>de</strong>l código fuente a reparar. Con <strong>software</strong> <strong>libre</strong> se creaempleo técnicamente más c<strong>al</strong>ificado y se genera un marco <strong>de</strong> <strong>libre</strong>competencia don<strong>de</strong> el éxito esta sólo vinculado a la capacidad <strong>de</strong>brindar buen soporte técnico y c<strong>al</strong>idad <strong>de</strong> servicio, se estimula elmercado y se incrementa el patrimonio común <strong>de</strong>l conocimiento,abriendo <strong>al</strong>ternativas para generar servicios <strong>de</strong> mayor v<strong>al</strong>or agrega-186


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492do y mejor perfil <strong>de</strong> c<strong>al</strong>idad beneficiando a todos los actores: productores,prestadores <strong>de</strong> servicios y consumidores.Es un fenómeno común en los países en vías <strong>de</strong> <strong>de</strong>sarrollo que lasindustrias loc<strong>al</strong>es <strong>de</strong> <strong>software</strong> obtienen la mayoría <strong>de</strong> sus ingresosen el área <strong>de</strong> servicios, o en la construcción <strong>de</strong> <strong>software</strong> ad hoc.Por lo tanto, cu<strong>al</strong>quier impacto negativo que la aplicación <strong>de</strong>l proyectopueda tener en este sector se verá compensado con crecespor un aumento <strong>de</strong> la <strong>de</strong>manda <strong>de</strong> servicios (a condición <strong>de</strong> queéstos sean prestados conforme a <strong>al</strong>tos estándares <strong>de</strong> c<strong>al</strong>idad).Des<strong>de</strong> luego, es probable que las empresas transnacion<strong>al</strong>es <strong>de</strong><strong>software</strong>, si <strong>de</strong>ci<strong>de</strong>n no competir conforme a estas reglas <strong>de</strong> juego,sufran <strong>al</strong>guna disminución <strong>de</strong> ingresos en términos <strong>de</strong> facturaciónpor licenciamiento; pero, consi<strong>de</strong>rando que estasempresas <strong>al</strong>egan sostenidamente que mucho <strong>de</strong>l <strong>software</strong> empleadopor el Estado fue copiado ileg<strong>al</strong>mente, se verá que el impactono ha <strong>de</strong> ser extremadamente serio. Ciertamente, en todocaso su fortuna estará <strong>de</strong>terminada por leyes <strong>de</strong>l mercado, cuyoscambios no es posible evitar; muchas empresas tradicion<strong>al</strong>menteasociadas con el <strong>software</strong> propietario ya han emprendido un caminofirme (apoyado por cuantiosas inversiones) para prestar serviciosasociados con el <strong>software</strong> <strong>libre</strong>, lo cu<strong>al</strong> <strong>de</strong>muestra que losmo<strong>de</strong>los no son mutuamente excluyentes.Con este proyecto el Estado está <strong>de</strong>cidiendo que requiere preservarciertos v<strong>al</strong>ores fundament<strong>al</strong>es. Y lo <strong>de</strong>ci<strong>de</strong> sobre la base <strong>de</strong> sus potesta<strong>de</strong>ssoberanas, sin afectar con ello a ninguna <strong>de</strong> las garantíasconstitucion<strong>al</strong>es. Si estos v<strong>al</strong>ores pue<strong>de</strong>n ser garantizados sin tenerque escoger un mo<strong>de</strong>lo económico dado, los efectos <strong>de</strong> la ley seríanaún más beneficiosos. En todo caso, <strong>de</strong>be quedar claro que el Estadono elige un mo<strong>de</strong>lo económico; si sucediera que existe un sólo mo<strong>de</strong>loeconómico capaz <strong>de</strong> proveer <strong>software</strong> t<strong>al</strong> que satisfaga las garantíasbásicas <strong>de</strong> estos principios, se trataría <strong>de</strong> una circunstanciahistórica y no <strong>de</strong> una <strong>de</strong>cisión arbitraria en favor <strong>de</strong> un mo<strong>de</strong>lo dado.Prosigue su carta: “4. El proyecto <strong>de</strong> ley impone el uso <strong>de</strong> <strong>software</strong><strong>de</strong> código abierto sin consi<strong>de</strong>rar los peligros que esto pueda conllevar<strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista <strong>de</strong> seguridad, garantía y posible violación<strong>de</strong> los <strong>de</strong>rechos <strong>de</strong> propiedad intelectu<strong>al</strong> <strong>de</strong> terceros.”ANOTACIONES187


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Aludir <strong>de</strong> forma abstracta “los peligros que pueda conllevar”, sin especificarsiquiera una sola instancia <strong>de</strong> esos supuestos peligros, <strong>de</strong>notacuando menos un <strong>de</strong>sconocimiento <strong>de</strong>l tema. Así, pues,permítame ilustrarlo sobre estos puntos.Sobre seguridad:En términos gener<strong>al</strong>es respecto la seguridad nacion<strong>al</strong>, ya se mencionóinici<strong>al</strong>mente en los principios básicos <strong>de</strong>l proyecto. En términosmás puntu<strong>al</strong>es respecto <strong>de</strong> la seguridad <strong>de</strong>l <strong>software</strong> en sí, es biensabido que el <strong>software</strong> (propietario o <strong>libre</strong>) contiene errores <strong>de</strong> programacióno bugs (en la jerga informática) en sus líneas <strong>de</strong> código.Pero también es público y notorio que los bugs en el <strong>software</strong> <strong>libre</strong>son menos, y se reparan mucho más rápidamente, que en el <strong>software</strong>propietario. No en vano numerosas organismos públicos responsablespor la seguridad informática <strong>de</strong> los sistemas estat<strong>al</strong>es enpaíses <strong>de</strong>sarrollados prescriben el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> a igu<strong>al</strong>escondiciones <strong>de</strong> seguridad y eficiencia.Lo que resulta imposible probar es que el <strong>software</strong> propietario seamás seguro que el <strong>libre</strong>, s<strong>al</strong>vo mediante el escrutinio público y abierto<strong>de</strong> la comunidad científica y los usuarios en gener<strong>al</strong>. Esta <strong>de</strong>mostraciónes imposible porque el propio mo<strong>de</strong>lo <strong>de</strong>l <strong>software</strong>propietario impi<strong>de</strong> este análisis, con lo que la garantía <strong>de</strong> seguridadse basa en la p<strong>al</strong>abra bienintencionada (pero a todas luces parci<strong>al</strong>)<strong>de</strong>l propio productor o sus contratistas.Correspon<strong>de</strong> recordar que, en numerosos casos, las condiciones <strong>de</strong>licenciamiento incluyen cláusulas <strong>de</strong> non-disclosure, que impi<strong>de</strong>n <strong>al</strong>os usuarios revelar abiertamente las f<strong>al</strong>las <strong>de</strong> seguridad h<strong>al</strong>ladas enel producto propietario licenciado.ANOTACIONESRespecto a garantía:Como Ud. sabe perfectamente, o podrá <strong>de</strong>terminar leyendo el EndUser License Agreement <strong>de</strong> los productos que licencia, en la amplísimamayoría <strong>de</strong> los casos, las garantías están limitadas a la reposición<strong>de</strong>l medio <strong>de</strong> <strong>al</strong>macenamiento si éste fuera <strong>de</strong>fectuoso, pero enningún caso se prevén compensaciones por daños directos o indirectos,lucro cesante, etc. Si como consecuencia <strong>de</strong> un bug <strong>de</strong> seguridad188


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492en <strong>al</strong>guno <strong>de</strong> sus productos, no oportunamente reparado por Uds.,un atacante comprometiera sistemas cruci<strong>al</strong>es para el Estado: ¿quégarantías, reparaciones y compensaciones proporcionaría su empresa<strong>de</strong> acuerdo con sus condiciones <strong>de</strong> licenciamiento? Las garantías<strong>de</strong>l <strong>software</strong> propietario, en tanto los programas se entregan “AS IS”,es <strong>de</strong>cir, en el estado en que se encuentran, sin ninguna responsabilidadadicion<strong>al</strong> para el proveedor respecto a su funcion<strong>al</strong>idad, no difierenen modo <strong>al</strong>guno <strong>de</strong> las habitu<strong>al</strong>es en el <strong>software</strong> <strong>libre</strong>.Sobre la propiedad intelectu<strong>al</strong>:Las cuestiones <strong>de</strong> propiedad intelectu<strong>al</strong> están fuera <strong>de</strong>l ámbito eneste proyecto, pues se encuentran amparadas por otras leyes específicas.El mo<strong>de</strong>lo <strong>de</strong> <strong>software</strong> <strong>libre</strong> no implica en modo <strong>al</strong>guno <strong>de</strong>sconocerestas leyes y <strong>de</strong> hecho, la amplísima mayoría <strong>de</strong>l <strong>software</strong><strong>libre</strong> está amparado por el copyright. En re<strong>al</strong>idad, la sola inclusión<strong>de</strong> esta cuestión en sus observaciones <strong>de</strong>muestra su confusión respecto<strong>de</strong>l marco leg<strong>al</strong> en que se <strong>de</strong>senvuelve el <strong>software</strong> <strong>libre</strong>. La incorporación<strong>de</strong> propiedad intelectu<strong>al</strong> ajena en obras que luego seatribuyen como propias no es una práctica <strong>de</strong> la que se tenga registroen la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong>; sí que lo es, lamentablemente,en el terreno <strong>de</strong>l <strong>software</strong> propietario. V<strong>al</strong>ga a titulo <strong>de</strong> ejemplo lacon<strong>de</strong>na <strong>de</strong> la Corte Comerci<strong>al</strong> <strong>de</strong> Nanterre, Francia, <strong>de</strong>l pasado 27<strong>de</strong> septiembre <strong>de</strong>l 2001 a Microsoft Corp., por 3 millones <strong>de</strong> francosen concepto <strong>de</strong> daños e intereses, por violación <strong>de</strong> la propiedad intelectu<strong>al</strong>(piratería, según el <strong>de</strong>safortunado término que su empresasuele usar en su publicidad).Prosigue diciendo que: “5. El proyecto maneja <strong>de</strong> manera erróne<strong>al</strong>os conceptos <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto, que no necesariamenteimplica que sea <strong>software</strong> <strong>libre</strong> o <strong>de</strong> coste cero, llegando a re<strong>al</strong>izarconclusiones equívocas sobre ahorros para el Estado, sin ningún sustentocoste-beneficio que v<strong>al</strong>i<strong>de</strong> la posición.”Esta observación no es así, en principio la gratuidad y la libertad sonconceptos ortogon<strong>al</strong>es: hay <strong>software</strong> propietario y oneroso (porejemplo, MS Office), <strong>software</strong> propietario y gratuito (MS Internet Explorer),<strong>software</strong> <strong>libre</strong> y oneroso (distribuciones RedHat, SuSE, etc. <strong>de</strong>lsistema GNU/Linux), <strong>software</strong> <strong>libre</strong> y gratuito (Apache, OpenOffice,ANOTACIONES189


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Mozilla), y aun <strong>software</strong> que se licencia bajo diferentes mod<strong>al</strong>ida<strong>de</strong>s(MySQL).Ciertamente que el <strong>software</strong> <strong>libre</strong> no es necesariamente gratuito. Ytampoco se <strong>de</strong>spren<strong>de</strong> <strong>de</strong>l texto <strong>de</strong>l proyecto que <strong>de</strong>ba serlo comobien habrá notado <strong>de</strong>spués <strong>de</strong> leer la norma propuesta. Las <strong>de</strong>finicionesincluidas en el proyecto <strong>de</strong>terminan claramente qué <strong>de</strong>be consi<strong>de</strong>rarse<strong>software</strong> <strong>libre</strong>, en ningún momento se refieren a lagratuidad. Si bien se mencionan las posibilida<strong>de</strong>s <strong>de</strong> ahorro en términos<strong>de</strong> lo pagado por licencias <strong>de</strong> <strong>software</strong> propietario, los fundamentos<strong>de</strong>l proyecto hacen clara mención a las garantíasfundament<strong>al</strong>es que se preten<strong>de</strong> preservar y <strong>al</strong> estimulo <strong>de</strong>l <strong>de</strong>sarrollotecnológico loc<strong>al</strong>. Puesto que un Estado <strong>de</strong>mocrático <strong>de</strong>be sostenerestos principios, no le queda otra solución que emplear <strong>software</strong>,cuyo código fuente está públicamente disponible e intercambiar informaciónsólo en formatos estándares.Si el Estado no empleara <strong>software</strong> con esas características, estaríavulnerando principios republicanos básicos. Por fortuna, a<strong>de</strong>más, el<strong>software</strong> <strong>libre</strong> implica menores costes tot<strong>al</strong>es; pero aun en la hipótesis(fácilmente negada) <strong>de</strong> que costara más que el propietario, lasola existencia <strong>de</strong> una herramienta <strong>de</strong> <strong>software</strong> <strong>libre</strong> eficaz para una<strong>de</strong>terminada función informática obligaría <strong>al</strong> Estado a usarla; no porimperio <strong>de</strong> este proyecto <strong>de</strong> ley, sino por los principios element<strong>al</strong>esque enumeramos <strong>al</strong> comienzo y que surgen <strong>de</strong> la esencia misma <strong>de</strong>lEstado <strong>de</strong>mocrático <strong>de</strong> <strong>de</strong>recho.ANOTACIONESSigue Ud.: “6. Es equivocado pensar que el <strong>software</strong> <strong>de</strong> códigoabierto es gratuito. Investigaciones re<strong>al</strong>izadas por Gartner Group(importante investigadora <strong>de</strong>l mercado tecnológico reconocida a nivelmundi<strong>al</strong>) han señ<strong>al</strong>ado que el coste <strong>de</strong> adquisición <strong>de</strong>l <strong>software</strong>(sistema operativo y aplicaciones) se reduce a sólo el 8% <strong>de</strong>l tot<strong>al</strong> <strong>de</strong>costes que las empresas e instituciones <strong>de</strong>ben asumir como consecuencia<strong>de</strong>l uso racion<strong>al</strong> y re<strong>al</strong>mente provechoso <strong>de</strong> la tecnología. Elotro 92% lo constituyen: costes <strong>de</strong> implantación, capacitación, soporte,mantenimiento, administración e inoperatividad.”Este argumento repite lo ya señ<strong>al</strong>ado en el párrafo 5 y en parte secontradice con el párrafo 3. Por lo tanto nos remitiremos a lo <strong>al</strong>lí dichoen homenaje a la brevedad. No obstante, permítame señ<strong>al</strong>arle190


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492que incurre en una conclusión f<strong>al</strong>sa en el plano lógico: que el coste<strong>de</strong> <strong>software</strong> según Gartner Group sea sólo el 8% en promedio <strong>de</strong>lcoste tot<strong>al</strong> <strong>de</strong> utilización, no inv<strong>al</strong>ida en forma <strong>al</strong>guna la existencia<strong>de</strong> <strong>software</strong> gratuito, esto es, aquél cuyo costo <strong>de</strong> licenciamiento escero.A<strong>de</strong>más, en este párrafo Ud. indica acertadamente que los componentes<strong>de</strong> servicio y las pérdidas por indisponibilidad conforman laparte sustanci<strong>al</strong> <strong>de</strong>l costo tot<strong>al</strong> <strong>de</strong> utilización <strong>de</strong> <strong>software</strong>; lo que, advertirá,entra en contradicción con su afirmación <strong>de</strong>l v<strong>al</strong>or mínimo <strong>de</strong>los servicios sugerido en el párrafo 3. Ahora bien, el empleo <strong>de</strong> <strong>software</strong><strong>libre</strong> contribuye significativamente a disminuir los restantes costes<strong>de</strong>l ciclo <strong>de</strong> vida. Esta reducción <strong>de</strong>l impacto económico <strong>de</strong><strong>de</strong>spliegue, soporte, etc. se registra en varios campos; por un lado,el mo<strong>de</strong>lo competitivo <strong>de</strong> servicios <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, cuyo soporte ymantenimiento es posible contratar <strong>libre</strong>mente entre una oferta variadaque compite en función <strong>de</strong> la c<strong>al</strong>idad y el menor coste. Esto esválido para la implantación, la capacitación y el soporte, y en buenamedida para el mantenimiento. En segundo lugar, por la característicareproductiva <strong>de</strong>l mo<strong>de</strong>lo, hace que el mantenimiento que se re<strong>al</strong>izóen una aplicación sea replicable muy fácilmente, sin incurrir enmayores costes (es <strong>de</strong>cir, sin pagar más <strong>de</strong> una vez por lo mismo)pues las modificaciones, si así se <strong>de</strong>sea, quedan incorporadas <strong>al</strong> patrimoniocomún <strong>de</strong>l conocimiento. En tercero, porque el enorme costecausado por la inoperatividad (pant<strong>al</strong>las azules <strong>de</strong> la muerte,código m<strong>al</strong>icioso como virus, worms y troyanos, excepciones, f<strong>al</strong>lasgener<strong>al</strong>es <strong>de</strong> protección y otros tantos m<strong>al</strong>es conocidos) se reducesignificativamente <strong>al</strong> emplear <strong>software</strong> más estable; y es bien sabidoque una <strong>de</strong> las virtu<strong>de</strong>s más <strong>de</strong>stacables <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es su estabilidad.Afirma luego que: “7. Uno <strong>de</strong> los argumentos que sustentan el proyecto<strong>de</strong> ley es la supuesta gratuidad <strong>de</strong>l <strong>software</strong> <strong>de</strong> código abierto,comparado con los costes <strong>de</strong>l <strong>software</strong> comerci<strong>al</strong>, sin tener en cuentaque existen mod<strong>al</strong>ida<strong>de</strong>s <strong>de</strong> licenciamiento por volumen que pue<strong>de</strong>nser sumamente ventajosas para el Estado, t<strong>al</strong> como se ha logrado enotros países.”He puntu<strong>al</strong>izado ya que lo que está en cuestión no es el costo <strong>de</strong>l<strong>software</strong>, sino los principios <strong>de</strong> libertad <strong>de</strong> información, accesibilidadANOTACIONES191


© FUOC • XP06/M2101/01492Software <strong>libre</strong>y seguridad. Estos argumentos se han tratado <strong>de</strong> manera extensa enpárrafos anteriores, por lo que estimaré remitirse a ellos.Por otra parte, ciertamente existen mod<strong>al</strong>ida<strong>de</strong>s <strong>de</strong> licenciamientopor volumen (aunque infortunadamente, el <strong>software</strong> propietario nosatisface los principios básicos). Pero, como Ud. acaba <strong>de</strong> señ<strong>al</strong>arloacertadamente en el párrafo inmediatamente anterior <strong>de</strong> su carta,sólo apuntan a reducir el impacto <strong>de</strong> un componente que importa nomás <strong>de</strong>l 8% <strong>de</strong>l coste tot<strong>al</strong>.Prosigue: “8. Adicion<strong>al</strong>mente, la <strong>al</strong>ternativa adoptada por el proyecto(i) es claramente más costosa por los <strong>al</strong>tos costes que supone unamigración y (ii) pone en riesgo la compatibilidad y posibilidad <strong>de</strong> interoperabilidad<strong>de</strong> las plataformas informáticas <strong>de</strong>ntro <strong>de</strong>l Estado, yentre el Estado y el sector privado, dada la centena <strong>de</strong> versiones queexisten <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto en el mercado.”ANOTACIONESAn<strong>al</strong>icemos su afirmación en dos partes. Su primer argumento, el <strong>de</strong>que la migración supone <strong>al</strong>tos costes es en re<strong>al</strong>idad un argumentoen favor <strong>de</strong>l proyecto. Porque cuanto más tiempo transcurra la migracióna otra tecnología ésta se tornará más onerosa; y <strong>al</strong> mismotiempo se irán incrementando los riesgos <strong>de</strong> seguridad asociadoscon el <strong>software</strong> propietario. De esta manera, el uso <strong>de</strong> sistemas y formatospropietarios va haciendo que el Estado se vuelva cada vezmás <strong>de</strong>pendiente <strong>de</strong> proveedores <strong>de</strong>terminados. Por el contrario,una vez implantada la política <strong>de</strong> uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> (implantaciónque, es cierto, implica un coste), la migración <strong>de</strong> un sistema a otro sehace muy sencilla, ya que todos los datos están <strong>al</strong>macenados en formatosabiertos. Por otra parte, la migración a un entorno <strong>de</strong> <strong>software</strong>abierto no implica más costes que la misma entre entornos distintos<strong>de</strong> <strong>software</strong> propietario, con lo que su argumento se inv<strong>al</strong>ida tot<strong>al</strong>mente.El segundo argumento refiere a “dificulta<strong>de</strong>s <strong>de</strong> interoperabilidad <strong>de</strong>las plataformas informáticas <strong>de</strong>ntro <strong>de</strong>l Estado, y entre el Estado y elsector privado”. Esta afirmación implica un cierto <strong>de</strong>sconocimiento<strong>de</strong> los mecanismos <strong>de</strong> construcción <strong>de</strong> <strong>software</strong> <strong>libre</strong>, en el que no semaximiza la <strong>de</strong>pen<strong>de</strong>ncia <strong>de</strong>l usuario respecto <strong>de</strong> una plataforma<strong>de</strong>terminada, como suce<strong>de</strong> habitu<strong>al</strong>mente en el campo <strong>de</strong>l <strong>software</strong>propietario. Aun cuando existen múltiples distribuciones <strong>de</strong> <strong>software</strong>192


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492<strong>libre</strong>, y numerosos programas susceptibles <strong>de</strong> ser empleados para unamisma función, la interoperabilidad queda garantizada tanto por elempleo <strong>de</strong> formatos estándar, exigido en el proyecto, como por la posibilidad<strong>de</strong> construir <strong>software</strong> interoperable a partir <strong>de</strong> la disponibilidad<strong>de</strong>l código fuente.Dice luego que: “9. El <strong>software</strong> <strong>de</strong> código abierto en su mayoría noofrece los niveles <strong>de</strong> servicio a<strong>de</strong>cuados ni la garantía <strong>de</strong> fabricantesreconocidos para lograr mayor productividad por parte <strong>de</strong> los usuarios,lo cu<strong>al</strong> ha motivado que diferentes entida<strong>de</strong>s públicas hayan retrocedidoen su <strong>de</strong>cisión <strong>de</strong> ir por una solución <strong>de</strong> <strong>software</strong> <strong>de</strong> códigoabierto y se encuentren utilizando <strong>software</strong> comerci<strong>al</strong> en su lugar.”Esta observación es infundada. Respecto <strong>de</strong> la garantía su argumentoha sido rebatido respondiendo el párrafo 4. Respecto <strong>de</strong> los servicios<strong>de</strong> soporte, es posible usar <strong>software</strong> <strong>libre</strong> sin ellos (así comosuce<strong>de</strong> también con el <strong>software</strong> propietario) pero quienes los requieranpue<strong>de</strong>n adquirir soporte por separado, tanto <strong>de</strong> empresas loc<strong>al</strong>escuanto <strong>de</strong> corporaciones internacion<strong>al</strong>es, también como en elcaso <strong>de</strong> <strong>software</strong> propietario.Por otra parte, contribuiría en mucho a nuestro análisis que nos informaseacerca <strong>de</strong> proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> implantados en entida<strong>de</strong>spúblicas, que a la fecha hayan sido abandonados en favor <strong>de</strong>l<strong>software</strong> propietario. Conocemos un buen número <strong>de</strong> casos en elsentido inverso, pero carecemos <strong>de</strong> información respecto <strong>de</strong> casos enel sentido que Ud. expone.Continúa observando que: “10. El proyecto <strong>de</strong>sincentiva la creatividad<strong>de</strong> la industria peruana <strong>de</strong> <strong>software</strong>, que factura US$ 40 millones/año,exporta US$ 4 millones (10.º. en el ranking <strong>de</strong>productos <strong>de</strong> exportación no tradicion<strong>al</strong>, más que artesanías) y esuna fuente <strong>de</strong> empleo <strong>al</strong>tamente c<strong>al</strong>ificado. Con una ley que incentiveel uso <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto, los programadores <strong>de</strong><strong>software</strong> pier<strong>de</strong>n sus <strong>de</strong>rechos <strong>de</strong> propiedad intelectu<strong>al</strong> y su princip<strong>al</strong>fuente <strong>de</strong> retribución.”Está claro por <strong>de</strong>más que nadie está obligado a comerci<strong>al</strong>izar su códigocomo <strong>software</strong> <strong>libre</strong>. Tan sólo <strong>de</strong>berá tener en cuenta que, si nolo hace, no podrá ven<strong>de</strong>rle <strong>al</strong> sector público. Éste, por otra parte, noANOTACIONES193


© FUOC • XP06/M2101/01492Software <strong>libre</strong>constituye el princip<strong>al</strong> mercado para la industria nacion<strong>al</strong> <strong>de</strong> <strong>software</strong>.Líneas arriba hemos abordado <strong>al</strong>gunas cuestiones referidas <strong>al</strong>a influencia <strong>de</strong>l proyecto en la generación <strong>de</strong> empleo técnico <strong>al</strong>tamentec<strong>al</strong>ificado y en mejores condiciones <strong>de</strong> competitividad, por loque parece innecesario insistir aquí en el punto.Lo que sigue en su afirmación es erróneo. Por un lado, ningún autor<strong>de</strong> <strong>software</strong> <strong>libre</strong> pier<strong>de</strong> sus <strong>de</strong>rechos <strong>de</strong> propiedad intelectu<strong>al</strong>, a menosque por su expresa voluntad <strong>de</strong>see colocar su obra en el dominiopúblico. El movimiento <strong>de</strong>l <strong>software</strong> <strong>libre</strong> siempre ha sido extremadamenterespetuoso <strong>de</strong> la propiedad intelectu<strong>al</strong>, y ha generado reconocimientopúblico extenso a los autores. Nombres como el <strong>de</strong>Richard St<strong>al</strong>lman, Linus Torv<strong>al</strong>ds, Guido van Rossum, Larry W<strong>al</strong>l, Miguel<strong>de</strong> Icaza, Andrew Tridgell, Theo <strong>de</strong> Raadt, Andrea Arcangeli,Bruce Perens, Darren Reed, Alan Cox, Eric Raymond, y muchos otros,son mundi<strong>al</strong>mente reconocidos por sus contribuciones <strong>al</strong> <strong>de</strong>sarrollo<strong>de</strong> <strong>software</strong> que hoy es utilizado por millones <strong>de</strong> personas en todo elmundo, en tanto los nombres <strong>de</strong> los autores materi<strong>al</strong>es <strong>de</strong> excelentespiezas <strong>de</strong> <strong>software</strong> propietario permanecen en el anonimato. Porotra parte, afirmar que las reg<strong>al</strong>ías por <strong>de</strong>rechos <strong>de</strong> autor constituyenla princip<strong>al</strong> fuente <strong>de</strong> retribución <strong>de</strong> los programadores peruanos esen todo caso aventurado, en particular porque no se ha aportadoninguna prueba <strong>al</strong> efecto ni una <strong>de</strong>mostración <strong>de</strong> cómo el empleo <strong>de</strong><strong>software</strong> <strong>libre</strong> por el Estado influiría en estas retribuciones.ANOTACIONESProsigue Ud. diciendo que: “11. El <strong>software</strong> <strong>de</strong> código abierto, <strong>al</strong>po<strong>de</strong>r ser distribuido gratuitamente, tampoco permite generar ingresospara sus <strong>de</strong>sarrolladores por medio <strong>de</strong> la exportación. Deesta forma, se <strong>de</strong>bilita el efecto multiplicador <strong>de</strong> la venta <strong>de</strong> <strong>software</strong>a otros países y por lo tanto el crecimiento <strong>de</strong> esta industria,cuando contrariamente las normas <strong>de</strong> un gobierno <strong>de</strong>ben estimularla industria loc<strong>al</strong>.”Esta afirmación <strong>de</strong>muestra nuevamente un <strong>de</strong>sconocimiento tot<strong>al</strong> <strong>de</strong>los mecanismos y el mercado <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Intenta aseverar queel mercado <strong>de</strong> cesión <strong>de</strong> <strong>de</strong>rechos no exclusivos <strong>de</strong> uso a título oneroso(venta <strong>de</strong> licencias) es el único posible para la industria informáticacuando, como Ud. mismo lo ha señ<strong>al</strong>ado párrafos arriba, nisiquiera es el más importante. El incentivo que el proyecto presenta<strong>al</strong> surgimiento <strong>de</strong> una oferta <strong>de</strong> profesion<strong>al</strong>es más c<strong>al</strong>ificados, en194


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492conjunto con el incremento <strong>de</strong> experiencia que resultará para los técnicosnacion<strong>al</strong>es el trabajar a gran esc<strong>al</strong>a con <strong>software</strong> <strong>libre</strong> en el Estado,los colocan en una posición <strong>al</strong>tamente competitiva parabrindar sus servicios <strong>al</strong> extranjero.Señ<strong>al</strong>a luego que “12. En el Foro se discutió sobre la importancia <strong>de</strong>luso <strong>de</strong> <strong>software</strong> <strong>de</strong> código abierto en la educación, sin comentar elrotundo fracaso <strong>de</strong> esta iniciativa en un país como México, en don<strong>de</strong>precisamente los funcionarios <strong>de</strong>l Estado que fundamentaron el proyectohoy expresan que el <strong>software</strong> <strong>de</strong> código abierto no permitióbrindar una experiencia <strong>de</strong> aprendizaje a <strong>al</strong>umnos en la escuela, nose contó con los niveles <strong>de</strong> capacitación a nivel nacion<strong>al</strong> para dar soportea<strong>de</strong>cuado a la plataforma, y el <strong>software</strong> no contó y no cuentacon los niveles <strong>de</strong> integración para la plataforma que existen en lasescuelas.”Efectivamente, en México se dio marcha atrás con el proyecto Red Escolar.Eso se <strong>de</strong>bió, precisamente a que los impulsores <strong>de</strong>l proyectomexicano tuvieron <strong>al</strong> coste <strong>de</strong> las licencias como princip<strong>al</strong> argumento,en vez <strong>de</strong> las otras razones estipuladas en nuestro proyecto y queson mucho más esenci<strong>al</strong>es. Debido a este error conceptu<strong>al</strong>, y comoconsecuencia <strong>de</strong> la f<strong>al</strong>ta <strong>de</strong> apoyo efectivo por parte <strong>de</strong> la SEP (Secretaría<strong>de</strong> Educación Publica) se asumió que para implementar <strong>software</strong><strong>libre</strong> en las escuelas, bastaba con quitarle a éstas elpresupuesto para <strong>software</strong> y en cambio enviarles un CD-ROM conGNU/Linux. Por cierto, esto f<strong>al</strong>ló y no podía ser <strong>de</strong> otro modo, t<strong>al</strong>como f<strong>al</strong>lan los laboratorios escolares en los que se usa <strong>software</strong>propietario si no hay presupuesto para implementación y mantenimiento.Es precisamente por eso, por lo que nuestro proyecto <strong>de</strong> leyno se limita a indicar la mandatoriedad <strong>de</strong>l uso <strong>de</strong> <strong>software</strong> <strong>libre</strong>,sino que reconoce la necesidad y or<strong>de</strong>na la creación <strong>de</strong> un plan <strong>de</strong>migración viable, en el que el Estado encamine or<strong>de</strong>nadamente latransición técnica para lograr disfrutar <strong>de</strong> las ventajas <strong>de</strong>l <strong>software</strong><strong>libre</strong>.Fin<strong>al</strong>iza Ud. con una pregunta retórica: “13. Si el <strong>software</strong> <strong>de</strong> códigoabierto satisface todos lo requerimientos <strong>de</strong> las entida<strong>de</strong>s <strong>de</strong>l Estado¿por qué se requiere <strong>de</strong> una ley para adoptarlo? ¿No <strong>de</strong>bería ser elmercado el que <strong>de</strong>cida <strong>libre</strong>mente cuáles son los productos que ledan más beneficios o v<strong>al</strong>or?”.ANOTACIONES195


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Estamos <strong>de</strong> acuerdo que en el sector privado <strong>de</strong> la economía es elmercado el que <strong>de</strong>be <strong>de</strong>cidir qué productos usar y <strong>al</strong>lí no sería admisibleninguna intromisión estat<strong>al</strong>. Pero en el caso <strong>de</strong>l sector público,el razonamiento no es el mismo: como ya establecimos, el Estado<strong>al</strong>macena, manipula y transforma información que no le pertenece,sino que le ha sido confiada por los ciudadanos que, por imperio <strong>de</strong>la ley, no tienen más <strong>al</strong>ternativa que hacerlo. Como contraparte aesa imposición leg<strong>al</strong>, el Estado <strong>de</strong>be extremar las medidas para s<strong>al</strong>vaguardarla integridad, confi<strong>de</strong>nci<strong>al</strong>idad y accesibilidad <strong>de</strong> esas informaciones.El empleo <strong>de</strong> <strong>software</strong> propietario arroja serias dudassobre el cumplimiento <strong>de</strong> estos atributos, a f<strong>al</strong>ta <strong>de</strong> evi<strong>de</strong>ncia concluyente<strong>al</strong> respecto y por lo tanto no es apto para ser usado en el sectorpúblico.La necesidad <strong>de</strong> una ley estriba, por un lado, en la materi<strong>al</strong>ización<strong>de</strong> los principios fundament<strong>al</strong>es antes enunciados en elcampo específico <strong>de</strong>l <strong>software</strong>. Por otro, en el hecho <strong>de</strong> que elEstado no es una entidad i<strong>de</strong><strong>al</strong> homogénea, sino que está compuesto<strong>de</strong> múltiples organismos con diversos grados <strong>de</strong> autonomía<strong>de</strong> <strong>de</strong>cisiones. Dado que el <strong>software</strong> propietario es inapropiadopara ser empleado, el hecho <strong>de</strong> establecer estas reglas en la leyimpedirá que la <strong>de</strong>cisión discrecion<strong>al</strong> <strong>de</strong> cu<strong>al</strong>quier funcionarioponga en riesgo la información que pertenece a los ciudadanos.Y, sobre todo, porque constituye una reafirmación actu<strong>al</strong>izadaen relación con los medios <strong>de</strong> tratamiento y comunicación <strong>de</strong> informaciónempleados hoy en día sobre el principio republicano<strong>de</strong> publicidad.ANOTACIONESConforme a este principio univers<strong>al</strong>mente aceptado, el ciudadanotiene <strong>de</strong>recho a conocer toda información en po<strong>de</strong>r <strong>de</strong>l Estadoque no esté amparada en una <strong>de</strong>claración fundada <strong>de</strong> secretoconforme a la ley. Ahora bien, el <strong>software</strong> trata información y esen sí mismo información. Información en formato especi<strong>al</strong>, susceptible<strong>de</strong> ser interpretada por una máquina para ejecutar acciones,pero sin duda información cruci<strong>al</strong> porque el ciudadano tienelegítimo <strong>de</strong>recho a saber, por ejemplo, cómo se computa su votoo se c<strong>al</strong>culan sus impuestos. Y para ello, <strong>de</strong>be po<strong>de</strong>r acce<strong>de</strong>r <strong>libre</strong>mente<strong>al</strong> código fuente y probar a su satisfacción los programasque se utilizan para el cómputo elector<strong>al</strong> o para el cálculo <strong>de</strong>sus impuestos.196


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014926.4.5. Decreto <strong>de</strong> medidas <strong>de</strong> impulso <strong>de</strong> la sociedad<strong>de</strong>l conocimiento en And<strong>al</strong>ucíaArticulado relacionado con el <strong>software</strong> <strong>libre</strong> <strong>de</strong>l <strong>de</strong>creto <strong>de</strong> medidas<strong>de</strong> impulso <strong>de</strong> la sociedad <strong>de</strong>l conocimiento en And<strong>al</strong>ucía.• Artículo 11. Materi<strong>al</strong>es educativos en soporte informático1. Se dotará a los centros docentes públicos <strong>de</strong> materi<strong>al</strong>es y programaseducativos en soporte informático, basados preferentemente en <strong>software</strong><strong>libre</strong>. En todo caso, recibirán en dicho soporte todo el materi<strong>al</strong>educativo que elabore la Administración <strong>de</strong> la Junta <strong>de</strong> And<strong>al</strong>ucía.2. Asimismo, se incentivará entre el profesorado la producción <strong>de</strong>programas y materi<strong>al</strong>es curriculares en soporte informático opara su utilización en Internet, especi<strong>al</strong>mente aquellos <strong>de</strong>sarrollosque se re<strong>al</strong>icen mediante <strong>software</strong> <strong>libre</strong>.• Articulo 31. Software <strong>libre</strong>1. En las adquisiciones <strong>de</strong> equipamiento informático <strong>de</strong>stinado a loscentros docentes públicos para su uso en activida<strong>de</strong>s educativas,se exigirá que todo el hardware sea compatible con sistemas operativosbasados en Software Libre. Los or<strong>de</strong>nadores tendránpreinst<strong>al</strong>ado todo el Software Libre necesario para el uso específico<strong>al</strong> que estén <strong>de</strong>stinados.2. El equipamiento informático que la Administración <strong>de</strong> la Junta <strong>de</strong>And<strong>al</strong>ucía ponga a disposición en los centros <strong>de</strong> acceso público a Internetutilizará para su funcionamiento productos <strong>de</strong> Software <strong>libre</strong>.3. La Administración <strong>de</strong> la Junta <strong>de</strong> And<strong>al</strong>ucía fomentará la difusión yutilización orientadas <strong>al</strong> uso person<strong>al</strong>, doméstico y educativo <strong>de</strong>l SoftwareLibre. A t<strong>al</strong> fin se establecerá un servicio <strong>de</strong> asesoramiento através <strong>de</strong> Internet para la inst<strong>al</strong>ación y uso <strong>de</strong> este tipo <strong>de</strong> productos.• Artículo 49. Objeto1. Se establecerán ayudas para el <strong>de</strong>sarrollo <strong>de</strong> proyectos innovadoresque faciliten la integración <strong>de</strong> las tecnologías <strong>de</strong> la informacióny las comunicaciones en la formación profesion<strong>al</strong> ocupacion<strong>al</strong>.ANOTACIONES197


© FUOC • XP06/M2101/01492Software <strong>libre</strong>2. Estos proyectos irán referidos a <strong>al</strong>guna <strong>de</strong> las siguientes mod<strong>al</strong>ida<strong>de</strong>s:a) Elaboración <strong>de</strong> materi<strong>al</strong>es y contenidos <strong>de</strong> formación profesion<strong>al</strong>ocupacion<strong>al</strong> para su uso y difusión a través <strong>de</strong> Internet, especi<strong>al</strong>menteaquellos <strong>de</strong>sarrollos que se re<strong>al</strong>icen mediante <strong>software</strong> <strong>libre</strong>.b) Re<strong>al</strong>ización <strong>de</strong> acciones formativas a través <strong>de</strong> metodologías innovadoras<strong>de</strong> tipo semipresenci<strong>al</strong> y a distancia.ANOTACIONES198


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014927. Ingeniería <strong>de</strong>l <strong>software</strong> <strong>libre</strong>En los capítulos anteriores se ha mostrado por qué el <strong>de</strong>safío <strong>de</strong>l <strong>software</strong><strong>libre</strong> no es el <strong>de</strong> un nuevo competidor que bajo las mismas reglasgenera <strong>software</strong> <strong>de</strong> manera más rápida, barata y <strong>de</strong> mayorc<strong>al</strong>idad: el <strong>software</strong> <strong>libre</strong> se diferencia <strong>de</strong>l <strong>software</strong> tradicion<strong>al</strong> en aspectosmás fundament<strong>al</strong>es, empezando por razones filosóficas y motivaciones,siguiendo por nuevas pautas económicas y <strong>de</strong> mercado yfin<strong>al</strong>izando con una forma <strong>de</strong> generar <strong>software</strong> diferente. La ingeniería<strong>de</strong>l <strong>software</strong> no pue<strong>de</strong> ser ajena a este suceso y <strong>de</strong>s<strong>de</strong> hace pocomás <strong>de</strong> un lustro se ha venido profundizando en la investigación <strong>de</strong>todos estos aspectos. Este capítulo preten<strong>de</strong> mostrar los estudios mássignificativos y las evi<strong>de</strong>ncias que aportan con el objetivo <strong>de</strong> ofrecer<strong>al</strong> lector una visión <strong>de</strong>l estado <strong>de</strong>l arte y <strong>de</strong> las perspectivas <strong>de</strong> futuroen lo que hemos venido a <strong>de</strong>nominar la ingeniería <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.7.1. IntroducciónAunque hace ya varias décadas que se <strong>de</strong>sarrolla <strong>software</strong> <strong>libre</strong>,sólo <strong>de</strong>s<strong>de</strong> hace unos pocos años se ha empezado a prestar atencióna sus mo<strong>de</strong>los y procesos <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista<strong>de</strong> la ingeniería <strong>de</strong>l <strong>software</strong>. Igu<strong>al</strong> que no hay un único mo<strong>de</strong>lo <strong>de</strong><strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> propietario, tampoco lo hay en el mundo <strong>de</strong>l<strong>software</strong> <strong>libre</strong>, pero aun así pue<strong>de</strong>n encontrarse interesantes característicasque comparten gran parte <strong>de</strong> los proyectos estudiados, yque podrían estar enraizadas en las propieda<strong>de</strong>s <strong>de</strong> los programas<strong>libre</strong>s.En 1997, Eric S. Raymond publicó el primer artículo ampliamentedifundido, “La catedr<strong>al</strong> y el bazar”, don<strong>de</strong> se trataba <strong>de</strong> <strong>de</strong>scribir<strong>al</strong>gunas características <strong>de</strong> los mo<strong>de</strong>los <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>,haciendo especi<strong>al</strong> énfasis en lo que diferencia estos mo<strong>de</strong>los<strong>de</strong> los <strong>de</strong> <strong>de</strong>sarrollo propietario. Este artículo se ha convertido <strong>de</strong>s<strong>de</strong>entonces en uno <strong>de</strong> los más conocidos (y criticados) <strong>de</strong>l mundoANOTACIONES199


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>de</strong>l <strong>software</strong> <strong>libre</strong>, y hasta cierto punto, en la señ<strong>al</strong> <strong>de</strong> comienzopara el <strong>de</strong>sarrollo <strong>de</strong> la ingeniería <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.7.2. “La catedr<strong>al</strong> y el bazar”Raymond establece una an<strong>al</strong>ogía entre la forma <strong>de</strong> construir las catedr<strong>al</strong>esmediev<strong>al</strong>es y la manera clásica <strong>de</strong> producir <strong>software</strong>. Argumentaque en ambos casos existe una clara distribución <strong>de</strong> tareas yroles, <strong>de</strong>stacando la existencia <strong>de</strong> un diseñador que está por encima<strong>de</strong> todo y que ha <strong>de</strong> controlar en todo momento el <strong>de</strong>sarrollo <strong>de</strong> laactividad. Asimismo, la planificación está estrictamente controlada,dando lugar a unos procesos claramente <strong>de</strong>t<strong>al</strong>lados en los que i<strong>de</strong><strong>al</strong>mentecada participante en la actividad tiene un rol específico muy<strong>de</strong>limitado.ANOTACIONESDentro <strong>de</strong> lo que Raymond toma como el mo<strong>de</strong>lo <strong>de</strong> creación <strong>de</strong> catedr<strong>al</strong>esno sólo tienen cabida los procesos pesados que po<strong>de</strong>mosencontrar en la industria <strong>de</strong>l <strong>software</strong> (el mo<strong>de</strong>lo en cascada clásico,las diferentes vertientes <strong>de</strong>l Ration<strong>al</strong> Unified Process, etc.), sino quetambién entran en él proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>, como es el caso <strong>de</strong>GNU y NetBSD. Para Raymond, estos proyectos se encuentran fuertementecentr<strong>al</strong>izados, ya que unas pocas personas son las que re<strong>al</strong>izanel diseño e implementación <strong>de</strong>l <strong>software</strong>. Las tareas que<strong>de</strong>sempeñan estas personas, así como sus roles, están perfectamente<strong>de</strong>finidos y <strong>al</strong>guien que quisiera entrar a formar parte <strong>de</strong>l equipo <strong>de</strong><strong>de</strong>sarrollo necesitaría que se le asignara una tarea y un rol según lasnecesida<strong>de</strong>s <strong>de</strong>l proyecto. Por otra parte, las entregas <strong>de</strong> este tipo <strong>de</strong>programas se encuentran espaciadas en el tiempo siguiendo unaplanificación bastante estricta. Esto supone tener pocas entregas <strong>de</strong>l<strong>software</strong> y ciclos entre las entregas largos y que constan <strong>de</strong> variasetapas.El mo<strong>de</strong>lo antagónico <strong>al</strong> <strong>de</strong> la catedr<strong>al</strong> es el bazar. Según Raymond,<strong>al</strong>gunos <strong>de</strong> los programas <strong>de</strong> <strong>software</strong> <strong>libre</strong>, en especi<strong>al</strong> el núcleo Linux,se han <strong>de</strong>sarrollado siguiendo un esquema similar <strong>al</strong> <strong>de</strong> un bazarorient<strong>al</strong>. En un bazar no existe una máxima autoridad quecontrole los procesos que se están <strong>de</strong>sarrollando ni que planifiqueestrictamente lo que ha <strong>de</strong> suce<strong>de</strong>r. Por otro lado, los roles <strong>de</strong> los200


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492participantes pue<strong>de</strong>n cambiar <strong>de</strong> manera continua (los ven<strong>de</strong>dorespue<strong>de</strong>n pasar a ser clientes) y sin indicación externa.Pero lo más novedoso <strong>de</strong> “La catedr<strong>al</strong> y el bazar” es la <strong>de</strong>scripción<strong>de</strong>l proceso que ha hecho <strong>de</strong> Linux un éxito <strong>de</strong>ntro <strong>de</strong>l mundo <strong>de</strong>l<strong>software</strong> <strong>libre</strong>; es una sucesión <strong>de</strong> buenas maneras para aprovechar<strong>al</strong> máximo las posibilida<strong>de</strong>s que ofrece la disponibilidad <strong>de</strong> códigofuente y la interactividad mediante el uso <strong>de</strong> sistemas y herramientastelemáticas.Un proyecto <strong>de</strong> <strong>software</strong> <strong>libre</strong> suele surgir a raíz <strong>de</strong> una acción puramenteperson<strong>al</strong>; la causa se ha <strong>de</strong> buscar en un <strong>de</strong>sarrolladorque vea limitada su capacidad <strong>de</strong> resolver un problema. El <strong>de</strong>sarrollador<strong>de</strong>be tener los conocimientos necesarios para, por lomenos, empezar a resolverlo. Una vez que haya conseguido tener<strong>al</strong>go usable, con <strong>al</strong>go <strong>de</strong> funcion<strong>al</strong>idad, sencillo y, a ser posible,bien diseñado o escrito, lo mejor que pue<strong>de</strong> hacer es compartiresa solución con la comunidad <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Es lo que se <strong>de</strong>nomin<strong>al</strong>a publicación temprana (release early en inglés) y quepermite llamar la atención <strong>de</strong> otras personas (gener<strong>al</strong>mente <strong>de</strong>sarrolladores)que tengan el mismo problema y que puedan estarinteresados en la solución.Uno <strong>de</strong> los principios básicos <strong>de</strong> este mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo es consi<strong>de</strong>rara los usuarios como co<strong>de</strong>sarrolladores. Ha <strong>de</strong> tratárseles conmimo, no sólo porque pue<strong>de</strong>n proporcionar publicidad mediante elboca a oreja, sino también por el hecho <strong>de</strong> que re<strong>al</strong>izarán una <strong>de</strong> lastareas más costosas que existe en la generación <strong>de</strong> <strong>software</strong>: laspruebas. Al contrario que el co<strong>de</strong>sarrollo, que es difícilmente esc<strong>al</strong>able,la <strong>de</strong>puración y las pruebas tienen la propiedad <strong>de</strong> ser <strong>al</strong>tamentepar<strong>al</strong>elizables. El usuario será el que tome el <strong>software</strong> y lo pruebe ensu máquina bajo unas condiciones específicas (una arquitectura,unas herramientas, etc.), una tarea que multiplicada por un gran número<strong>de</strong> arquitecturas y entornos supondría un gran esfuerzo para elequipo <strong>de</strong> <strong>de</strong>sarrollo.Si se trata a los usuarios como <strong>de</strong>sarrolladores, pue<strong>de</strong> darse elcaso <strong>de</strong> que <strong>al</strong>guno <strong>de</strong> ellos encuentre un error y lo solucione, enviandoun parche <strong>al</strong> <strong>de</strong>sarrollador <strong>de</strong>l proyecto para que el problemaesté solucionado en la siguiente versión. También pue<strong>de</strong>ANOTACIONES201


© FUOC • XP06/M2101/01492Software <strong>libre</strong>suce<strong>de</strong>r, por ejemplo, que una persona diferente a quien <strong>de</strong>scubraun error sea la que fin<strong>al</strong>mente lo entienda y corrija. En cu<strong>al</strong>quiercaso, todas estas circunstancias son muy provechosas parael <strong>de</strong>sarrollo <strong>de</strong>l <strong>software</strong>, por lo que es muy beneficioso entrar enuna dinámica <strong>de</strong> esta índole.Lectura complementaria[Ver bibliografía, apartado156]Esta situación se torna más efectiva con entregas frecuentes, ya quela motivación para encontrar, notificar y corregir errores es <strong>al</strong>ta <strong>de</strong>bidoa que se supone que va a ser atendido inmediatamente. A<strong>de</strong>más,se consiguen ventajas secundarias, como el hecho <strong>de</strong> que <strong>al</strong>integrar frecuentemente –i<strong>de</strong><strong>al</strong>mente una o más veces <strong>al</strong> día– nohaga f<strong>al</strong>ta una última fase <strong>de</strong> integración <strong>de</strong> los módulos que componenel programa. Esto se ha <strong>de</strong>nominado publicación frecuente(en la terminología anglosajona se conoce como release often) y posibilitauna gran modularidad a la vez que maximiza el efecto propagandísticoque tiene el hecho <strong>de</strong> publicar una nueva versión <strong>de</strong>l<strong>software</strong>.NotaANOTACIONESLectura complementaria[Ver bibliografía, apartado91]a gestión <strong>de</strong> nuevas versiones <strong>de</strong>pen<strong>de</strong> lógicamente<strong>de</strong>l tamaño <strong>de</strong>l proyecto, ya que la problemática a laque hay que enfrentarse no es igu<strong>al</strong> cuando el equipo<strong>de</strong> <strong>de</strong>sarrollo tiene dos componentes que cuando soncientos. Mientras en los proyectos pequeños en gener<strong>al</strong>este proceso es más bien inform<strong>al</strong>, la gestión <strong>de</strong>entregas en los proyectos gran<strong>de</strong>s suele seguir un proceso<strong>de</strong>finido no exento <strong>de</strong> cierta complejidad. Existeun artículo titulado Release Management Within OpenSource Projects que <strong>de</strong>scribe <strong>de</strong>t<strong>al</strong>ladamente la secuenciaque se sigue en el servidor web Apache, el núcleo<strong>de</strong>l sistema operativo Linux y el sistema <strong>de</strong>versiones Subversion.Para evitar que la publicación frecuente asuste a usuarios que prioricenla estabilidad sobre la rapi<strong>de</strong>z con la que el <strong>software</strong> evoluciona,<strong>al</strong>gunos proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> cuentan con varias ramas <strong>de</strong><strong>de</strong>sarrollo en par<strong>al</strong>elo. El caso más conocido es el <strong>de</strong>l núcleo Linux,que tiene una rama estable –dirigida a aquellas personas que estimansu fiabilidad– y otra inestable –pensada para <strong>de</strong>sarrolladores–con las últimas innovaciones y noveda<strong>de</strong>s.202


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014927.3. Li<strong>de</strong>razgo y toma <strong>de</strong> <strong>de</strong>cisiones en el bazarRaymond supone que todo proyecto <strong>de</strong> <strong>software</strong> <strong>libre</strong> ha <strong>de</strong> contarcon un dictador benevolente, una especie <strong>de</strong> lí<strong>de</strong>r –que gener<strong>al</strong>mentecoinci<strong>de</strong> con el fundador <strong>de</strong>l proyecto– que ha <strong>de</strong> guiar el proyectoy que se reserva siempre la última p<strong>al</strong>abra en la toma <strong>de</strong> <strong>de</strong>cisiones.Las habilida<strong>de</strong>s con las que ha <strong>de</strong> contar esta persona son princip<strong>al</strong>mentelas <strong>de</strong> saber motivar y coordinar un proyecto, enten<strong>de</strong>r a losusuarios y co<strong>de</strong>sarrolladores, buscar consensos e integrar a todoaquel que pueda aportar <strong>al</strong>go <strong>al</strong> proyecto. Como se pue<strong>de</strong> observar,entre los requisitos más importantes no se ha mencionado el que seatécnicamente competente, aunque nunca está <strong>de</strong> más.Con el crecimiento en tamaño y en número <strong>de</strong> <strong>de</strong>sarrolladores <strong>de</strong> <strong>al</strong>gunosproyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> han ido apareciendo nuevas formas<strong>de</strong> organizar la toma <strong>de</strong> <strong>de</strong>cisiones. Linux, por ejemplo, cuentacon una estructura jerárquica basada en la <strong>de</strong>legación <strong>de</strong> responsabilida<strong>de</strong>spor parte <strong>de</strong> Linus Torv<strong>al</strong>ds, el dictador benevolente. Deeste modo, vemos cómo hay partes <strong>de</strong> Linux que cuentan con suspropios dictadores benevolentes, aunque éstos vean limitado su po<strong>de</strong>rpor el hecho <strong>de</strong> que Linus Torv<strong>al</strong>ds sea el que <strong>de</strong>cida en últimotérmino. Este caso es un ejemplo claro <strong>de</strong> cómo la <strong>al</strong>ta modularida<strong>de</strong>xistente en un proyecto <strong>de</strong> <strong>software</strong> <strong>libre</strong> ha propiciado una forma<strong>de</strong> organización y toma <strong>de</strong> <strong>de</strong>cisiones específica.NotaExisten voces que dicen que la forma <strong>de</strong> organizarse<strong>de</strong>ntro <strong>de</strong> los proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> se asemeja <strong>al</strong>a <strong>de</strong>l equipo quirúrgico propuesta por Harlan Mills(<strong>de</strong> IBM) a principios <strong>de</strong> la década <strong>de</strong> los setenta y popularizadapor Brooks en su mítico libro The Mythic<strong>al</strong>Man-Month. Aunque se pue<strong>de</strong>n dar casos don<strong>de</strong> elequipo <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>al</strong>guna aplicación <strong>de</strong> <strong>software</strong><strong>libre</strong> esté formado por un diseñador-<strong>de</strong>sarrolladorprincip<strong>al</strong> (el cirujano) y por muchos co<strong>de</strong>sarrolladoresque re<strong>al</strong>izan tareas auxiliares (administración <strong>de</strong> sistemas,mantenimiento, tareas especi<strong>al</strong>izadas, documentación,etc.), no existe en ningún caso unaseparación tan estricta y <strong>de</strong>finida como propone Mills/Brooks. En cu<strong>al</strong>quier caso, como bien apunta BrooksLectura complementaria[Ver bibliografía, apartado130]ANOTACIONES203


© FUOC • XP06/M2101/01492Software <strong>libre</strong>en el caso <strong>de</strong>l equipo quirúrgico, en el <strong>software</strong> <strong>libre</strong>el número <strong>de</strong> <strong>de</strong>sarrolladores que tienen que comunicarsepara crear un sistema gran<strong>de</strong> y complejo es másreducido que el número tot<strong>al</strong> <strong>de</strong> <strong>de</strong>sarrolladores.En el caso <strong>de</strong> Fundación Apache nos encontramos con una meritocracia,ya que cuenta con un comité <strong>de</strong> directores formado por personasque han contribuido <strong>de</strong> manera notable <strong>al</strong> proyecto. Enre<strong>al</strong>idad, no se trata <strong>de</strong> una rigurosa meritocracia en la que los quemás contribuyen son los que gobiernan, ya que el comité <strong>de</strong> directoreses elegido <strong>de</strong>mocrática y periódicamente por los miembros <strong>de</strong> laFundación Apache (que se encarga <strong>de</strong> gestionar varios proyectos <strong>de</strong><strong>software</strong> <strong>libre</strong>, entre ellos Apache, Jakarta, etc.). Para llegar a sermiembro <strong>de</strong> la Fundación Apache, se <strong>de</strong>ben haber re<strong>al</strong>izado aportaciones<strong>de</strong> forma continuada e importante a uno o varios proyectos<strong>de</strong> la fundación. Este sistema también es utilizado en otros proyectosgran<strong>de</strong>s, como es el caso <strong>de</strong> FreeBSD o GNOME.ANOTACIONESLectura complementaria[Ver bibliografía, apartado69]Otro caso interesante <strong>de</strong> organización form<strong>al</strong> es el GCC SteeringCommitee. Fue creado en 1998 para evitar que nadie se hiciera conel control <strong>de</strong>l proyecto GCC (GNU Compiler Collection, el sistema<strong>de</strong> compilación <strong>de</strong> GNU) y refrendado por la FSF (promotora <strong>de</strong>lproyecto GNU) pocos meses <strong>de</strong>spués. En cierto sentido es un comitécontinuador <strong>de</strong> la tradición <strong>de</strong> uno similar que había en el proyectoegcs (que durante un tiempo fue par<strong>al</strong>elo <strong>al</strong> proyecto GCC, pero mástar<strong>de</strong> se unió a éste). Su misión fundament<strong>al</strong> es asegurarse <strong>de</strong> que elproyecto GCC respeta la Declaración <strong>de</strong> objetivos (Mission Statement)<strong>de</strong>l proyecto. Los miembros <strong>de</strong>l comité lo son a título person<strong>al</strong>,y son elegidos por el propio proyecto <strong>de</strong> forma que representen, concierta fi<strong>de</strong>lidad, a las diferentes comunida<strong>de</strong>s que colaboran en el<strong>de</strong>sarrollo <strong>de</strong> GCC (<strong>de</strong>sarrolladores <strong>de</strong> soporte para diversos lenguajes,<strong>de</strong>sarrolladores relacionados con el kernel, grupos interesadosen programación empotrada, etc.).El li<strong>de</strong>razgo <strong>de</strong> un proyecto <strong>de</strong> <strong>software</strong> <strong>libre</strong> por parte <strong>de</strong> una mismapersona no tiene por qué ser eterno. Se pue<strong>de</strong>n dar básicamente doscircunstancias por las que un lí<strong>de</strong>r <strong>de</strong> proyecto <strong>de</strong>je <strong>de</strong> serlo. La primera<strong>de</strong> ellas es la f<strong>al</strong>ta <strong>de</strong> interés, tiempo o motivación para seguira<strong>de</strong>lante. En ese caso, se ha <strong>de</strong> pasar el testigo a otro <strong>de</strong>sarrollador204


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492que tome el rol <strong>de</strong> lí<strong>de</strong>r <strong>de</strong>l proyecto. Estudios recientes <strong>de</strong>muestranque en gener<strong>al</strong> los proyectos suelen tener un li<strong>de</strong>razgo que cambia <strong>de</strong>manos con frecuencia, pudiéndose observar varias generaciones <strong>de</strong><strong>de</strong>sarrolladores en el tiempo. El segundo caso es más problemático:se trata <strong>de</strong> una bifurcación. Las licencias <strong>de</strong> <strong>software</strong> <strong>libre</strong> permitentomar el código, modificarlo y redistribuirlo por cu<strong>al</strong>quier personasin que haga f<strong>al</strong>ta el visto bueno <strong>de</strong>l lí<strong>de</strong>r <strong>de</strong>l proyecto. Esto no sesuele dar <strong>de</strong> manera gener<strong>al</strong>, s<strong>al</strong>vo en los casos en los que se hagacon el fin <strong>de</strong> evitar <strong>de</strong>liberadamente precisamente <strong>al</strong> lí<strong>de</strong>r <strong>de</strong>l proyecto(y un posible veto suyo a la aportación). Estamos ciertamente anteuna especie <strong>de</strong> golpe <strong>de</strong> Estado, por otro lado tot<strong>al</strong>mente lícito y legítimo.Es por ello que uno <strong>de</strong> los objetivos que busca un lí<strong>de</strong>r <strong>de</strong> proyecto<strong>al</strong> mantener satisfechos a sus co<strong>de</strong>sarrolladores es minimizarla posibilidad <strong>de</strong> que exista una bifurcación.7.4. Procesos en el <strong>software</strong> <strong>libre</strong>Aunque el <strong>software</strong> <strong>libre</strong> no está necesariamente asociado con unproceso <strong>de</strong> <strong>de</strong>sarrollo <strong>software</strong> específico, existe una amplio consensosobre los procesos más comunes que se utilizan. Esto no quiere<strong>de</strong>cir que no existan proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> que hayan sido creadosutilizando procesos clásicos como el mo<strong>de</strong>lo en cascada. Gener<strong>al</strong>mente,el mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo en proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>suele ser más inform<strong>al</strong>, <strong>de</strong>bido a que gran parte <strong>de</strong>l equipo <strong>de</strong> <strong>de</strong>sarrollore<strong>al</strong>iza esas tareas <strong>de</strong> manera voluntaria y sin recompensaeconómica, <strong>al</strong> menos directa, a cambio.La forma como se capturan requisitos en el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong><strong>de</strong>pen<strong>de</strong> tanto <strong>de</strong> la edad como <strong>de</strong>l tamaño <strong>de</strong>l proyecto. En las primerasetapas, fundador <strong>de</strong> proyecto y usuario suelen coincidir enuna misma persona. Más a<strong>de</strong>lante, y si el proyecto crece, la captura<strong>de</strong> requisitos suele tener lugar a través <strong>de</strong> las listas <strong>de</strong> correo electrónicoy se suele llegar a una clara distinción entre el equipo <strong>de</strong> <strong>de</strong>sarrollo–o <strong>al</strong> menos los <strong>de</strong>sarrolladores más activos– y los usuarios.Para proyectos gran<strong>de</strong>s, con muchos usuarios y muchos <strong>de</strong>sarrolladores,la captura <strong>de</strong> requisitos se hace mediante la misma herramientaque se utiliza para gestionar los errores <strong>de</strong>l proyecto. En estecaso, en vez <strong>de</strong> hablar <strong>de</strong> errores, se refieren a activida<strong>de</strong>s, aunqueel mecanismo utilizado para su gestión es idéntico <strong>al</strong> <strong>de</strong> la correcciónANOTACIONES205


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>de</strong> errores (se la clasificará según importancia, <strong>de</strong>pen<strong>de</strong>ncia, etc. yse podrá monitorizar si ha sido resuelta o no). El uso <strong>de</strong> esta herramientapara la planificación es más bien reciente, por lo que se pue<strong>de</strong>observar cómo en el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> existe una ciertaevolución <strong>de</strong>s<strong>de</strong> la carencia absoluta a un sistema centr<strong>al</strong>izado <strong>de</strong>gestión en el ámbito <strong>de</strong> la ingeniería <strong>de</strong> activida<strong>de</strong>s, aunque indudablementeéste sea bastante limitado. En cu<strong>al</strong>quier caso, no suele sercomún un documento que reúna los requisitos t<strong>al</strong> y como es norm<strong>al</strong>en el mo<strong>de</strong>lo en cascada.En cuanto <strong>al</strong> diseño glob<strong>al</strong> <strong>de</strong>l sistema, sólo los gran<strong>de</strong>s proyectossuelen tenerlo documentado <strong>de</strong> manera exhaustiva. En el resto <strong>de</strong>proyectos, lo más probable es que el o los <strong>de</strong>sarrolladores princip<strong>al</strong>essean los únicos que lo posean –a veces sólo en su mente–, o quevaya fraguándose en versiones posteriores <strong>de</strong>l <strong>software</strong>. La carencia<strong>de</strong> un diseño <strong>de</strong>t<strong>al</strong>lado no sólo implica limitaciones en cuanto a laposible reutilización <strong>de</strong> módulos, sino que también es un gran hándicapa la hora <strong>de</strong> permitir el acceso a nuevos <strong>de</strong>sarrolladores, yaque éstos se tendrán que enfrentar a un proceso <strong>de</strong> aprendizaje lentoy costoso. El diseño <strong>de</strong>t<strong>al</strong>lado, por su parte, tampoco está muy gener<strong>al</strong>izado.Su ausencia implica que se pierdan muchas posibilida<strong>de</strong>s<strong>de</strong> reutilización <strong>de</strong> código.ANOTACIONESLectura complementaria[Ver bibliografía, apartado172]La implementación es la fase en la que se concentra el mayor esfuerzopor parte <strong>de</strong> los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong>, entre otras razonesporque a ojos <strong>de</strong> los <strong>de</strong>sarrolladores es manifiestamente lamás divertida. Para ello, se suele seguir el paradigma <strong>de</strong> programaciónclásico <strong>de</strong> prueba y error hasta que se consiguen los resultadosapetecidos <strong>de</strong>s<strong>de</strong> el punto <strong>de</strong> vista subjetivo <strong>de</strong>l programador. Históricamente,es raro el caso en el que se han incluido pruebas unitariasconjuntamente con el código, aun cuando facilitarían la modificacióno inclusión <strong>de</strong> código posterior por parte <strong>de</strong> otros <strong>de</strong>sarrolladores.En el caso <strong>de</strong> <strong>al</strong>gunos proyectos gran<strong>de</strong>s, como por ejemploMozilla, existen máquinas <strong>de</strong>dicadas exclusivamente a <strong>de</strong>scargarselos repositorios que contienen el código más reciente para compilarloen diferentes arquitecturas. Los errores <strong>de</strong>tectados se notifican auna lista <strong>de</strong> correo <strong>de</strong> <strong>de</strong>sarrolladores.Sin embargo, las pruebas automáticas no están muy arraigadas. Porlo gener<strong>al</strong> serán los propios usuarios, <strong>de</strong>ntro <strong>de</strong> la gran variedad <strong>de</strong>206


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492usos, arquitecturas y combinaciones, los que las re<strong>al</strong>izarán. Esto present<strong>al</strong>a ventaja <strong>de</strong> que se par<strong>al</strong>elizan a un coste mínimo para elequipo <strong>de</strong> <strong>de</strong>sarrollo. El problema que plantea este mo<strong>de</strong>lo es cómoorganizarse para que la re<strong>al</strong>imentación por parte <strong>de</strong> los usuariosexista y resulte lo más eficiente posible.En cuanto <strong>al</strong> mantenimiento <strong>de</strong>l <strong>software</strong> en el mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong> –refiriéndonos con ello <strong>al</strong> mantenimiento <strong>de</strong> versiones antiguas–,es una tarea cuya existencia <strong>de</strong>pen<strong>de</strong> <strong>de</strong>l proyecto. En proyectosdon<strong>de</strong> se requiere una gran estabilidad, como núcleos <strong>de</strong>lsistema operativo, etc., se mantienen versiones antiguas <strong>de</strong> los mismos,ya que un cambio a una nueva versión pue<strong>de</strong> resultar traumático.Pero, por lo gener<strong>al</strong>, en la mayoría <strong>de</strong> los proyectos <strong>de</strong> <strong>software</strong><strong>libre</strong>, si se tiene una versión antigua y se encuentra un error, los <strong>de</strong>sarrolladoresno suelen ponerse a corregirlo y aconsejan utilizar laversión más mo<strong>de</strong>rna con la esperanza <strong>de</strong> que el error haya <strong>de</strong>saparecido,ya que el <strong>software</strong> ha evolucionado.7.5. Crítica a “La catedr<strong>al</strong> y el bazar”“La catedr<strong>al</strong> y el bazar” adolece <strong>de</strong> una f<strong>al</strong>ta <strong>de</strong> sistematicidad y rigoracor<strong>de</strong> con su natur<strong>al</strong>eza más bien ensayística y ciertamente pococientífica. Las críticas más frecuentes se refieren a que se está contandobásicamente una experiencia puntu<strong>al</strong> –el caso <strong>de</strong> Linux– y quese preten<strong>de</strong>n gener<strong>al</strong>izar las conclusiones para todos los proyectos<strong>de</strong> <strong>software</strong> <strong>libre</strong>. En este sentido, se pue<strong>de</strong> ver en San<strong>de</strong>ep Krishnamurthy.“Cave or community? an empiric<strong>al</strong> examination of 100 matureopen source pro-jects”. First Monday (vol. 6, núm. 7, mayo,2002), que la existencia <strong>de</strong> una comunidad tan amplia como con laque cuenta el núcleo Linux es más bien una excepción.Todavía más críticos se muestran aquellos que piensan que Linux esun ejemplo <strong>de</strong> <strong>de</strong>sarrollo siguiendo el mo<strong>de</strong>lo <strong>de</strong> las catedr<strong>al</strong>es. Argumentanque parece evi<strong>de</strong>nte que existe una cabeza pensante, o <strong>al</strong>menos una persona que tiene la máxima potestad, y un sistema jerárquicomediante <strong>de</strong>legación <strong>de</strong> responsabilida<strong>de</strong>s hasta llegar <strong>al</strong>os obreros-programadores. Asimismo, existe reparto <strong>de</strong> tareas, aunquesea <strong>de</strong> manera implícita. En Nikolai Bezroukov. “A second lookat the cathedr<strong>al</strong> and the bazaar”. First Monday (vol. 12, núm. 4, di-Lectura complementaria[Ver bibliografía, apartado139]ANOTACIONESLectura complementaria[Ver bibliografía, apartado72]207


© FUOC • XP06/M2101/01492Software <strong>libre</strong>ciembre, 1998) se va más <strong>al</strong>lá y se sostiene –no sin cierta acritud yarrogancia en la argumentación– que la metáfora <strong>de</strong>l bazar es internamentecontradictoria.Lectura complementaria[Ver bibliografía, apartados130 y 128]Otro <strong>de</strong> los puntos más criticados <strong>de</strong> “La catedr<strong>al</strong> y el bazar” es su afirmación<strong>de</strong> que la ley <strong>de</strong> Brooks que dice “agregar <strong>de</strong>sarrolladores aun proyecto <strong>de</strong> <strong>software</strong> retrasado lo retrasa aún más” no es válida enel mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. En Paul Jones. (mayo, 2000). Brook’s lawand open source: The more the merrier? se pue<strong>de</strong> leer cómo en re<strong>al</strong>idadlo que pasa es que las condiciones <strong>de</strong> entorno son diferentes y loque en un principio aparenta ser un incongruencia con la ley <strong>de</strong> Brooks,tras un estudio más exhaustivo no <strong>de</strong>ja <strong>de</strong> ser un espejismo.7.6. Estudios cuantitativosEl <strong>software</strong> <strong>libre</strong> permite ahondar en el estudio cuantitativo <strong>de</strong>l códigoy <strong>de</strong>l resto <strong>de</strong> parámetros que intervienen en su generación, dad<strong>al</strong>a accesibilidad a los mismos. Esto permite que áreas <strong>de</strong> la ingeniería<strong>de</strong>l <strong>software</strong> tradicion<strong>al</strong> –como la ingeniería <strong>de</strong>l <strong>software</strong> empírica–se puedan ver potenciadas <strong>de</strong>bido a la existencia <strong>de</strong> una ingentecantidad <strong>de</strong> información a la que se pue<strong>de</strong> acce<strong>de</strong>r sin necesidad <strong>de</strong>una fuerte intromisión en el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Los autoresestamos convencidos <strong>de</strong> que esta visión pue<strong>de</strong> ayudar enormementeen el análisis y en la comprensión <strong>de</strong> los fenómenos ligados a la generación<strong>de</strong> <strong>software</strong> <strong>libre</strong> (y <strong>de</strong> <strong>software</strong> en gener<strong>al</strong>) llegándose incluso,entre otras posibilida<strong>de</strong>s, a tener mo<strong>de</strong>los predictivos <strong>de</strong>l<strong>software</strong> que se re<strong>al</strong>imenten en tiempo re<strong>al</strong>.ANOTACIONESLectura complementaria[Ver bibliografía, apartados105, 161 y 125]La i<strong>de</strong>a que hay <strong>de</strong>trás es muy simple: dado que tenemos la posibilidad<strong>de</strong> estudiar la evolución <strong>de</strong> un número inmenso <strong>de</strong> proyectos<strong>de</strong> <strong>software</strong> <strong>libre</strong>, hagámoslo. Y es que a<strong>de</strong>más <strong>de</strong>l estado actu<strong>al</strong> <strong>de</strong>un proyecto, toda su evolución en el pasado es pública, por lo quetoda esta información <strong>de</strong>bidamente extraída, an<strong>al</strong>izada y empaquetadapue<strong>de</strong> servir como una base <strong>de</strong> conocimiento que permita ev<strong>al</strong>uarla s<strong>al</strong>ud <strong>de</strong> un proyecto, facilitar la toma <strong>de</strong> <strong>de</strong>cisiones ypronosticar complicaciones actu<strong>al</strong>es y futuras.El primer estudio cuantitativo <strong>de</strong> cierta importancia en el mundo<strong>de</strong>l <strong>software</strong> <strong>libre</strong> data <strong>de</strong> 1998, aunque fuera publicado a prin-208


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492cipios <strong>de</strong>l 2000. Su fin<strong>al</strong>idad era conocer <strong>de</strong> manera empírica laparticipación <strong>de</strong> los <strong>de</strong>sarrolladores en el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.Para ello se v<strong>al</strong>ían <strong>de</strong>l tratamiento estadístico <strong>de</strong> la asignación <strong>de</strong> autoríaque los autores suelen situar en la cabeza <strong>de</strong> los ficheros <strong>de</strong> códigofuente. Se <strong>de</strong>mostró que la participación sigue la ley <strong>de</strong> Pareto:el 80% <strong>de</strong>l código correspon<strong>de</strong> <strong>al</strong> 20% más activo <strong>de</strong> los <strong>de</strong>sarrolladores,mientras que el 80% <strong>de</strong> <strong>de</strong>sarrolladores restante tiene unaaportación <strong>de</strong> un 20% <strong>de</strong>l tot<strong>al</strong>. Muchos estudios posteriores hanconfirmado y ampliado a otras formas <strong>de</strong> participación, diferentes <strong>al</strong>a aportación <strong>de</strong> código fuente (mensajes a lista <strong>de</strong> correo, notificación<strong>de</strong> errores, incluso el número <strong>de</strong> <strong>de</strong>scargas como se pue<strong>de</strong> veren Francis Hunt; Paul Johnson. (2002). On the pareto distribution ofsourceforge projects. Technic<strong>al</strong> report, Centre for Technology Management,Cambridge University Engineering Department, Mill Lane,Cam-bridge CB2 1RX la v<strong>al</strong>i<strong>de</strong>z <strong>de</strong> este resultado.NotaEl hecho <strong>de</strong> que aparezcan muchos términos <strong>de</strong> lasciencias económicas en el estudio <strong>de</strong> ingeniería <strong>de</strong>l<strong>software</strong> <strong>libre</strong> es consecuencia <strong>de</strong>l interés que <strong>al</strong>gunoseconomistas han mostrado en los últimos tiempos enconocer y enten<strong>de</strong>r los procesos que llevan a <strong>al</strong>gunosvoluntarios a producir bienes <strong>de</strong> gran v<strong>al</strong>or sin obtenergener<strong>al</strong>mente beneficio directo a cambio. El artículomás conocido es Rishab A. Ghosh. “Cooking pot markets:an economic mo<strong>de</strong>l for the tra<strong>de</strong> in free goodsand services on theinternet”. First Monday (vol. 3,núm. 3, marzo, 1998), en el que se introduce la economía<strong>de</strong>l reg<strong>al</strong>o en Internet. En “Wikipedia. Pareto”se pue<strong>de</strong> obtener más información sobre el principio<strong>de</strong> Pareto y su gener<strong>al</strong>ización en la distribución quelleva su nombre. Asimismo, son interesantes la curva<strong>de</strong> Lorenz, que representa <strong>de</strong> manera gráfica la participaciónen el proyecto <strong>de</strong> los <strong>de</strong>sarrolladores, y el coeficiente<strong>de</strong> Gini, que se c<strong>al</strong>cula a partir <strong>de</strong> la curva <strong>de</strong>Lorenz resultando un número a partir <strong>de</strong>l cu<strong>al</strong> se pue<strong>de</strong>ver la <strong>de</strong>sigu<strong>al</strong>dad en el sistema.La herramienta que se utilizó para la re<strong>al</strong>ización <strong>de</strong> este estudio fuepublicada con una licencia <strong>libre</strong> por los autores, por lo que se ofreceLectura complementaria[Ver bibliografía, apartados103, 209, 208 y 207]ANOTACIONES209


© FUOC • XP06/M2101/01492Software <strong>libre</strong>tanto la posibilidad <strong>de</strong> reproducir sus resultados como <strong>de</strong> efectuarnuevos estudios.Lectura complementaria[Ver bibliografía, apartado138]En un estudio posterior, Koch fue más <strong>al</strong>lá y an<strong>al</strong>izó las interaccionesque se llevan a cabo en un proyecto <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Las fuentes <strong>de</strong>información eran la lista <strong>de</strong> correo y el repositorio <strong>de</strong> versiones <strong>de</strong>lproyecto GNOME. Pero el aspecto más interesante <strong>de</strong>l estudio <strong>de</strong>Koch es el análisis económico. Koch se centra en comprobar la v<strong>al</strong>i<strong>de</strong>z<strong>de</strong> predicción <strong>de</strong> costes clásicos (puntos <strong>de</strong> función, mo<strong>de</strong>lo <strong>de</strong>COCOMO, etc.) y muestra los problemas que supone su aplicación,aunque ciertamente admite que los resultados que obtiene –tomadoscon ciertas precauciones– se ajustan parci<strong>al</strong>mente a la re<strong>al</strong>idad.Concluye que el <strong>software</strong> <strong>libre</strong> necesita <strong>de</strong> métodos <strong>de</strong> estudio ymo<strong>de</strong>los propios, ya que los conocidos no se adaptan a su natur<strong>al</strong>eza.Sin embargo, resulta evi<strong>de</strong>nte que la posibilidad <strong>de</strong> obtenerpúblicamente muchos <strong>de</strong> los datos relacionados con el <strong>de</strong>sarrollo<strong>de</strong>l <strong>software</strong> <strong>libre</strong> permite ser optimistas <strong>de</strong> cara a la consecución<strong>de</strong> éstos en un futuro no muy lejano. El <strong>de</strong> Koch se pue<strong>de</strong> consi<strong>de</strong>rarel primer estudio cuantitativo completo, aun cuando ciertamenteadolece <strong>de</strong> una metodología clara y, sobre todo, <strong>de</strong> unas herramientasad hoc que permitieran comprobar sus resultados y el estudio<strong>de</strong> otros proyectos.ANOTACIONESLectura complementaria[Ver bibliografía, apartados152 y 138]Mockus y otros presentan en el año 2000 el primer estudio <strong>de</strong> proyectos<strong>de</strong> <strong>software</strong> <strong>libre</strong> que engloba la <strong>de</strong>scripción completa <strong>de</strong>l proceso<strong>de</strong> <strong>de</strong>sarrollo y <strong>de</strong> las estructuras organizativas, incluyendoevi<strong>de</strong>ncias tanto cu<strong>al</strong>itativas como cuantitativas. Utilizan para t<strong>al</strong> finla historia <strong>de</strong> cambios <strong>de</strong>l <strong>software</strong>, así como <strong>de</strong> los informes <strong>de</strong> errorpara cuantificar aspectos <strong>de</strong> la participación <strong>de</strong> <strong>de</strong>sarrolladores, eltamaño <strong>de</strong>l núcleo, la autoría <strong>de</strong> código, la productividad, la <strong>de</strong>nsidad<strong>de</strong> <strong>de</strong>fectos y los interv<strong>al</strong>os <strong>de</strong> resolución <strong>de</strong> errores. En ciertosentido, este estudio no <strong>de</strong>ja <strong>de</strong> ser un estudio <strong>de</strong> ingeniería <strong>de</strong> <strong>software</strong>clásico, con la s<strong>al</strong>vedad <strong>de</strong> que la obtención <strong>de</strong> los datos hasido re<strong>al</strong>izada íntegramente mediante la inspección semi-automática<strong>de</strong> los datos que los proyectos ofrecen públicamente en la Red. Aligu<strong>al</strong> que en Stefan Koch; Georg Schnei<strong>de</strong>r. “Results from <strong>software</strong>engineering research into open source <strong>de</strong>velopment projects usingpublic data. Diskussionspapiere zum Tätigkeitsfeld Informationsverarbeitungund Informa-tionswirtschaft”. En: H.R. Hansen; W.H.Janko (Hrsg.) (2000). Wirtschaftsuniversität Wien (núm. 22), con esteartículo no se proporcionó ninguna herramienta ni proceso automá-210


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492tico que permitiera ser reutilizada en el futuro por otros equipos <strong>de</strong>investigación.En A. David (julio, 2000). Wheeler. Estimating Linux’s size y A. David(junio, 2001). Wheeler. More than a gigabuck: Estimating gnu/Linux’sencontramos el análisis cuantitativo <strong>de</strong> las líneas <strong>de</strong> código y los lenguajes<strong>de</strong> programación utilizados en la distribución Red Hat. GonzálezBarahona y otros han seguido sus pasos en una serie <strong>de</strong>artículos <strong>de</strong>dicados a la distribución Debian (véase por ejemplo JesúsM. González-Barahona; Miguel A. Ortuño Pérez; Pedro <strong>de</strong> las HerasQuirós; José Centeno González; Vicente Matellán Olivera. (dic,2001). “Counting potatoes: The size of Debian 2.2.”. Upgra<strong>de</strong> Magazine(vol. 6, núm. II, págs. 60-66) y Jesús M. González Barahona;Gregorio Robles; Miguel A. Ortuño Pérez; Luis Ro<strong>de</strong>ro Merino; JoséCenteno González; Vicente Matellán Olivera; Eva M. Castro Barbero;Pedro <strong>de</strong> las Heras Quirós. “Anatomy of two GNU/Linux distributions”.En: Koch. Todos ellos ofrecen una especie <strong>de</strong> radiografía <strong>de</strong>estas dos populares distribuciones <strong>de</strong> GNU/Linux re<strong>al</strong>izadas a partir<strong>de</strong> los datos que aporta una herramienta que cuenta el número <strong>de</strong>líneas físicas (las líneas <strong>de</strong> código que no son ni líneas en blanco nicomentarios) <strong>de</strong> un programa. Aparte <strong>de</strong>l espectacular resultado enlíneas <strong>de</strong> código tot<strong>al</strong>es (la última versión estable hasta el momento,Debian 3.0 –conocida como Woody– supera los cien millones <strong>de</strong> líneas<strong>de</strong> código), se pue<strong>de</strong> ver la distribución <strong>de</strong>l número <strong>de</strong> líneasen cada lenguaje <strong>de</strong> programación. La posibilidad <strong>de</strong> estudiar laevolución <strong>de</strong> las diferentes versiones <strong>de</strong> Debian en el tiempo aporta<strong>al</strong>gunas evi<strong>de</strong>ncias interesantes. Cabe mencionar que el tamañomedio <strong>de</strong> los paquetes permanece prácticamente constante a lo largo<strong>de</strong> los últimos cinco años, por lo que la ten<strong>de</strong>ncia natur<strong>al</strong> <strong>de</strong> lospaquetes a ir creciendo se ve neutr<strong>al</strong>izada por la inclusión <strong>de</strong> paquetesmás pequeños. Por otro lado, se pue<strong>de</strong> percibir cómo la importancia<strong>de</strong>l lenguaje <strong>de</strong> programación C, todavía predominante,<strong>de</strong>crece con el tiempo, mientras que lenguajes <strong>de</strong> guión (Python, PHPy Perl) y Java contabilizan un crecimiento explosivo. Los lenguajescompilados clásicos (Pasc<strong>al</strong>, Ada, Modula, etc.) se encuentran en clararecesión. Fin<strong>al</strong>mente, estos artículos incluyen un apartado <strong>de</strong>dicadoa mostrar los resultados obtenidos si se aplica el mo<strong>de</strong>loCOCOMO –un mo<strong>de</strong>lo <strong>de</strong> estimación <strong>de</strong> esfuerzos clásico que data<strong>de</strong> principios <strong>de</strong> la década <strong>de</strong> los ochenta y que se utiliza en proyectos<strong>de</strong> <strong>software</strong> propietario– para re<strong>al</strong>izar una estimación <strong>de</strong> esfuerzo,duración <strong>de</strong>l proyecto y costes.Lectura complementaria[Ver bibliografía, apartados204, 205, 108, 70 y 74]ANOTACIONES211


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Aunque son precursores, la mayoría <strong>de</strong> los estudios presentados eneste apartado están bastante limitados a los proyectos que an<strong>al</strong>izan.La metodología que se ha usado se ajusta <strong>al</strong> proyecto en estudio, esparci<strong>al</strong>mente manu<strong>al</strong> y en contadas ocasiones la parte automatizadapue<strong>de</strong> ser utilizada <strong>de</strong> forma gener<strong>al</strong> con el resto <strong>de</strong> proyectos <strong>de</strong><strong>software</strong> <strong>libre</strong>. Esto supone que el esfuerzo que hay que re<strong>al</strong>izar paraestudiar un nuevo proyecto es muy gran<strong>de</strong>, ya que se ha <strong>de</strong> volver aadaptar el método utilizado y repetir las acciones manu<strong>al</strong>es que sehan llevado a cabo.Lectura complementaria[Ver bibliografía, apartados175, 102 y 68]Por esta razón, los últimos esfuerzos se centran en crear una infraestructura<strong>de</strong> análisis que integre varias herramientas <strong>de</strong> manera quese automatice el proceso <strong>al</strong> máximo. Existen dos motivaciones bastanteevi<strong>de</strong>ntes para hacerlo así: la primera es que una vez que seha invertido mucho tiempo y esfuerzo en crear una herramienta paraan<strong>al</strong>izar un proyecto –haciendo especi<strong>al</strong> hincapié en que sea genérica–,utilizarla para otros proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> implica un esfuerzomínimo. Por otro lado, el análisis mediante una serie <strong>de</strong>herramientas que an<strong>al</strong>izan los programas <strong>de</strong>s<strong>de</strong> diferentes puntos <strong>de</strong>vista –a veces complementarios, otras veces no– permite obtener unamayor perspectiva <strong>de</strong>l proyecto. En Jesús M. González Barahona;Gregorio Robles. Libre <strong>software</strong> engineering web site se pue<strong>de</strong>n seguircon mayor <strong>de</strong>tenimiento estas iniciativas.7.7. Trabajo futuroANOTACIONESDespués <strong>de</strong> presentar la breve pero intensa historia <strong>de</strong> la ingeniería<strong>de</strong>l <strong>software</strong> aplicada <strong>al</strong> <strong>software</strong> <strong>libre</strong>, po<strong>de</strong>mos afirmar que la ingeniería<strong>de</strong>l <strong>software</strong> <strong>libre</strong> se encuentra todavía dando sus primerospasos. Quedan varios aspectos <strong>de</strong> gran importancia pendientes <strong>de</strong>ser estudiados y examinados minuciosamente para dar con un mo<strong>de</strong>loque explique, <strong>al</strong> menos en parte, cómo se genera <strong>software</strong> <strong>libre</strong>.Las cuestiones que se han <strong>de</strong> afrontar en un futuro próximo son: laclasificación <strong>de</strong> los proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>, la creación <strong>de</strong> unametodología basada en lo posible en elementos <strong>de</strong> análisis automáticosy la utilización <strong>de</strong> los conocimientos adquiridos para la re<strong>al</strong>ización<strong>de</strong> mo<strong>de</strong>los que permitan enten<strong>de</strong>r el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong><strong>libre</strong>, a la vez que facilite la toma <strong>de</strong> <strong>de</strong>cisiones a partir a la experienciaadquirida.212


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Un aspecto que tampoco se <strong>de</strong>be <strong>de</strong>jar <strong>de</strong> lado, y que ya se estáabordando en la actu<strong>al</strong>idad, es la ev<strong>al</strong>uación <strong>de</strong> la v<strong>al</strong>i<strong>de</strong>z <strong>de</strong> losmétodos <strong>de</strong> ingeniería clásica en el campo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en todaslas intensificaciones <strong>de</strong> la ingeniería <strong>de</strong>l <strong>software</strong>. Así, por ejemplo,las leyes <strong>de</strong> la evolución <strong>de</strong>l <strong>software</strong> postuladas por Lehman aprincipios <strong>de</strong> la década <strong>de</strong> los setenta y actu<strong>al</strong>izadas y aumentadasen los ochenta y noventa parece que no se cumplen incondicion<strong>al</strong>menteen el <strong>de</strong>sarrollo <strong>de</strong> <strong>al</strong>gunos proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong>.Lectura complementaria[Ver bibliografía, apartados144 y 178]En la actu<strong>al</strong>idad, una <strong>de</strong> las <strong>de</strong>ficiencias más importantes es la f<strong>al</strong>ta<strong>de</strong> una clasificación estricta <strong>de</strong>l <strong>software</strong> <strong>libre</strong> que permita cat<strong>al</strong>ogarlos proyectos en diferentes categorías. A día <strong>de</strong> hoy, los criterios <strong>de</strong>clasificación son <strong>de</strong>masiado burdos, incluyendo en el mismo saco aproyectos cuyas características organizativas, técnicas o <strong>de</strong> cu<strong>al</strong>quierotra índole son muy dispares. El argumento <strong>de</strong> que Linux, con unaamplia comunidad <strong>de</strong> <strong>de</strong>sarrolladores y un gran número, tiene unanatur<strong>al</strong>eza diferente y no se comporta <strong>de</strong> idéntica manera que unproyecto mucho más limitado en número <strong>de</strong> <strong>de</strong>sarrolladores y usuarios,es muy acertado. En cu<strong>al</strong>quier caso, una clasificación más exhaustivapermitiría reutilizar la experiencia adquirida en proyectossimilares (léase con características parecidas), facilitaría las predicciones,posibilitaría el pronóstico <strong>de</strong> riesgos, etc.El segundo aspecto importante <strong>al</strong> que <strong>de</strong>be enfrentarse la ingeniería<strong>de</strong>l <strong>software</strong> <strong>libre</strong>, muy ligado <strong>al</strong> punto anterior y a las ten<strong>de</strong>ncias actu<strong>al</strong>es,es la creación <strong>de</strong> una metodología y <strong>de</strong> herramientas que lasoporten. Una metodología clara y concisa permitirá estudiar todoslos proyectos con el mismo rasero, averiguar su estado actu<strong>al</strong>, conocersu evolución y, por supuesto, clasificarlos. Las herramientas sonesenci<strong>al</strong>es a la hora <strong>de</strong> abordar este problema, ya que, una vez creadas,permiten tener <strong>al</strong> <strong>al</strong>cance <strong>de</strong> la mano el análisis <strong>de</strong> miles <strong>de</strong> proyectoscon un mínimo esfuerzo adicion<strong>al</strong>. Uno <strong>de</strong> los objetivos <strong>de</strong> laingeniería <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es que a partir <strong>de</strong> un número limitado<strong>de</strong> parámetros que indiquen dón<strong>de</strong> encontrar en la Red informaciónsobre el proyecto (la dirección <strong>de</strong>l repositorio <strong>de</strong> versiones <strong>de</strong>l <strong>software</strong>,el lugar don<strong>de</strong> se <strong>al</strong>macenan los archivos <strong>de</strong> las listas <strong>de</strong> correo-e,la loc<strong>al</strong>ización <strong>de</strong>l sistema <strong>de</strong> gestión <strong>de</strong> errores y una mínimaencuesta) se pueda re<strong>al</strong>izar un estudio exhaustivo <strong>de</strong>l proyecto. A losgestores <strong>de</strong>l proyecto sólo les separaría un botón <strong>de</strong> un análisis completo,una especie <strong>de</strong> análisis clínico que permita juzgar la s<strong>al</strong>ud <strong>de</strong>lANOTACIONES213


© FUOC • XP06/M2101/01492Software <strong>libre</strong>proyecto que a la vez incluya una indicación sobre los aspectos quenecesitan ser mejorados.Lectura complementaria[Ver bibliografía, apartado64]Una vez que se consigan métodos, clasificación y mo<strong>de</strong>los, las posibilida<strong>de</strong>sque ofrece la simulación y, siendo más concretos, los agentesinteligentes, pue<strong>de</strong>n ser enormes. Habida cuenta <strong>de</strong> que partimos<strong>de</strong> un sistema cuya complejidad es notoria, resulta interesante lacreación <strong>de</strong> mo<strong>de</strong>los dinámicos en los que los diferentes entes queparticipan en la generación <strong>de</strong> <strong>software</strong> puedan ser mo<strong>de</strong>lados. Evi<strong>de</strong>ntemente,cuanto más sepamos <strong>de</strong> los diferentes elementos, másajustado a la re<strong>al</strong>idad será el mo<strong>de</strong>lo. Aunque se conocen variaspropuestas <strong>de</strong> simulaciones para el <strong>software</strong> <strong>libre</strong>, éstas son bastantesimples e incompletas. En cierta medida, esto se <strong>de</strong>be a que todavíaexiste una gran laguna <strong>de</strong> conocimiento con respecto a las interaccionesque tienen lugar en la generación <strong>de</strong> <strong>software</strong> <strong>libre</strong>. Si se consigueempaquetar y procesar convenientemente la información <strong>de</strong>los proyectos a través <strong>de</strong> toda su historia, los agentes pue<strong>de</strong>n ser cruci<strong>al</strong>espara conocer cómo será la evolución en el futuro. Aunque existenmuchas propuestas sobre cómo se ha <strong>de</strong> enfocar este problema,una <strong>de</strong> las más avanzadas por ahora se pue<strong>de</strong> encontrar en I. Antonia<strong>de</strong>s;I. Samoladas; I. Stamelos; G.L. Bleris. “Dynamic<strong>al</strong> simulationmo<strong>de</strong>ls of the open source <strong>de</strong>velopment process”. En: Koch.7.8. ResumenANOTACIONESEn resumen, en este capítulo hemos podido ver cómo la ingeniería<strong>de</strong>l <strong>software</strong> <strong>libre</strong> es un campo joven y todavía por explorar. Sus primerospasos se <strong>de</strong>ben a escritos ensayísticos en los que se proponía–no sin cierta f<strong>al</strong>ta <strong>de</strong> rigor científico– un mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo máseficiente, pero paulatinamente se ha ido progresando en el estudiosistemático <strong>de</strong>l <strong>software</strong> <strong>libre</strong> <strong>de</strong>s<strong>de</strong> una óptica <strong>de</strong> ingeniería. En laactu<strong>al</strong>idad, tras varios años <strong>de</strong> informes y estudios <strong>de</strong> proyectos <strong>libre</strong>scuantitativos y cu<strong>al</strong>itativos completos, se está re<strong>al</strong>izando unenorme esfuerzo en la consecución <strong>de</strong> una infraestructura glob<strong>al</strong> quepermita la clasificación, el análisis y la mo<strong>de</strong>lización <strong>de</strong> los proyectosen un espacio <strong>de</strong> tiempo limitado y <strong>de</strong> manera parci<strong>al</strong>mente automática.Cuando el análisis <strong>de</strong> los proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> <strong>de</strong>je <strong>de</strong>ser tan costoso en tiempo y en esfuerzo como lo es hoy en día, es muyprobable que se abra una nueva etapa en la ingeniería <strong>de</strong>l <strong>software</strong>214


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492<strong>libre</strong>, en la que entrarán en escena otro tipo <strong>de</strong> técnicas, cuyo propósitoprincip<strong>al</strong> se sitúe en torno a la predicción <strong>de</strong> la evolución <strong>de</strong>l<strong>software</strong> y en el pronóstico <strong>de</strong> posibles complicaciones.ANOTACIONES215


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014928. Entornos y tecnologías <strong>de</strong> <strong>de</strong>sarrolloAquí se hace una introducción a las tecnologías y entornos utilizadoshabitu<strong>al</strong>mente para el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> <strong>libre</strong>, y <strong>al</strong> impacto queejercen sobre la gestión y evolución <strong>de</strong> los proyectos.8.1. Caracterización <strong>de</strong> entornos, herramientasy sistemasAntes <strong>de</strong> explicar herramientas concretas, vamos a hacer <strong>de</strong>finir lascaracterísticas y propieda<strong>de</strong>s gener<strong>al</strong>es que estas herramientas tienen,en función <strong>de</strong>l trabajo a re<strong>al</strong>izar y el modo <strong>de</strong> organizarse los<strong>de</strong>sarrolladores.En primer lugar, aunque no es <strong>de</strong>terminante, el entorno y las herramientas<strong>de</strong> <strong>de</strong>sarrollo, así como la máquina virtu<strong>al</strong> objetivo <strong>de</strong>berían ser a suvez <strong>libre</strong>s. Ello no fue así en un principio. En efecto, el proyecto GNU,con el objetivo <strong>de</strong> reemplazar Unix, tuvo que <strong>de</strong>sarrollarse sobre y paraUnix propietarios, hasta la aparición <strong>de</strong> los Linux y BSD <strong>libre</strong>s. Hoy día,especi<strong>al</strong>mente cuando el <strong>software</strong> <strong>libre</strong> se <strong>de</strong>sarrolla como parte <strong>de</strong> unmo<strong>de</strong>lo <strong>de</strong> negocio, se tien<strong>de</strong> a que la máquina objetivo pueda tambiénser un sistema propietario, a menudo por medio <strong>de</strong> máquinas virtu<strong>al</strong>esinterpuestas (Java, Python, PHP, etc.). En todo caso, el entorno y la máquinavirtu<strong>al</strong> han <strong>de</strong> estar suficientemente difundidas y ser lo bastanteeconómicas como para po<strong>de</strong>r reunir suficientes co<strong>de</strong>sarrolladores quedispongan <strong>de</strong> esas herramientas.En segundo lugar, también para atraer el mayor número <strong>de</strong> co<strong>de</strong>sarrolladores,las herramientas <strong>de</strong>ben ser sencillas, ampliamente conocidasy capaces <strong>de</strong> funcionar en máquinas económicas. Posiblementepor las razones anteriores, el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> es relativamenteconservador en lenguajes, herramientas y entornos.En tercer lugar, el mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo es eminentemente distribuido,con muchos colaboradores potenci<strong>al</strong>es repartidos por todo elANOTACIONES217


© FUOC • XP06/M2101/01492Software <strong>libre</strong>mundo. Esto requiere herramientas <strong>de</strong> colaboración, gener<strong>al</strong>menteasíncronas, que permitan a<strong>de</strong>más que el trabajo avance con facilidad,in<strong>de</strong>pendientemente <strong>de</strong> la cantidad y ritmo <strong>de</strong> trabajo producidopor cada colaborador, sin retrasar a nadie.Fin<strong>al</strong>mente, es conveniente proporcionar a los <strong>de</strong>sarrolladores aquellosrecursos <strong>de</strong> los que carecen, como máquinas <strong>de</strong> arquitecturas diversas,don<strong>de</strong> puedan compilar y probar sus programas.8.2. Lenguajes y herramientas asociadasLectura complementaria[Ver bibliografía, apartado182]La mayoría <strong>de</strong>l <strong>software</strong> <strong>libre</strong> está re<strong>al</strong>izado en lenguaje C, no sóloporque C es el lenguaje natur<strong>al</strong> <strong>de</strong> toda variante <strong>de</strong> Unix (plataformahabitu<strong>al</strong> <strong>de</strong>l <strong>software</strong> <strong>libre</strong>), sino por la amplia difusión <strong>de</strong>l mismo,tanto en las mentes como en las máquinas (gcc es un compilador estándarinst<strong>al</strong>ado por <strong>de</strong>fecto en casi todas las distribuciones). Precisamentepor estas razones y por su eficiencia lo recomienda St<strong>al</strong>lmanen los proyectos <strong>de</strong> GNU. Otros lenguajes que se le acercan bastanteson C++, también soportado por gcc por <strong>de</strong>fecto, y Java, con ciertasemejanza y bastante popular por permitir el <strong>de</strong>sarrollo para máquinasvirtu<strong>al</strong>es disponibles en gran variedad <strong>de</strong> plataformas. Gener<strong>al</strong>menteno se tienen en cuenta razones <strong>de</strong> ingeniería <strong>software</strong>: enSourceForge (ver apartado 8.9.1), por cada 170 proyectos en C hayuno en Ada, lenguaje supuestamente más apropiado para <strong>de</strong>sarrollarprogramas <strong>de</strong> c<strong>al</strong>idad. Del mismo modo, el inglés es la linguafranca entre los <strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong>, a pesar <strong>de</strong> que elesperanto es un idioma mucho más fácil <strong>de</strong> apren<strong>de</strong>r y con una estructuramás lógica. También son populares aquellos lenguajes interpretadosdiseñados para prototipado rápido <strong>de</strong> aplicacionesnorm<strong>al</strong>es y servicios web, como Perl, Python y PHP.ANOTACIONESLectura complementaria[Ver bibliografía, apartados30, 81, 35 y 7]Así como C es el lenguaje estándar, make es la herramienta estándar<strong>de</strong> construcción <strong>de</strong> programas, dados sus fuentes. El programador <strong>libre</strong>usará norm<strong>al</strong>mente la versión <strong>de</strong> GNU mucho más que la <strong>de</strong> incompatible<strong>de</strong> BSD. Con ellas pue<strong>de</strong> especificar árboles <strong>de</strong> <strong>de</strong>pen<strong>de</strong>ncias entreficheros y reglas para generar los ficheros <strong>de</strong>pendientes a partir <strong>de</strong>aquellos <strong>de</strong> los que <strong>de</strong>pen<strong>de</strong>n. Así, se pue<strong>de</strong> especificar que un ficheroobjeto x.o <strong>de</strong>pen<strong>de</strong> <strong>de</strong> los ficheros fuente x.c y x.h y que para construirlohay que ejecutar gcc -c x.c. O que el ejecutable <strong>de</strong> nuestro pro-218


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492grama <strong>de</strong>pen<strong>de</strong> <strong>de</strong> una colección <strong>de</strong> objetos y se monta <strong>de</strong> una<strong>de</strong>terminada manera. Cuando se modifica un código fuente y luego seejecuta make, se recompilarán solamente los módulos afectados y sevolverá a montar el objeto fin<strong>al</strong>. Es una herramienta <strong>de</strong> muy bajo nivel,ya que, por ejemplo, es incapaz <strong>de</strong> averiguar por sí mismo cuándo se<strong>de</strong>be recompilar un módulo en C, a pesar <strong>de</strong> que podría averiguarloexaminando las ca<strong>de</strong>nas <strong>de</strong> inclu<strong>de</strong>s. También es muy potente, porquepue<strong>de</strong> combinar todas las herramientas disponibles <strong>de</strong> transformación<strong>de</strong> ficheros para construir objetivos muy complejos <strong>de</strong> un proyecto multilenguaje.Pero es muy complicado y muy <strong>de</strong>pendiente <strong>de</strong> entornos tipoUnix. No obstante, <strong>al</strong>ternativas supuestamente mejores, como Jam oAnt son muy poco usadas.Dada la heterogeneidad <strong>de</strong> sistemas existentes incluso en el mundoUnix, también se usan herramientas <strong>de</strong>dicadas a ayudarnos a que nuestrosprogramas sean portátiles. Las herramientas <strong>de</strong> GNU Autoconf, Automakey Libtool facilitan estas tareas en entornos C y Unix. Dada laheterogeneidad <strong>de</strong> idiomas, juegos <strong>de</strong> caracteres y entornos cultur<strong>al</strong>es,el programador <strong>de</strong> C (y <strong>de</strong> muchos otros lenguajes), recurre a Gettext ya las facilida<strong>de</strong>s <strong>de</strong> internacion<strong>al</strong>ización <strong>de</strong> la biblioteca estándar <strong>de</strong> Cpara re<strong>al</strong>izar programas fácilmente loc<strong>al</strong>izables dinámicamente.Lectura complementaria[Ver bibliografía, apartados10, 27, 29, 26 y 28]Así, cuando nosotros recibimos un paquete fuente, lo más probablees que esté escrito en C, empaquetado con tar, comprimido con gzip,hecho portátil con autoconf y herramientas asociadas, y construiblee inst<strong>al</strong>able con make. Su inst<strong>al</strong>ación se llevará a cabo por medio <strong>de</strong>un proceso muy similar <strong>al</strong> siguiente:tar xzvf paquete-1.3.5.tar.gzcd paquete-1.3.5./configuremakemake inst<strong>al</strong>l8.3. Mecanismos básicos <strong>de</strong> colaboraciónEl <strong>software</strong> <strong>libre</strong> es un fenómeno que es posible <strong>de</strong>bido a la colaboración<strong>de</strong> comunida<strong>de</strong>s distribuidas y que, por tanto, necesitan he-ANOTACIONES219


© FUOC • XP06/M2101/01492Software <strong>libre</strong>rramientas que hagan efectiva esa colaboración. Aunque durantemucho tiempo se utilizó correo post<strong>al</strong> <strong>de</strong> cintas magnéticas, el <strong>de</strong>sarrolloágil <strong>de</strong>l <strong>software</strong> <strong>libre</strong> empezó cuando fue posible comunicarserápidamente con muchas personas y distribuirles las fuentes <strong>de</strong> losprogramas o respon<strong>de</strong>r con comentarios y parches. Por conveniencia,mejor que enviar código, en los mensajes podría difundirse informaciónsobre un sitio don<strong>de</strong> recogerlo. De hecho, muy <strong>al</strong>principio <strong>de</strong> los años setenta, el correo electrónico fue una extensión<strong>de</strong>l protocolo <strong>de</strong> transferencia <strong>de</strong> ficheros <strong>de</strong> ARPANET.En el mundo Unix, a mediados <strong>de</strong> los setenta, se <strong>de</strong>sarrolla uucp, elprotocolo <strong>de</strong> transferencia <strong>de</strong> ficheros <strong>de</strong> Unix, apto para comunicarmáquinas por líneas conmutadas, a<strong>de</strong>más <strong>de</strong> <strong>de</strong>dicadas, sobre elque se montó correo electrónico, y en 1979 el primer enlace USENETsobre UUCP. Las news (noticias) <strong>de</strong> USENET, un sistema <strong>de</strong> foro temáticoestructurado jerárquicamente y distribuido por inundación <strong>al</strong>os sitios suscritos a una jerarquía, jugaron un papel fundament<strong>al</strong> enel <strong>de</strong>sarrollo <strong>libre</strong> <strong>de</strong> <strong>software</strong>, enviándose programas completos enfuente a los grupos <strong>de</strong> la jerarquía comp.sources.ANOTACIONESLectura complementaria[Ver bibliografía, apartado38]En par<strong>al</strong>elo se <strong>de</strong>sarrollaron las listas <strong>de</strong> correo, entre las quecabe mencionar los gestores <strong>de</strong> listas <strong>de</strong> BITNET (1981). Hoy díaexiste la ten<strong>de</strong>ncia a preferir las listas <strong>de</strong> correo a los grupos <strong>de</strong>noticias tipo USENET. La razón princip<strong>al</strong> ha sido el abuso con finescomerci<strong>al</strong>es y la intrusión <strong>de</strong> gente <strong>de</strong>spistada, que introduceruido en las discusiones. A<strong>de</strong>más, en las listas <strong>de</strong> correo hay máscontrol y pue<strong>de</strong>n llegar a más gente. Los <strong>de</strong>stinatarios <strong>de</strong>ben suscribirsey cu<strong>al</strong>quier dirección <strong>de</strong> correo es válida, aunque no hayaacceso directo a Internet. El administrador <strong>de</strong> la lista pue<strong>de</strong> elegirconocer quién se suscribe o dar <strong>de</strong> baja a <strong>al</strong>guien. Pue<strong>de</strong> restringirlas contribuciones a los miembros o pue<strong>de</strong> elegir mo<strong>de</strong>rar losartículos, antes <strong>de</strong> que aparezcan, aunque no son prácticas populares.La administración <strong>de</strong> las listas se ha hecho tradicion<strong>al</strong>mentepor correo electrónico, por medio <strong>de</strong> mensajes especi<strong>al</strong>escon contraseña. Ello permite que el administrador no tenga accesopermanente a Internet, aunque cada vez es un fenómeno másraro, <strong>de</strong> modo que el gestor <strong>de</strong> listas <strong>de</strong> correo más popular hoydía, Mailman, no pue<strong>de</strong> ser administrado por correo electrónico ytiene que hacerse necesariamente vía web. Las listas <strong>de</strong> correojuegan un papel cruci<strong>al</strong> en el <strong>software</strong> <strong>libre</strong>, llegando en muchoscasos a ser el único método <strong>de</strong> contribución.220


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Hoy día, con la popularidad <strong>de</strong> la web, muchos foros son puros forosweb o weblogs, sin otra interfaz que la que se ofrece a través <strong>de</strong>l navegador.Éstos pue<strong>de</strong>n ser genéricos, como los populares SlashDot oBarraPunto, don<strong>de</strong> se anuncia nuevo <strong>software</strong> <strong>libre</strong> o se discuten noticiasrelacionadas, o especi<strong>al</strong>izados en un programa concreto, quenorm<strong>al</strong>mente están integrados en sitios <strong>de</strong> colaboración con diversasherramientas adicion<strong>al</strong>es (ver apartado 8.9). También hay interfacesweb a grupos <strong>de</strong> noticias y listas tradicion<strong>al</strong>es.Lectura complementaria[Ver bibliografía, apartados48 y 11]Asimismo, se ha hecho popular un mecanismo <strong>de</strong> colaboración basadoen wikis, sobre todo cuando se trata <strong>de</strong> elaborar un documentoconjunto, que pue<strong>de</strong> ser la especificación <strong>de</strong> un programa, móduloo sistema. Hablaremos <strong>de</strong> él en el apartado 8.5.2Fin<strong>al</strong>mente, cabe mencionar los mecanismos <strong>de</strong> interacción don<strong>de</strong>los <strong>de</strong>sarrolladores conversan en tiempo re<strong>al</strong>. Para <strong>software</strong> <strong>libre</strong> nosuele ser un mecanismo práctico porque con <strong>de</strong>sarrolladores distribuidospor todo el mundo no es fácil encontrar una hora apropiadapara todos. No obstante, hay varios proyectos que hacen uso <strong>de</strong> herramientas<strong>de</strong> charla textu<strong>al</strong>, ya sea regularmente o en congresos virtu<strong>al</strong>escon fechas acotadas. La herramienta más usada es el IRC(Internet Relay Chat), que norm<strong>al</strong>mente comunica gente por medio<strong>de</strong> can<strong>al</strong>es temáticos establecidos por medio <strong>de</strong> una serie <strong>de</strong> servidorescolaboradores. No es común que se utilicen herramientas multimedia(sonido, imagen), probablemente porque pue<strong>de</strong> requerirconexiones <strong>de</strong> c<strong>al</strong>idad no disponibles para todos, a<strong>de</strong>más <strong>de</strong> problemas<strong>de</strong> disponibilidad <strong>de</strong> <strong>software</strong> <strong>libre</strong> y la dificultad <strong>de</strong> registrar yeditar los resultados <strong>de</strong> las conversaciones, con el propósito <strong>de</strong> documentar.Lectura complementaria[Ver bibliografía, apartado131]8.4. Gestión <strong>de</strong> fuentesA todo proyecto <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> programas le conviene tener archivad<strong>al</strong>a historia <strong>de</strong>l mismo. Por ejemplo, porque <strong>al</strong>guna modificaciónpudo producir un error oculto que se <strong>de</strong>scubre tardíamente y hay querecuperar el origin<strong>al</strong>, <strong>al</strong> menos para an<strong>al</strong>izar el problema. Si el proyectolo <strong>de</strong>sarrollan varias personas, es necesario también registrar <strong>al</strong>autor <strong>de</strong> cada cambio, con las razones <strong>de</strong> éste <strong>de</strong>bidamente argumentadas.Si <strong>de</strong>l proyecto van haciéndose entregas por versiones, es nece-ANOTACIONES221


© FUOC • XP06/M2101/01492Software <strong>libre</strong>sario saber exactamente qué versiones <strong>de</strong> cada módulo forman dichasentregas. Muchas veces, un proyecto mantiene una versión estable yotra experiment<strong>al</strong>; ambas hay que mantenerlas, corregir sus errores ytransferir errores corregidos <strong>de</strong> una versión a la otra. Todo ello pue<strong>de</strong>hacerse guardando y etiquetando convenientemente todas y cada una<strong>de</strong> las versiones <strong>de</strong> los ficheros, lo que gener<strong>al</strong>mente se ha consi<strong>de</strong>radocomo un coste excesivo, aunque con los discos actu<strong>al</strong>es empiece ano ser tan cierto. Lo que norm<strong>al</strong>mente hace un sistema <strong>de</strong> control <strong>de</strong>fuentes, también llamado sistema <strong>de</strong> gestión <strong>de</strong> versiones, es registrarla historia <strong>de</strong> los ficheros como un conjunto <strong>de</strong> diferencias sobre unpatrón, norm<strong>al</strong>mente el más reciente, por eficiencia, etiquetando a<strong>de</strong>máscada diferencia con los metadatos necesarios.Pero también queremos que un sistema <strong>de</strong> éstos sirva para que muchosprogramadores colaboren efectivamente, sin pisarse el trabajo,pero sin <strong>de</strong>tener el avance <strong>de</strong> cada uno. Debe permitirnos, pues, quehaya varios programadores trabajando conjuntamente, pero con uncierto control. Este control pue<strong>de</strong> ser optimista o pesimista. Con uncontrol pesimista, un programador pue<strong>de</strong> reservarse unos ficherospara una mejora por un tiempo, durante el cu<strong>al</strong> nadie pue<strong>de</strong> tocarestos ficheros. Esto es muy seguro, pero bloqueará a otros programadoresy el proyecto pue<strong>de</strong> retrasarse, sobre todo si el que bloqueólos ficheros está ocupado en otras cosas, o incluso se olvidó <strong>de</strong> ellos.Permitir a otros avanzar es más dinámico, pero más peligroso, yaque pue<strong>de</strong> haber modificaciones incompatibles. Un sistema optimista<strong>de</strong>ja avanzar, pero nos avisa cuando ha habido conflictos y nosproporciona herramientas para resolverlos.8.4.1. CVSANOTACIONESLectura complementaria[Ver bibliografía, apartados17, 93 y 77]CVS (Concurrent Version Sytem) es un sistema <strong>de</strong> gestión <strong>de</strong> fuentesoptimista diseñado a fin<strong>al</strong>es <strong>de</strong> los ochenta, que es el usado por lainmensa mayoría en los proyectos <strong>libre</strong>s. En el entorno <strong>de</strong> <strong>software</strong><strong>libre</strong> se trabaja norm<strong>al</strong>mente con un repositorio centr<strong>al</strong> <strong>al</strong> que se acce<strong>de</strong>según un sistema cliente/servidor. El administrador <strong>de</strong>l sitio <strong>de</strong>ci<strong>de</strong>quiénes tienen acceso <strong>al</strong> repositorio o a qué partes <strong>de</strong>lrepositorio, aunque norm<strong>al</strong>mente, una vez que un <strong>de</strong>sarrollador hasido admitido en el círculo <strong>de</strong> confianza, tiene acceso a todos los ficheros.Del mismo modo, pue<strong>de</strong> permitirse un acceso anónimo, sóloen lectura, a todo el mundo.222


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492El colaborador anónimoEl CVS anónimo es una herramienta fundament<strong>al</strong> para re<strong>al</strong>izar elconcepto <strong>de</strong> entregar pronto y frecuentemente <strong>de</strong>fendido por Eric Raymond.Cu<strong>al</strong>quier usuario ansioso <strong>de</strong> probar la última versión <strong>de</strong> unprograma la pue<strong>de</strong> extraer <strong>de</strong>l CVS, <strong>de</strong>scubrir errores y reportarlos,incluso en forma <strong>de</strong> parches con la corrección. Y pue<strong>de</strong> examinar lahistoria <strong>de</strong> todo el <strong>de</strong>sarrollo.Veamos un poco <strong>de</strong> mecánica. Un usuario avanzado quiere obtenerla última versión <strong>de</strong>l módulo mod, con un repositorio accesible anónimamenteen progs.org. directorio /var/lib/cvs y protocolopserver. La primera vez <strong>de</strong>clarará su intención <strong>de</strong> acce<strong>de</strong>r:cvs -d:pserver:anonymous@progs.org:/var/lib/cvsloginNos pi<strong>de</strong> una contraseña, que será la <strong>de</strong>l usuario anónimo (norm<strong>al</strong>mente,retorno <strong>de</strong> carro), que se registrará en un fichero loc<strong>al</strong> (re<strong>al</strong>menteesta operación no es necesaria para acceso anónimo, pero elprograma se queja si no existe el fichero con la contraseña). Seguidamente,lo importante es obtener la primera copia <strong>de</strong>l módulo:cvs -d:pserver:anonymous@progs.org:/var/lib/cvs comodEsto creará un directorio mod con todos los ficheros y directorios <strong>de</strong>lmódulo y ciertos metadatos (contenidos en subdirectorios llamadosCVS), que nos permitirán, entre otras cosas, no tener que repetir lainformación ya dada. Nuestro usuario avanzado se introduce en eldirectorio creado, genera el paquete, y prueba:cd mod./configuremakemake inst<strong>al</strong>l...Cuando quiere una nueva versión, simplemente actu<strong>al</strong>iza su copia<strong>de</strong>ntro <strong>de</strong> mod.ANOTACIONES223


© FUOC • XP06/M2101/01492Software <strong>libre</strong>cd modcvs update./configuremakemake inst<strong>al</strong>l...Si resulta que <strong>de</strong>scubre un error, pue<strong>de</strong> corregirlo en el sitio y luegomandar un parche por correo electrónico <strong>al</strong> mantenedor <strong>de</strong>l programa(individu<strong>al</strong> o lista <strong>de</strong> correo):cvs diff -ubB | mail -s "Mis parches" modmaint@progs.orgEl <strong>de</strong>sarrollador norm<strong>al</strong>El <strong>de</strong>sarrollador norm<strong>al</strong> tendrá una cuenta en el servidor. Pue<strong>de</strong> usarel mismo mecanismo y protocolo que el usuario anónimo, cambiandoanonymous por el nombre <strong>de</strong> su cuenta.NotaPor seguridad, para cuentas con <strong>de</strong>recho a escritura,se suele usar ssh, que proporciona un can<strong>al</strong> autenticadoy cifrado.Una vez tiene una copia <strong>de</strong> trabajo <strong>de</strong>l módulo, pue<strong>de</strong> hacer las modificacionesnecesarias y, cuando consi<strong>de</strong>re que se han estabilizado,comprometer los cambios en el repositorio. Por ejemplo, si modific<strong>al</strong>os ficheros parte.h y parte.c, los comprometerá así:ANOTACIONEScvs ci parte.h parte.cAntes <strong>de</strong> terminar la operación, el CVS nos pedirá una explicación<strong>de</strong> lo que se hizo, que se adjuntará <strong>al</strong> histori<strong>al</strong> <strong>de</strong> ambos ficheros.Asimismo, incrementará el número <strong>de</strong> revisión <strong>de</strong> cada fichero enuna unidad. Este número i<strong>de</strong>ntifica cada momento importante en lahistoria <strong>de</strong> un fichero y pue<strong>de</strong> usarse para recuperar cada uno <strong>de</strong>esos momentos.224


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492¿Cuándo <strong>de</strong>be un <strong>de</strong>sarrollador re<strong>al</strong>izar una operación <strong>de</strong> compromiso?Ésta es una cuestión metodológica que <strong>de</strong>ben acordar losmiembros <strong>de</strong> un proyecto, pero parece obvio que no <strong>de</strong>ben comprometersecambios que no compilen. Pero es preferible que a<strong>de</strong>máspasen una batería <strong>de</strong> pruebas mínima. En muchos proyectos es necesario,asimismo, contar con la aprobación <strong>de</strong> un supervisor <strong>de</strong>proyecto o subproyecto que examine la modificación.Durante el <strong>de</strong>sarrollo <strong>de</strong> la modificación, <strong>al</strong>guien pue<strong>de</strong> haber <strong>al</strong>teradootros ficheros o incluso los mismos. Por ello, conviene queel <strong>de</strong>sarrollador haga con relativa frecuencia una operación <strong>de</strong>actu<strong>al</strong>izar su copia (cvs update). Si han modificado otros ficheros,pue<strong>de</strong> haber cambiado el entorno y f<strong>al</strong>lar pruebas que antes pasaban.Si han modificado los mismos ficheros, pue<strong>de</strong> ser en lugareso rutinas que no hemos tocado o en código que sí que hemosmodificado. En el primer caso no hay conflicto (<strong>al</strong> menos aparente)y la operación <strong>de</strong> modificación mezcla nuestra versión con la<strong>de</strong>l repositorio, generándose ficheros combinados, con todas lasmodificaciones. De lo contrario, hay conflicto, en cuyo caso hayque ponerse <strong>de</strong> acuerdo con el <strong>de</strong>sarrollador que hizo los otroscambios y acordar una versión fin<strong>al</strong>.Para i<strong>de</strong>ntificar mejor cada componente <strong>de</strong> un proyecto, es convenienteque lleve asociada directamente información <strong>de</strong> revisión. CVSpue<strong>de</strong> marcar los códigos fuentes y los objetos automáticamente,siempre y cuando observemos cierta disciplina. Por ejemplo, si en uncomentario <strong>de</strong>l código fuente escribimos la p<strong>al</strong>abra clave $Id$,cada vez que el fichero se comprometa en el repositorio, dicha p<strong>al</strong>abrase sustituirá por una ca<strong>de</strong>na <strong>de</strong> i<strong>de</strong>ntificación, don<strong>de</strong> po<strong>de</strong>mosver: nombre <strong>de</strong> fichero, número <strong>de</strong> revisión, fecha y hora <strong>de</strong>l compromiso,y autor <strong>de</strong>l mismo:$Id: parte.c,v 1.7 2003/07/11 08:20:47 joaquinExp $Si esa p<strong>al</strong>abra clave la incluimos <strong>de</strong>ntro <strong>de</strong> una ca<strong>de</strong>na <strong>de</strong> caracteres<strong>de</strong>l programa, <strong>al</strong> compilarlo la ca<strong>de</strong>na aparecerá en el objeto y elejecutable, con lo que es posible i<strong>de</strong>ntificarlo con una herramienta(i<strong>de</strong>nt).ANOTACIONES225


© FUOC • XP06/M2101/01492Software <strong>libre</strong>El administradorObviamente, los administradores son los que tienen y <strong>de</strong>ben llevarla parte más complicada <strong>de</strong>l mantenimiento <strong>de</strong>l repositorio. Porejemplo, tiene que dar <strong>de</strong> <strong>al</strong>ta el proyecto, conce<strong>de</strong>r permisos a los<strong>de</strong>sarrolladores y coordinarlos, etiquetar versiones entregadas, etc.Es práctica común que todo proyecto tenga una versión estable y otraexperiment<strong>al</strong>. Para ello se crean ramas. Mientras que los que se <strong>de</strong>dican<strong>al</strong> mantenimiento corrigen errores <strong>de</strong> la rama estable, los nuevos<strong>de</strong>sarrollos se hacen sobre la rama experiment<strong>al</strong>. Cuando éstase estabiliza, hay que pasarla a estable, no sin antes aplicar las correccioneshechas sobre la rama estable anterior. Esta operación sellama mezclar, es <strong>de</strong>licada y está soportada en CVS, aunque quizá<strong>de</strong> forma <strong>de</strong>masiado primitiva. Esta i<strong>de</strong>a pue<strong>de</strong> exten<strong>de</strong>rse <strong>al</strong> concepto<strong>de</strong> ramas experiment<strong>al</strong>es evolucionando en distintas direcciones,llegando o no a buen puerto, que en todo caso, a menos quesean vías muertas, habrá que integrar tot<strong>al</strong> o parci<strong>al</strong>mente en el productoestable, con mezclas apropiadas.Un <strong>de</strong>recho que nos da el <strong>software</strong> <strong>libre</strong> es modificar un programapara uso privado. Aunque es <strong>de</strong>seable contribuir con toda mejora <strong>al</strong>acervo comunitario, muchas veces las modificaciones que queremoshacer son <strong>de</strong>masiado específicas y no interesan <strong>al</strong> público en gener<strong>al</strong>.Pero sí que nos interesa incorporar la evolución <strong>de</strong>l programaorigin<strong>al</strong>. Esto pue<strong>de</strong> re<strong>al</strong>izarse con un tipo especi<strong>al</strong> <strong>de</strong> ramificación ymezcla (ramas <strong>de</strong> ven<strong>de</strong>dor).ANOTACIONESEl administrador también pue<strong>de</strong> facilitar la coordinación <strong>de</strong>l equipopor medio <strong>de</strong> mecanismos automáticos, como hacer que se produzcanmensajes <strong>de</strong> correo electrónico cuando ocurran ciertas cosas,por ejemplo, los compromisos. O forzar a que se re<strong>al</strong>icen ciertas accionesautomáticas antes <strong>de</strong> re<strong>al</strong>izar un compromiso, como comprobacionesautomáticas <strong>de</strong> estilo, compilaciones o pruebas.8.4.2. Otros sistemas <strong>de</strong> gestión <strong>de</strong> fuentesCVS, a pesar <strong>de</strong> ser el sistema <strong>de</strong> control <strong>de</strong> versiones más ampliamenteusado, presenta notables inconvenientes, que no han sido suficientespara sustituirlo a pesar <strong>de</strong> la necesidad manifiesta <strong>de</strong> hacerlo así.226


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492• No soporta renombramientos o cambios <strong>de</strong> directorio <strong>de</strong> ficheros,ni tampoco metadatos (propietarios, permisos, etc.) ni enlacessimbólicos.• Al ser una evolución <strong>de</strong> un sistema <strong>de</strong> control <strong>de</strong> versiones <strong>de</strong> ficherosindividu<strong>al</strong>es, no soporta natur<strong>al</strong>mente el control <strong>de</strong> versiones<strong>de</strong> grupos completos.• No soporta conjuntos <strong>de</strong> cambios coherentes. En efecto, paraañadir una característica o corregir un error, pue<strong>de</strong> ser precisocambiar varios ficheros. Estos cambios <strong>de</strong>berían ser atómicos.• En CVS es bastante complicado el uso <strong>de</strong> ramas y mezclas. En efecto,si creamos una rama experiment<strong>al</strong> <strong>de</strong> un proyecto y <strong>de</strong>seamos incluirlas correcciones hechas a la rama estable, es preciso conocer en <strong>de</strong>t<strong>al</strong>lequé correcciones se han hecho ya, para no repetirlas.• Aunque la mayoría <strong>de</strong>l trabajo pue<strong>de</strong> hacerse <strong>de</strong>sconectado <strong>de</strong>l servidor,en CVS necesitamos conexión con el mismo para cu<strong>al</strong>quieroperación que no sea trabajar con nuestra copia loc<strong>al</strong> <strong>de</strong> ficheros.• CVS no genera, sin la ayuda <strong>de</strong> herramientas aparte, el ficherochangelog, que muestra la historia glob<strong>al</strong> <strong>de</strong> cambios <strong>de</strong> unproyecto.• CVS no permite, con facilidad, utilizar herramientas arbitrarias paraver las diferencias entre versiones o para mezclar ficheros que handado lugar a conflicto. Esto pue<strong>de</strong> ser especi<strong>al</strong>mente importantepara ficheros binarios, que, aunque están soportados por CVS, tienenun soporte primitivo. Cuestión que se solucionaría si pudiéramosver las distintas versiones <strong>de</strong> los ficheros en el sistema <strong>de</strong> ficheros.• CVS carece <strong>de</strong> una interfaz gráfica, aunque existen varios visoresvía web que facilitan la navegación por las distintas versiones, sucomparación gráfica, etc.Sin embargo, existen otros sistemas <strong>libre</strong>s que solucionan varios <strong>de</strong>estos problemas. Por ejemplo, el veterano Aegis, liberado por primeravez en 1991 por Peter Miller, y casi tan veterano como CVS, peroANOTACIONESLectura complementaria[Ver bibliografía, apartados151, 3 y 123]227


© FUOC • XP06/M2101/01492Software <strong>libre</strong>poco popular, quizá porque apareció <strong>de</strong>spués, porque impone máscontroles –como la obligación a pasar las pruebas o a pasar por elrevisor <strong>de</strong> código– o porque es más difícil <strong>de</strong> inst<strong>al</strong>ar un sistema <strong>de</strong>colaboración distribuida. Otros sistemas recientes no han <strong>al</strong>canzadoel grado necesario <strong>de</strong> madurez o son complejos, poco portátiles ocon una cultura subyacente más propia <strong>de</strong>l <strong>software</strong> propietario. Vesta,por ejemplo, se integra con la generación <strong>de</strong> código en una herramientamás monolítica (sistema <strong>de</strong> gestión <strong>de</strong> configuraciones).Lectura complementaria[Ver bibliografía, apartados52, 8 y 13]Po<strong>de</strong>mos <strong>de</strong>stacar el ya <strong>de</strong>signado sucesor <strong>de</strong> CVS: Subversion, basadoen extensiones <strong>de</strong> HTTP (WebDAV), o Arch, más ambicioso, quesoporta repositorios distribuidos. Ésta es una característica muy interesante,que permite a cu<strong>al</strong>quiera tener un repositorio con una ramaprivada o pública que luego pue<strong>de</strong> mezclar o no con la ofici<strong>al</strong>. Asífunciona BitKeeper, elegido por Linus Torv<strong>al</strong>ds para mantener el núcleo<strong>de</strong> Linux, <strong>de</strong>cisión muy criticada porque el producto tiene una licenciaque permite a los proyectos <strong>libre</strong>s obtenerlo gratuitamente,siempre que todas las operaciones <strong>de</strong> compromiso <strong>de</strong> cambios consus metadatos se registren en un servidor público <strong>de</strong>signado por lospropietarios y accesible a todo el mundo, y siempre que el licenciatariono esté <strong>de</strong>sarrollando otro sistema <strong>de</strong> control <strong>de</strong> fuentes quepueda competir con él. Los argumentos para ello son: no es posibleun mo<strong>de</strong>lo <strong>de</strong> negocio <strong>de</strong> <strong>software</strong> <strong>libre</strong> basado en servicios paraeste segmento <strong>de</strong>l mercado, y no es posible <strong>de</strong>sarrollar un producto<strong>libre</strong> <strong>de</strong> tanta c<strong>al</strong>idad sin copiarle las i<strong>de</strong>as, lo que se facilita dandoacceso <strong>al</strong> producto.SugerenciaANOTACIONESPue<strong>de</strong>n verse las operaciones re<strong>al</strong>izadas sobre los códigosfuentes <strong>de</strong> Linux con BitKeeper en http://linux.bkbits.net.8.5. DocumentaciónEn el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, apenas se usan procesadores <strong>de</strong> textoWYSIWYG y otras herramientas ofimáticas que tanto éxito tienen228


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492en otros entornos, a pesar <strong>de</strong> existir ya herramientas <strong>libre</strong>s, comoOpenOffice. Ello es <strong>de</strong>bido a varios factores importantes:• Es conveniente mantener la documentación bajo control <strong>de</strong> fuentes,y los sistemas <strong>de</strong> control <strong>de</strong> fuentes, como CVS, aunque admitenformatos binarios, prefieren formatos textu<strong>al</strong>es transparentes, editablescon un editor <strong>de</strong> texto norm<strong>al</strong> y procesables con herramientas<strong>de</strong>sarrolladas para programas, que nos permitan ver fácilmentelas diferencias entre versiones, generar y aplicar parches basadosen esas diferencias y re<strong>al</strong>izar operaciones <strong>de</strong> mezcla.NotaEn Unix, las herramientas que hacen estas operacionesmás comunes son diffs, diff3, patch y merge.• Ciertas licencias <strong>de</strong> documentación <strong>libre</strong>, especi<strong>al</strong>mente la GFDL(ver apéndice A), exigen formatos transparentes, sobre todo porfacilitar el trabajo a los que re<strong>al</strong>icen documentos <strong>de</strong>rivados.• Las herramientas WYSIWYG (what you see is what you get) gener<strong>al</strong>menteno contienen más información que la estricta <strong>de</strong> visu<strong>al</strong>ización,haciendo muy difícil, si no imposible, el procesamientoautomático, como i<strong>de</strong>ntificar autores o título, y la conversión aotros formatos. Incluso aunque permitan conversión <strong>de</strong> formatos,ésta suele hacerse <strong>de</strong> forma interactiva, siendo muchas veces imposibleautomatizarla (con make, por ejemplo).• Gener<strong>al</strong>mente, las herramientas ofimáticas generan unos formatos<strong>de</strong> ficheros muy voluminosos, asunto muy <strong>de</strong>sagradable par<strong>al</strong>os <strong>de</strong>sarrolladores o los repositorios.Por todo ello el programador <strong>libre</strong>, acostumbrado también a programary compilar, prefiere formatos <strong>de</strong> documentación transparentes,en muchos casos simple texto puro, en muchos otros formatos <strong>de</strong> documentaciónprocesables.Los formatos procesables utilizados no son muchos. Tradicion<strong>al</strong>mente,en el mundo Unix los programas se han documentado en los formatosesperados por la familia <strong>de</strong> procesadores roff, con versión<strong>libre</strong> <strong>de</strong> Norman W<strong>al</strong>sh. No obstante, esta práctica se ha ido aban-ANOTACIONESLectura complementaria[Ver bibliografía, apartados31, 53 y 136]229


© FUOC • XP06/M2101/01492Software <strong>libre</strong>donando, excepto para las páginas <strong>de</strong> manu<strong>al</strong> tradicion<strong>al</strong>es, ya quees casi obligado preparar páginas <strong>de</strong> manu<strong>al</strong> para las herramientasmás básicas <strong>de</strong>l sistema. Debido a que muchas páginas <strong>de</strong> manu<strong>al</strong>han crecido excesivamente, <strong>de</strong> modo que difícilmente se les pue<strong>de</strong>llamar páginas, fue necesario elaborar un formato <strong>al</strong>ternativo hipertextu<strong>al</strong>,que permitiera seguir documentos estructurados con índicesy referencias cruzadas. El proyecto GNU diseñó el formato texinfo ylo convirtió en su estándar. Este formato permite obtener documentosnavegables con la herramienta info o <strong>de</strong>ntro <strong>de</strong>l editor emacs, y a suvez obtener documentos impresos <strong>de</strong> c<strong>al</strong>idad con ayuda <strong>de</strong>l procesador<strong>de</strong> textos TeX, <strong>de</strong> Don<strong>al</strong>d Knuth.El formato texinfo pue<strong>de</strong> traducirse a HTML multipágina si se <strong>de</strong>sea,y mucha gente prefiere ver la información con un navegador web,pero se pier<strong>de</strong> la capacidad <strong>de</strong> búsqueda <strong>de</strong> p<strong>al</strong>abras en un documento.Ésta es una <strong>de</strong> las consecuencias in<strong>de</strong>seables <strong>de</strong> la popularidad<strong>de</strong> HTML, ya que los navegadores no implementan el concepto<strong>de</strong> documento multipágina, a pesar <strong>de</strong> que existen elementos linkque permiten enlazar las partes.ANOTACIONESLectura complementaria[Ver bibliografía, apartados142 y 109]Lectura complementaria[Ver bibliografía, apartados63, 201 y 202]Existe una imperiosa <strong>de</strong>manda <strong>de</strong> que los documentos complejos sepuedan ver como páginas web multipágina fácilmente navegables.Hay gente que escribe documentación en LaTeX, también aplicación<strong>de</strong> TeX, muy popular entre los científicos, más expresivo que Texinfo,y convertible a HTML multipágina con ciertas herramientas, siempreque se guar<strong>de</strong> cierta disciplina. En efecto, las aplicaciones <strong>de</strong> TeX sonconjuntos <strong>de</strong> macros que combinan operadores tipográficos <strong>de</strong> muybajo nivel para convertirlos en lenguajes abstractos que trabajan conconceptos <strong>de</strong> <strong>al</strong>to nivel (autor, título, resumen, capítulo, apartado,etc.). Si sólo se utilizan las macros básicas, la conversión es sencilla.Pero como nadie impi<strong>de</strong> usar operadores <strong>de</strong> bajo nivel y, a<strong>de</strong>más,existen cantida<strong>de</strong>s enormes <strong>de</strong> paquetes <strong>de</strong> macros fuera <strong>de</strong> la capacidad<strong>de</strong> mantenimiento <strong>de</strong> los mantenedores <strong>de</strong> los conversores,es difícil conseguir que las conversiones s<strong>al</strong>gan bien.8.5.1. DocbookEl problema radica en que no existe separación entre contenido ypresentación, ni en las aplicaciones <strong>de</strong> TeX ni en las <strong>de</strong> nroff, ya quela abstracción se construye por capas. Esta separación la tienen las230


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492aplicaciones <strong>de</strong> SGML y XML, don<strong>de</strong> la presentación se especificacon hojas <strong>de</strong> estilo completamente separadas. Muy pronto empezarona utilizarse aplicaciones muy sencillas <strong>de</strong> SGML, como linuxdocy <strong>de</strong>biandoc, pero <strong>de</strong>bido a su escasa capacida<strong>de</strong>xpresiva, se optó por ir a DocBook.DocBook es una aplicación <strong>de</strong> SGML origin<strong>al</strong>mente <strong>de</strong>sarrollada paradocumentación técnica informática, y hoy con una variante XML. Doc-Book es hoy el estándar <strong>de</strong> formato <strong>de</strong> documentación <strong>libre</strong> para muchosproyectos (Linux Documentation Project, K<strong>de</strong>, GNOME, Mandrake,etc.) y un objetivo a <strong>al</strong>canzar en otros (Linux, *BSD, Debian, etc.).Sin embargo. DocBook es un lenguaje complejo, plagado <strong>de</strong> etiquetas,por lo que es conveniente disponer <strong>de</strong> herramientas <strong>de</strong> ayuda a la edición,aún escasas y element<strong>al</strong>es, siendo la más popular el modo psgml<strong>de</strong> emacs. También es pesado <strong>de</strong> procesar y los procesadores <strong>libre</strong>s todavíageneran una c<strong>al</strong>idad <strong>de</strong> documentos poco atractiva.8.5.2. WikisMucha gente encuentra <strong>de</strong>masiado complicado escribir documentacióncon lenguajes tan complejos como DocBook y mecanismos <strong>de</strong> colaboracióncomo CVS. Por ello se ha hecho muy popular un nuevo mecanismo<strong>de</strong> colaboración para la elaboración <strong>de</strong> documentos en línea víaweb llamado wiki, inventado por Ward Cunningham[ward:wiki], puestopor primera vez en servicio en 1995, y hoy ampliamente utilizado enmuy diversas variantes para elaborar documentos muy dinámicos, no<strong>de</strong>stinados a ser impresos, y muchas veces con una vida corta (por ejemplo,organización <strong>de</strong> una conferencia).Al contrario que DocBook, un wiki tiene un lenguaje <strong>de</strong> marcas muysimple y conciso, que recuerda la presentación fin<strong>al</strong>, sin ser exactamentecomo ella. Por ejemplo, los párrafos se separan por una líneaen blanco, los elementos <strong>de</strong> listas empiezan por un guión si no se numerany por un cero si se numeran, o las celdas <strong>de</strong> tablas se separanpor barras vertic<strong>al</strong>es y horizont<strong>al</strong>es.Tampoco existe el concepto <strong>de</strong> documento completo, sino que unwiki es más bien un conjunto <strong>de</strong> pequeños documentos enlazadosANOTACIONES231


© FUOC • XP06/M2101/01492Software <strong>libre</strong>que se van creando a medida que es necesario explicar un nuevoconcepto o tema. La creación <strong>de</strong> los documentos es casi automática,ya que la herramienta <strong>de</strong> edición muestra muy claramente que hemosintroducido un concepto (a través <strong>de</strong> un NombreWiki, casisiempre dos p<strong>al</strong>abras juntas con la primera letra en mayúsculas).Casi ningún wiki admite hiperenlaces <strong>de</strong>ntro <strong>de</strong> la misma página.Al contrario que en CVS, cu<strong>al</strong>quiera pue<strong>de</strong> escribir en un wiki, aunquese aconseja que se i<strong>de</strong>ntifique <strong>al</strong> autor con un registro previo.Cuando se visita un wiki, veremos que todas las páginas tienen unbotón para permitir su edición. Si se pulsa, el navegador nos mostraráen un formulario el código fuente <strong>de</strong>l documento, que podremoscambiar. No es una edición WYSIWYG, lo que disua<strong>de</strong> <strong>al</strong> quequiera fastidiar, pero es tan sencillo que cu<strong>al</strong>quier interesado pue<strong>de</strong>modificar documentos con muy pequeño esfuerzo.Los wikis llevan su propio control <strong>de</strong> versiones <strong>de</strong> documentos, <strong>de</strong>modo que gener<strong>al</strong>mente están accesibles todas sus versiones con indicación<strong>de</strong> quién las hizo y cuándo. También se pue<strong>de</strong>n compararcon facilidad. Suelen llevar mecanismos <strong>de</strong> búsqueda, <strong>al</strong> menos pornombre <strong>de</strong> página y por p<strong>al</strong>abra contenida.Norm<strong>al</strong>mente, el autor origin<strong>al</strong> <strong>de</strong> una página querrá enterarse <strong>de</strong>las modificaciones que se le hacen. Para ello pue<strong>de</strong> suscribirse a loscambios, recibiendo notificaciones <strong>de</strong> los mismos por correo electrónico.A veces el que ve un documento no se atreve a cambiar nada,pero pue<strong>de</strong> hacer un comentario. Norm<strong>al</strong>mente, toda página wikitiene asociado un foro <strong>de</strong> comentarios que se pegan <strong>al</strong> fin<strong>al</strong> <strong>de</strong>l documentoy que, bien el autor origin<strong>al</strong>, bien <strong>al</strong>guien que asuma el rol<strong>de</strong> editor, pue<strong>de</strong> emplearlos para reformar el texto origin<strong>al</strong>, posiblementemoviendo frases <strong>de</strong> los comentarios a los sitios oportunos.ANOTACIONESSugerenciaLa mejor forma <strong>de</strong> enten<strong>de</strong>r un wiki es accediendo auno y experimentando en una página <strong>de</strong>stinada a ello,<strong>de</strong>nominada SandBox. Pue<strong>de</strong> acce<strong>de</strong>r a cu<strong>al</strong>quier <strong>de</strong>ellas, como por ejemplo, http://twistedmatrix.com/users/jh.twistd/moin/moin.cgi/WikiSandBox232


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014928.6. Gestión <strong>de</strong> erroresUno <strong>de</strong> los puntos fuertes <strong>de</strong>l mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo <strong>libre</strong> es que lacomunidad contribuya con informes <strong>de</strong> errores, y que ésta sienta quesus informes o soluciones son tenidos en cuenta. Por ello, es necesarioun mecanismo sencillo <strong>de</strong> informar <strong>de</strong> errores, <strong>de</strong> modo que los<strong>de</strong>sarrolladores reciban información suficiente, <strong>de</strong> forma sistemática,y con todos los <strong>de</strong>t<strong>al</strong>les necesarios, ya sea aportados por el colaborador,como la explicación <strong>de</strong> lo que pasa, nivel <strong>de</strong> importancia yposible solución, ya por <strong>al</strong>gún mecanismo automático que <strong>de</strong>termine,por ejemplo, la versión <strong>de</strong>l programa y <strong>de</strong>l entorno en que funciona.Asimismo, es necesario que los errores se guar<strong>de</strong>n en unabase <strong>de</strong> datos que pueda ser consultada, para ver si un error ya hasido reportado, si ha sido corregido, su nivel <strong>de</strong> importancia, etc.Existen varios <strong>de</strong> estos sistemas, <strong>de</strong> filosofía diferente. Unos son víaweb, otros, vía correo electrónico, por medio <strong>de</strong> <strong>al</strong>gún programa intermediario.Todos tienen interfaz web para consulta. Unos permiteninformes anónimos, otros requieren i<strong>de</strong>ntificación (una dirección <strong>de</strong>correo válida), para evitar el ruido. Aunque los procedimientos víaweb parecen los más sencillos, con ellos no es posible obtener fácilmenteinformación automática <strong>de</strong>l entorno <strong>de</strong>l error. Por ejemplo, elsistema <strong>de</strong> Debian proporciona programas como reportbug, quetras preguntar el nombre <strong>de</strong>l paquete sobre el que queremos informar,consulta <strong>al</strong> servidor qué errores ya hay reportados sobre el mismo.Si ninguno <strong>de</strong> ellos se refiere a nuestro problema, nos pi<strong>de</strong> una<strong>de</strong>scripción <strong>de</strong>l mismo, un nivel <strong>de</strong> importancia (crítico, grave, serio,importante, no se pue<strong>de</strong> regenerar a partir <strong>de</strong> los códigos fuentes,norm<strong>al</strong>, menor o sugerencia) y etiquetas sobre la categoría (porejemplo, seguridad). Tras ello, si confirmamos la petición, automáticamenteaverigua la versión <strong>de</strong>l paquete y <strong>de</strong> aquellos <strong>de</strong> los que <strong>de</strong>pen<strong>de</strong>,así como la versión y arquitectura <strong>de</strong>l núcleo. Obviamente, ladirección <strong>de</strong> correo electrónico la sabe, por lo que un informe similar<strong>al</strong> siguiente es enviado <strong>al</strong> sitio correcto:Package: w3m-sslVersion: 0.2.1-4Severity: importantAfter reloading a page containing complex tablessever<strong>al</strong> dozen times, w3m hadANOTACIONES233


© FUOC • XP06/M2101/01492Software <strong>libre</strong>A veces los sistemas <strong>de</strong> seguimiento <strong>de</strong> errores tienen mecanismospara asignar la corrección a <strong>al</strong>guien y ponerle un plazo. En este caso,el sistema se acerca a un sistema <strong>de</strong> gestión y seguimiento <strong>de</strong> flujo<strong>de</strong> trabajos, a veces integrados con el sistema <strong>de</strong> gestión <strong>de</strong>fuentes.8.7. Sistemas <strong>de</strong> gestión <strong>de</strong> flujo <strong>de</strong> trabajosEn <strong>software</strong> <strong>libre</strong> no se emplean mecanismos muy sofisticados <strong>de</strong>gestión <strong>de</strong> los trabajos que tiene que hacer cada <strong>de</strong>sarrollador. Después<strong>de</strong> todo, muchos colaboradores son voluntarios y no se les pueused<strong>al</strong>l physic<strong>al</strong> memory and thrashing commenced.This is an Alpha machine.-- System InformationDebian Release: testing/unstableKernel Version: Linux romana 2.2.19 #1 Fri Jun1 18:20:08 PDT 2001 <strong>al</strong>pha unknownVersions of the packages w3m-ssl <strong>de</strong>pends on:ii libc6.1 2.2.3-7 GNU C Library: Shared librariesand Timezone dataii libgc5 5.0.<strong>al</strong>pha4-8 Conservative garbage collectorfor Cii libgpmg1 1.19.3-6 Gener<strong>al</strong> Purpose Mouse Library[libc6]ii libncurses5 5.2.20010318-3 Shared librariesfor termin<strong>al</strong> handlingii libssl0.9.6 0.9.6a-3 SSL shared librariesii w3m 0.2.1-2 WWW browsable pager with tables/frames supportEste mensaje genera un número <strong>de</strong> error que nos es <strong>de</strong>vuelto, enviado<strong>al</strong> mantenedor y guardado en la base <strong>de</strong> datos. Cuando se resuelvael error, recibiremos también una notificación. Cada errortiene asignada una dirección <strong>de</strong> correo electrónico que se pue<strong>de</strong> utilizarpara proporcionar información adicion<strong>al</strong>, por ejemplo. La base<strong>de</strong> datos <strong>de</strong> errores la podremos consultar vía http://bugs.<strong>de</strong>bian.orgen cu<strong>al</strong>quier momento.ANOTACIONESLectura complementaria[Ver bibliografía, apartados1 y 71]234


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492<strong>de</strong> poner un esquema muy rígido. No obstante, sí que se pue<strong>de</strong>n<strong>de</strong>finir tareas y esperar a que <strong>al</strong>guien se dé <strong>de</strong> <strong>al</strong>ta en el sistema ylas asuma, <strong>de</strong>clarando un plazo para ello. Se tenga o no, control sobrelo que pue<strong>de</strong>n hacer <strong>de</strong>terminadas personas, siempre es convenientetener controladas las tareas que hay que hacer, qué<strong>de</strong>pen<strong>de</strong>ncias tienen, su nivel <strong>de</strong> importancia y quiénes están trabajandoen ellas. El sistema más sofisticado que se está utilizando paraesto es Issuezilla, una evolución propietaria <strong>de</strong>l sistema <strong>de</strong> gestión <strong>de</strong>errores <strong>libre</strong> vía web BugZilla.8.8. Soporte para otras arquitecturasEl soporte mínimo que po<strong>de</strong>mos <strong>de</strong>sear para hacer nuestro programaportátil a otros entornos distintos <strong>de</strong>l que poseemos es el accesoa granjas <strong>de</strong> compilación, que permiten compilar nuestro programaen otras arquitecturas y sistemas operativos. Por ejemplo, SourceForge(apartado 8.9.1) ofrecía, cuando se escribió esto, entornos GNULinux Debian para Intel x86, DEC Alpha, PowerPC y SPARC, a<strong>de</strong>más<strong>de</strong> entornos Solaris y Mac OS/X.Seguidamente, también nos gustaría po<strong>de</strong>r probar nuestros programasen esos entornos. A medida que pedimos más servicios <strong>de</strong> máquinasajenas ofrecidas como servicio público, más difícil seráobtenerlos. El mismo servicio <strong>de</strong> compilación pue<strong>de</strong> ser problemático,ya que nosotros po<strong>de</strong>mos querer <strong>de</strong>sarrollar para lenguajes diversos,con bibliotecas diversas. La granja <strong>de</strong> compilación pue<strong>de</strong> proporcionarun número limitado <strong>de</strong> ellos. Pero si queremos probar un programaordinario, las dificulta<strong>de</strong>s aumentan exponenci<strong>al</strong>mente, no sóloporque es muy difícil disponer <strong>de</strong> los programas requeridos, sino porrazones <strong>de</strong> seguridad, que pue<strong>de</strong>n hacer muy complicado administrarestos sistemas. No obstante, existen unos pocos servicios <strong>de</strong> granja <strong>de</strong>servidores, con inst<strong>al</strong>aciones estándar <strong>de</strong> arquitecturas diversas, quepue<strong>de</strong>n permitirnos probar <strong>al</strong>gunas cosas. Por ejemplo, aparte <strong>de</strong> loque se pueda hacer en la granja <strong>de</strong> servidores <strong>de</strong> SourceForge, po<strong>de</strong>mosencontrar hasta granjas <strong>de</strong> PDA.Las granjas públicas <strong>de</strong>scritas anteriormente son un servicio <strong>de</strong> usomanu<strong>al</strong>. El <strong>de</strong>sarrollador invitado copia sus ficheros en una <strong>de</strong> esasmáquinas, los compila y prueba el resultado. Probablemente <strong>de</strong>beLectura complementaria[Ver bibliografía, apartado44]ANOTACIONESLectura complementaria[Ver bibliografía, apartado40]235


© FUOC • XP06/M2101/01492Software <strong>libre</strong>hacerlo <strong>de</strong> vez en cuando, en el momento previo a la liberación <strong>de</strong>una versión importante <strong>de</strong>l programa. Pue<strong>de</strong> ser mucho más interesanteque las compilaciones y la ejecución <strong>de</strong> las pruebas <strong>de</strong> regresiónse hagan sistemáticamente, <strong>de</strong> forma automática, por ejemplotodas las noches, si ha habido cambio en los códigos fuentes. Asífuncionan <strong>al</strong>gunos proyectos importantes, que proporcionan una infraestructurapropia para <strong>de</strong>sarrolladores externos, que suele llamarseTin<strong>de</strong>rbox (yesquero). Es el caso <strong>de</strong> Mozilla, financiado porNetscape, cuyo Tin<strong>de</strong>rbox presenta una interfaz web a los resultados<strong>de</strong> la compilación y pruebas <strong>de</strong> componentes <strong>de</strong> su navegador en todaslas arquitecturas don<strong>de</strong> funciona. Esta interfaz está íntimamenterelacionada con el CVS y muestra esos resultados para distintos estados(entre compromisos), i<strong>de</strong>ntificando <strong>al</strong> responsable <strong>de</strong> los f<strong>al</strong>losy facilitando el avance, soslayando el problema hasta que se solucione.También usan yesqueros los proyectos OpenOffice y FreeBSD,por lo menos.8.9. Sitios <strong>de</strong> soporte <strong>al</strong> <strong>de</strong>sarrolloLos sitios <strong>de</strong> soporte <strong>al</strong> <strong>de</strong>sarrollo proporcionan, <strong>de</strong> manera más omenos integrada, todos los servicios <strong>de</strong>scritos anteriormente, juntocon <strong>al</strong>gunos adicion<strong>al</strong>es que permiten la búsqueda <strong>de</strong> proyectos porcategorías y su clasificación según parámetros sencillos <strong>de</strong> actividad.Ello libera <strong>al</strong> <strong>de</strong>sarrollador <strong>de</strong> montarse y administrarse toda una infraestructura<strong>de</strong> colaboración y concentrarse en su proyecto.8.9.1. SourceForgeANOTACIONESLectura complementaria[Ver bibliografía, apartado51]Uno <strong>de</strong> los primeros en establecerse este tipo <strong>de</strong> servicios y el máspopular es SourceForge, gestionado por OSDN (Open Software DevelopmentNetwork, subsidiaria <strong>de</strong> VA Software), que <strong>al</strong>bergaba enjunio <strong>de</strong>l 2003 más <strong>de</strong> 60.000 proyectos. Está estructurado en tornoa un conjunto <strong>de</strong> programas <strong>de</strong>l mismo nombre, que hasta la versión2 fue <strong>software</strong> <strong>libre</strong>.SourceForge, como prototipo <strong>de</strong> estos sitios, ofrece una interfaz webo port<strong>al</strong> glob<strong>al</strong> <strong>de</strong> entrada (http://sourceforge.net/) y un subport<strong>al</strong>por proyecto (http://proyecto.sourceforge.net). En la interfaz glob<strong>al</strong>236


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492po<strong>de</strong>mos ver noticias, anuncios, enlaces y una invitación a hacersemiembro o entrar, si ya se es. Para colaborar en el sitio, conviene hacersemiembro, siendo imprescindible hacerlo si se quiere crear unproyecto nuevo o participar en uno ya existente. Para ser espectadorno es necesario, y como t<strong>al</strong> po<strong>de</strong>mos ver cuáles son los proyectosque experimentan un <strong>de</strong>sarrollo más activo o son <strong>de</strong>scargados conmás frecuencia; po<strong>de</strong>mos buscar proyectos por categorías o dandouna p<strong>al</strong>abra <strong>de</strong> su <strong>de</strong>scripción, y se nos mostrarán or<strong>de</strong>nados por sunivel <strong>de</strong> actividad. Dentro <strong>de</strong> cada proyecto, po<strong>de</strong>mos ver su <strong>de</strong>scripción,estado (<strong>al</strong>fa, beta, producción), <strong>de</strong>scriptores (lenguaje, sistemaoperativo, temática, tipo <strong>de</strong> usuarios, idioma, licencia), errores y temaspendientes o subsanados, <strong>de</strong>t<strong>al</strong>les <strong>de</strong> su actividad en el tiempo,o <strong>de</strong>scargarlo. También po<strong>de</strong>mos participar en foros o informar <strong>de</strong>errores, incluso <strong>de</strong> forma anónima, lo cu<strong>al</strong> no es muy conveniente(por ejemplo, no nos pue<strong>de</strong>n respon<strong>de</strong>r).Cu<strong>al</strong>quier usuario autenticado pue<strong>de</strong> solicitar dar <strong>de</strong> <strong>al</strong>ta un proyecto,que es admitido por los administradores <strong>de</strong>l sitio si cumple las políticas<strong>de</strong>l mismo, y que en el caso <strong>de</strong> SourceForge son bastante liber<strong>al</strong>es.Una vez autorizado, el creador pue<strong>de</strong> dar <strong>de</strong> <strong>al</strong>ta a otros usuarios registradoscomo administradores adicion<strong>al</strong>es o como <strong>de</strong>sarrolladores,con acceso a la modificación <strong>de</strong> fuentes. Tras la autorización, no haymuchos más controles sobre el proyecto, lo que ocasiona la existencia<strong>de</strong> muchos proyectos muertos. Esto no confun<strong>de</strong> <strong>de</strong>masiado a losusuarios porque los proyectos con baja o nula actividad apenas sonvisibles, ya que se muestran or<strong>de</strong>nados por ella en las búsquedas. Estosproyectos corren el riesgo <strong>de</strong> ser eliminados por los propietarios <strong>de</strong>lsitio. Los servicios que SourceForge proporciona a un proyecto, y quepodríamos esperar <strong>de</strong> cu<strong>al</strong>quier servicio similar, son:• Albergue para las páginas web <strong>de</strong>l port<strong>al</strong> <strong>de</strong>l proyecto, en la direcciónproyecto.sourceforge.net, don<strong>de</strong> se muestra el mismo <strong>al</strong>público. Estas páginas pue<strong>de</strong>n ser estáticas o dinámicas (con CGIo PHP), en cuyo caso pue<strong>de</strong>n hacer uso <strong>de</strong> una base <strong>de</strong> datos(MySQL). Se introducen directamente a través <strong>de</strong> ór<strong>de</strong>nes <strong>de</strong> copiaremota y pue<strong>de</strong>n manipularse por medio <strong>de</strong> sesiones interactivas<strong>de</strong> termin<strong>al</strong> remoto (ssh).• Opcion<strong>al</strong>mente, un servidor virtu<strong>al</strong> que responda a direcciones <strong>de</strong>un dominio obtenido aparte, como www.proyecto.org o cvs.proyecto.org.ANOTACIONES237


© FUOC • XP06/M2101/01492Software <strong>libre</strong>• Tantos foros web y/o listas <strong>de</strong> correo como sean necesarios, segúncriterio <strong>de</strong> un administrador.• Un servicio <strong>de</strong> noticias, don<strong>de</strong> los administradores anuncian noveda<strong>de</strong>ssobre el proyecto.• Rastreadores (trackers), para informe y seguimiento <strong>de</strong> errores,peticiones <strong>de</strong> soporte, peticiones <strong>de</strong> mejoras o integración <strong>de</strong> parches.Los administradores dan una prioridad <strong>al</strong> asunto y asignansu solución a un <strong>de</strong>sarrollador.• Gestores <strong>de</strong> tareas. Similar a un rastreador, permite <strong>de</strong>finirsubproyectos con una serie <strong>de</strong> tareas. Estas tareas a<strong>de</strong>más <strong>de</strong> unaprioridad tienen un plazo. Los <strong>de</strong>sarrolladores a los que se lesasignan pue<strong>de</strong>n manifestar <strong>de</strong> vez en cuando un porcentaje <strong>de</strong>re<strong>al</strong>ización <strong>de</strong> la tarea.• Un CVS con <strong>de</strong>rechos inici<strong>al</strong>es <strong>de</strong> acceso para todos los <strong>de</strong>sarrolladores.• Servicio <strong>de</strong> subida y bajada <strong>de</strong> paquetes <strong>de</strong> <strong>software</strong>. Utilizándolose tiene un registro <strong>de</strong> las versiones introducidas y se posibilitaque los interesados reciban un aviso cuando esto suceda. A<strong>de</strong>más,la subida implica la creación <strong>de</strong> varias réplicas en todo elmundo, lo que facilita la distribución.• Servicio <strong>de</strong> publicación <strong>de</strong> documentos en HTML. Cu<strong>al</strong>quiera pue<strong>de</strong>registrarlos, pero sólo <strong>de</strong>spués <strong>de</strong> la aprobación por un administradorserán visibles.ANOTACIONES• Copia <strong>de</strong> seguridad para recuperación <strong>de</strong> <strong>de</strong>sastres, como rotura<strong>de</strong> disco, no <strong>de</strong> errores <strong>de</strong> usuario, como pue<strong>de</strong> ser borrar un ficheroacci<strong>de</strong>nt<strong>al</strong>mente.Un usuario autenticado tiene una página person<strong>al</strong> don<strong>de</strong> se reúnetoda la información <strong>de</strong> su interés, como proyectos a los que está asociado,temas o tareas que tiene pendientes, así como foros y ficherosque ha <strong>de</strong>clarado que quiere vigilar. A<strong>de</strong>más, para que no tenga queestar pendiente <strong>de</strong> su página person<strong>al</strong>, un usuario recibirá por correoelectrónico notificaciones respecto <strong>de</strong> lo que quiere vigilar.238


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014928.9.2. Here<strong>de</strong>ros <strong>de</strong> SourceForgeEn el 2001 VA Software estuvo a punto <strong>de</strong> quebrar, en plena crisis <strong>de</strong>las puntocom. Entonces anunció una nueva versión <strong>de</strong> su <strong>software</strong>SourceForge con licencia no <strong>libre</strong>, en un intento <strong>de</strong> procurarse unafuente <strong>de</strong> ingresos, vendiéndolo a empresas para sus <strong>de</strong>sarrollos internos.Asimismo, eliminó mecanismos que permitían volcar un proyectopara llevarlo a otro sitio. Ambos hechos fueron vistos como unaamenaza por la que los miles <strong>de</strong> proyectos <strong>al</strong>ojados en SourceForgequedarían atrapados en manos <strong>de</strong> una sola empresa, que utilizarí<strong>al</strong>a plataforma para <strong>de</strong>mostrar <strong>software</strong> no <strong>libre</strong>. Ante eso y la posibilidad<strong>de</strong> que el sitio cerrara se <strong>de</strong>sarrollaron hijos <strong>de</strong> la versión <strong>libre</strong>y se abrieron port<strong>al</strong>es basados en ellas, entre los que <strong>de</strong>stacanSavannah, <strong>de</strong>dicado <strong>al</strong> proyecto GNU y a otros programas con licenciatipo copyleft, o BerliOS, concebido como punto <strong>de</strong> encuentro entre<strong>de</strong>sarrolladores <strong>de</strong> <strong>software</strong> <strong>libre</strong> y empresas. Sin embargo, estoes sólo un paso con vistas a <strong>de</strong>sarrollar una plataforma distribuida yreplicada, don<strong>de</strong> nadie tenga control absoluto <strong>de</strong> los proyectos.Lectura complementaria[Ver bibliografía, apartados47, 12 y 79]8.9.3. Otros sitios y programasNatur<strong>al</strong>mente se han <strong>de</strong>sarrollado y siguen <strong>de</strong>sarrollándose sistemas<strong>de</strong> colaboración y <strong>al</strong>gunas empresas hacen negocio <strong>de</strong>l mantenimientoy servicio <strong>de</strong> esos sitios. Por ejemplo, el proyecto Tigris, quesólo mantiene proyectos <strong>de</strong> ingeniería <strong>de</strong> <strong>software</strong> <strong>libre</strong>, usa un port<strong>al</strong><strong>de</strong> colaboración (SourceCast) mantenido por una empresa <strong>de</strong> servicios(CollabNet), que también mantiene sitios <strong>de</strong> proyectosindividu<strong>al</strong>es, como OpenOffice. Nuevos sitios vienen adoptandonuevo <strong>software</strong> <strong>libre</strong>, como GForce, utilizado por el proyecto Debian.Pue<strong>de</strong> verse una comparación exhaustiva <strong>de</strong> muchos sitios en HaggenSo. Comparison of free/open source hosting (fosphost) sites availablefor hosting projects extern<strong>al</strong>ly from project owners.Lectura complementaria[Ver bibliografía, apartados54, 25, 6 y 181]ANOTACIONES239


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014929. Estudio <strong>de</strong> casosEste capítulo está <strong>de</strong>dicado íntegramente a estudiar más a fondo losproyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> clásicos más interesantes en cuanto a impactoen el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, resultados obtenidos, mo<strong>de</strong>lo<strong>de</strong> gestión, evolución histórica, etc. Por supuesto, el número <strong>de</strong> proyectosque se van a presentar es muy pequeño en comparación conel número <strong>de</strong> proyectos <strong>libre</strong>s tot<strong>al</strong>es –que se c<strong>al</strong>cula que ascien<strong>de</strong> aunos 50 mil–, por lo que este capítulo no se podría consi<strong>de</strong>rar completo,ni se podrá consi<strong>de</strong>rar nunca completo. Aun así, esperamosque tras su lectura el lector pueda tener <strong>al</strong> menos una percepción <strong>de</strong>cómo se ha llevado a la práctica la teoría que se ha ido presentandoa lo largo <strong>de</strong> este libro.Los proyectos escogidos abarcan <strong>de</strong>s<strong>de</strong> aplicaciones <strong>de</strong> bajo nivel –ésas que interactúan más bien con el sistema físico <strong>de</strong>l or<strong>de</strong>nador envez <strong>de</strong> con el usuario– hasta entornos <strong>de</strong> trabajo para el usuario fin<strong>al</strong>.Hemos incluido también proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> que, en unprincipio, no son íntegramente <strong>de</strong> <strong>de</strong>sarrollo. T<strong>al</strong> es el caso <strong>de</strong> lasdistribuciones, cuyo trabajo es más bien <strong>de</strong> integración, ya que se <strong>de</strong>dicanprincip<strong>al</strong>mente a tomar un conjunto amplio, pero limitado, <strong>de</strong>aplicaciones in<strong>de</strong>pendientes y a crear un sistema don<strong>de</strong> todo interactúe<strong>de</strong> manera efectiva, incluyendo también facilida<strong>de</strong>s para inst<strong>al</strong>ar,actu<strong>al</strong>izar y borrar nuevas aplicaciones según lo <strong>de</strong>see el usuario.Los proyectos <strong>de</strong> más bajo nivel que vamos a ver van a ser Linux, elnúcleo <strong>de</strong>l sistema operativo más popular a día <strong>de</strong> hoy, y FreeBSD,que conjunta un núcleo <strong>de</strong> la familia BSD con una serie <strong>de</strong> aplicacionesy utilida<strong>de</strong>s re<strong>al</strong>izados por terceros proyectos <strong>al</strong> más puro estilo<strong>de</strong> las distribuciones. Los entornos <strong>de</strong> trabajo <strong>de</strong> usuario fin<strong>al</strong> escogidospara su estudio serán KDE y GNOME, ciertamente los más extendidosy populares. Los servidores –uno <strong>de</strong> los puntos fuertes <strong>de</strong> lossistemas <strong>libre</strong>s– estarán representados en este capítulo por Apache,lí<strong>de</strong>r en el mercado <strong>de</strong> los servidores WWW. Asimismo, contaremoscon la presentación <strong>de</strong> Mozilla, uno <strong>de</strong> los clientes WWW (en re<strong>al</strong>idad,mucho más que eso) con los que contamos en el mundo <strong>de</strong>lANOTACIONES241


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>software</strong> <strong>libre</strong>. El último proyecto que se va a ver en este capítulo esOpenOffice.org, una suite <strong>de</strong> oficina <strong>libre</strong>.Para terminar, hemos creído conveniente mostrar con un poco <strong>de</strong>mayor profundidad dos <strong>de</strong> las distribuciones más populares: Red HatLinux y Debian GNU/Linux y re<strong>al</strong>izar una comparación en cuanto atamaño con otros sistemas ampliamente utilizados como pue<strong>de</strong>n serlos <strong>de</strong> Microsoft Windows o Solaris.Lectura complementaria[Ver bibliografía, apartado74]Al término <strong>de</strong> las presentaciones <strong>de</strong> los diferentes casos <strong>de</strong> estudio,mostraremos un cuadro con las características más notables <strong>de</strong>cada aplicación o proyecto. Uno <strong>de</strong> los parámetros que pue<strong>de</strong> sorpren<strong>de</strong>rmás <strong>al</strong> lector son los resultados <strong>de</strong> estimación <strong>de</strong> coste, <strong>de</strong>duración y <strong>de</strong> número medio <strong>de</strong> <strong>de</strong>sarrolladores. Estos resultadoslos hemos obtenido por medios tradicion<strong>al</strong>es en la ingeniería <strong>de</strong>l<strong>software</strong>, en especi<strong>al</strong> el mo<strong>de</strong>lo COCOMO. El mo<strong>de</strong>lo COCOMOtoma como medida <strong>de</strong> entrada el número <strong>de</strong> líneas <strong>de</strong> código fuentey genera estimaciones <strong>de</strong> coste tot<strong>al</strong>, tiempo <strong>de</strong> <strong>de</strong>sarrollo y esfuerzo<strong>de</strong>dicado. COCOMO es un mo<strong>de</strong>lo pensado para procesos<strong>de</strong> generación <strong>de</strong> <strong>software</strong> clásicos (<strong>de</strong>sarrollo en cascada o en V)y para proyectos <strong>de</strong> tamaño medio o gran<strong>de</strong>, por lo que las cifrasque nos ofrece en nuestro caso han <strong>de</strong> ser tomadas con mucho cuidado.En cu<strong>al</strong>quier caso, los resultados nos pue<strong>de</strong>n dar una i<strong>de</strong>a<strong>de</strong>l or<strong>de</strong>n <strong>de</strong> magnitud en el que nos movemos, con informaciónsobre los esfuerzos óptimos necesarios si se hubiera utilizado unmo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo propietario.ANOTACIONESLectura complementaria[Ver bibliografía, apartado212]En gener<strong>al</strong>, lo que más asombra <strong>de</strong> los resultados <strong>de</strong> COCOMO essu estimación <strong>de</strong> costes. En dicha estimación se tienen en cuenta dosfactores: el s<strong>al</strong>ario medio <strong>de</strong> un <strong>de</strong>sarrollador y el factor <strong>de</strong> overhead.En el cálculo <strong>de</strong> la estimación <strong>de</strong> costes, se ha tomado el s<strong>al</strong>ariomedio para un programador <strong>de</strong> sistemas a tiempo completo <strong>de</strong>acuerdo con la encuesta <strong>de</strong>l año 2000, con Computer World (2000).S<strong>al</strong>ary survey 2000.. El overhead es el sobrecoste que toda empresaha <strong>de</strong> asumir para que el producto s<strong>al</strong>ga a la c<strong>al</strong>le con in<strong>de</strong>pen<strong>de</strong>ncia<strong>de</strong>l s<strong>al</strong>ario <strong>de</strong> los programadores. En este apartado se incluyen<strong>de</strong>s<strong>de</strong> el s<strong>al</strong>ario para las secretarias y el equipo <strong>de</strong> marketing hast<strong>al</strong>os costes <strong>de</strong> las fotocopias, luz, equipos hardware, etc. En resumen,el coste c<strong>al</strong>culado por COCOMO es el coste tot<strong>al</strong> que le supondríaa una empresa crear un <strong>software</strong> <strong>de</strong>l tamaño especificado y no se ha242


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492<strong>de</strong> ver simplemente como el dinero que percibirían los programadorespor re<strong>al</strong>izar el <strong>software</strong>. Una vez dicho esto, los cálculos <strong>de</strong> costes<strong>de</strong>jan <strong>de</strong> parecer tan abultados.9.1. LinuxEl kernel (núcleo en castellano) Linux es, sin duda, la aplicación estrella<strong>de</strong>l <strong>software</strong> <strong>libre</strong>, hasta el punto <strong>de</strong> que, aun siendo una pequeñaparte <strong>de</strong>l sistema, ha dado nombre a todo él. Es más, sepodría incluso afirmar que el propio <strong>software</strong> <strong>libre</strong> se confun<strong>de</strong> enmultitud <strong>de</strong> ocasiones con Linux, lo que no <strong>de</strong>ja <strong>de</strong> ser un gran <strong>de</strong>sacierto,ya que existe <strong>software</strong> <strong>libre</strong> que corre sobre sistemas que nose basan en Linux (<strong>de</strong> hecho, una <strong>de</strong> las gran<strong>de</strong>s metas <strong>de</strong>l movimientoy <strong>de</strong> muchos proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> es que las aplicacionespuedan ejecutarse en multitud <strong>de</strong> entornos). Por otro lado,también existen aplicaciones que funcionan en Linux y que no son<strong>software</strong> <strong>libre</strong> (Acrobat Rea<strong>de</strong>r, el lector <strong>de</strong> documentos PDF, tambiéncuenta con su versión para Linux).NotaPara evitar la asociación <strong>de</strong>l <strong>software</strong> <strong>libre</strong> únicamentecon sistemas Linux existen varios proyectos que se <strong>de</strong>dicana integrar y distribuir aplicaciones <strong>libre</strong>s que secorren en sistemas Windows. Uno <strong>de</strong> estos proyectos,probablemente el más conocido y completo, esGNUWin, que distribuye en un CD autoarrancablemás <strong>de</strong> un centenar <strong>de</strong> aplicaciones <strong>libre</strong>s para sistemasWin32. La mayoría <strong>de</strong> estas aplicaciones tambiénse encuentran disponibles en las distribuciones GNU/Linux comunes, por lo que son una buena herramientapara ir preparando el cambio <strong>de</strong> sistemas Windows aGNU/Linux <strong>de</strong> manera más sosegada.9.1.1. Historia <strong>de</strong> LinuxLa historia <strong>de</strong> Linux es una <strong>de</strong> las historias más conocidas <strong>de</strong>ntro <strong>de</strong>lmundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, seguramente porque se asemeja más a uncuento que a la historia <strong>de</strong> un programa <strong>de</strong> or<strong>de</strong>nador. En 1991, unANOTACIONES243


© FUOC • XP06/M2101/01492Software <strong>libre</strong>estudiante finés <strong>de</strong> nombre Linus Torv<strong>al</strong>ds <strong>de</strong>cidió que quería apren<strong>de</strong>ra utilizar el modo protegido 386 en una máquina que su limitadobolsillo le había permitido adquirir. Por entonces –y aún hoy en día–en los cursos <strong>de</strong> sistemas operativos universitarios existía un núcleo<strong>de</strong> sistema operativo gestado con fines académicos llamado Minix. Ala cabeza <strong>de</strong>l grupo <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> Minix –basado en los sistemasUNIX tradicion<strong>al</strong>es– se encontraba uno <strong>de</strong> los profesores <strong>de</strong> universidadmás prestigiosos, Andrew Tanenbaum. Minix era un sistema limitado,pero bastante capaz y bien diseñado que contaba a su<strong>al</strong>re<strong>de</strong>dor con una gran comunidad académica y <strong>de</strong> ingeniería.Minix tenía una licencia <strong>de</strong> <strong>libre</strong> distribución y se podía utilizar sinproblema para fines académicos, pero tenía el gran hándicap <strong>de</strong>que personas ajenas a la Universidad <strong>de</strong> Amsterdam no podían integrarmejoras en él, sino que lo <strong>de</strong>bían hacer <strong>de</strong> manera in<strong>de</strong>pendiente,gener<strong>al</strong>mente a través <strong>de</strong> parches. Esto suponía que en lapráctica existiera una versión <strong>de</strong> Minix ofici<strong>al</strong> que todo el mundo usabay luego una larga serie <strong>de</strong> parches que había que aplicar posteriormentepara obtener funcion<strong>al</strong>ida<strong>de</strong>s adicion<strong>al</strong>es.A mediados <strong>de</strong> 1991, Linus –el todavía anónimo estudiante finés–mandó un mensaje <strong>al</strong> grupo <strong>de</strong> noticias <strong>de</strong> Minix anunciando queiba a empezar <strong>de</strong>s<strong>de</strong> cero un núcleo <strong>de</strong> sistema operativo basadoen Minix, pero sin incluir código <strong>de</strong>l mismo. Para entonces, Linus –aun cuando no dijera explícitamente que lo fuera a publicar conuna licencia <strong>libre</strong>– apuntó que el sistema que iba a crear no tendrí<strong>al</strong>as barreras que presentaba Minix, por lo que –sin saberlo, y probablementesin quererlo– estaba dando el primer paso para quedarsecon la comunidad que entonces se aglutinaba <strong>al</strong>re<strong>de</strong>dor <strong>de</strong>Minix.ANOTACIONESLectura complementaria[Ver bibliografía, apartado106]La versión 0.02 que data <strong>de</strong> octubre <strong>de</strong> 1991, aunque muy limitada,ya podía ejecutar termin<strong>al</strong>es bash y el compilador GCC. En los mesessiguientes el número <strong>de</strong> aportaciones externas fue creciendo hastael punto <strong>de</strong> que ya en marzo <strong>de</strong> 1992 Linus publicaba la versión0.95, que fue ampliamente reconocida como casi estable. El caminohacia la versión 1.0 –que suele asociarse con la estabilidad– fue, sinembargo, todavía largo: en diciembre <strong>de</strong> 1993 se publicaría porejemplo la versión 0.99pl14 (que viene a ser como la <strong>de</strong>cimocuartaversión corregida <strong>de</strong> la versión 0.99) y fin<strong>al</strong>mente en marzo <strong>de</strong> 1994244


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Linux 1.0 vio la luz. Ya para entonces, Linux se publicaba bajo lascondiciones <strong>de</strong> la licencia GPL, según el propio Torv<strong>al</strong>ds una <strong>de</strong> lasmejores <strong>de</strong>cisiones que ha tomado, ya que ayudó sobremanera a ladistribución y popularización <strong>de</strong> su núcleo. En Michael W. Godfrey;Qiang Tu. “Evolution in open source <strong>software</strong>: A case study”. Proceedingsof the 2000 Internation<strong>al</strong> Conference on Software Maintainance(agosto, 2000) se pue<strong>de</strong> encontrar un análisis exhaustivo <strong>de</strong> laevolución <strong>de</strong> las diferentes versiones <strong>de</strong>l kernel <strong>de</strong> Linux en cuanto atamaño y modularidad.NotaPara los an<strong>al</strong>es <strong>de</strong> la historia <strong>de</strong>l <strong>software</strong> <strong>libre</strong> quedatambién el <strong>de</strong>bate que tuvo lugar a fin<strong>al</strong>es <strong>de</strong> enero <strong>de</strong>1992 en el grupo <strong>de</strong> noticias <strong>de</strong> Minix entre AndrewTanenbaum y Linus Torv<strong>al</strong>ds. Tanenbaum, probablementeya un poco molesto por el éxito <strong>de</strong> Torv<strong>al</strong>ds consu juguete, atacó <strong>de</strong> manera un poco <strong>de</strong>sproporcionadaa Linux y a Linus. El punto esenci<strong>al</strong> es que Linux eraun sistema monolítico (el núcleo es una pieza que integratodos los manejadores, etc.) y no microkernel (elnúcleo tiene un diseño modular, lo que permite quesea más pequeño y que se puedan cargar módulosbajo <strong>de</strong>manda). Se pue<strong>de</strong> seguir la discusión origin<strong>al</strong>t<strong>al</strong> y como ocurrió en el grupo <strong>de</strong> noticias en AndrewTanenbaum; Linus Torv<strong>al</strong>ds. (1999). The tanenbaumtorv<strong>al</strong>ds<strong>de</strong>bate.Lectura complementaria[Ver bibliografía, apartado193]9.1.2. El modo <strong>de</strong> trabajo <strong>de</strong> LinuxLa forma <strong>de</strong> trabajar <strong>de</strong> Torv<strong>al</strong>ds no era muy común en aquellostiempos. El <strong>de</strong>sarrollo se basaba princip<strong>al</strong>mente en una lista <strong>de</strong> correo.En la lista <strong>de</strong> correo no sólo se discutía, sino que también se <strong>de</strong>sarrollaba.Y es que a Torv<strong>al</strong>ds le gustaba mucho que toda la vida<strong>de</strong>l proyecto se viera reflejada en la lista, por lo que pedía que losparches se enviaran a la misma. En contra <strong>de</strong> lo que uno pudiera esperar–que se enviara el parche como adjunto– Linus prefería que semandara el código en el cuerpo <strong>de</strong>l mensaje para que él y los <strong>de</strong>máspudieran comentarlo. En cu<strong>al</strong>quier caso, aun cuando muchos opinarany enviaran correcciones o nuevas funcion<strong>al</strong>ida<strong>de</strong>s, lo que era in-ANOTACIONES245


© FUOC • XP06/M2101/01492Software <strong>libre</strong>discutible es que la última p<strong>al</strong>abra, quien <strong>de</strong>cidía lo que entraba enLinux, correspondía a Linus Torv<strong>al</strong>ds.NotaLa consolidación <strong>de</strong> Linus Torv<strong>al</strong>ds como dictadorbenevolente ha dado pie a un amplio anecdotario<strong>de</strong>ntro <strong>de</strong>l proyecto. Así, se comenta que si una i<strong>de</strong>agusta, se ha <strong>de</strong> implementar. Si no gusta, tambiénse ha <strong>de</strong> implementar. El corolario, por tanto, esque las buenas i<strong>de</strong>as no sirven para nada (sin código,por supuesto). Por otro lado, si no gusta la implementación,hay que insistir. Conocido es el caso<strong>de</strong> Gooch, para quien el santo Job era un aprendiz.Gooch re<strong>al</strong>izó hasta 146 parches par<strong>al</strong>elos hastaque Linus <strong>de</strong>cidió fin<strong>al</strong>mente integrarlo en la ramaofici<strong>al</strong> <strong>de</strong>l núcleo.Otra <strong>de</strong> las i<strong>de</strong>as innovadoras <strong>de</strong> Torv<strong>al</strong>ds fue el <strong>de</strong>sarrollo par<strong>al</strong>elo<strong>de</strong> dos ramas <strong>de</strong>l núcleo: la estable (cuyo segundo número <strong>de</strong> versiónsuele ser par, como por ejemplo 2.4.18) y la inestable (impar,como 2.5.12). Como no podía ser <strong>de</strong> otra forma, es Torv<strong>al</strong>ds quien<strong>de</strong>ci<strong>de</strong> qué entra en uno y en otro sitio (muchas <strong>de</strong> las <strong>de</strong>cisiones máspolémicas las po<strong>de</strong>mos ubicar precisamente aquí). En cu<strong>al</strong>quier caso,Linux no tiene una planificación <strong>de</strong> entregas con fechas fijas: estarálisto cuando esté listo, mientras tanto habrá que esperar. Ellector seguro que habrá asumido a estas <strong>al</strong>turas que la <strong>de</strong>cisión <strong>de</strong>si está listo o no lo está correspon<strong>de</strong>, como no podría ser <strong>de</strong> otra forma,únicamente a Linus.ANOTACIONESEl método <strong>de</strong> <strong>de</strong>sarrollo utilizado en Linux resulta, t<strong>al</strong> como se ha<strong>de</strong>mostrado, muy eficaz en cuanto a resultados: Linux goza <strong>de</strong>una gran estabilidad y existe gener<strong>al</strong>mente un interv<strong>al</strong>o ínfimo <strong>de</strong>corrección <strong>de</strong> errores (a veces <strong>de</strong>l or<strong>de</strong>n <strong>de</strong> los minutos), ya quecuenta con miles <strong>de</strong> <strong>de</strong>sarrolladores. En esta situación, cuandoexiste un error, la probabilidad <strong>de</strong> que uno <strong>de</strong> ellos lo encuentrees muy <strong>al</strong>ta y, en caso <strong>de</strong> que no lo pueda resolver el <strong>de</strong>scubridor,<strong>al</strong>guno ya dará con la solución <strong>de</strong> manera rápida. En <strong>de</strong>finitiva,po<strong>de</strong>mos ver cómo Linux cuenta con miles <strong>de</strong> personas/mes <strong>de</strong>dicadasa su <strong>de</strong>sarrollo, lo que indudablemente hace que su éxitono sea nada sorpren<strong>de</strong>nte.246


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Se <strong>de</strong>be mencionar que esta forma <strong>de</strong> trabajar es, por contra, muycara en cuanto a recursos se refiere. No es inusu<strong>al</strong> que existan muchaspropuestas mutuamente excluyentes para una nueva funcion<strong>al</strong>idado que se reciban una docena <strong>de</strong> parches para el mismo error.En la gran mayoría <strong>de</strong> los casos, solamente una <strong>de</strong> ellas será incluidaen el núcleo fin<strong>al</strong>mente, por lo que se pue<strong>de</strong> consi<strong>de</strong>rar que el resto<strong>de</strong>l tiempo y esfuerzo <strong>de</strong>dicado por los <strong>de</strong>sarrolladores ha sido enb<strong>al</strong><strong>de</strong>. El mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> Linux es, por tanto, un mo<strong>de</strong>lo quefunciona muy bien en Linux, pero que ciertamente no todos los proyectosse pue<strong>de</strong>n permitir.9.1.3. Estado actu<strong>al</strong> <strong>de</strong> LinuxEn la actu<strong>al</strong>idad Linux se encuentra en el camino <strong>de</strong> su versión 2.6,aunque este dato todavía no se sepa a ciencia cierta, ya que hay vocesque solicitan que la siguiente versión tenga un número <strong>de</strong> versión 3.0,<strong>de</strong>bido princip<strong>al</strong>mente a la inclusión <strong>de</strong> NUMA (acceso a memoriano uniforme, utilizada <strong>de</strong> manera común en multiprocesadores). Sinduda, ésta no será la única mejora, sino que se mejorarán e incluiránmuchas cosas más, como sistemas <strong>de</strong> ficheros, mejoras para la comunicaciónen re<strong>de</strong>s in<strong>al</strong>ámbricas y arquitecturas <strong>de</strong> sonido (ALSA),entre otras. Remitimos <strong>al</strong> lector interesado <strong>al</strong> siguiente artículo JosephPranevich (2003). “The won<strong>de</strong>rful world of Linux 2.6, actu<strong>al</strong>izado concierta frecuencia.Lectura complementaria[Ver bibliografía, apartado165]En cuanto <strong>al</strong> mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> Linux, éste ha sufrido <strong>al</strong>gunoscambios en los últimos años. Aunque la lista <strong>de</strong> correo <strong>de</strong> <strong>de</strong>sarrollosigue siendo el <strong>al</strong>ma <strong>de</strong>l proyecto, el código ya no ha <strong>de</strong> pasar necesariamentepor ella. A ello ha contribuido en gran manera BitKeeper,un sistema <strong>de</strong> control <strong>de</strong> versiones propietario <strong>de</strong>sarrollado por lacompañía BitMover siguiendo las estrictas recomendaciones <strong>de</strong> LinusTorv<strong>al</strong>ds. El uso <strong>de</strong> una herramienta no <strong>libre</strong> ha generado una granpolémica, en la que se ha podido constatar otra vez la posición pragmática<strong>de</strong> Linus (para él, y para muchos más, el sistema <strong>libre</strong> <strong>de</strong> control<strong>de</strong> versiones CVS está muy anticuado).A modo <strong>de</strong> resumen, en el siguiente cuadro se ofrece una radiografía<strong>de</strong>l proyecto Linux. Po<strong>de</strong>mos ver cómo Linux ha superado hace pocola barrera <strong>de</strong> los tres millones <strong>de</strong> líneas <strong>de</strong> código, pudiéndose encuadrarentre los proyectos muy gran<strong>de</strong>s. De hecho, Linux es, juntoANOTACIONES247


© FUOC • XP06/M2101/01492Software <strong>libre</strong>con Mozilla y OpenOffice.org, uno <strong>de</strong> los proyectos más gran<strong>de</strong>s<strong>de</strong>ntro <strong>de</strong>l panorama <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. En cuanto a la estimación <strong>de</strong>tiempo <strong>de</strong> ejecución y número medio <strong>de</strong> <strong>de</strong>sarrolladores que lo haríanóptimo, po<strong>de</strong>mos observar cómo el primero es ciertamente menorque los diez años <strong>de</strong> historia con los que cuenta Linux. Esto, porotro lado, se compensa con creces teniendo en cuenta el segundo,ya que el número medio <strong>de</strong> <strong>de</strong>sarrolladores a tiempo completo es superior<strong>de</strong>l que dispone Linux.NotaLa estimación <strong>de</strong> costes que nos ofrece COCOMO es<strong>de</strong> 131 millones <strong>de</strong> dólares americanos, una cifra que,para ponerlo en un contexto <strong>de</strong> las cifras que se suelenmanejar más asiduamente, supone el doble <strong>de</strong> lo quelos gran<strong>de</strong>s clubes <strong>de</strong> fútbol suelen pagar por unagran estrella.Tabla 9-1. Estado actu<strong>al</strong> <strong>de</strong> LinuxPágina webInicio <strong>de</strong>l proyectoLicenciaVersión actu<strong>al</strong> <strong>de</strong> Linuxhttp://www.kernel.orgPrimer mensaje ennews.comp.os.minix: Agosto 1991GNU GPL2.4.21 (versión estable <strong>de</strong>l16.6.2003)Líneas <strong>de</strong> código fuente 3.238.908Estimación <strong>de</strong> coste (segúnCOCOMO básico)Estimación <strong>de</strong> tiempo <strong>de</strong> ejecución(según COCOMO básico)Estimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladores (según COCOMObásico)$ 131.000.0007,31 años (87,71 meses)132ANOTACIONESNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresHerramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrolloSe cuentan por miles (aunque en loscréditos aparecen sólo centenares[tuomi:linux-credit-files:02])Lista <strong>de</strong> correo y BitKeeperLa composición <strong>de</strong> Linux en cuanto a lenguajes <strong>de</strong> programaciónmuestra un claro predominio <strong>de</strong> C, consi<strong>de</strong>rado como un lenguajei<strong>de</strong><strong>al</strong> para la re<strong>al</strong>ización <strong>de</strong> sistemas críticos en cuanto a velocidad.Cuando la velocidad es un requisito tan estricto que ni siquiera Cpue<strong>de</strong> <strong>al</strong>canzar, se programa directamente en lenguaje ensambla-248


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492dor, un hecho que como po<strong>de</strong>mos ver ocurre con cierta frecuencia.El lenguaje ensamblador tiene la <strong>de</strong>sventaja en comparación con Cque no es tan portable, cada arquitectura tiene su juego <strong>de</strong> instruccionesparticular, por lo que mucho código escrito para una arquitecturaen ensamblador ha <strong>de</strong> ser portado a las <strong>de</strong>más arquitecturas.La presencia <strong>de</strong>l resto <strong>de</strong> los lenguajes, como se pue<strong>de</strong> observar enel cuadro adjunto, es margin<strong>al</strong> y se limita a funciones <strong>de</strong> inst<strong>al</strong>acióny utilida<strong>de</strong>s <strong>de</strong> <strong>de</strong>sarrollo. La versión an<strong>al</strong>izada para este libro hasido Linux 2.4.21 t<strong>al</strong> y como fue publicada el 16 <strong>de</strong> junio <strong>de</strong>l 2003(sin la aplicación <strong>de</strong> ningún parche posterior).Tabla 9-2. Lenguajes <strong>de</strong> programación utilizados en LinuxLenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC 3062627 94,56%Ensamblador 164108 5,07%Shell 3257 0,10%Yacc 3224 0,10%9.2. FreeBSDComo ya se ha comentado en el capítulo <strong>de</strong>dicado a la historia <strong>de</strong>l<strong>software</strong> <strong>libre</strong>, existen otros tipos <strong>de</strong> sistemas operativos <strong>libre</strong>s a<strong>de</strong>más<strong>de</strong>l popular GNU/Linux. Una familia <strong>de</strong> ellos son los here<strong>de</strong>ros<strong>de</strong> las distribuciones <strong>de</strong> la Universidad <strong>de</strong> Berkeley, enC<strong>al</strong>ifornia (EE.UU.): los sistemas tipo BSD. El más antiguo y conocido<strong>de</strong> los sistemas BSD es FreeBSD, cuya historia se remonta aprincipios <strong>de</strong> 1993, cuando Bill Jolitz <strong>de</strong>jó <strong>de</strong> publicar las actu<strong>al</strong>izacionesno ofici<strong>al</strong>es a 386BSD. Con el apoyo <strong>de</strong> la empresa W<strong>al</strong>nutCreek CDROM, que más tar<strong>de</strong> pasó a llamarse BSDi, un grupo <strong>de</strong>voluntarios <strong>de</strong>cidió proseguir con el esfuerzo <strong>de</strong> re<strong>al</strong>izar este sistemaoperativo <strong>libre</strong>.El objetivo princip<strong>al</strong> <strong>de</strong>l proyecto FreeBSD es la creación <strong>de</strong> un sistemaoperativo que pueda ser utilizado sin ningún tipo <strong>de</strong> obligacionesni ataduras, pero con todas las ventajas <strong>de</strong> la disponibilidad <strong>de</strong>l códigoy <strong>de</strong> un cuidadoso proceso que asegure la c<strong>al</strong>idad <strong>de</strong>l producto.El usuario tiene la libertad <strong>de</strong> hacer con el <strong>software</strong> lo que <strong>de</strong>see, yaANOTACIONES249


© FUOC • XP06/M2101/01492Software <strong>libre</strong>sea modificándolo a su antojo o redistribuirlo –<strong>de</strong> forma abierta o inclusocerrada y bajo las condiciones que <strong>de</strong>see– con o sin modificaciones.Como su propio nombre indica, el proyecto FreeBSD se guía,por tanto, por la filosofía <strong>de</strong> las licencias BSD.9.2.1. Historia <strong>de</strong> FreeBSDLa versión <strong>de</strong> 1.0 apareció a fin<strong>al</strong>es <strong>de</strong> 1993 y estaba basada en4.3BSD Net/2 y en 386BSD. 4.3BSD Net/2 contaba con códigoproce<strong>de</strong>nte <strong>de</strong> los años setenta, cuando UNIX era <strong>de</strong>sarrollado porAT&T, lo que a la postre supuso una serie <strong>de</strong> problemas leg<strong>al</strong>es queno se resolvieron hasta que en 1995, FreeBSD 2.0 fue publicado sincontar con código originario <strong>de</strong> AT&T, esta vez basándose en4.4BSD-Lite –una versión “light” (se habían suprimido muchos módulospor problemas leg<strong>al</strong>es, aparte <strong>de</strong> que el port para sistemas Inteltodavía estaba incompleto) liberada por la Universidad <strong>de</strong>C<strong>al</strong>ifornia <strong>de</strong> 4.4BSD.La historia <strong>de</strong> FreeBSD no sería completa si no se contara nada sobresus distribuciones “hermanas”, NetBSD y OpenBSD. NetBSDapareció con una versión 0.8 a mediados <strong>de</strong> 1993. Su princip<strong>al</strong> objetivoera ser muy portable –aunque en sus comienzos sólo fuera unport para i386, por lo que su lema es “por supuesto que correNetBSD”. OpenBSD surgió <strong>de</strong> una escisión <strong>de</strong> NetBSD fundamentadaen diferencias filosóficas (y también person<strong>al</strong>es) entre <strong>de</strong>sarrolladoresa mediados <strong>de</strong> 1996. Su princip<strong>al</strong> foco <strong>de</strong> atención es laseguridad y la criptografía –dicen ser el sistema operativo más seguroque existe–, aunque <strong>al</strong> basarse en NetBSD también conservauna gran portabilidad.ANOTACIONES9.2.2. Desarrollo en FreeBSDEl mo<strong>de</strong>lo <strong>de</strong> <strong>de</strong>sarrollo utilizado por el proyecto FreeBSD está fuertementebasado en dos herramientas: el sistema <strong>de</strong> versiones CVS yel sistema <strong>de</strong> informe <strong>de</strong> error GNATS. Alre<strong>de</strong>dor <strong>de</strong> estas dos herramientasgira todo el proyecto, como se pue<strong>de</strong> comprobar por el hecho<strong>de</strong> que se ha creado una jerarquía a partir <strong>de</strong> las mismas. Así,sobre los commiters –aquellos <strong>de</strong>sarrolladores con <strong>de</strong>recho a escritura<strong>al</strong> CVS– es sobre quien recae toda la soberanía <strong>de</strong>l proyecto, ya250


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492sea directamente o indirectamente mediante la elección <strong>de</strong>l coregroup, t<strong>al</strong> como se verá en el siguiente apartado.Para re<strong>al</strong>izar informes <strong>de</strong> error en GNATS no hace f<strong>al</strong>ta ser commiter,por lo que cu<strong>al</strong>quiera que así lo <strong>de</strong>see podrá notificar una errata. Todaslas contribuciones abiertas (open) en GNATS son ev<strong>al</strong>uadas porun commiter, que podrá asignar (an<strong>al</strong>ized) la tarea a otro commitero pedir mayor información a la persona que re<strong>al</strong>izó el informe origin<strong>al</strong>(feedback). Existen situaciones don<strong>de</strong> la errata ha sido solucionadapara <strong>al</strong>gunas ramas recientes, por lo que se especifica con elestado suspendida (suspen<strong>de</strong>d). En cu<strong>al</strong>quier caso, la meta es que elinforme se cierre (closed) tras haber corregido el error.FreeBSD distribuye su <strong>software</strong> <strong>de</strong> dos formas. Existen por una partelos ports, un sistema que <strong>de</strong>scarga las fuentes, las compila e inst<strong>al</strong><strong>al</strong>a aplicación en el or<strong>de</strong>nador loc<strong>al</strong>, y por otra están los paquetes,que no son más que las fuentes <strong>de</strong> los ports precompilados y, portanto, en binario. La ventaja más importante <strong>de</strong> los ports sobre lospaquetes es que los primeros permiten <strong>al</strong> usuario configurar y optimizarel <strong>software</strong> para su or<strong>de</strong>nador. Por contra, el sistema <strong>de</strong> paquetes,<strong>al</strong> estar ya precompilados, permite inst<strong>al</strong>ar el <strong>software</strong> <strong>de</strong> unamanera más rápida.9.2.3. Toma <strong>de</strong> <strong>de</strong>cisiones en FreeBSDEl consejo <strong>de</strong> directores <strong>de</strong> FreeBSD, conocido popularmente comoel core team, se encarga <strong>de</strong> marcar la dirección <strong>de</strong>l proyecto y <strong>de</strong> velarporque se cumplan los objetivos <strong>de</strong>l proyecto FreeBSD, así comomediar en caso <strong>de</strong> que existan conflictos entre commiters. Hasta octubre<strong>de</strong> 2000 era un grupo cerrado <strong>al</strong> que sólo se entraba a formarparte <strong>de</strong>l mismo por invitación expresa <strong>de</strong>l propio core team. A partir<strong>de</strong> entonces, los miembros <strong>de</strong>l core team son elegidos periódica y <strong>de</strong>mocráticamentepor los commiters. La normativa más importantepara la elección <strong>de</strong>l core team es la siguiente• Podrán votar los commiters que hayan re<strong>al</strong>izado <strong>al</strong> menos uncommit en el último año.• El consejo <strong>de</strong> directores se renovará cada dos años.ANOTACIONES251


© FUOC • XP06/M2101/01492Software <strong>libre</strong>• Los miembros <strong>de</strong>l consejo <strong>de</strong> directores podrán ser “expulsados”con el voto <strong>de</strong> dos tercios <strong>de</strong> los commiters.• Si el número <strong>de</strong> miembros <strong>de</strong>l consejo <strong>de</strong> directores es menor <strong>de</strong>siete, se celebrarán nuevas elecciones.• Se celebrarán nuevas elecciones si así lo pi<strong>de</strong> un tercio <strong>de</strong> loscommiters.• El cambio <strong>de</strong> normativa requiere un quórum <strong>de</strong> dos tercios <strong>de</strong> loscommiters.9.2.4. Empresas <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> FreeBSDExisten multitud <strong>de</strong> empresas que ofrecen servicios y productos basadosen FreeBSD, <strong>de</strong> las cu<strong>al</strong>es el proyecto FreeBSD lleva buena cuentaen su página <strong>de</strong>l proyecto. En esta presentación <strong>de</strong> FreeBSDconoceremos un poco más a fondo las más significativas: BSDi yW<strong>al</strong>nut Creek CDROM.FreeBSD nació en parte <strong>de</strong>bido a que gente <strong>de</strong>l CSRG (ComputerSystems Research Group) <strong>de</strong> la Universidad <strong>de</strong> Berkeley fundara en1991 la compañía BSDi, que se <strong>de</strong>dicaría <strong>al</strong> soporte comerci<strong>al</strong> parael nuevo sistema operativo. A<strong>de</strong>más <strong>de</strong> la versión comerci<strong>al</strong> <strong>de</strong>l sistemaoperativo FreeBSD, BSDi también <strong>de</strong>sarrolló otros productoscomo un servidor <strong>de</strong> Internet y <strong>de</strong> gateway.ANOTACIONESW<strong>al</strong>nut Creek CDROM nació con el objetivo <strong>de</strong> comerci<strong>al</strong>izarFreeBSD como producto fin<strong>al</strong>, pudiendo consi<strong>de</strong>rarse como una distribución<strong>al</strong> estilo <strong>de</strong> las que existen para GNU/Linux, pero conFreeBSD. En noviembre <strong>de</strong> 1998, W<strong>al</strong>nut Creek amplió sus horizontescon la creación <strong>de</strong>l port<strong>al</strong> FreeBSD M<strong>al</strong>l que se <strong>de</strong>dicaría a comerci<strong>al</strong>izartodo tipo <strong>de</strong> productos sobre FreeBSD (<strong>de</strong>s<strong>de</strong> la distribuciónen sí misma, a camisetas, revistas, libros, etc.), a anunciar productos<strong>de</strong> terceros en su página web y a dar soporte profesion<strong>al</strong> <strong>de</strong>FreeBSD.En marzo <strong>de</strong>l 2000, BSDi y W<strong>al</strong>nut Creek se unieron bajo el nombreBSDi para hacer frente <strong>de</strong> manera conjunta <strong>al</strong> fenómeno Linux, que252


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492estaba <strong>de</strong>jando claramente en la sombra a los sistemas BSD en gener<strong>al</strong>y a FreeBSD en particular. Un año más tar<strong>de</strong>, en mayo <strong>de</strong>l2001, Wind River adquirió la parte <strong>de</strong>dicada a la generación <strong>de</strong><strong>software</strong> <strong>de</strong> BSDi, con la clara intención <strong>de</strong> potenciar el <strong>de</strong>sarrollo <strong>de</strong>FreeBSD para su uso en sistemas empotrados y dispositivos inteligentesconectados a la Red.9.2.5. Estado actu<strong>al</strong> <strong>de</strong> FreeBSDSegún los últimos datos <strong>de</strong> la encuesta sobre servidores web que re<strong>al</strong>izaperiódicamente Netcraft, el número éstos que corre con FreeBSDse acerca a los dos millones <strong>de</strong> unida<strong>de</strong>s. Un usuario nuevo que quisierainst<strong>al</strong>arse FreeBSD podría elegir entre la versión 4.8 (la que sepodría consi<strong>de</strong>rar como la versión “estable”) o la más avanzada 5.1(la <strong>de</strong> “<strong>de</strong>sarrollo”). Mientras la primera ofrece mayor estabilidad –sobre todo en áreas como el multiprocesamiento simétrico que hansido tot<strong>al</strong>mente reelaboradas en las nuevas versiones–, la segundapermite disfrutar <strong>de</strong> las últimas noveda<strong>de</strong>s. También es importantetener en cuenta que las versiones <strong>de</strong> <strong>de</strong>sarrollo suelen incluir código<strong>de</strong> pruebas, lo que hace que la velocidad <strong>de</strong>l sistema se vea afectadasensiblemente.Una <strong>de</strong> las utilida<strong>de</strong>s estrella <strong>de</strong> FreeBSD son las llamadas cárceles(jail en inglés). Las cárceles permiten minimizar el daño causado porun ataque a servicios <strong>de</strong> red básicos como podrían ser sendmail parael correo electrónico o BIND (Berkeley Internet Name Domain) paragestionar los nombres. Los servicios son introducidos en una cárcelpara que se ejecuten en un entorno <strong>de</strong> aislamiento. La gestión <strong>de</strong> lascárceles se pue<strong>de</strong> re<strong>al</strong>izar mediante una serie <strong>de</strong> utilida<strong>de</strong>s incluidasen FreeBSD.9.2.6. Radiografía <strong>de</strong> FreeBSDComo se ha venido comentando a lo largo <strong>de</strong> este último apartado,la labor <strong>de</strong> BSD no se restringe únicamente <strong>al</strong> <strong>de</strong>sarrollo <strong>de</strong> un núcleo<strong>de</strong>l sistema operativo, sino que también incluye la integración<strong>de</strong> multitud <strong>de</strong> utilida<strong>de</strong>s que se distribuyen conjuntamente <strong>al</strong> estilo <strong>de</strong>las distribuciones <strong>de</strong> GNU/Linux. El hecho <strong>de</strong> que el proceso <strong>de</strong> <strong>de</strong>sarrollo<strong>de</strong> FreeBSD esté íntimamente ligado <strong>al</strong> sistema <strong>de</strong> control <strong>de</strong>ANOTACIONES253


© FUOC • XP06/M2101/01492Software <strong>libre</strong>versiones CVS hace que el estudio <strong>de</strong>l mismo nos pueda dar unabuena aproximación <strong>de</strong> todo lo que contiene. Las cifras que se muestrana continuación son las correspondientes <strong>al</strong> análisis <strong>de</strong> FreeBSDefectuado el 21 <strong>de</strong> agosto <strong>de</strong>l 2003.Uno <strong>de</strong> los aspectos más interesantes <strong>de</strong> FreeBSD es que sus númerosse asemejan mucho a los que ya hemos podido observar en KDEy en GNOME: el tamaño <strong>de</strong>l <strong>software</strong> supera ampliamente los cincomillones <strong>de</strong> líneas <strong>de</strong> código, el número <strong>de</strong> ficheros ronda los250.000 y el número tot<strong>al</strong> <strong>de</strong> commits se sitúa en torno a los dos millones.Sin embargo, es interesante observar que la princip<strong>al</strong> diferenciaentre GNOME y KDE con FreeBSD es la edad <strong>de</strong>l proyecto.FreeBSD acaba <strong>de</strong> cumplir hace escasas fechas la década <strong>de</strong> existenciay casi dobla en tiempo a los entornos <strong>de</strong> escritorio con los que laestamos comparando. Que el tamaño sea similar, aun cuando eltiempo <strong>de</strong> <strong>de</strong>sarrollo ha sido superior, se <strong>de</strong>be en gran parte a queel número <strong>de</strong> <strong>de</strong>sarrolladores que ha atraído FreeBSD es más pequeño.Con <strong>de</strong>recho <strong>de</strong> escritura en el CVS (commiter) hay listados unos400, mientras que los colaboradores que se mencionan en el manu<strong>al</strong><strong>de</strong> FreeBSD son cerca <strong>de</strong> un millar. Por esta razón, la actividadque registra el CVS <strong>de</strong> FreeBSD es menor en media (500 commitsdiarios) que la que registraban tanto GNOME (900) como KDE(1700 contando los commits automáticos).ANOTACIONESHemos consi<strong>de</strong>rado como sistema básico <strong>de</strong> FreeBSD todo aquelloque cuelga <strong>de</strong>l directorio src/src <strong>de</strong>l módulo root <strong>de</strong>l CVS. La actividadque ha venido registrando el sistema básico a lo largo <strong>de</strong> los últimosdiez años es <strong>de</strong> más <strong>de</strong> medio millón <strong>de</strong> commits. Su tamañosupera los cinco millones <strong>de</strong> líneas <strong>de</strong> código, aunque hay que comentarque no sólo está incluido el kernel en él, sino multitud <strong>de</strong> utilida<strong>de</strong>sadicion<strong>al</strong>es, incluso juegos. Si tenemos en cuenta sólo elkernel (que se encuentra bajo el subdirectorio sys), su tamaño es <strong>de</strong>1,5 millones <strong>de</strong> líneas <strong>de</strong> código fuente, predominantemente en C.Resulta interesante ver cómo la estimación <strong>de</strong> tiempo dada por CO-COMO concuerda a la perfección con el tiempo re<strong>al</strong> que ha llevadoel proyecto FreeBSD, aunque la estimación <strong>de</strong> número <strong>de</strong> <strong>de</strong>sarrolladoresmedio es, en mucho, mayor que la re<strong>al</strong>. Nótese que en el últimoaño, sólo unos 75 commiters han estado activos, mientras que254


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492COCOMO supone que durante los 10 años <strong>de</strong> <strong>de</strong>sarrollo el número<strong>de</strong> <strong>de</strong>sarrolladores <strong>de</strong>bería ser <strong>de</strong> 235.Por último, cabe <strong>de</strong>stacar, como se ha hecho anteriormente, que laactividad princip<strong>al</strong> <strong>de</strong> FreeBSD se sitúa en torno <strong>al</strong> CVS y <strong>al</strong> sistema<strong>de</strong> control <strong>de</strong> erratas y activida<strong>de</strong>s GNATS.Tabla 9-3. Estado actu<strong>al</strong> <strong>de</strong> FreeBSDPágina webhttp://www.FreeBSD.orgInicio <strong>de</strong>l proyecto 1993LicenciaVersión actu<strong>al</strong> <strong>de</strong> FreeBSDtipo BSD4.8 (estable), 5.1 (en <strong>de</strong>sarrollo)Líneas <strong>de</strong> código fuente 7.750.000Líneas <strong>de</strong> código fuente (sólo núcleo) 1.500.000Número <strong>de</strong> ficheros 250.000Estimación <strong>de</strong> coste $ 325.000.000Estimación <strong>de</strong> tiempo <strong>de</strong> ejecuciónEstimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresNúmero <strong>de</strong> commiters activos en elúltimo añoNúmero <strong>de</strong> commiters activos en losdos últimos años10,5 años (126 meses)235400 commiters (1000 colaboradores)75 (menos 20% <strong>de</strong>l tot<strong>al</strong>)165 (<strong>al</strong>re<strong>de</strong>dor <strong>de</strong>l 40% <strong>de</strong>l tot<strong>al</strong>)Número <strong>de</strong> commits en el CVS 2.000.000Número medio <strong>de</strong> commits (tot<strong>al</strong>es)<strong>al</strong> díaHerramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrolloUnos 500CVS, GNATS, listas <strong>de</strong> correo y sitio<strong>de</strong> noticiasC es el lenguaje predominante en FreeBSD, siendo la distancia conC++ superior a la <strong>de</strong> los <strong>de</strong>más casos que hemos estudiado en estecapítulo. Es interesante observar cómo el número <strong>de</strong> líneas <strong>de</strong> códigoensamblador contenidos en FreeBSD concuerdan en el or<strong>de</strong>n <strong>de</strong>magnitud con las que tiene Linux, aunque las correspondientes <strong>al</strong> núcleosólo sumen unas 25.000 líneas en tot<strong>al</strong>. En resumen, se podría<strong>de</strong>cir que en FreeBSD lo que manda son los lenguajes más clásicos<strong>de</strong>ntro <strong>de</strong>l <strong>software</strong> <strong>libre</strong>, C, shell y Perl, y que la penetración <strong>de</strong> loslenguajes que hemos venido observando en otras aplicaciones y proyectos–C++, Java, Python, etc.– no ha tenido lugar.ANOTACIONES255


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Tabla 9-4. Lenguajes <strong>de</strong> programación utilizados en FreeBSDLenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC 7.080.000 92,0%Shell 205.000 2,7%C++ 131.500 1,7%Ensamblador 116.000 1,5%Perl 90.900 1,20%Yacc 5.800 0,75%9.2.7. Estudios académicos sobre FreeBSDLectura complementaria[Ver bibliografía, apartado129]Aun siendo ciertamente un proyecto muy interesante –po<strong>de</strong>mos obtenertoda su historia (¡<strong>de</strong>s<strong>de</strong> hace 10 años!) mediante el análisis <strong>de</strong>lsistema <strong>de</strong> versiones–, la atención que ha <strong>de</strong>spertado FreeBSD entrela comunidad científica ha sido más bien pequeña. De esta f<strong>al</strong>ta <strong>de</strong>interés se s<strong>al</strong>va un equipo <strong>de</strong> investigación, que ha estudiado el proyectoFreeBSD <strong>de</strong>s<strong>de</strong> varios puntos <strong>de</strong> vista, poniendo especi<strong>al</strong> atencióna cómo se resuelven los problemas <strong>de</strong> la integración <strong>de</strong> <strong>software</strong><strong>de</strong> manera increment<strong>al</strong> y <strong>de</strong>scentr<strong>al</strong>izada.9.3. KDEANOTACIONESAunque con probabilidad no fue la primera solución en cuanto a entornos<strong>de</strong> escritorios amigables para el usuario, la difusión a mediados <strong>de</strong>1995 <strong>de</strong>l sistema operativo Windows95(TM) supuso un cambio radic<strong>al</strong>en la interacción <strong>de</strong> los usuarios <strong>de</strong> a pie con los or<strong>de</strong>nadores. De lossistemas unidimension<strong>al</strong>es <strong>de</strong> línea <strong>de</strong> instrucciones (los termin<strong>al</strong>es), sepasó a la metáfora <strong>de</strong> entorno <strong>de</strong>l escritorio bidimension<strong>al</strong>, don<strong>de</strong> el ratónganó terreno <strong>al</strong> teclado. Windows95(TM), más que una innovacióntecnológica, <strong>de</strong>be ser acreditado como el sistema que consiguió a<strong>de</strong>ntrarseen todos los entornos person<strong>al</strong>es y <strong>de</strong> oficina, marcando las pautasa seguir (reglas técnicas y soci<strong>al</strong>es que, a principios <strong>de</strong>l siglo XXI, aveces todavía seguimos pa<strong>de</strong>ciendo).Con anterioridad a los sistemas <strong>de</strong> escritorio, cada aplicación gestionab<strong>al</strong>a apariencia y la forma <strong>de</strong> interactuar con el usuario <strong>de</strong> ma-256


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492nera autónoma. En los escritorios, por el contrario, las aplicacioneshan <strong>de</strong> contar con propieda<strong>de</strong>s comunes y un aspecto compartidoentre aplicaciones, <strong>de</strong> forma que esto suponga un <strong>al</strong>ivio para elusuario, que pue<strong>de</strong> reutilizar la interacción aprendida <strong>de</strong> una aplicaciónen otra aplicación. También resultó ser un <strong>al</strong>ivio para los <strong>de</strong>sarrolladores<strong>de</strong> aplicaciones, ya que no se tenían que enfrentar con laproblemática <strong>de</strong> re<strong>al</strong>izar los elementos interactivos <strong>de</strong>s<strong>de</strong> cero (unatarea siempre complicada), sino que podían partir <strong>de</strong> un marco yunas reglas pre<strong>de</strong>finidas.9.3.1. Historia <strong>de</strong> KDERápidamente, los seguidores <strong>de</strong> UNIX se hicieron eco <strong>de</strong>l notable éxito<strong>de</strong> Windows 95 y, a la vista <strong>de</strong> que los entornos UNIX carecían <strong>de</strong>sistemas tan intuitivos a la vez que <strong>libre</strong>s, <strong>de</strong>cidieron ponerse manosa la obra. Fruto <strong>de</strong> esta preocupación nació en 1996 el proyecto KDE–K Desktop Environment– <strong>de</strong> las manos <strong>de</strong> Matthias Ettrich (creador<strong>de</strong> LyX, un programa <strong>de</strong> edición en modo gráfico <strong>de</strong> TeX) y otros hackers.El proyecto KDE se planteó los siguientes objetivos:• Dotar a los sistemas UNIX <strong>de</strong> un entorno amigable que sea <strong>al</strong> mismotiempo abierto, estable, <strong>de</strong> confianza y po<strong>de</strong>roso.• Desarrollar un conjunto <strong>de</strong> bibliotecas para escribir aplicacionesestándar sobre el sistema gráfico para UNIX X11.• Crear una serie <strong>de</strong> aplicaciones que permitan <strong>al</strong> usuario acometersus objetivos <strong>de</strong> manera eficaz.NotaOriginariamente, el nombre KDE significaba KoolDesktop Environment, pero con el tiempo se <strong>de</strong>cidióque pasara a llamarse simplemente K Desktop Environment,siendo la explicación ofici<strong>al</strong> que la K es la letraque prece<strong>de</strong> en el <strong>al</strong>fabeto latino a la L <strong>de</strong> Linux.Cuando los integrantes <strong>de</strong>l recién creado proyecto KDE <strong>de</strong>cidieronutilizar una biblioteca orientada a objetos llamada Qt, propiedad <strong>de</strong>la firma noruega Trolltech(TM), que no estaba amparada bajo unaANOTACIONESLectura complementaria[Ver bibliografía, apartado95]257


© FUOC • XP06/M2101/01492Software <strong>libre</strong>licencia <strong>de</strong> <strong>software</strong> <strong>libre</strong>, se originó una gran polémica. Se daba,por tanto, la circunstancia <strong>de</strong> que, a pesar <strong>de</strong> que las aplicaciones<strong>de</strong> KDE estaban licenciadas bajo la GPL, enlazaban con esta biblioteca<strong>de</strong> manera que se hacía imposible su redistribución. Consecuentemente,se estaba violando una <strong>de</strong> las cuatro liberta<strong>de</strong>s <strong>de</strong>l<strong>software</strong> <strong>libre</strong> enunciadas por Richard St<strong>al</strong>lman en el Manifiesto <strong>de</strong>l<strong>software</strong> <strong>libre</strong>. Des<strong>de</strong> la versión 2.0, Trolltech distribuye Qt bajo un<strong>al</strong>icencia du<strong>al</strong> que especifica que si la aplicación que hace uso <strong>de</strong> labiblioteca es GPL, entonces la licencia válida para Qt es la GPL. Graciasa ello, uno <strong>de</strong> los <strong>de</strong>bates más c<strong>al</strong>ientes y airados <strong>de</strong>ntro <strong>de</strong>lmundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong> tuvo, por suerte, un fin<strong>al</strong> feliz.9.3.2. Desarrollo <strong>de</strong> KDEKDE es <strong>de</strong> los pocos proyectos <strong>de</strong> <strong>software</strong> <strong>libre</strong> que cumplen con unc<strong>al</strong>endario <strong>de</strong> lanzamiento <strong>de</strong> nuevas versiones <strong>de</strong> manera gener<strong>al</strong>izada(recor<strong>de</strong>mos, por ejemplo, que hay una nueva versión <strong>de</strong> Linux,cuando esté lista, mientras que, como veremos más a<strong>de</strong>lante,en el caso <strong>de</strong> GNOME se han dado retrasos significativos a la hora<strong>de</strong> publicar nuevas versiones). La numeración <strong>de</strong> las versiones sigueuna política perfectamente <strong>de</strong>finida: las versiones <strong>de</strong> KDE constan <strong>de</strong>tres números <strong>de</strong> versión: uno mayor y dos menores. Por ejemplo, enKDE 3.1.2, el número mayor sería el 3 y los menores el 1 y el 2. Versionescon el mismo número mayor cuentan con compatibilidad binaria,por lo que no hace f<strong>al</strong>ta recompilar las aplicaciones. Hastaahora, los cambios en el número mayor se han venido dando par<strong>al</strong>elamentecon cambios en la biblioteca Qt, por lo que se pue<strong>de</strong> verque los <strong>de</strong>sarrolladores quisieron aprovechar las nuevas funcion<strong>al</strong>ida<strong>de</strong>s<strong>de</strong> la biblioteca Qt en la versión inminente <strong>de</strong> KDE.ANOTACIONESEn cuanto a los números menores, las versiones con un único númeromenor son versiones en las que se han incluido tanto nuevas funcion<strong>al</strong>ida<strong>de</strong>s,como corrección <strong>de</strong> las erratas encontradas. Lasversiones con segundo número menor no incluyen nuevas funcion<strong>al</strong>ida<strong>de</strong>ssobre las versiones con primer número menor y sólo contienencorrección <strong>de</strong> errores. Para aclararlo con un ejemplo: KDE 3.1es una versión <strong>de</strong> la tercera generación <strong>de</strong> KDE (número mayor 3)a la que se le han añadido nuevas funcion<strong>al</strong>ida<strong>de</strong>s, mientras KDE3.1.1 es la versión anterior –con las mismas funcion<strong>al</strong>ida<strong>de</strong>s–, perocon las erratas que se han encontrado corregidas.258


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492KDE se constituyó poco <strong>de</strong>spués <strong>de</strong> empezar en una asociación registradaen Alemania (KDE e.V.) y como t<strong>al</strong> tiene unos estatutos quela obligan a contar con un consejo directivo. La influencia <strong>de</strong>l consejodirectivo sobre el <strong>de</strong>sarrollo es nula, ya que su tarea es fundament<strong>al</strong>mentela administración <strong>de</strong> la asociación, en especi<strong>al</strong> <strong>de</strong> las donacionesque percibe el proyecto. Para la promoción y difusión <strong>de</strong>KDE –incluyendo a empresas interesadas– se creó la Liga KDE, quese introducirá a continuación.9.3.3. La Liga KDELa Liga KDE (KDE League en su <strong>de</strong>nominación origin<strong>al</strong> en inglés) esun grupo <strong>de</strong> empresas y <strong>de</strong> particulares <strong>de</strong> KDE con el objetivo <strong>de</strong>facilitar la promoción, distribución y <strong>de</strong>sarrollo <strong>de</strong> KDE. Las empresasy particulares que participan en la Liga KDE no tienen que estardirectamente involucrados en el <strong>de</strong>sarrollo <strong>de</strong> KDE, aunque se animaa todos los miembros a hacerlo, sino que simplemente representanun marco industri<strong>al</strong> y soci<strong>al</strong> amigo <strong>de</strong> KDE. Los objetivos <strong>de</strong> la LigaKDE son los siguientes:• Promover, proveer y facilitar la educación form<strong>al</strong> e inform<strong>al</strong> <strong>de</strong> lasfuncion<strong>al</strong>ida<strong>de</strong>s, capacida<strong>de</strong>s y otras cu<strong>al</strong>ida<strong>de</strong>s <strong>de</strong> KDE.• Animar a corporaciones, gobiernos, empresas e individuos a usarKDE.• Animar a corporaciones, gobiernos, empresas e individuos a participaren el <strong>de</strong>sarrollo <strong>de</strong> KDE.• Proveer conocimientos, información, dirección y posicionamiento<strong>al</strong>re<strong>de</strong>dor <strong>de</strong> KDE en cuanto a su uso y su <strong>de</strong>sarrollo.• Promocionar la comunicación y la cooperación entre los <strong>de</strong>sarrolladores<strong>de</strong> KDE.• Promocionar la comunicación y la cooperación entre los <strong>de</strong>sarrolladores<strong>de</strong> KDE y el público mediante publicaciones, artículos, sitiosweb, encuentros, participación en congresos y exposiciones,notas <strong>de</strong> prensa, entrevistas, materi<strong>al</strong> promocion<strong>al</strong> y comités.ANOTACIONES259


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Las empresas que participan en la KDE League son princip<strong>al</strong>mentedistribuciones (SuSE, Mandrake, TurboLinux, Lindows y Hancom –una distribución <strong>de</strong> <strong>software</strong> <strong>libre</strong> coreana), empresas <strong>de</strong> <strong>de</strong>sarrollo(Trolltech y Klarälvd<strong>al</strong>ens Datakonsult AB), a<strong>de</strong>más <strong>de</strong>l gigante IBMy una empresa creada con la fin<strong>al</strong>idad <strong>de</strong> promocionar KDE(KDE.com). De entre todas ellas, cabe <strong>de</strong>stacar por su implicaciónfundament<strong>al</strong> Trolltech, SuSE y Mandrake <strong>software</strong>, cuyo mo<strong>de</strong>lo <strong>de</strong>negocio está íntimamente ligado <strong>al</strong> proyecto KDE:• Trolltech es una compañía noruega afincada en Oslo que <strong>de</strong>sarrollaQt, la biblioteca que hace las veces <strong>de</strong> interfaz gráfica <strong>de</strong>usuario y API para el <strong>de</strong>sarrollo <strong>de</strong> aplicaciones, aunque tambiénpue<strong>de</strong> funcionar como elemento empotrado en PDA (como porejemplo en los Sharp Zaurus). La importancia <strong>de</strong>l proyecto KDEen Trolltech se pue<strong>de</strong> constatar en dos elementos muy importantes<strong>de</strong> su estrategia comerci<strong>al</strong>. Por un lado reconoce a KDE comosu princip<strong>al</strong> forma <strong>de</strong> promoción, <strong>al</strong>entando <strong>al</strong> <strong>de</strong>sarrollo <strong>de</strong>l escritorioy aceptando e implementando las mejoras o modificacionespropuestas. Por otro lado, <strong>al</strong>gunos <strong>de</strong> los <strong>de</strong>sarrolladores másimportantes <strong>de</strong> KDE trabajan profesion<strong>al</strong>mente para Trolltech –elcaso más conocido es el <strong>de</strong>l propio Mathias Ettrich, fundador <strong>de</strong>lproyecto– lo que, sin duda, beneficia tanto <strong>al</strong> proyecto KDE, comoa la propia compañía. La implicación <strong>de</strong> Trolltech en el proyectoKDE no se limita exclusivamente a la biblioteca Qt, como se pue<strong>de</strong>ver por el hecho <strong>de</strong> que uno <strong>de</strong> los <strong>de</strong>sarrolladores princip<strong>al</strong>es<strong>de</strong> KOffice –la suite <strong>de</strong> oficina <strong>de</strong> KDE– tenga en la actu<strong>al</strong>idad uncontrato a tiempo parci<strong>al</strong> con ellos.ANOTACIONES• SuSE siempre ha <strong>de</strong>mostrado una especi<strong>al</strong> predilección por el sistema<strong>de</strong> escritorio KDE, en parte <strong>de</strong>bido a que una gran mayoría<strong>de</strong> los <strong>de</strong>sarrolladores son <strong>de</strong> origen <strong>al</strong>emán o centro-europeo, <strong>al</strong>igu<strong>al</strong> que la propia compañía. Conocedora <strong>de</strong>l hecho <strong>de</strong> quecuanto mejor y más fácil sea el entorno <strong>de</strong> escritorio que ofrezcasu distribución, mayor será su implantación y, por tanto, las ventasy la petición <strong>de</strong> soporte, SuSE ha practicado siempre una políticamuy activa en cuanto a <strong>de</strong>dicar presupuesto para profesion<strong>al</strong>izarposiciones clave <strong>de</strong>ntro <strong>de</strong>l proyecto KDE. De esta manera, en laactu<strong>al</strong>idad el administrador <strong>de</strong>l sistema <strong>de</strong> control <strong>de</strong> versionesy otro par <strong>de</strong> <strong>de</strong>sarrolladores princip<strong>al</strong>es cuentan con una nómina<strong>de</strong> SuSE. Asimismo, <strong>de</strong>ntro <strong>de</strong> la plantilla <strong>de</strong> SuSE existe una260


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492docena <strong>de</strong> <strong>de</strong>sarrolladores que pue<strong>de</strong>n <strong>de</strong>dicar parte <strong>de</strong> su tiempolabor<strong>al</strong> <strong>al</strong> <strong>de</strong>sarrollo <strong>de</strong> KDE.• La distribución Mandrake es otro <strong>de</strong> los gran<strong>de</strong>s benefactores <strong>de</strong>KDE, contando entre su plantilla con varios <strong>de</strong> los <strong>de</strong>sarrolladoresprincip<strong>al</strong>es. Su situación económica en el 2003 – con suspensión<strong>de</strong> pagos incluida– ha hecho que en los últimos tiempos haya perdidoen influencia.9.3.4. Estado actu<strong>al</strong> <strong>de</strong> KDETras la publicación <strong>de</strong> KDE 3 en mayo <strong>de</strong>l 2002, la opinión gener<strong>al</strong>izadaes que los escritorios <strong>libre</strong>s se encuentran a la <strong>al</strong>tura <strong>de</strong> suscompetidores propietarios. Entre sus gran<strong>de</strong>s logros se encuentra laincorporación <strong>de</strong> un sistema <strong>de</strong> componentes (KParts) que permiteempotrar unas aplicaciones en otras (un trozo <strong>de</strong> hoja <strong>de</strong> cálculo <strong>de</strong>KSpread en el procesador <strong>de</strong> textos KWord) y el <strong>de</strong>sarrollo <strong>de</strong> DCOP,un sistema <strong>de</strong> comunicación entre procesos simple y con autentificación.DCOP fue la apuesta <strong>de</strong>l proyecto en <strong>de</strong>trimento <strong>de</strong> las tecnologíasCORBA, un tema <strong>de</strong> amplio <strong>de</strong>bate <strong>de</strong>ntro <strong>de</strong> los escritorios<strong>libre</strong>s, en especi<strong>al</strong> entre GNOME –que se <strong>de</strong>cidió por utilizar tecnologíasCORBA– y KDE. La historia parece haber puesto a cada tecnologíaen su sitio, como se pue<strong>de</strong> ver con la propuesta <strong>de</strong> DBUS(una especie <strong>de</strong> DCOP mejorado) por parte <strong>de</strong>l FreeDesktop.org, unproyecto interesado en fomentar la interoperabilidad y el uso <strong>de</strong> tecnologíasconjuntas en los escritorios <strong>libre</strong>s, que casu<strong>al</strong>mente está li<strong>de</strong>radopor uno <strong>de</strong> los hackers <strong>de</strong> GNOME más reconocidos.El siguiente cuadro resumen contiene las características más importantes<strong>de</strong>l proyecto KDE. Las licencias que acepta el proyecto <strong>de</strong>pen<strong>de</strong><strong>de</strong> si se trata <strong>de</strong> una aplicación o una biblioteca. Las licencias <strong>de</strong>las bibliotecas permiten una mayor “flexibilidad” a terceros; en otrasp<strong>al</strong>abras, posibilita que terceros puedan crear aplicaciones propietariasque enlacen con las bibliotecas.La versión actu<strong>al</strong> <strong>de</strong> KDE es la 3.1.3, aunque se está trabajando activamenteen la rama <strong>de</strong> la siguiente versión con la inclusión <strong>de</strong> nuevasfuncion<strong>al</strong>ida<strong>de</strong>s, KDE 3.2. Para el 2004 se espera la cuartageneración <strong>de</strong> KDE, KDE 4, que se basará en Qt4. Los cambios <strong>de</strong>generación suponen un gran esfuerzo <strong>de</strong> adaptación, una tarea te-ANOTACIONES261


© FUOC • XP06/M2101/01492Software <strong>libre</strong>diosa y costosa en tiempo. Sin embargo, esto no ha <strong>de</strong> suponer quelas aplicaciones “antiguas” <strong>de</strong>jen <strong>de</strong> funcionar. Gener<strong>al</strong>mente, paraque sigan funcionando se incluyen también las antiguas versiones <strong>de</strong>las bibliotecas sobre las que se basa, aunque ello suponga tener quecargar varias versiones <strong>de</strong> las bibliotecas en memoria simultáneamentecon el consiguiente <strong>de</strong>sperdicio <strong>de</strong> recursos <strong>de</strong>l sistema. Estehecho es visto por los <strong>de</strong>sarrolladores <strong>de</strong> KDE como <strong>al</strong>go inherentea la propia evolución <strong>de</strong>l proyecto y, por tanto, como un m<strong>al</strong> menor.9.3.5. Radiografía <strong>de</strong> KDEEn cuanto <strong>al</strong> tamaño <strong>de</strong> KDE, las cifras que se van a mostrar a continuacióncorrespon<strong>de</strong>n <strong>al</strong> estado <strong>de</strong>l CVS en agosto <strong>de</strong>l 2003, porlo que han <strong>de</strong> tomarse con las precauciones tradicion<strong>al</strong>es que ya sehan comentado y una más: <strong>al</strong>guno <strong>de</strong> los módulos que se han consi<strong>de</strong>radoen este estudio todavía se encuentran en fase <strong>de</strong> <strong>de</strong>sarrolloy no cumplen con el requisito <strong>de</strong> ser un producto acabado. Esto no<strong>de</strong>be suponer un obstáculo para nuestros propósitos, ya que estamosmás bien interesados en el or<strong>de</strong>n <strong>de</strong> magnitud <strong>de</strong> los resultados másque en la cifra exacta.ANOTACIONESEl código fuente incluido en el CVS <strong>de</strong> KDE suma en tot<strong>al</strong> más <strong>de</strong> seismillones <strong>de</strong> línea <strong>de</strong> código en diferentes lenguajes <strong>de</strong> programación,t<strong>al</strong> como se mostrará más a<strong>de</strong>lante. El tiempo que se necesitaría paracrear KDE rondaría los nueve años y medio, una cifra superior a los sieteaños con los que cuenta el proyecto, y el número medio <strong>de</strong> <strong>de</strong>sarrolladoresa tiempo completo estimado rondaría los 200. Si tenemos encuenta que KDE cuenta con unas 800 personas con acceso <strong>de</strong> escrituraen el CVS en el 2003 (<strong>de</strong> los cu<strong>al</strong>es la mitad ha estado inactivo en losúltimos dos años) y que el número <strong>de</strong> <strong>de</strong>sarrolladores <strong>de</strong> KDE contratadosa tiempo completo no ha superado en ningún momento la veintena,po<strong>de</strong>mos ver que la productividad <strong>de</strong> KDE es, en mucho, superior a laestimación que ofrece COCOMO.NotaUna empresa que quisiera <strong>de</strong>sarrollar un producto <strong>de</strong>ese tamaño <strong>de</strong>s<strong>de</strong> cero necesitaría invertir más <strong>de</strong> 250millones <strong>de</strong> dólares, una cifra que, a modo <strong>de</strong> comparación,es lo que invirtió una firma <strong>de</strong> automóviles en262


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492la creación <strong>de</strong> una nueva planta <strong>de</strong> producción en eleste <strong>de</strong> Europa o lo que una conocida petrolera planeagastar para abrir 200 gasolineras en España.Es interesante ver que una gran parte <strong>de</strong>l esfuerzo –casi la mitad queel <strong>de</strong>l <strong>de</strong>sarrollo– <strong>de</strong>l proyecto KDE lo po<strong>de</strong>mos situar en la traducción<strong>de</strong> la interfaz <strong>de</strong> usuario y <strong>de</strong> la documentación. Aunque muypocas (unas miles) <strong>de</strong> las líneas <strong>de</strong> programación se <strong>de</strong>dican a est<strong>al</strong>abor, el número <strong>de</strong> ficheros <strong>de</strong>dicados a este cometido ascien<strong>de</strong> <strong>al</strong>os 75.000 para traducciones (cifra que se eleva hasta los 100.000si incluimos la documentación en sus diferentes formatos), lo que vienea suponer casi la cuarta (tercera) parte <strong>de</strong> los 310.000 ficherosque hay en el CVS. La actividad conjunta <strong>de</strong>l CVS es <strong>de</strong> 1.200 commitsdiarios, por lo que el tiempo medio entre commits es <strong>de</strong> cerca <strong>de</strong>un minuto.En cuanto a las herramientas, lugares <strong>de</strong> información y eventos <strong>de</strong>ayuda <strong>al</strong> <strong>de</strong>sarrollo, vemos que el abanico <strong>de</strong> posibilida<strong>de</strong>s que ofreceKDE es mucho más amplio que el usado en Linux. A<strong>de</strong>más <strong>de</strong>l sistema<strong>de</strong> control <strong>de</strong> versiones y <strong>de</strong> las listas <strong>de</strong> correo, KDE cuenta conuna serie <strong>de</strong> sitios web don<strong>de</strong> se pue<strong>de</strong> encontrar información y documentacióntécnica y no técnica <strong>de</strong>l proyecto. Entre estos sitios tambiénexiste un sitio <strong>de</strong> noticias, don<strong>de</strong> se presentan nuevas solucionesy se <strong>de</strong>baten propuestas. El sitio <strong>de</strong> noticias, sin embargo, no pue<strong>de</strong>consi<strong>de</strong>rarse como sustituto <strong>de</strong> las listas <strong>de</strong> correo –que, <strong>al</strong> igu<strong>al</strong> queen Linux, es don<strong>de</strong> se encuentran las verda<strong>de</strong>ros <strong>de</strong>bates y la toma<strong>de</strong> <strong>de</strong>cisiones y estrategias <strong>de</strong> futuro–, sino como un punto <strong>de</strong> encuentrocon los usuarios. Por último, KDE organiza <strong>de</strong>s<strong>de</strong> hace tresaños reuniones periódicas, don<strong>de</strong> los <strong>de</strong>sarrolladores y colaboradoresse juntan durante aproximadamente una semana para presentarlas últimas noveda<strong>de</strong>s, <strong>de</strong>sarrollar, <strong>de</strong>batir, conocerse y pasárselobien (no necesariamente en este or<strong>de</strong>n).Tabla 9-5. Estado actu<strong>al</strong> <strong>de</strong> KDEPágina webhttp://www.k<strong>de</strong>.orgInicio <strong>de</strong>l proyecto 1996Licencia (para aplicaciones)GPL, QPL, MIT, ArtisticLicencia (para bibliotecas)LGPL, BSD, X11ANOTACIONES263


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Versión actu<strong>al</strong> <strong>de</strong> KDE 3.1.3Líneas <strong>de</strong> código fuente 6.100.000Número <strong>de</strong> ficheros (código,documentación, etc.)310.000 ficherosEstimación <strong>de</strong> coste $ 255.000.000Estimación <strong>de</strong> tiempo <strong>de</strong> ejecuciónEstimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresNúmero <strong>de</strong> commiters activos en elúltimo añoNúmero <strong>de</strong> commiters activos en losdos últimos añosNúmero aproximado <strong>de</strong> traductores(activos)Número <strong>de</strong> commits (<strong>de</strong><strong>de</strong>sarrolladores) en el CVSNúmero <strong>de</strong> commits (<strong>de</strong> traductores)en el CVSNúmero medio <strong>de</strong> commits (tot<strong>al</strong>es)<strong>al</strong> díaHerramientas, documentación yeventos <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo9,41 años (112.98 meses)200,64Unos 900 commitersAlre<strong>de</strong>dor <strong>de</strong> 450 (aproximadamenteel 50% <strong>de</strong>l tot<strong>al</strong>)Unos 600 (65% <strong>de</strong>l tot<strong>al</strong>)Unos 300 traductores para más <strong>de</strong>50 lenguas (incluido el esperanto)Aproximadamente 2.000.000 (cifraestimada sin commits automáticos)Aproximadamente 1.000.000 (cifraestimada sin commits automáticos)1.700CVS, listas <strong>de</strong> correo, sitio web, sitio<strong>de</strong> noticias, reuniones anu<strong>al</strong>es, etc.En cuanto a los lenguajes <strong>de</strong> programación utilizados en KDE, predominael uso <strong>de</strong> C++. Esto se <strong>de</strong>be princip<strong>al</strong>mente a que éste es el lenguajenativo <strong>de</strong> Qt, aunque se re<strong>al</strong>iza un gran esfuerzo en re<strong>al</strong>izar enlacespara permitir el <strong>de</strong>sarrollo en otros lenguajes <strong>de</strong> programación. Ciertamente,el número <strong>de</strong> líneas <strong>de</strong> código en los lenguajes minoritarios correspon<strong>de</strong>casi íntegramente <strong>al</strong> propio proyecto <strong>de</strong> creación <strong>de</strong>l enlace,aunque esto no quiere <strong>de</strong>cir que no se utilice en absoluto, ya que existenmultitud <strong>de</strong> proyectos externos a KDE que los utilizan.ANOTACIONESTabla 9-6. Lenguajes <strong>de</strong> programación utilizados en KDELenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC++ 5011288 82,05%C 575237 9,42%Objective C 144415 2,36%Shell 103132 1,69%Java 87974 1,44%Perl 85869 1,41%264


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014929.4. GNOMEEl proyecto GNOME tiene como princip<strong>al</strong> objetivo crear un sistema<strong>de</strong> escritorio para el usuario fin<strong>al</strong> que sea completo, <strong>libre</strong> y fácil <strong>de</strong>usar. Asimismo, se preten<strong>de</strong> que GNOME sea una plataforma muypotente <strong>de</strong> cara <strong>al</strong> <strong>de</strong>sarrollador. GNOME es el acrónimo en inglés<strong>de</strong> GNU Network Object Mo<strong>de</strong>l Environment. Des<strong>de</strong> los inicios <strong>de</strong>GNOME se han propuesto varias formas <strong>de</strong> traducirlo <strong>al</strong> castellano,pero no se ha encontrado ninguna que haya satisfecho a todos.Sin embargo, <strong>de</strong> su nombre po<strong>de</strong>mos ver que GNOME es parte <strong>de</strong>lproyecto GNU. En la actu<strong>al</strong>idad, todo el código contenido enGNOME <strong>de</strong>be estar bajo licencia GNU GPL o GNU LGPL. Tambiénvemos que las re<strong>de</strong>s y el mo<strong>de</strong>lado orientado a objetos tienen capit<strong>al</strong>importancia.9.4.1. Historia <strong>de</strong> GNOMEMientras se seguía discutiendo acerca <strong>de</strong> la libertad <strong>de</strong> KDE, la historiaquiso que en el verano <strong>de</strong> 1997, Miguel <strong>de</strong> Icaza y Nat Friedmancoincidieran en Redmond en unas jornadas organizadas porMicrosoft(TM). Es probable que este encuentro propiciara en ambosun giro radic<strong>al</strong> que supuso tanto la creación <strong>de</strong> GNOME por parte<strong>de</strong> Miguel <strong>de</strong> Icaza a su vuelta a México (junto con Fe<strong>de</strong>rico MenaQuintero), como su admiración por las tecnologías <strong>de</strong> objetos distribuidos.Icaza y Mena <strong>de</strong>cidieron crear un entorno <strong>al</strong>ternativo a KDE,ya que consi<strong>de</strong>raron que una reimplementación <strong>de</strong> una bibliotecapropietaria hubiera sido una tarea <strong>de</strong>stinada a fracasar. Había nacidoGNOME.Des<strong>de</strong> aquellos tiempos lejanos <strong>de</strong> 1997 hasta la actu<strong>al</strong>idad, GNO-ME ha ido creciendo paulatinamente con sus reiteradas publicaciones.En noviembre <strong>de</strong> 1998 se lanzó la versión 0.99, pero la primerare<strong>al</strong>mente popular distribuida prácticamente por cu<strong>al</strong>quier distribución<strong>de</strong> GNU/Linux sería GNOME 1.0, en marzo <strong>de</strong> 1999. Cabe<strong>de</strong>stacar que la experiencia <strong>de</strong> esta primera versión estable <strong>de</strong> GNO-ME no fue muy satisfactoria, ya que muchos la consi<strong>de</strong>raron llena <strong>de</strong>erratas críticas. Por eso, GNOME October (GNOME 1.0.55) es tratadacomo la primera versión <strong>de</strong>l entorno <strong>de</strong> escritorio GNOME re<strong>al</strong>menteestable. Como se pue<strong>de</strong> observar, con GNOME October seANOTACIONES265


© FUOC • XP06/M2101/01492Software <strong>libre</strong>intentó evitar versiones <strong>de</strong> publicación numeradas para no entrar enuna carrera <strong>de</strong> versiones con KDE. La re<strong>al</strong>ización <strong>de</strong> la primera GUA-DEC, la conferencia <strong>de</strong> <strong>de</strong>sarrolladores y usuarios europeos <strong>de</strong>GNOME, celebrada en París en el año 2000, no coincidió en el tiempopor poco con la publicación <strong>de</strong> una nueva versión <strong>de</strong> GNOME,llamada GNOME April. Fue la última que llevó un mes como nombre<strong>de</strong> publicación, ya que se mostró que ese sistema causaba más confusiónque otra cosa (por ejemplo, GNOME April es posterior aGNOME October, aunque el sentido común nos haría pensar lo contrario).En octubre <strong>de</strong> ese año, tras ser <strong>de</strong>batida durante meses en diferenteslistas <strong>de</strong> correo, se fundó la Fundación GNOME que serápresentada más a<strong>de</strong>lante.GNOME 1.2 fue un paso a<strong>de</strong>lante en cuanto a la arquitectura utilizadapor GNOME, que se siguió usando en GNOME 1.4. Esta épocaestuvo caracterizada por la segunda edición <strong>de</strong> la GUADEC, esta vezen Copenhague. Lo que empezó siendo una reunión minoritaria <strong>de</strong><strong>al</strong>gunos hackers, se había convertido en un gran evento que atrajomiradas <strong>de</strong> toda la industria <strong>de</strong>l <strong>software</strong>.Mientras tanto, el litigio sobre la libertad <strong>de</strong> KDE se resolvió con elcambio <strong>de</strong> postura <strong>de</strong> Trolltech(TM), que terminó licenciando Qt bajouna licencia du<strong>al</strong>, que era <strong>de</strong> <strong>software</strong> <strong>libre</strong> para las aplicaciones queson <strong>software</strong> <strong>libre</strong>. Hoy en día no cabe ninguna duda <strong>de</strong> que tantoGNOME como KDE son entornos <strong>de</strong> escritorio <strong>libre</strong>s, por lo que po<strong>de</strong>mosconsi<strong>de</strong>rar que el <strong>de</strong>sarrollo <strong>de</strong> GNOME ha propiciado el hecho<strong>de</strong> no tener un solo entorno <strong>de</strong> escritorio <strong>libre</strong>, sino dos.9.4.2. La Fundación GNOMEANOTACIONESEl problema más difícil <strong>de</strong> abordar cuando se oye hablar <strong>de</strong> GNOMEpor primera vez, es la organización <strong>de</strong> los más <strong>de</strong> 1.000 contribuyentes<strong>al</strong> proyecto. Resulta paradójico que un proyecto cuya estructuraes más bien anárquica, llegue a fructificar y saque a<strong>de</strong>lante unosobjetivos complejos, que están <strong>al</strong> <strong>al</strong>cance <strong>de</strong> pocas multinacion<strong>al</strong>es<strong>de</strong>l sector <strong>de</strong> la informática.Aunque GNOME nació con una clara intención <strong>de</strong> re<strong>al</strong>izar un entornoamigable y potente <strong>al</strong> que se iban añadiendo nuevos programas,pronto se vio la necesidad <strong>de</strong> crear un órgano que tuviera ciertas266


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492competencias que permitieran potenciar el uso, <strong>de</strong>sarrollo y difusión<strong>de</strong> GNOME: <strong>de</strong> esta forma, en octubre <strong>de</strong> 2000 se dio paso a lacreación <strong>de</strong> la Fundación GNOME, cuya se<strong>de</strong> se encuentra en Boston,EE.UU.La Fundación GNOME es una organización sin ánimo <strong>de</strong> lucro, noun consorcio industri<strong>al</strong>, que tiene las siguientes funciones:• Coordina las publicaciones.• Deci<strong>de</strong> qué proyectos son parte <strong>de</strong> GNOME.• Es la voz ofici<strong>al</strong> (para la prensa y para organizaciones tanto comerci<strong>al</strong>escomo no comerci<strong>al</strong>es) <strong>de</strong>l proyecto GNOME.• Patrocina conferencias relacionadas con GNOME (como la GUA-DEC).• Representa a GNOME en otras conferencias.• Crea estándares técnicos.• Promueve el uso y el <strong>de</strong>sarrollo <strong>de</strong> GNOME.A<strong>de</strong>más, la Fundación GNOME permite la recepción <strong>de</strong> fondos económicoscon los cu<strong>al</strong>es patrocinar e impulsar las funciones antesmencionadas, hecho que antes <strong>de</strong> su creación era imposible re<strong>al</strong>izar<strong>de</strong> manera transparente.En la actu<strong>al</strong>idad, la Fundación GNOME cuenta con un empleado atiempo completo que se encarga <strong>de</strong> solventar todos los trabajos burocráticosy organizativos que se dan en una organización sin fines<strong>de</strong> lucro que re<strong>al</strong>iza reuniones y conferencias <strong>de</strong> manera periódica.En términos gener<strong>al</strong>es, la Fundación GNOME se estructura en dosgran<strong>de</strong>s consejos: el consejo directivo y el consejo consultor.El consejo directivo (Board of Directors) está integrado a lo sumo porcatorce miembros elegidos <strong>de</strong>mocráticamente por los miembros <strong>de</strong>ANOTACIONES267


© FUOC • XP06/M2101/01492Software <strong>libre</strong>la Fundación GNOME. La membresía sigue un mo<strong>de</strong>lo meritocrático,lo que viene a <strong>de</strong>cir que para ser miembro <strong>de</strong> la FundaciónGNOME se <strong>de</strong>be <strong>de</strong> haber colaborado <strong>de</strong> <strong>al</strong>guna u otra manera conel proyecto GNOME. La aportación no tiene por qué ser necesariamentecódigo fuente, también existen tareas <strong>de</strong> traducción, organización,difusión, etc., por las que uno pue<strong>de</strong> solicitar ser miembro <strong>de</strong>la Fundación GNOME y tener <strong>de</strong>recho a voto. Por tanto, son losmiembros <strong>de</strong> la Fundación los que se pue<strong>de</strong>n presentar <strong>al</strong> ConsejoDirectivo y los que, <strong>de</strong>mocráticamente, eligen a sus representantesen el mismo <strong>de</strong> entre los que se hayan presentado. En la actu<strong>al</strong>idad,la votación se lleva a cabo por correo electrónico. La duración <strong>de</strong>lcargo como consejero director es <strong>de</strong> un año, periodo tras el que sevuelven a convocar elecciones.Existen unas normas básicas para garantizar la transparencia <strong>de</strong>lconsejo directivo. La más llamativa es la limitación <strong>de</strong> miembros afiliadosa una misma empresa, que no pue<strong>de</strong> exce<strong>de</strong>r <strong>de</strong> cuatro empleados.Es importante hacer hincapié en que los miembros <strong>de</strong>lConsejo Directivo lo son siempre a nivel person<strong>al</strong> y nunca en representación<strong>de</strong> una compañía. Aun así, y <strong>de</strong>spués <strong>de</strong> una larga discusión,se aceptó incluir esta cláusula para evitar suspicacias.ANOTACIONESEl otro consejo <strong>de</strong>ntro <strong>de</strong> la Fundación GNOME es el Consejo Consultor.El Consejo Consultor es un órgano sin capacidad <strong>de</strong> <strong>de</strong>cisiónque sirve como vehículo <strong>de</strong> comunicación con el Consejo Directivo.Está compuesto por compañías comerci<strong>al</strong>es <strong>de</strong> la industria <strong>de</strong>l <strong>software</strong>así como por organizaciones no comerci<strong>al</strong>es. En la actu<strong>al</strong>idadsus miembros son Red Hat, Ximian, Hewlett-Packard, Mandrake,SUN Microsystems, Red Flag Linux, Wipro, Debian y la Free SoftwareFoundation. Para formar parte <strong>de</strong>l Consejo <strong>de</strong> Consultores se exigeuna cuota a todas las empresas con más <strong>de</strong> 10 empleados.9.4.3. La industria <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> GNOMEGNOME ha conseguido a<strong>de</strong>ntrarse <strong>de</strong> manera sustanci<strong>al</strong> en la industria,<strong>de</strong> manera que varias empresas han participado muy activamenteen su <strong>de</strong>sarrollo. De todas ellas, los casos más significativosson los <strong>de</strong> Ximian Inc., Eazel, los RHAD Labs <strong>de</strong> Red Hat y, más recientemente,SUN Microsystems. A continuación se <strong>de</strong>scribe para268


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492cada caso tanto las motivaciones <strong>de</strong> las compañías, como sus aportacionesmás importantes <strong>al</strong> entorno <strong>de</strong> escritorio GNOME:• Ximian Inc. (en sus comienzos Helix Inc.) es el nombre <strong>de</strong> la empresaque fundaron en 1999 Miguel <strong>de</strong> Icaza, cofundador <strong>de</strong>GNOME, y Nat Friedman, uno <strong>de</strong> los hackers <strong>de</strong> GNOME. Suprincip<strong>al</strong> acometido era reunir bajo un mismo paraguas a los <strong>de</strong>sarrolladoresmás importantes <strong>de</strong> GNOME para potenciar su <strong>de</strong>sarrollo,por lo que no es <strong>de</strong> extrañar que cuente o haya contadoentre sus empleados con una veintena larga <strong>de</strong> los <strong>de</strong>sarrolladoresmás activos <strong>de</strong> GNOME. La aplicación en la que Ximian pusomayor empeño <strong>de</strong>s<strong>de</strong> sus comienzos ha sido Evolution, un completosistema <strong>de</strong> gestión <strong>de</strong> información person<strong>al</strong> <strong>al</strong> estilo <strong>de</strong> MicrosoftOutlook que incluya cliente <strong>de</strong> correo-e, agenda ydirectorio <strong>de</strong> contactos. Los productos que Ximian comerci<strong>al</strong>izabason el Ximian Desktop (una versión <strong>de</strong> GNOME con fines más corporativos),RedCarpet (un sistema <strong>de</strong> distribución <strong>de</strong> <strong>software</strong>,princip<strong>al</strong>mente, aunque no exclusivamente, <strong>de</strong> GNOME) y fin<strong>al</strong>menteMONO (una reimplementación <strong>de</strong> la plataforma <strong>de</strong> <strong>de</strong>sarrollo.NET), aunque este último proyecto, por ahora, no tenganada que ver con GNOME. Ximian también ha <strong>de</strong>sarrollado unaaplicación que sirve para que Evolution interactúe con un servidorExchange 2000. Esta aplicación, aunque bastante pequeña, fuemuy polémica porque se publicó con una licencia no <strong>libre</strong>. Enagosto <strong>de</strong>l 2003 Novell, como parte <strong>de</strong> su estrategia para entraren el escritorio <strong>de</strong> GNU/Linux, compró Ximian.• Eazel fue fundada en 1999 por un grupo <strong>de</strong> personas proveniente<strong>de</strong> Apple con la fin<strong>al</strong>idad <strong>de</strong> hacer el escritorio en GNU/Linux tanfácil como lo es en Macintosh. La aplicación en la que centraronsu esfuerzo recibió el nombre <strong>de</strong> Nautilus y <strong>de</strong>bía ser el gestor <strong>de</strong>ficheros que jubilara el mítico Midnight Comman<strong>de</strong>r <strong>de</strong>sarrolladopor Miguel <strong>de</strong> Icaza. Su f<strong>al</strong>ta <strong>de</strong> mo<strong>de</strong>lo <strong>de</strong> negocio y la crisis <strong>de</strong>las puntocom –los inversores <strong>de</strong> riesgo retiraron el capit<strong>al</strong> necesariopara que Eazel pudiera seguir funcionando– provocó que el15 <strong>de</strong> mayo <strong>de</strong>l 2001, Eazel se <strong>de</strong>clarara en quiebra y cerrara suspuertas. Todavía tuvo tiempo para publicar la versión 1.0 <strong>de</strong>Nautilus, aunque su numeración fuera más bien artifici<strong>al</strong>, ya quela estabilidad que se presupone a una versión 1.0 no aparecíapor ningún lado. Dos años <strong>de</strong>spués <strong>de</strong> la quiebra <strong>de</strong> Eazel, sepue<strong>de</strong> ver cómo Nautilus ha evolucionado y se ha convertido enANOTACIONES269


© FUOC • XP06/M2101/01492Software <strong>libre</strong>un completo y manejable gestor <strong>de</strong> ficheros integrado en GNO-ME, por lo que la historia <strong>de</strong> Eazel y Nautilus se pue<strong>de</strong> consi<strong>de</strong>rarcomo un caso paradigmático <strong>de</strong> un programa que sobrevive a la<strong>de</strong>saparición <strong>de</strong> la empresa que lo creaba –<strong>al</strong>go casi sólo posibleen el mundo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>.• Red Hat creó los Red Hat Advanced Development Labs (laboratorios<strong>de</strong> <strong>de</strong>sarrollo avanzado <strong>de</strong> Red Hat), RHAD, con la intención<strong>de</strong> que el escritorio GNOME ganara en usabilidad y potencia.Para ello, contrató a media docena <strong>de</strong> los hackers más importantes<strong>de</strong> GNOME y les dio libertad para <strong>de</strong>sarrollar en lo que ellos<strong>de</strong>cidieran que era conveniente. De los RHAD Labs s<strong>al</strong>ió ORBit, laimplementación <strong>de</strong> CORBA utilizada por el proyecto GNOME, conocidacomo la más rápida <strong>de</strong>l oeste. También es <strong>de</strong>stacable l<strong>al</strong>abor que se llevó a cabo en la nueva versión <strong>de</strong> GTK+ y en elsistema <strong>de</strong> configuración <strong>de</strong> GNOME, GConf.• SUN Microsystems se involucró tardíamente en el <strong>de</strong>sarrollo <strong>de</strong>GNOME, ya que para septiembre <strong>de</strong>l 2000 GNOME era un productorelativamente maduro. La intención <strong>de</strong> SUN era utilizarGNOME como el sistema <strong>de</strong> escritorio <strong>de</strong>l sistema operativo Solaris.Para ello, creó un equipo <strong>de</strong> colaboración con GNOME, cuyosméritos más importantes giran en torno a la usabilidad y laaccesibilidad <strong>de</strong> GNOME. En junio <strong>de</strong>l 2003, SUN anunció quedistribuiría GNOME 2.2 con la versión 9 <strong>de</strong> Solaris.9.4.4. Estado actu<strong>al</strong> <strong>de</strong> GNOMEANOTACIONESGNOME se encuentra en la actu<strong>al</strong>idad en su versión 2.2, camino <strong>al</strong>a siguiente, la 2.4. La mayoría <strong>de</strong> las tecnologías clave en las que sebasa se encuentran maduras como se pue<strong>de</strong> <strong>de</strong>spren<strong>de</strong>r <strong>de</strong> su número<strong>de</strong> versión. Así, el broker CORBA utilizado es ORBit2, mientrasque el entorno gráfico y API, GTK+, acogió los cambios fruto <strong>de</strong> laexperiencia acumulada en las versiones anteriores <strong>de</strong> GNOME.Como gran novedad, aparece la inclusión <strong>de</strong> una biblioteca <strong>de</strong> accesibilidadpropuesta por SUN, que permite que las personas quetengan problemas <strong>de</strong> accesibilidad puedan utilizar el entorno GNO-ME. Mención especi<strong>al</strong> también requiere bonobo, el sistema <strong>de</strong> componentes<strong>de</strong> GNOME. Bonobo marcó una época <strong>de</strong>ntro <strong>de</strong> GNOMEa la par que se iba <strong>de</strong>sarrollando el gestor <strong>de</strong> información person<strong>al</strong>270


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Evolution. Sin embargo, el tiempo ha <strong>de</strong>mostrado que las expectativaslevantadas por bonobo fueron <strong>de</strong>masiado <strong>al</strong>tas y la reutilización<strong>de</strong> esfuerzo mediante el uso <strong>de</strong> componentes no ha sido la que enun principio se esperaba.NotaLa biblioteca ATK es una biblioteca <strong>de</strong> clases abstractasque permite hacer las aplicaciones accesibles. Estoquiere <strong>de</strong>cir que las personas con <strong>al</strong>guna discapacidad(ciegos, d<strong>al</strong>tónicos, gente con problemas <strong>de</strong> vista,que no pue<strong>de</strong>n manejar el ratón o el teclado, etc.)puedan hacer uso <strong>de</strong> GNOME. El interés <strong>de</strong> SUN porla accesibilidad parte <strong>de</strong> que para po<strong>de</strong>r ofrecer susproductos <strong>al</strong> Gobierno <strong>de</strong> Estados Unidos ha <strong>de</strong> cumpliruna serie <strong>de</strong> estándares en cuanto a accesibilidad.Tan en serio se lo ha tomado, que el equipo <strong>de</strong> <strong>de</strong>sarrollo<strong>de</strong> GNOME que trabaja en SUN cuenta inclusocon un programador invi<strong>de</strong>nte. La arquitectura <strong>de</strong> accesibilidad<strong>de</strong> GNOME recibió en septiembre <strong>de</strong>l2002 el premio Hellen Keller Achievement Award.9.4.5. Radiografía <strong>de</strong> GNOMELos datos y las cifras que se muestran en la tabla 9-7 nos permitiráncerrar la presentación <strong>de</strong> GNOME. Las cifras que se muestran correspon<strong>de</strong>n<strong>al</strong> estado <strong>de</strong>l CVS <strong>de</strong> GNOME el 14 <strong>de</strong> agosto <strong>de</strong>l 2003.Ese día había más <strong>de</strong> nueve millones <strong>de</strong> líneas <strong>de</strong> código hospedadasen el repositorio CVS que tiene el proyecto GNOME. Aun cuandouna comparación con KDE sería lo más natur<strong>al</strong>, hemos <strong>de</strong> advertir<strong>al</strong> lector que las diferencias en cuanto a la organización <strong>de</strong> los proyectosla hacen <strong>de</strong>saconsejable si se quiere hacer en igu<strong>al</strong>dad <strong>de</strong>condiciones. Esto se <strong>de</strong>be, por ejemplo, a que el CVS <strong>de</strong> GNOME incluyeGIMP (un programa <strong>de</strong> creación y manipulación <strong>de</strong> gráficos),responsable él solo <strong>de</strong> más <strong>de</strong> 660 mil líneas <strong>de</strong> código, o <strong>de</strong> la bibliotecaGTK+, sobre la que se centra el <strong>de</strong>sarrollo en GNOME, quecuenta a su vez con 330 mil líneas. Si a esto se le aña<strong>de</strong> que el repositorioCVS <strong>de</strong> GNOME es más proclive a abrir nuevos módulospara programas (en tot<strong>al</strong> cuenta con 700) que el <strong>de</strong> KDE (que cuentacon menos <strong>de</strong> 100), podremos enten<strong>de</strong>r por qué GNOME cuentacon un número <strong>de</strong> líneas superior <strong>al</strong> <strong>de</strong> KDE a pesar <strong>de</strong> ser un año yANOTACIONES271


© FUOC • XP06/M2101/01492Software <strong>libre</strong>medio más joven. El repositorio <strong>de</strong> GNOME acoge a más <strong>de</strong> 225 milficheros que han sido añadidos y modificados casi dos millones <strong>de</strong>veces (véase el número <strong>de</strong> commits unas filas más abajo en la tabla).NotaUna empresa cuyo <strong>de</strong>seo fuera crear un <strong>software</strong> <strong>de</strong>ltamaño <strong>de</strong> GNOME <strong>de</strong>bería contratar <strong>de</strong> media aunos 250 <strong>de</strong>sarrolladores durante más <strong>de</strong> once añospara conseguir un producto <strong>de</strong> tamaño similar, segúnel mo<strong>de</strong>lo COCOMO utilizado a lo largo <strong>de</strong> todo estecapítulo. El coste asociado ascen<strong>de</strong>ría a unos 400 millones<strong>de</strong> dólares, una cifra parecida a la que una empresa<strong>de</strong> telefonía móvil ya asentada invertirá en el2003 para reforzar su capacidad <strong>de</strong> red, o similar a laque <strong>de</strong>sembolsará una compañía <strong>de</strong> automóvilespara abrir una planta <strong>de</strong> producción en Barcelona.GNOME cuenta con unos recursos humanos <strong>de</strong> casi mil <strong>de</strong>sarrolladorescon acceso <strong>de</strong> lectura <strong>al</strong> sistema <strong>de</strong> control <strong>de</strong> versiones CVS, contandocon casi una veintena <strong>de</strong> <strong>de</strong>sarrolladores que se <strong>de</strong>dican aGNOME <strong>de</strong> manera profesion<strong>al</strong> (a tiempo completo o tiempo parci<strong>al</strong>).De éstos, sólo un 25% se ha mostrado activo en el último año, cifraque ascien<strong>de</strong> <strong>al</strong> 40% si tenemos en cuenta los dos últimos años. El númeromedio <strong>de</strong> commits <strong>al</strong> día registrado <strong>de</strong>s<strong>de</strong> los inicios <strong>de</strong>l proyectollega casi <strong>al</strong> millar. Las herramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo que utilizael proyecto GNOME son básicamente las mismas que las que se usanen KDE, por lo que no se incidirá en ellas en este apartado.Tabla 9-7. Estado actu<strong>al</strong> <strong>de</strong> GNOMEPágina webhttp://www.gnome.orgANOTACIONESInicio <strong>de</strong>l proyecto Septiembre 1997LicenciaGNU GPL y GNU LGPLVersión actu<strong>al</strong> <strong>de</strong> GNOME 2.2 (aunque pronto aparecerá la 2.4)Líneas <strong>de</strong> código fuente 9.200.000Número <strong>de</strong> ficheros (código,documentación, etc.)228.000Estimación <strong>de</strong> coste $ 400.000.000Estimación <strong>de</strong> tiempo <strong>de</strong> ejecución11,08 años (133,02 meses)272


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Estimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero <strong>de</strong> subproyectosNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresNúmero <strong>de</strong> commiters activos en elúltimo añoNúmero <strong>de</strong> commiters activos en losdos últimos años250 aproximadamenteCuenta con más <strong>de</strong> 700 módulos enel CVSCasi 1000 con acceso <strong>de</strong> escritura <strong>al</strong>CVSAlre<strong>de</strong>dor <strong>de</strong> 500 (aproximadamenteel 55% <strong>de</strong>l tot<strong>al</strong>)Unos 700 (75% <strong>de</strong>l tot<strong>al</strong>)Número <strong>de</strong> commits en el CVS 1.900.000Número medio <strong>de</strong> commits (tot<strong>al</strong>es)<strong>al</strong> díaHerramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrolloUnos 900CVS, listas <strong>de</strong> correo, sitio web, sitio<strong>de</strong> noticias, reuniones anu<strong>al</strong>es...Mientras que en KDE, C++ es indiscutiblemente el lenguaje más utilizado,en GNOME el puesto más <strong>al</strong>to correspon<strong>de</strong> a C. En GNOME,<strong>al</strong> igu<strong>al</strong> que en KDE, este hecho se <strong>de</strong>be a que la biblioteca princip<strong>al</strong>está escrita en C, por lo que el lenguaje nativo es ése, mientras quepara programar con el resto <strong>de</strong> lenguajes se ha <strong>de</strong> esperar a queaparezcan los enlaces. El enlace más avanzado <strong>de</strong> GNOME es elque está incluido en gnome--, que no es otro que el <strong>de</strong> C++, por loque no resulta sorpren<strong>de</strong>nte que el segundo lenguaje en la clasificaciónsea ése. Perl ha tenido <strong>de</strong>s<strong>de</strong> siempre una amplia aceptación<strong>de</strong>ntro <strong>de</strong> la comunidad GNOME y siempre se ha puesto como ejemplo<strong>de</strong> que en GNOME se pue<strong>de</strong> programar en multitud <strong>de</strong> lenguajes.Su puesta en práctica, sin embargo, no ha sido tan amplia comocabría esperar y supera ligeramente a Shell. Por otro lado, tanto laaceptación <strong>de</strong> Python como <strong>de</strong> LISP en GNOME ha sido bastantegran<strong>de</strong>, como se pue<strong>de</strong> <strong>de</strong>spren<strong>de</strong>r <strong>de</strong> su relativa importancia enesta clasificación, mientras que Java nunca ha llegado a <strong>de</strong>spegar –probablemente <strong>de</strong>bido a un enlace incompleto.Tabla 9-8. Lenguajes <strong>de</strong> programación utilizados en GNOMELenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC 7.918.586 86,10%C++ 576.869 6,27%Perl 199448 2,17%Shell 159263 1,73%Python 137380 1,49%Lisp 88546 0,96%ANOTACIONES273


© FUOC • XP06/M2101/01492Software <strong>libre</strong>9.4.6. Estudios académicos sobre GNOMEComo los estudios más significativos <strong>de</strong> GNOME en el ámbito académicopo<strong>de</strong>mos indicar los siguientes:• Stefan Koch and Georg Schnei<strong>de</strong>rLectura complementaria[Ver bibliografía, apartado138]Es uno <strong>de</strong> los primeros gran<strong>de</strong>s estudios <strong>de</strong> ingeniería <strong>de</strong>l <strong>software</strong>en el campo <strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Los autores <strong>de</strong>l mismo aprovecharonque los datos <strong>de</strong>l <strong>de</strong>sarrollo suelen estar públicamente accesiblespara re<strong>al</strong>izar mediciones <strong>de</strong> esfuerzo y compararlas con los mo<strong>de</strong>los<strong>de</strong> estimación <strong>de</strong> costes, esfuerzos y tiempos clásicos. Uno <strong>de</strong> los mo<strong>de</strong>losclásicos que se comparó fue el que ha sido utilizado en este capítulo,el mo<strong>de</strong>lo COCOMO.• Daniel GermánLectura complementaria[Ver bibliografía, apartado101]Hace un rápido repaso a los objetivos <strong>de</strong> GNOME, su breve historia,así como el uso <strong>de</strong> las tecnologías que hace el proyecto GNOME.9.5. ApacheANOTACIONESEl servidor HTTP Apache es una <strong>de</strong> las aplicaciones estrella <strong>de</strong>l mundo<strong>de</strong>l <strong>software</strong> <strong>libre</strong>, ya que es el servidor web <strong>de</strong> mayor implantaciónsegún la encuesta que re<strong>al</strong>iza en tiempo re<strong>al</strong> [Netcraft:serversurvey-august:03].Así, en mayo <strong>de</strong> 1999 el 57% <strong>de</strong> los servidoresweb corrían bajo Apache, mientras que en mayo <strong>de</strong>l 2003 el porcentajeha aumentado hasta el 68%. Apache está disponible para todoslos sabores <strong>de</strong> UNIX (BSD, GNU/Linux, Solaris, etc.), Microsoft Windowsy otras plataformas minoritarias.9.5.1. Historia <strong>de</strong> ApacheEn marzo <strong>de</strong> 1989 Tim Berners Lee, un científico americano que trabajaen el CERN (Suiza), propone un nueva forma <strong>de</strong> gestionar la ingentecantidad <strong>de</strong> información <strong>de</strong> los proyectos <strong>de</strong>l CERN. Se trata<strong>de</strong> una red <strong>de</strong> documentos hiperenlazados (hipertexto t<strong>al</strong> como Ted274


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Nelson lo <strong>de</strong>nominó ya en 1965); estaba naciendo el WWW. Huboque esperar hasta noviembre <strong>de</strong> 1990, hasta que el primer <strong>software</strong>WWW vio la luz: en un paquete llamado WorldWi<strong>de</strong>Web se incluíaun navegador web <strong>de</strong> interfaz gráfica y un editor WYSIWYG (WhatYou See Is What You Get, ‘lo que ve en la pant<strong>al</strong>la es lo que obtienecomo resultado’). Dos años <strong>de</strong>spués, la lista <strong>de</strong> servidores WWWcontaba con una treintena <strong>de</strong> entradas, entre las cu<strong>al</strong>es ya se encontrabael NCSA HTTPd.La verda<strong>de</strong>ra historia <strong>de</strong> Apache comienza cuando en marzo <strong>de</strong>1995, Rob McCool abandona el NCSA. Apache 0.2 vería la luz el 18<strong>de</strong> marzo <strong>de</strong> 1995, basado en el servidor NCSA httpd 1.3 re<strong>al</strong>izadopor el propio Rob McCool durante su estancia en NCSA. Duranteesos primeros meses, Apache era una colección <strong>de</strong> parches aplicados<strong>al</strong> servidor NCSA, hasta que Robert Thau lanzara Shambh<strong>al</strong>a0.1, una reimplementación casi completa que ya incluía la API par<strong>al</strong>os módulos que ha resultado ser tan exitosa.NotaEl nombre <strong>de</strong>l proyecto Apache se <strong>de</strong>be a la filosofía<strong>de</strong> <strong>de</strong>sarrollo y <strong>de</strong> organización. Al igu<strong>al</strong> que la tribu<strong>de</strong> los apaches, los <strong>de</strong>sarrolladores <strong>de</strong> Apache <strong>de</strong>cidieronque su forma organizativa <strong>de</strong>bía fundamentarseen los méritos person<strong>al</strong>es <strong>de</strong> los <strong>de</strong>sarrolladorespara con el resto <strong>de</strong> la comunidad Apache. Se ha extendido,sin embargo, la leyenda <strong>de</strong> que el nombreApache en re<strong>al</strong>idad se <strong>de</strong>be a que en los primerostiempos no <strong>de</strong>jaba <strong>de</strong> ser un servidor NCSA parcheado,en inglés, a patchy server.Habría que esperar a enero <strong>de</strong> 1996 para po<strong>de</strong>r disfrutar <strong>de</strong> laprimera versión estable <strong>de</strong> Apache, la Apache 1.0, que incluía lacarga <strong>de</strong> módulos en tiempo <strong>de</strong> ejecución a modo <strong>de</strong> pruebas,a<strong>de</strong>más <strong>de</strong> otras funcion<strong>al</strong>ida<strong>de</strong>s interesantes. Los primeros meses<strong>de</strong> ese año fueron especi<strong>al</strong>mente fructíferos para el proyecto,ya que la versión 1.1 se publicó apenas dos meses <strong>de</strong>spués contandocon módulos <strong>de</strong> autentificación contra bases <strong>de</strong> datos (comoMySQL). Des<strong>de</strong> entonces hasta la actu<strong>al</strong>idad, los hitos másgran<strong>de</strong>s <strong>de</strong>l proyecto han sido la tot<strong>al</strong> conformidad con el estándarHTTP 1.1 (incluido en abril <strong>de</strong> 1997 el Apache 1.2), la inclu-ANOTACIONES275


© FUOC • XP06/M2101/01492Software <strong>libre</strong>sión <strong>de</strong> la plataforma Windows NT (que comenzó ya en julio <strong>de</strong>1997 con las versiones en pruebas <strong>de</strong> Apache 1.3), la unificación<strong>de</strong> los archivos <strong>de</strong> configuración en uno solo (habría que esperara octubre <strong>de</strong> 1998 ya Apache 1.3.3 para ello) y el lanzamiento,todavía en pruebas, <strong>de</strong> la siguiente generación <strong>de</strong> Apache, Apache2.En el ínterin, en junio <strong>de</strong> 1998, IBM <strong>de</strong>cidió que el motor tras su productoWebSphere fuera Apache en lugar <strong>de</strong> <strong>de</strong>sarrollar un servidorHTTP propio. Esto se vio como un gran esp<strong>al</strong>darazo por parte <strong>de</strong>l giganteazul <strong>al</strong> proyecto Apache y <strong>al</strong> <strong>software</strong> <strong>libre</strong> en gener<strong>al</strong>, aunquepara facilitar este hecho hubiera que cambiar ligeramente la licenciaApache origin<strong>al</strong>.9.5.2. Desarrollo <strong>de</strong> ApacheEl servidor HTTP Apache es el proyecto centr<strong>al</strong> <strong>de</strong>ntro <strong>de</strong> los muchosque gestiona la Apache Software Foundation. El diseño modular <strong>de</strong>Apache ha permitido que exista una serie <strong>de</strong> proyectos satélite –<strong>al</strong>gunosincluso más gran<strong>de</strong>s en tamaño que el propio Apache– en tornoa Apache. De esta forma, el servidor HTTP Apache contiene elnúcleo <strong>de</strong>l sistema con las funcion<strong>al</strong>ida<strong>de</strong>s básicas, mientras las funcion<strong>al</strong>ida<strong>de</strong>sadicion<strong>al</strong>es las aportan los diferentes módulos. Los módulosmás conocidos son mod_perl (un intérprete <strong>de</strong>l lenguaje <strong>de</strong>guión Perl empotrado en el servidor web) y Jakarta (un potente servidor<strong>de</strong> aplicaciones). En los siguientes párrafos, se va a <strong>de</strong>scribirsolamente el proceso <strong>de</strong> <strong>de</strong>sarrollo seguido para el servidor HTTP,sin tener en cuenta los <strong>de</strong>más módulos, que pue<strong>de</strong>n tener mo<strong>de</strong>losparecidos o no.ANOTACIONESEl <strong>de</strong>sarrollo <strong>de</strong>l servidor HTTP Apache se fundamenta en el trabajo<strong>de</strong> un reducido grupo <strong>de</strong> <strong>de</strong>sarrolladores <strong>de</strong>nominado ApacheGroup. El Apache Group lo constituyen aquellos <strong>de</strong>sarrolladores quehan colaborado durante un periodo prolongado <strong>de</strong> tiempo, gener<strong>al</strong>mentemás <strong>de</strong> seis meses. Después <strong>de</strong> ser nominado un miembro <strong>de</strong>lApache Group para formar parte <strong>de</strong>l mismo, se vota entre todos losmiembros <strong>de</strong>l Apache Group. En sus comienzos, el Apache Groupconstaba <strong>de</strong> ocho <strong>de</strong>sarrolladores, luego, <strong>de</strong> doce y en la actu<strong>al</strong>idadcuenta con 25 personas.276


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Sobre el Apache Group recae la responsabilidad <strong>de</strong> la evolución <strong>de</strong>lservidor web y, por tanto, las <strong>de</strong>cisiones puntu<strong>al</strong>es <strong>de</strong> <strong>de</strong>sarrollo encada momento. Hay que diferenciar el Apache Group <strong>de</strong>l núcleo <strong>de</strong><strong>de</strong>sarrolladores (core group) activo en cada momento. El carácter voluntario<strong>de</strong> la mayoría <strong>de</strong> los <strong>de</strong>sarrolladores hace que sea improbableque todos los que componen el Apache Group puedan estaractivos todo el tiempo, por lo que el core se <strong>de</strong>fine como aquellosque en un espacio <strong>de</strong> tiempo pue<strong>de</strong>n ocuparse <strong>de</strong> las tareas en Apache.En líneas gener<strong>al</strong>es, las <strong>de</strong>cisiones que han <strong>de</strong> tomar los <strong>de</strong>sarrolladorespertenecientes <strong>al</strong> núcleo se limitan a votar la inclusión <strong>de</strong>código –aunque esto se reserve en re<strong>al</strong>idad sólo para gran<strong>de</strong>s cambios–y para cuestiones <strong>de</strong> diseño. Por otra parte, en gener<strong>al</strong> suelentener <strong>de</strong>recho <strong>de</strong> escritura en el repositorio CVS, por lo que sirvencomo puerta <strong>de</strong> entrada <strong>de</strong>l código asegurando que sea correcto, <strong>al</strong>tiempo que su c<strong>al</strong>idad.9.5.3. Radiografía <strong>de</strong> ApacheLas cifras que se exponen a continuación correspon<strong>de</strong>n a la versión<strong>de</strong>l servidor HTTP Apache t<strong>al</strong> como se podía <strong>de</strong>scargar <strong>de</strong>l servidorCVS <strong>de</strong>l proyecto Apache el 18 <strong>de</strong> abril <strong>de</strong>l 2003. No se han tenidoen cuenta ninguno <strong>de</strong> los numerosos módulos con los que cuenta elproyecto Apache. Como se pue<strong>de</strong> observar, Apache es un proyectorelativamente pequeño en comparación con los <strong>de</strong>más casos <strong>de</strong> estudiosconsi<strong>de</strong>rados en este capítulo. Aunque aquí se ha comentadocon anterioridad, es importante hacer hincapié en la modularidad <strong>de</strong>Apache, que permite precisamente esto: que el núcleo sea pequeñoy manejable. El repositorio CVS <strong>de</strong>l proyecto Apache, que contiene elnúcleo <strong>de</strong>l servidor web y muchos módulos adicion<strong>al</strong>es, <strong>al</strong>berga entot<strong>al</strong> más <strong>de</strong> cuatro millones <strong>de</strong> líneas <strong>de</strong> código fuente, una cifra ligeramenteinferior a proyectos como KDE y GNOME.La versión 1.3 <strong>de</strong> Apache contaba con poco más <strong>de</strong> 85.000 líneas<strong>de</strong> código fuente, una cifra que según el mo<strong>de</strong>lo COCOMO requeriríaun esfuerzo <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> 20 <strong>de</strong>sarrolladores a tiempo completo<strong>de</strong> media durante un año y medio. El coste tot<strong>al</strong> <strong>de</strong>l proyectorondaría entonces los cuatro millones <strong>de</strong> dólares. En la elaboración<strong>de</strong>l servidor web <strong>de</strong> Apache se cuentan hasta 60 commiters diferentes,mientras que el número <strong>de</strong> <strong>de</strong>sarrolladores que han aportado sec<strong>al</strong>cula que ronda los 400.ANOTACIONES277


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Tabla 9-9. Estado actu<strong>al</strong> <strong>de</strong> ApachePágina webhttp://www.apache.orgInicio <strong>de</strong>l proyecto 1995LicenciaVersión actu<strong>al</strong>Apache Free Software License1.3 (estable), 2.0 (en <strong>de</strong>sarrollo)Líneas <strong>de</strong> código fuente 85.000Número <strong>de</strong> ficheros 1.206Estimación <strong>de</strong> coste 4.000.000 $Estimación <strong>de</strong> tiempo <strong>de</strong> ejecuciónEstimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresHerramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo1,5 años (18 meses)2060 commiters (400 <strong>de</strong>sarrolladores)CVS, listas <strong>de</strong> correo, sistema <strong>de</strong>notificación <strong>de</strong> erroresApache 1.3 está escrito casi íntegramente en el lenguaje C, siendo lapresencia <strong>de</strong> otros lenguajes <strong>de</strong> programación escasa, sobre todo sitenemos en cuenta que la gran mayoría <strong>de</strong> las líneas escritas en elsegundo lenguaje, Shell, correspon<strong>de</strong>n a ficheros <strong>de</strong> configuración y<strong>de</strong> ayuda a la compilación.Tabla 9-10. Lenguajes <strong>de</strong> programación utilizados en ApacheLenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC 79015 92%Shell 5097 7%Perl 1282 1,7%ANOTACIONES9.6. MozillaMozilla es una suite <strong>de</strong> Internet <strong>libre</strong> y multiplataforma que incluye unnavegador WWW, un cliente <strong>de</strong> correo electrónico, un cliente <strong>de</strong> noticiasy un editor HTML. En un futuro, sin embargo, Mozilla <strong>de</strong>jará <strong>de</strong>ser una aplicación para pasar a ser una plataforma <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong>otras aplicaciones, <strong>al</strong>go que en parte ya ha venido siendo. Así, muchosotros navegadores utilizan Gecko, el motor <strong>de</strong> Mozilla, para sus278


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492propósitos, como es el caso <strong>de</strong> G<strong>al</strong>eon –un navegador web disponiblepara GNOME. La siguiente generación <strong>de</strong> herramientas basadasen Mozilla, como el navegador web Mozilla Firebird, no sólo utilizaráel motor Gecko, sino que también hará uso <strong>de</strong> tecnologías <strong>de</strong> interfaz<strong>de</strong> usuario proporcionadas por el proyecto Mozilla.9.6.1. Historia <strong>de</strong> MozillaLa historia <strong>de</strong> Mozilla es larga y enrevesada, pero <strong>al</strong> mismo tiempomuy interesante, ya que permite seguir la historia <strong>de</strong>l propio WWW.Y es que si trazamos las personas e instituciones que han estado involucradasen el <strong>de</strong>sarrollo <strong>de</strong> Mozilla, llegaremos <strong>al</strong> punto <strong>de</strong> partida<strong>de</strong> la web con el lanzamiento <strong>de</strong>l primer navegador webcompleto.Al igu<strong>al</strong> que con el antecesor <strong>de</strong> Apache, fue en el NCSA don<strong>de</strong> tambiénnació el primer navegador web completo en 1993 llamado Mosaic.Muchos <strong>de</strong> los miembros <strong>de</strong>l equipo <strong>de</strong> <strong>de</strong>sarrollo, con MarcAndreesen y Jim Clark a la cabeza, crearon una pequeña empresapara escribir, empezando <strong>de</strong>s<strong>de</strong> cero (ya que había problemas conlos <strong>de</strong>rechos <strong>de</strong> autor <strong>de</strong>l código <strong>de</strong> Mosaic, y el diseño técnico <strong>de</strong>lprograma tenía sus limitaciones, ver [quittner98:_speed_net]), lo quemás tar<strong>de</strong> sería el navegador Netscape Communicator, que fue lí<strong>de</strong>rindiscutible <strong>de</strong>l mercado <strong>de</strong> los navegadores web hasta la llegada<strong>de</strong>l Microsoft Internet Explorer. A<strong>de</strong>más <strong>de</strong> la innovación puramentetecnológica que supuso el navegador Netscape, Netscape Inc. tambiénfue innovadora en la forma <strong>de</strong> conseguir copar el mercado.Contra todo el sentido común <strong>de</strong> la época, su aplicación estrella, elnavegador WWW, se podía obtener (y distribuir con ciertas limitaciones)<strong>de</strong> manera gratuita. Este hecho, hasta entonces insólito <strong>de</strong>ntro<strong>de</strong>l mundo empresari<strong>al</strong>, causó cierta sorpresa, pero <strong>de</strong>mostró a l<strong>al</strong>arga ser un acierto para la estrategia <strong>de</strong> Netscape Inc., que sólo ungigante como Microsoft supo atajar con una táctica más agresiva (yprobablemente lesiva con la <strong>libre</strong> competencia).Para 1997, la cota <strong>de</strong> mercado <strong>de</strong> Netscape había caído en picado<strong>de</strong>bido a la implantación <strong>de</strong> Microsoft Explorer, por lo que <strong>de</strong>s<strong>de</strong>Netscape Inc. se estudiaban nuevas fórmulas para volver a ganarlo.Un informe técnico <strong>de</strong>l ingeniero Frank Hecker [hecker:setting-upshop:98]propuso que la mejor solución <strong>al</strong> problema era liberar elANOTACIONES279


© FUOC • XP06/M2101/01492Software <strong>libre</strong>código fuente <strong>de</strong>l navegador y beneficiarse <strong>de</strong> los efectos <strong>de</strong> la comunidad<strong>de</strong>l <strong>software</strong> <strong>libre</strong> t<strong>al</strong> como Eric Raymond <strong>de</strong>scribía en “Lacatedr<strong>al</strong> y el bazar”. En enero <strong>de</strong> 1998 Netscape Inc. anunció ofici<strong>al</strong>menteque liberaría el código fuente <strong>de</strong> su navegador, marcando unhito <strong>de</strong> gran importancia <strong>de</strong>ntro <strong>de</strong> la corta historia <strong>de</strong>l mundo <strong>de</strong>l<strong>software</strong> <strong>libre</strong>: una empresa iba a publicar todo el código fuente <strong>de</strong>una aplicación hasta entonces comerci<strong>al</strong> bajo una licencia <strong>de</strong> <strong>software</strong><strong>libre</strong>. La fecha indicada para el lanzamiento era el 31 <strong>de</strong> marzo<strong>de</strong> 1998.Lectura complementaria[Ver bibliografía, apartado113]En los dos meses que van <strong>de</strong> enero a marzo, la actividad en Netscapepara que todo estuviera a punto fue frenética. La lista <strong>de</strong> tareasera enorme y compleja. En el plano técnico, había que contactar conlas empresas que habían re<strong>al</strong>izado módulos para pedir su consentimientoen el cambio <strong>de</strong> licencia; en caso <strong>de</strong> negativa, el módulo <strong>de</strong>bíaser eliminado. A<strong>de</strong>más, todas las partes escritas en Java <strong>de</strong>bíanser reimplementadas, ya que se consi<strong>de</strong>ró que Java no era <strong>libre</strong>. Se<strong>de</strong>cidió llamar <strong>al</strong> proyecto <strong>libre</strong> Mozilla, t<strong>al</strong> como los propios <strong>de</strong>sarrolladores<strong>de</strong> Netscape llamaban <strong>al</strong> componente princip<strong>al</strong> <strong>de</strong> Netscapey se adquirió el dominio Mozilla.org para construir unacomunidad <strong>de</strong> <strong>de</strong>sarrolladores y colaboradores en torno a ese sitioweb. Al fin<strong>al</strong> <strong>de</strong>l proceso, se liberó más <strong>de</strong> un millón y medio <strong>de</strong> líneas<strong>de</strong> código fuente.NotaANOTACIONESEl nombre <strong>de</strong> Mozilla es un juego <strong>de</strong> p<strong>al</strong>abras con untoque humorístico <strong>de</strong>l equipo <strong>de</strong> <strong>de</strong>sarrollo en NetscapeInc. Mozilla es el producto <strong>de</strong> la adaptación <strong>de</strong> GodZilla,un monstruo que causaba pánico en laspelículas <strong>de</strong> terror japonesas <strong>de</strong>s<strong>de</strong> la década <strong>de</strong> loscincuenta, para que sonara como Mosaic Killer, yaque se pretendía que Mosaic quedara obsoleto graciasa los avances <strong>de</strong> este nuevo navegador con tecnologíasmucho más avanzadas.Por otra parte, estaba el plano leg<strong>al</strong>. Las licencias <strong>libre</strong>s existentes enaquel momento no convencían a los ejecutivos <strong>de</strong> Netscape queveían que no congeniaban con el carácter comerci<strong>al</strong> <strong>de</strong> una compañía.Netscape quería una licencia más flexible que permitiera llegara acuerdos con terceros para incluir su código indiferentemente <strong>de</strong>280


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492su licencia o que otros <strong>de</strong>sarrolladores comerci<strong>al</strong>es pudieran contribuirpudiendo <strong>de</strong>fen<strong>de</strong>r sus intereses económicos como <strong>de</strong>searan. Yaunque en un principio no se había previsto crear una nueva licencia,se llegó a la conclusión <strong>de</strong> que era la única forma <strong>de</strong> conseguirlo que <strong>de</strong>seaban. Así es como se fraguó la Netscape Public License(NPL), una licencia que se basaba en los principios básicos <strong>de</strong> las licencias<strong>de</strong> <strong>software</strong> <strong>libre</strong>, pero que concedía unos <strong>de</strong>rechos adicion<strong>al</strong>esa Netscape Inc. –lo que la hacía también una licencia no <strong>libre</strong>bajo el prisma <strong>de</strong> la Free Software Foundation. Cuando se publicó elborrador <strong>de</strong> la NPL para su discusión pública, llovieron las críticassobre la cláusula <strong>de</strong> <strong>de</strong>rechos adicion<strong>al</strong>es para Netscape. NetscapeInc. reaccionó rápidamente ante estos comentarios y creó una licenciaadicion<strong>al</strong>, la Mozilla Public Licence (MPL) que era idéntica a laNPL, pero sin que Netscape tuviera ningún <strong>de</strong>recho adicion<strong>al</strong>.La <strong>de</strong>cisión fin<strong>al</strong> fue liberar el código <strong>de</strong> Netscape bajo la licenciaNPL que otorgaba <strong>de</strong>rechos adicion<strong>al</strong>es a Netscape, y que el códigonuevo que fuera incluido estuviera bajo la MPL (o compatible). Lascorrecciones <strong>al</strong> código origin<strong>al</strong> (licenciado con la NPL), <strong>de</strong>bían estartambién bajo esa licencia.NotaEn la actu<strong>al</strong>idad, Mozilla acepta contribuciones bajo l<strong>al</strong>icencia propia MPL, la GPL y la LGPL. El cambio <strong>de</strong> licenciano fue nada fácil, ya que hubo que buscar a todoslos que habían contribuido con código <strong>al</strong>guna vezpara que dieran su visto bueno <strong>al</strong> cambio <strong>de</strong> NPL/MPLa MPL/GPL/LGPL. Con el objeto <strong>de</strong> po<strong>de</strong>r relicenciartodo el código, se creó una página web que conteníaun listado <strong>de</strong> 300 <strong>de</strong>sarrolladores perdidos. A día <strong>de</strong>hoy, dos años <strong>de</strong>spués <strong>de</strong>l cambio <strong>de</strong> licencia, todavíase buscan unos cuantos <strong>de</strong>sarrolladores.vEl <strong>de</strong>sarrollo con el código origin<strong>al</strong> <strong>de</strong>l Communicator <strong>de</strong> Netscapefue, sin lugar a dudas, más complicado <strong>de</strong> lo inici<strong>al</strong>mente esperado.Las condiciones <strong>de</strong> partida ya eran m<strong>al</strong>as <strong>de</strong> por sí, porque lo quefue liberado en ocasiones estaba incompleto (se habían quitado todoslos módulos <strong>de</strong> terceros que no habían dado su visto bueno a l<strong>al</strong>iberación) y corría a duras penas. Por si fuera poco, <strong>al</strong> problema técnico<strong>de</strong> preten<strong>de</strong>r que Mozilla corriera sobre una gran cantidad <strong>de</strong>Lectura complementaria[Ver bibliografía, apartado32]ANOTACIONESLectura complementaria[Ver bibliografía, apartado215]281


© FUOC • XP06/M2101/01492Software <strong>libre</strong>sistemas operativos y plataformas, había que añadir los vicios adquiridos<strong>de</strong> Netscape Inc., con ciclos <strong>de</strong> liberación largos e ineficientespara el mundo <strong>de</strong> Internet y que no distinguía entre sus intereses ylos <strong>de</strong> una comunidad en torno a Mozilla. Todo ello llevó a que, justoun año <strong>de</strong>spués, uno <strong>de</strong> los programadores más activos antes y <strong>de</strong>spués<strong>de</strong> la liberación, Jamie Zawinsky, <strong>de</strong>cidiera tirar la to<strong>al</strong>la en unaamarga carta don<strong>de</strong> mostraba su <strong>de</strong>sesperación y su <strong>de</strong>solación.A pesar <strong>de</strong> todas las dudas suscitadas y <strong>de</strong> la existencia <strong>de</strong> periódicosrumores abocando el proyecto Mozilla <strong>al</strong> fracaso, varios años <strong>de</strong>spués<strong>de</strong> su liberación, el proyecto goza <strong>de</strong> buena s<strong>al</strong>ud. Su versatilidady portabilidad ha propiciado que, aun siendo una aplicaciónmuy necesitada <strong>de</strong> recursos, sea consi<strong>de</strong>rada como la pareja <strong>de</strong>OpenOffice.org a la hora <strong>de</strong> conquistar el escritorio <strong>de</strong>l usuario fin<strong>al</strong>.Con ello, Mozilla ha pasado por varias fases interesantes: comenzósiendo un hito histórico en favor <strong>de</strong> la implantación y gener<strong>al</strong>ización<strong>de</strong>l <strong>software</strong> <strong>libre</strong> en sus comienzos, luego pa<strong>de</strong>ció una larga “travesíapor el <strong>de</strong>sierto” <strong>de</strong> la que muchos pre<strong>de</strong>cían que no iba a s<strong>al</strong>irnunca y por fin ha <strong>de</strong>venido un proyecto con perspectivas <strong>de</strong> convertirseen una aplicación <strong>de</strong> amplio uso. Po<strong>de</strong>mos afirmar con un grado<strong>de</strong> incertidumbre bastante bajo que si Netscape Inc. no hubier<strong>al</strong>iberado a principios <strong>de</strong> 1999 el código fuente <strong>de</strong> su navegador, hoysería una aplicación muerta.9.6.2. Estado actu<strong>al</strong> <strong>de</strong> MozillaANOTACIONESEl 15 <strong>de</strong> julio <strong>de</strong>l 2003, Netscape Inc. (propiedad <strong>de</strong> American On-Line) anunció que <strong>de</strong>jaría <strong>de</strong> <strong>de</strong>sarrollar el navegador Netscape y,por tanto, la tutela activa <strong>de</strong>l proyecto Mozilla. Como finiquito, aprobóla creación <strong>de</strong> la Fundación Mozilla.org, a la cu<strong>al</strong> apoyó por medio<strong>de</strong> una aportación <strong>de</strong> dos millones <strong>de</strong> dólares. Asimismo, todo elcódigo que se encontraba bajo la NPL (la licencia pública <strong>de</strong> Netscape)se liberó con las licencias promulgadas ya anteriormente porel proyecto Mozilla: MPL, LGPL y GPL.Una <strong>de</strong> las primeras consecuencias <strong>de</strong> la creación <strong>de</strong> la FundaciónMozilla.org fue el cambio <strong>de</strong> estrategia <strong>de</strong>l proyecto Mozilla: si antesprimaba la plataforma <strong>de</strong> <strong>de</strong>sarrollo que posibilitaba la creación <strong>de</strong>aplicaciones <strong>de</strong> Internet, en especi<strong>al</strong> web, ahora se preten<strong>de</strong> que elenfoque princip<strong>al</strong> radique en el usuario fin<strong>al</strong>.282


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/014929.6.3. Radiografía <strong>de</strong> MozillaLas medidas que se van a presentar en este apartado correspon<strong>de</strong>n<strong>al</strong> estudio <strong>de</strong>l repositorio CVS <strong>de</strong>l proyecto Mozilla t<strong>al</strong> como se podía<strong>de</strong>scargar el 22 <strong>de</strong> agosto <strong>de</strong>l 2003. Los tres millones y medio <strong>de</strong> líneas<strong>de</strong> código fuente que encontramos en Mozilla hacen que estaaplicación pueda riv<strong>al</strong>izar en cuanto a tamaño con el propio núcleoLinux y OpenOffice.org como la aplicación <strong>de</strong> <strong>software</strong> <strong>libre</strong> másgran<strong>de</strong>. Ciertamente, no todo el código que está incluido en el repositorioCVS correspon<strong>de</strong> a la suite Mozilla, ya que también están incluidasherramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo como tin<strong>de</strong>rbox yBugZilla, pero a gran<strong>de</strong>s rasgos, éstas no <strong>de</strong>berían suponer más <strong>al</strong>lá<strong>de</strong> un 5% <strong>de</strong>l tot<strong>al</strong> <strong>de</strong> las líneas computadas.Según las estimaciones <strong>de</strong>l mo<strong>de</strong>lo COCOMO, una compañía quequisiera crear un <strong>software</strong> <strong>de</strong> t<strong>al</strong>es dimensiones tendría que invertirunos 140 millones <strong>de</strong> dólares para obtenerlo. El tiempo que habríaque esperar se situaría en torno a los siete años y medio y el númeromedio <strong>de</strong> programadores a tiempo completo que <strong>de</strong>bería emplearrondaría los 140.Tabla 9-11. Estado actu<strong>al</strong> <strong>de</strong> MozillaPágina webhttp://www.mozilla.orgInicio <strong>de</strong>l proyecto 1998LicenciaMPL/LGPL/GPLVersión actu<strong>al</strong> 1.4Líneas <strong>de</strong> código fuente 3.500.000Estimación <strong>de</strong> coste $ 140.000.000Estimación <strong>de</strong> tiempo <strong>de</strong> ejecución7,5 años (90.80 meses)Estimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresHerramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo14050 commitersCVS, listas <strong>de</strong> correoEn cuanto a los lenguajes <strong>de</strong> programación, C++ y C son, en esteor<strong>de</strong>n, los lenguajes más utilizados. Sorpren<strong>de</strong>, sin embargo, queninguno <strong>de</strong> los dos <strong>al</strong>cance cotas tan <strong>al</strong>tas como las que suelen teneren otras aplicaciones (don<strong>de</strong> el lenguaje princip<strong>al</strong> suele tener unaANOTACIONES283


© FUOC • XP06/M2101/01492Software <strong>libre</strong>cuota cercana <strong>al</strong> noventa por ciento <strong>de</strong>l tot<strong>al</strong>). Ello se <strong>de</strong>be en granparte <strong>al</strong> diseño modular adoptado por Mozilla y que da ciertas liberta<strong>de</strong>sen cuanto a la implementación <strong>de</strong> cada módulo, y entre ellasla posibilidad <strong>de</strong> elegir el lenguaje que se consi<strong>de</strong>re oportuno. Por lamisma razón, la presencia <strong>de</strong> Java –un lenguaje por lo común pocofrecuente en el <strong>software</strong> <strong>libre</strong>– en el tercer lugar no <strong>de</strong>bería resultarsorpren<strong>de</strong>nte, aun teniendo en cuenta que todas esas líneas <strong>de</strong> códigohan sido añadidas <strong>de</strong>spués <strong>de</strong> la liberación <strong>de</strong> Netscape en1998 que no contenía código en Java.La presencia <strong>de</strong> Perl se <strong>de</strong>be en gran parte a que las herramientas<strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo re<strong>al</strong>izadas por el proyecto Mozilla como Bug-Zilla o Tin<strong>de</strong>rbox están re<strong>al</strong>izadas en este lenguaje. Lo que sí que resulta<strong>al</strong>go sorpren<strong>de</strong>nte es el <strong>al</strong>to número <strong>de</strong> líneas <strong>de</strong> código enensamblador en una aplicación <strong>de</strong> usuario fin<strong>al</strong>. La inspección <strong>de</strong>lcódigo en el repositorio ha mostrado que, efectivamente, existenbastantes ficheros codificados en lenguaje ensamblador.Tabla 9-12. Lenguajes <strong>de</strong> programación utilizados en MozillaLenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC++ 1928671 54,61%C 1156594 32,75%Java 248802 7,04%Perl 126534 3,58%LISP 23165 0,66%Ensamblador 15493 0,44%9.7. OpenOffice.orgANOTACIONESOpenOffice.org es una <strong>de</strong> las aplicaciones estrella <strong>de</strong>l panorama actu<strong>al</strong><strong>de</strong>l <strong>software</strong> <strong>libre</strong>. Se trata <strong>de</strong> una suite <strong>de</strong> oficina multiplataformaque incluye las aplicaciones clave en un entorno <strong>de</strong> escritorio <strong>de</strong>oficina, t<strong>al</strong>es como son el procesador <strong>de</strong> texto (Writer), hoja <strong>de</strong> cálculo(C<strong>al</strong>c), gestor <strong>de</strong> presentaciones (Impress), un programa <strong>de</strong> dibujo(Draw), un editor <strong>de</strong> fórmulas matemáticas (Math) y fin<strong>al</strong>menteun editor <strong>de</strong> lenguaje HTML (incluido en Writer). El interfaz que ofreceOpenOffice.org es homogéneo e intuitivo, similar en aspecto y fun-284


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492cion<strong>al</strong>ida<strong>de</strong>s a otras suites <strong>de</strong> oficina, en especi<strong>al</strong> a la suite másarraigada en la actu<strong>al</strong>idad, Microsoft Office.Escrito en C++, OpenOffice.org incluye la API <strong>de</strong> Java y tiene supropio sistema <strong>de</strong> componentes empotrables, que permite incluir,por ejemplo, tablas <strong>de</strong> la hoja <strong>de</strong> cálculo en el procesador <strong>de</strong> textos<strong>de</strong> una manera sencilla e intuitiva. Entre sus ventajas está que manejauna gran cantidad <strong>de</strong> formatos <strong>de</strong> archivo, incluidos los <strong>de</strong> MicrosoftOffice. Sus formatos <strong>de</strong> archivo nativos, <strong>al</strong> contrario que los <strong>de</strong>la suite <strong>de</strong> Microsoft, están basados en XML, por lo que se <strong>de</strong>muestrauna clara apuesta por la versatilidad, la facilidad <strong>de</strong> transformacióny la transparencia. En la actu<strong>al</strong>idad, OpenOffice.org está traducidoa más <strong>de</strong> 25 lenguas y corre en Solaris (su sistema nativo), GNU/Linuxy Windows. En un futuro no muy lejano se esperan versionespara FreeBSD, IRIX y MacOS X.OpenOffice.org adoptó su nombre <strong>de</strong>finitivo (a OpenOffice –t<strong>al</strong>como la conoce todo el mundo– más la coletilla .org) <strong>de</strong>spués <strong>de</strong> unlitigio en el que fue <strong>de</strong>mandado por usurpación <strong>de</strong> nombre <strong>de</strong> marcapor otra empresa.9.7.1. Historia <strong>de</strong> OpenOffice.orgA mediados <strong>de</strong> la década <strong>de</strong> los ochenta, se fundó en la República Fe<strong>de</strong>r<strong>al</strong><strong>de</strong> Alemania la empresa StarDivision, que tuvo como objetivoprincip<strong>al</strong> la creación <strong>de</strong> una suite ofimática: StarOffice. En verano <strong>de</strong>1999, SUN Microsystems –con la clara intención <strong>de</strong> arrebatarle unmercado conquistado ya por aquel entonces a Microsoft– <strong>de</strong>cidió adquirirla empresa StarDivision y hacer una fuerte apuesta por StarOffice.De este modo, en junio <strong>de</strong>l 2000 lanzó la versión 5.2 <strong>de</strong> StarOfficeque podía ser <strong>de</strong>scargada <strong>de</strong> manera gratuita a través <strong>de</strong> la Red.Sin embargo, el éxito <strong>de</strong> StarOffice fue limitado, ya que el mercado estabafuertemente dominado por la suite <strong>de</strong> Microsoft. SUN <strong>de</strong>cidió cambiarsu estrategia y, <strong>al</strong> igu<strong>al</strong> que Netscape con el proyecto Mozilla,<strong>de</strong>cidió aprovechar las ventajas <strong>de</strong>l <strong>software</strong> <strong>libre</strong> para ganar en importanciae implantación. Así, las futuras versiones <strong>de</strong> StarOffice (productopropietario <strong>de</strong> SUN) serían creadas utilizando OpenOffice.org (producto<strong>libre</strong>) como fuente, respetando las interfaces <strong>de</strong> programación (API),los formatos <strong>de</strong> fichero y sirviendo como implementación <strong>de</strong> referencia.ANOTACIONES285


© FUOC • XP06/M2101/01492Software <strong>libre</strong>9.7.2. Organización <strong>de</strong> OpenOffice.orgOpenOffice.org preten<strong>de</strong> tener una estructura <strong>de</strong>cisoria don<strong>de</strong> todoslos miembros <strong>de</strong> la comunidad se sientan partícipes. Por eso,se ha i<strong>de</strong>ado un sistema para que la toma <strong>de</strong> <strong>de</strong>cisiones cuentecon el mayor consenso posible. El proyecto OpenOffice.org se divi<strong>de</strong>en una serie <strong>de</strong> subproyectos que cuentan con unos miembros<strong>de</strong>l proyecto, los colaboradores, y un único lí<strong>de</strong>r. Porsupuesto, los miembros <strong>de</strong> un proyecto pue<strong>de</strong>n participar en más<strong>de</strong> uno, <strong>al</strong> igu<strong>al</strong> que el lí<strong>de</strong>r. Sin embargo, sólo se pue<strong>de</strong> li<strong>de</strong>rarun proyecto a la vez. Los proyectos, a su vez, se divi<strong>de</strong>n en trescategorías:• Proyectos aceptados: pue<strong>de</strong>n ser tanto <strong>de</strong> carácter técnico comono técnicos. Los lí<strong>de</strong>res <strong>de</strong> cada proyecto aceptado cuentan conun voto a la hora <strong>de</strong> la toma <strong>de</strong> <strong>de</strong>cisiones glob<strong>al</strong>es.• Proyectos Native-lang: engloba todos los proyectos <strong>de</strong> internacion<strong>al</strong>izacióny loc<strong>al</strong>ización <strong>de</strong> OpenOffice.org. En la actu<strong>al</strong>idad,como se ha comentado con anterioridad, existen más <strong>de</strong>25 equipos trabajando para traducir las aplicaciones <strong>de</strong> OpenOffice.orga las diferentes lenguas y convenciones. En conjunto,native-lang cuenta con un único voto para la toma <strong>de</strong><strong>de</strong>cisiones glob<strong>al</strong>es.ANOTACIONES• Proyectos en la incubadora: se trata <strong>de</strong> proyectos patrocinadospor la comunidad (gener<strong>al</strong>mente experiment<strong>al</strong>es o pequeños).Pue<strong>de</strong>n pasar a ser aceptados tras un periodo <strong>de</strong> seis meses. Deeste modo, la comunidad OpenOffice.org pue<strong>de</strong> garantizar quelos proyectos aceptados están resp<strong>al</strong>dados por un interés re<strong>al</strong>, yaque la mort<strong>al</strong>idad <strong>de</strong> proyectos nuevos en el mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong> es muy gran<strong>de</strong>. En tot<strong>al</strong>, los proyectos en la incubadoracuentan con un voto en la toma <strong>de</strong> <strong>de</strong>cisiones.9.7.3. Radiografía <strong>de</strong> OpenOffice.orgLa suite ofimática OpenOffice.org está compuesta <strong>de</strong> cerca <strong>de</strong> cuatromillones <strong>de</strong> líneas <strong>de</strong> código fuente, distribuidas a lo largo <strong>de</strong> 45mil ficheros.286


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492El mo<strong>de</strong>lo COCOMO estima el esfuerzo necesario para re<strong>al</strong>izar unclon <strong>de</strong> OpenOffice.org en 150 programadores trabajando durantecasi ocho años a tiempo completo. El coste <strong>de</strong> <strong>de</strong>sarrollo ascen<strong>de</strong>ría,según las estimaciones <strong>de</strong> COCOMO, a unos 160 millones <strong>de</strong> dólares.Los resultados que se comentan en este apartado fueron obtenidos<strong>de</strong>l estudio <strong>de</strong>l repositorio CVS <strong>de</strong>l proyecto OpenOffice.org el 20 <strong>de</strong>abril <strong>de</strong>l 2003.Tabla 9-13. Estado actu<strong>al</strong> <strong>de</strong> OpenOffice.orgPágina webInicio <strong>de</strong>l proyectoLicenciahttp://www.OpenOffice.orgJunio <strong>de</strong>l 2000 (Primera versión <strong>libre</strong>)LGPL y SISSLVersión actu<strong>al</strong> 1.0.3 (en <strong>de</strong>sarrollo la 1.1)Líneas <strong>de</strong> código fuente 4.000.000Número <strong>de</strong> ficheros 45.000Estimación <strong>de</strong> coste $ 160.000.000Estimación <strong>de</strong> tiempo <strong>de</strong> ejecuciónEstimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresHerramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo8 años (95 meses)150200 commitersCVS, listas <strong>de</strong> correoEn cuanto a los lenguajes <strong>de</strong> programación utilizados en OpenOffice.org,el primer lugar lo ocupa C++. Es interesante observar cómola adquisición por parte <strong>de</strong> SUN implica la integración <strong>de</strong> mucho códigoJava en la suite ofimática, superando incluso a C. Del resto <strong>de</strong>lenguajes más utilizados, Pasc<strong>al</strong> <strong>de</strong>be obtener una mención especi<strong>al</strong>,ya que suele ser un lenguaje poco utilizado en el mundo <strong>de</strong>l <strong>software</strong><strong>libre</strong> y, en gener<strong>al</strong>, podríamos <strong>de</strong>cir en la producción industri<strong>al</strong> <strong>de</strong><strong>software</strong>.Tabla 9-14. Lenguajes <strong>de</strong> programación utilizados en OpenOffice.orgLenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC++ 3361765 85,03%Java 251191 6,35%ANOTACIONES287


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Lenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC 222533 5,63%Pasc<strong>al</strong> 32407 0,82%Perl 28380 0,72%9.8. Red Hat LinuxRed Hat Linux fue una <strong>de</strong> las primeras distribuciones comerci<strong>al</strong>es <strong>de</strong>GNU/Linux. Hoy en día es probablemente una <strong>de</strong> las más conocidas,y seguramente la que se pue<strong>de</strong> consi<strong>de</strong>rar como la “canónica”<strong>de</strong> entre las distribuciones comerci<strong>al</strong>es. El trabajo <strong>de</strong> los distribuidoresestá básicamente relacionado con tareas <strong>de</strong> integración y no tantocon el <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong>. Por supuesto, tanto Red Hat comootras distribuciones pue<strong>de</strong>n contar con <strong>de</strong>sarrolladores entre sus empleados,pero su labor es secundaria para los objetivos <strong>de</strong> una distribución.En gener<strong>al</strong>, se asume que el trabajo que re<strong>al</strong>izan lasdistribuciones es simplemente el <strong>de</strong> tomar los paquetes fuente (gener<strong>al</strong>mentelos archivos que publican los propios <strong>de</strong>sarrolladores) yempaquetarlos <strong>de</strong> forma que cumplan ciertos criterios (tanto técnicoscomo organizativos). El producto <strong>de</strong> este proceso es una distribución:una serie <strong>de</strong> paquetes convenientemente organizados que posibilitan<strong>al</strong> usuario inst<strong>al</strong>arlos, <strong>de</strong>sinst<strong>al</strong>arlos y actu<strong>al</strong>izarlos.Las distribuciones también son responsables <strong>de</strong> la c<strong>al</strong>idad <strong>de</strong>l productofin<strong>al</strong>, un aspecto muy importante teniendo en cuenta que muchas<strong>de</strong> las aplicaciones que incluyen han sido elaboradas porvoluntarios en su tiempo <strong>libre</strong>. Aspectos <strong>de</strong> seguridad y estabilidadson, por tanto, <strong>de</strong> capit<strong>al</strong> importancia para una distribución.ANOTACIONESLectura complementaria[Ver bibliografía, apartado180]9.8.1. Historia <strong>de</strong> Red HatRed Hat Software Inc. fue fundada en 1994 por Bob Young y MarcEwing. Su princip<strong>al</strong> objetivo era compilar y comerci<strong>al</strong>izar una distribuciónGNU/Linux, que vino a llamarse (y todavía se sigue llamando)Red Hat Linux [young:giving-it-away:99]. Básicamente, setrataba <strong>de</strong> una versión empaquetada <strong>de</strong> lo que existía en la Re<strong>de</strong>n aquellos tiempos, incluyendo documentación y soporte. Du-288


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492rante el verano <strong>de</strong> 1995, la versión 1.0 <strong>de</strong> esta distribución vio l<strong>al</strong>uz. Unos meses más tar<strong>de</strong>, en otoño, se publicó la versión 2.0,que incluía la tecnología RPM (RPM Package Manager, gestor <strong>de</strong>paquetes RPM). El sistema <strong>de</strong> paquetes RPM se ha convertido enun estándar <strong>de</strong> facto para los paquetes <strong>de</strong> sistemas GNU/Linux.1998 fue el año en el que Red Hat llegó <strong>al</strong> gran público con laversión 5.2. Para una historia completa <strong>de</strong> los nombres <strong>de</strong> las diferentesversiones <strong>de</strong> Red Hat, véase Stephen J. Smoogen. The truth behindred hat names.NotaDes<strong>de</strong> la versión 1.1 <strong>de</strong>l Linux Standard base (una especificacióncuya meta es conseguir compatibilidadbinaria entre las distribuciones GNU/Linux <strong>de</strong> la quese encarga el Free Standards Group), RPM ha sido elegidocomo el sistema <strong>de</strong> paquetes estándar. El proyectoDebian continúa con su formato <strong>de</strong> paquete propio,así como muchas <strong>de</strong> las distribuciones <strong>de</strong>pendientes<strong>de</strong>l sistema <strong>de</strong> paquetes Debian, y se ajustan <strong>al</strong> formatoestandarizado mediante una herramienta <strong>de</strong> conversiónque se llama <strong>al</strong>ien.Antes <strong>de</strong> la existencia <strong>de</strong>l sistema <strong>de</strong> gestión <strong>de</strong> paquetes RPM, casi todaslas distribuciones <strong>de</strong> GNU/Linux ofrecían la posibilidad <strong>de</strong> inst<strong>al</strong>arel <strong>software</strong> mediante un procedimiento dirigido por menús, pero hacermodificaciones a una inst<strong>al</strong>ación ya hecha, especi<strong>al</strong>mente la agregación<strong>de</strong> paquetes <strong>de</strong> <strong>software</strong> nuevos tras la inst<strong>al</strong>ación, no era una tareafácil. RPM permitió dar ese paso más <strong>al</strong>lá <strong>de</strong>l estado <strong>de</strong>l arte <strong>al</strong>proveer a los usuarios con la posibilidad <strong>de</strong> gestionar sus paquetes, loque permitiría borrar, inst<strong>al</strong>ar o actu<strong>al</strong>izar cu<strong>al</strong>quier paquete <strong>software</strong>existente en la distribución <strong>de</strong> manera mucho más sencilla. El sistema<strong>de</strong> paquetes RPM sigue siendo el sistema <strong>de</strong> paquetes más utilizadoentre las diferentes distribuciones <strong>de</strong> GNU/Linux. Las estadísticas <strong>de</strong>Ladislav Bodnar (2003). Linux distributions - facts and figures, un sitioweb que contiene información cu<strong>al</strong>itativa y cuantitativa acerca <strong>de</strong> ungran número <strong>de</strong> distribuciones, muestran que en mayo <strong>de</strong>l 2003 unagran mayoría <strong>de</strong> las 118 distribuciones computadas utilizan el gestorRPM, en tot<strong>al</strong> 65 (lo que viene a ser un 55% <strong>de</strong>l tot<strong>al</strong>). En comparación,el sistema <strong>de</strong> paquetes <strong>de</strong> Debian (conocido como <strong>de</strong>b) lo utiliza únicamente16 distribuciones (un 14% <strong>de</strong>l tot<strong>al</strong>).Lectura complementaria[Ver bibliografía, apartados65 y 73]ANOTACIONES289


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Sin embargo, Red Hat Inc. no sólo es conocida por su distribución <strong>de</strong><strong>software</strong> basada en Linux. En agosto <strong>de</strong> 1999, Red Hat s<strong>al</strong>ió a bolsay sus acciones obtuvieron la octava ganancia <strong>de</strong> primer día másgran<strong>de</strong> en toda la historia <strong>de</strong> W<strong>al</strong>l Street. Cuatro años más tar<strong>de</strong>, elv<strong>al</strong>or <strong>de</strong> las acciones <strong>de</strong> Red Hat es en torno a una centésima parte<strong>de</strong>l máximo v<strong>al</strong>or que llegara a <strong>al</strong>canzar antes <strong>de</strong> la crisis <strong>de</strong> las puntocom.Aun así, sus comienzos exitosos en el mercado <strong>de</strong> v<strong>al</strong>ores sirvieronpara que Red Hat fuera portada en periódicos y revistas nodirectamente relacionadas con temas informáticos. En cu<strong>al</strong>quier caso,parece ser que Red Hat ha sabido superar los problemas <strong>de</strong> otrascompañías <strong>de</strong>l mundo <strong>de</strong> los negocios en torno <strong>al</strong> <strong>software</strong> <strong>libre</strong> yanunció números negros por primera vez en su historia en el últimocuarto <strong>de</strong>l año 2002.Lectura complementaria[Ver bibliografía, apartado194]Otro <strong>de</strong> los hechos históricos más importantes <strong>de</strong> Red Hat fue la adquisiciónen noviembre <strong>de</strong> 1999 <strong>de</strong> Cygnus Solutions, una empresafundada una década antes y que ya había <strong>de</strong>mostrado cómo conuna estrategia integr<strong>al</strong> basada en <strong>software</strong> <strong>libre</strong> se pue<strong>de</strong> ganar dinero.Cygnus escogió el exigente mercado <strong>de</strong> los compiladores parahacerse un hueco. Su estrategia comerci<strong>al</strong> se basaba en el <strong>de</strong>sarrolloy la adaptación <strong>de</strong> las herramientas <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> <strong>software</strong> GNU(básicamente GCC y GDB) a petición <strong>de</strong>l cliente.9.8.2. Estado actu<strong>al</strong> <strong>de</strong> Red HatEn la actu<strong>al</strong>idad, los productos estrella <strong>de</strong> Red Hat Inc. son Red HatLinux 9 y Red Hat Network, un servicio <strong>de</strong> actu<strong>al</strong>ización <strong>de</strong> <strong>software</strong>a través <strong>de</strong> la red. Este tipo <strong>de</strong> servicios están más bien orientados <strong>al</strong>usuario fin<strong>al</strong> y no tanto <strong>al</strong> entorno empresari<strong>al</strong>, pero sirven a Red Hatcomo buen reclamo y para asegurar su estrategia <strong>de</strong> marca.ANOTACIONESLa verda<strong>de</strong>ra estrategia comerci<strong>al</strong> <strong>de</strong> Red Hat se encuentra en susproductos dirigidos <strong>al</strong> mundo empresari<strong>al</strong>. Este tipo <strong>de</strong> productos sonmucho menos conocidos, pero suponen una gran parte <strong>de</strong> la facturación<strong>de</strong> Red Hat, muy superior a la que percibe por sus productosestrella, más populares en el sentido liter<strong>al</strong>.Red Hat cuenta con una distribución orientada a la empresa, integradaen torno a un servidor <strong>de</strong> aplicaciones y llamada Red Hat EntrepriseLinux AS. Con la adquisición <strong>de</strong> este <strong>software</strong>, el cliente tiene290


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492<strong>de</strong>recho a soporte. El servicio análogo a Red Hat Network para usuarioscomerci<strong>al</strong>es es Red Hat Enterprise Network, que incluye la gestión<strong>de</strong>l sistema y la posibilidad <strong>de</strong> actu<strong>al</strong>izaciones. Por otro lado,Red Hat ofrece también servicios <strong>de</strong> consultoría informática y un programa<strong>de</strong> certificación similar <strong>al</strong> que existe en el mundo Windows yofrecido por Microsoft.9.8.3. Radiografía <strong>de</strong> Red HatRed Hat ha superado recientemente la barrera <strong>de</strong> los 50 millones <strong>de</strong>líneas <strong>de</strong> código que hacen <strong>de</strong> ella una <strong>de</strong> las mayores distribuciones<strong>de</strong> <strong>software</strong> que han llegado a existir – superando como se verá mása<strong>de</strong>lante en este capítulo el tamaño <strong>de</strong> sistemas operativos propietarios.La versión 8.1 <strong>de</strong> Red Hat, inmediatamente anterior a la última,estaba constituida por 792 paquetes, por lo que po<strong>de</strong>mos asumirque también habrá franqueado el listón <strong>de</strong> los 800 paquetes en suúltima versión, teniendo en cuenta que su número suele incrementarselevemente <strong>de</strong> versión en versión.Al igu<strong>al</strong> que en los casos anteriores, se ha aplicado el mo<strong>de</strong>lo CO-COMO para estimar la inversión y el esfuerzo que sería necesarioemplear en la generación <strong>de</strong> un <strong>software</strong> <strong>de</strong> idéntico tamaño. Sinembargo, para el caso <strong>de</strong> Red Hat se ha tenido en cuenta que se trata<strong>de</strong> un producto re<strong>al</strong>izado a partir <strong>de</strong> una serie <strong>de</strong> aplicaciones in<strong>de</strong>pendientes.Por eso, se ha re<strong>al</strong>izado una estimación medianteCOCOMO, in<strong>de</strong>pendiente para cada uno <strong>de</strong> los paquetes <strong>de</strong> RedHat para luego sumar el coste y person<strong>al</strong> tot<strong>al</strong> necesario. En el caso<strong>de</strong>l tiempo <strong>de</strong> ejecución óptimo para Red Hat se ha consi<strong>de</strong>rado el<strong>de</strong>l paquete más gran<strong>de</strong>, ya que i<strong>de</strong><strong>al</strong>mente, <strong>al</strong> ser todos los paquetesin<strong>de</strong>pendientes, podrían re<strong>al</strong>izarse <strong>de</strong> manera par<strong>al</strong>ela en eltiempo. Es por ello, por lo que el tiempo <strong>de</strong> ejecución óptimo paraRed Hat es parecido <strong>al</strong> <strong>de</strong> los proyectos que se han presentado conanterioridad en este capítulo.Según COCOMO, se necesitarían <strong>al</strong>re<strong>de</strong>dor <strong>de</strong> siete años y medio yun equipo <strong>de</strong> programadores compuesto por una media <strong>de</strong> 1.800<strong>de</strong>sarrolladores para re<strong>al</strong>izar la distribución Red Hat Linux 8.1 <strong>de</strong>s<strong>de</strong>cero. El coste <strong>de</strong> <strong>de</strong>sarrollo fin<strong>al</strong> ascen<strong>de</strong>ría a unos 1.800 millones<strong>de</strong> dólares.ANOTACIONES291


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Nota1.800 millones <strong>de</strong> dólares es el presupuesto que el Ministerio<strong>de</strong> Defensa español <strong>de</strong>stinará a renovar su flota<strong>de</strong> helicópteros. De todo el montante, la mitad irá<strong>de</strong>stinado a la adquisición <strong>de</strong> 24 helicópteros, por loque el precio <strong>de</strong> Red Hat sería el equiv<strong>al</strong>ente a 48 helicópteros<strong>de</strong> combate. Asimismo, la cifra <strong>de</strong> 1.800millones <strong>de</strong> dólares es la que obtuvo como beneficiosa nivel mundi<strong>al</strong> la película Titanic.Tabla 9-15. Estado actu<strong>al</strong> <strong>de</strong> Red Hat LinuxPágina webhttp://www.redhat.comInicio <strong>de</strong>l proyecto 1993LicenciaVersión actu<strong>al</strong> 9.0Líneas <strong>de</strong> código fuente Más <strong>de</strong> 50.000.000Número <strong>de</strong> paquetes 792Estimación <strong>de</strong> coste $ 1,800,000,000Estimación <strong>de</strong> tiempo <strong>de</strong> ejecuciónEstimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladoresHerramientas <strong>de</strong> ayuda <strong>al</strong><strong>de</strong>sarrollo7,35 años (88.25 meses)1.800Empleados <strong>de</strong> Red Hat(gener<strong>al</strong>mente sólo integración)CVS, listas <strong>de</strong> correoANOTACIONESDebido a la presencia <strong>de</strong> un amplio número <strong>de</strong> paquetes, la clasificación<strong>de</strong> lenguajes en Red Hat cuenta con mayor diversidad que lasque hemos visto en las aplicaciones más importantes <strong>de</strong> <strong>software</strong> <strong>libre</strong>.En términos gener<strong>al</strong>es, se percibe la gran importancia <strong>de</strong> C conmás <strong>de</strong> un sesenta por ciento <strong>de</strong> las líneas <strong>de</strong> código. En segundolugar, con más <strong>de</strong> 10 millones <strong>de</strong> líneas <strong>de</strong> código se encuentraC++, seguido <strong>de</strong> lejos por Shell. Es interesante observar que a Perlse unen <strong>de</strong>spués LISP (mayoritariamente <strong>de</strong>bido a su uso en Emacs),el código en ensamblador (<strong>de</strong>l cu<strong>al</strong> una cuarta parte correspon<strong>de</strong> <strong>al</strong>que viene con Linux) y un lenguaje en franco retroceso en cuanto asu uso, como es Fortran.292


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Tabla 9-16. Lenguajes <strong>de</strong> programación utilizados en Red HatLenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC 30993778 62,13%C++ 10216270 20,48%Shell 3251493 6,52%Perl 1106082 2,22%LISP 958037 1,92%Ensamblador 641350 1,29%Fortran 532629 1,07%9.9. Debian GNU/LinuxDebian es un sistema operativo <strong>libre</strong> que en la actu<strong>al</strong>idad utiliza elnúcleo <strong>de</strong> Linux para llevar a cabo su distribución (aunque se esperaque existan distribuciones Debian basadas en otros núcleos, como esel caso con The HURD, en el futuro). Actu<strong>al</strong>mente está disponiblepara varias arquitecturas diferentes, incluyendo Intel x86, ARM, Motorola,680x0, PowerPC, Alpha y SPARC.Debian no es sólo la distribución GNU/Linux más gran<strong>de</strong> en la actu<strong>al</strong>idad,también es una <strong>de</strong> las más estables y disfruta <strong>de</strong> varios premiosen cuanto a la preferencia <strong>de</strong> los usuarios. Aunque su base <strong>de</strong>usuarios sea difícil <strong>de</strong> estimar, ya que el proyecto Debian no ven<strong>de</strong>CD u otros medios con su <strong>software</strong>, y el <strong>software</strong> que contiene pue<strong>de</strong>ser redistribuido por cu<strong>al</strong>quiera que así lo <strong>de</strong>see, po<strong>de</strong>mos suponersin f<strong>al</strong>tar mucho a la verdad que se trata <strong>de</strong> una distribución importante<strong>de</strong>ntro <strong>de</strong>l mercado <strong>de</strong> GNU/Linux.En Debian existe una categorización según la licencia y los requisitos<strong>de</strong> distribución <strong>de</strong> los paquetes. El núcleo <strong>de</strong> la distribuciónDebian (la sección llamada main, que aglutina una gran variedad<strong>de</strong> paquetes) está compuesto sólo por <strong>software</strong> <strong>libre</strong> <strong>de</strong> acuerdocon las (Debian Free Software Gui<strong>de</strong>lines). Está disponible en Internetpara ser <strong>de</strong>scargado y muchos redistribuidores lo ven<strong>de</strong>nen CD u otros medios.ANOTACIONESLectura complementaria[Ver bibliografía, apartado85]293


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Las distribuciones <strong>de</strong> Debian son creadas por cerca <strong>de</strong> un millar <strong>de</strong>voluntarios (gener<strong>al</strong>mente profesion<strong>al</strong>es <strong>de</strong> la informática). La labor<strong>de</strong> estos voluntarios radica en tomar los programas fuente –en lamayoría <strong>de</strong> los casos <strong>de</strong> sus autores origin<strong>al</strong>es–, configurarlos, compilarlosy empaquetarlos, <strong>de</strong> manera que un usuario típico <strong>de</strong> unadistribución Debian sólo tenga que seleccionar el paquete para queel sistema lo añada sin mayores problemas. Esto que a simple vistapue<strong>de</strong> parecer simple, se torna complejo en cuanto se introducenfactores como las <strong>de</strong>pen<strong>de</strong>ncias entre los diferentes paquetes (el paqueteA necesita, para po<strong>de</strong>r funcionar, <strong>de</strong>l paquete B) y las diferentesversiones <strong>de</strong> todos estos paquetes.La labor <strong>de</strong> los integrantes <strong>de</strong>l proyecto Debian es la misma que laque se re<strong>al</strong>iza en cu<strong>al</strong>quier otra distribución: la integración <strong>de</strong> <strong>software</strong>para su correcto funcionamiento conjunto. A<strong>de</strong>más <strong>de</strong>l trabajo<strong>de</strong> adaptación y empaquetamiento, los <strong>de</strong>sarrolladores Debian seencargan <strong>de</strong> mantener una infraestructura <strong>de</strong> servicios basados enInternet (sitio web, archivos en línea, sistema <strong>de</strong> gestión <strong>de</strong> errores,listas <strong>de</strong> correo <strong>de</strong> ayuda, soporte y <strong>de</strong>sarrollo, etc.), <strong>de</strong> varios proyectos<strong>de</strong> traducción e internacion<strong>al</strong>ización, <strong>de</strong>l <strong>de</strong>sarrollo <strong>de</strong> variasherramientas específicas <strong>de</strong> Debian y, en gener<strong>al</strong>, <strong>de</strong> cu<strong>al</strong>quier elementoque hace que la distribución Debian sea posible.Lectura complementaria[Ver bibliografía, apartado87]Aparte <strong>de</strong> su natur<strong>al</strong>eza voluntaria, el proyecto Debian tiene una característicaque lo hace especi<strong>al</strong>mente singular: el contrato soci<strong>al</strong> <strong>de</strong>Debian. Este documento contiene no sólo los objetivos princip<strong>al</strong>es<strong>de</strong>l proyecto Debian, sino también los medios que se utilizarán par<strong>al</strong>levarlos a cabo.ANOTACIONESLectura complementaria[Ver bibliografía, apartado86]Debian también es conocida por tener una política <strong>de</strong> paquetes y<strong>de</strong> versionado muy estricta con el fin <strong>de</strong> conseguir una mayor c<strong>al</strong>idad<strong>de</strong>l producto. Así, en todo momento existen tres sabores diferentes<strong>de</strong> Debian: una versión estable, una inestable y otra enpruebas. Como su propio nombre indica, la versión estable es laversión indicada para sistemas y personas no aptas para sobres<strong>al</strong>tos.Su <strong>software</strong> ha <strong>de</strong> pasar un periodo <strong>de</strong> congelación en el quesólo se corrigen erratas. La norma es que en la versión estable <strong>de</strong>Debian no ha <strong>de</strong> haber ningún error crítico conocido. Por contra,la versión estable <strong>de</strong> Debian no suele tener las últimas versiones <strong>de</strong>l<strong>software</strong> (lo más novedoso).294


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Para los que <strong>de</strong>seen tener una versión con el <strong>software</strong> más actu<strong>al</strong>existen otras dos versiones <strong>de</strong> Debian coetáneas con la estable. Laversión inestable incluye paquetes en vía <strong>de</strong> estabilización, mientrasque la versión en pruebas, como su propio nombre indica, es la másproclive a f<strong>al</strong>lar y contiene lo último <strong>de</strong> lo último en lo que a noveda<strong>de</strong>s<strong>de</strong> <strong>software</strong> se refiere.En el momento <strong>de</strong> este estudio, la versión estable <strong>de</strong> Debian es Debian3.0 (también conocida como Woody), la inestable recibe el sobrenombre<strong>de</strong> Sid y la que se encuentra en pruebas es Sarge. Peroen el pasado, Woody pasó también por una etapa inestable y, antes<strong>de</strong> eso, otra en pruebas. Esto es importante, porque lo que vamos aconsi<strong>de</strong>rar en este artículo son las diferentes versiones estables <strong>de</strong>Debian, <strong>de</strong>s<strong>de</strong> que se publicara la versión 2.0 <strong>al</strong>lá por 1998. Así, tenemosa Debian 2.0 (<strong>al</strong>ias Hamm), Debian 2.1 (Slink), Debian 2.2(Potato) y, por último, Debian 3.0 (Woody).NotaLos apodos <strong>de</strong> las versiones <strong>de</strong> Debian correspon<strong>de</strong>na los protagonistas <strong>de</strong> la película <strong>de</strong> dibujos animadosToy Story, una tradición que se implantó medio en serio,medio en broma cuando se publicó la versión 2.0y Bruce Perens, entonces lí<strong>de</strong>r <strong>de</strong>l proyecto y <strong>de</strong>spuésfundador <strong>de</strong> la Open Source Initiative y <strong>de</strong>l términoOpen Source, trabajaba para la empresa que se encargaba<strong>de</strong> re<strong>al</strong>izar esta película. Se pue<strong>de</strong>n encontrarmás <strong>de</strong>t<strong>al</strong>les sobre la historia <strong>de</strong> Debian y ladistribución Debian en gener<strong>al</strong> en Bd<strong>al</strong>e Garbee; HartmutKoptein; Nils Lohner; Will Lowe; Bill Mitchell; IanMurdock; Martin Schulze; Craig Sm<strong>al</strong>l. A brief historyof <strong>de</strong>bian. En el paquete <strong>de</strong>bian-history.9.9.1. Radiografía <strong>de</strong> DebianAl igu<strong>al</strong> que en el caso <strong>de</strong> Red Hat, el producto <strong>software</strong> fin<strong>al</strong> queofrece Debian ofrece resultados astronómicos. La última versión estable<strong>de</strong> Debian, la versión 3.0 que recibió el sobrenombre <strong>de</strong> Woody,cuenta con nada menos que 4.579 paquetes fuente y <strong>al</strong>re<strong>de</strong>dor<strong>de</strong> 10.000 paquetes binarios. Po<strong>de</strong>mos consi<strong>de</strong>rar, a la vista <strong>de</strong> es-Lectura complementaria[Ver bibliografía, apartado100]ANOTACIONES295


© FUOC • XP06/M2101/01492Software <strong>libre</strong>tos resultados, que Debian es la colección <strong>de</strong> <strong>software</strong> integrado másgran<strong>de</strong> que existe y que es probable que <strong>de</strong>bido a su tamaño se tengaque enfrentar en un futuro no muy lejano a posibles problemas<strong>de</strong> integración.El número <strong>de</strong> líneas <strong>de</strong> código en Debian 3.0 ascien<strong>de</strong> a 105 millones.Según el mo<strong>de</strong>lo COCOMO habría que <strong>de</strong>sembolsar una cantidadaproximada <strong>de</strong> 3.600 millones <strong>de</strong> dólares para obtener un<strong>software</strong> como el que viene empaquetado con esta distribución. Aligu<strong>al</strong> que en el caso <strong>de</strong> Red Hat, se ha computado por separado elesfuerzo necesario para cada paquete y luego se han sumado todaslas cantida<strong>de</strong>s. Por la misma razón, el tiempo <strong>de</strong> <strong>de</strong>sarrollo <strong>de</strong> Debianascien<strong>de</strong> sólo a 7 años, ya que se consi<strong>de</strong>ra que cada paquetepue<strong>de</strong> re<strong>al</strong>izarse par<strong>al</strong>elamente a los <strong>de</strong>más en lo que respecta <strong>al</strong>tiempo. Eso sí, <strong>de</strong> media habría que movilizar a cerca <strong>de</strong> cuatro mil<strong>de</strong>sarrolladores durante esos siete años para lograrlo.Nota3.600 millones <strong>de</strong> dólares es el presupuesto que tieneasignado el VI Programa Marco <strong>de</strong> la Comisión Europeapara activida<strong>de</strong>s <strong>de</strong> investigación y <strong>de</strong>sarrollo relacionadascon la “Sociedad <strong>de</strong> la Información”.También es la cifra que Telefónica prevé invertir enAlemania para implantar UMTS.Tabla 9-17. Estado actu<strong>al</strong> <strong>de</strong> DebianPágina webhttp://www.<strong>de</strong>bian.orgInicio <strong>de</strong>l proyecto 16.8.1993LicenciaVersión actu<strong>al</strong> <strong>de</strong> DebianLas que cumplan las DFSGDebian 3.0 (<strong>al</strong>ias Woody)ANOTACIONESLíneas <strong>de</strong> código fuente 105.000.000Número <strong>de</strong> paquetes 4.579Estimación <strong>de</strong> coste 3.625.000.000 $Estimación <strong>de</strong> tiempo <strong>de</strong> ejecuciónEstimación <strong>de</strong> número medio <strong>de</strong><strong>de</strong>sarrolladoresNúmero aproximado <strong>de</strong><strong>de</strong>sarrolladores (maintainers)Herramientas <strong>de</strong> ayuda <strong>al</strong> <strong>de</strong>sarrollo7 añosCerca <strong>de</strong> 3.950Cerca <strong>de</strong> milListas <strong>de</strong> correo, sistema <strong>de</strong>notificación <strong>de</strong> errores296


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492El lenguaje <strong>de</strong> programación más utilizado en Debian 3.0 es C, conmás <strong>de</strong> un 60% <strong>de</strong> las líneas <strong>de</strong> código. Sin embargo, como se mostraráun poco más a<strong>de</strong>lante en este apartado, la importancia <strong>de</strong> Cva remitiendo con el tiempo, ya que las primeras versiones <strong>de</strong> Debiancontaban hasta con un 80% <strong>de</strong>l código en C. Buena parte <strong>de</strong> laculpa <strong>de</strong>l retroceso <strong>de</strong> C lo tiene el segundo en cuestión C++, perosobre todo la irrupción <strong>de</strong> los lenguajes <strong>de</strong> guión (scripting) comoPerl, Python y –aunque fuera <strong>de</strong> esta tabla– PHP. En medio se cuelanlenguajes como LISP o <strong>al</strong>go más exótico, Fortran.Tabla 9-18. Lenguajes <strong>de</strong> programación utilizados en Debian GNU/LinuxLenguaje <strong>de</strong> programación Líneas <strong>de</strong> código PorcentajeC 66.549.696 63,08%C++ 13.066.952 12,39%Shell 8.635.781 8,19%LISP 4.087.269 3,87%Perl 3.199.436 3,03%Fortran 1,939,027 1,84%Python 1.458.783 1,38%En la tabla 9-19 se muestra la evolución <strong>de</strong> los lenguajes más significativos–los que superan el 1% <strong>de</strong> código– en Debian 3.0. Por <strong>de</strong>bajo<strong>de</strong> la frontera <strong>de</strong>l 1% se sitúan en Debian 3.0, en este or<strong>de</strong>n,PHP, Ada, Modula3, Objective C, Java, Yacc y ML (todos con porcentajesentre el 0.30% y el 0.60%).Tabla 9-19. Lenguajes más utilizados en DebianLenguaje Debian 2.0 Debian 2.1 Debian 2.2 Debian 3.0C 19.400.000 76,67% 27.800.00 74,89% 40.900.000 69,12% 66.500.000 63,08%C++ 1.600.000 6,16% 2.800.000 7,57% 5.980.000 10,11% 13.000.000 12,39%Shell 645.000 2,55% 1.150.000 3,10% 2.710.000 4,59% 8.635.000 8,19%Lisp 1.425.000 5,64% 1.890.000 5,10% 3.200.000 5,41% 4.090.000 3,87%Perl 425.000 1,68% 774.000 2,09% 1.395.000 2,36% 3.199.000 3,03%Fortran 494.000 1,96% 735.000 1,98% 1.182.000 1,99% 1.939.000 1,84%Python 122.000 0,48% 211.000 0,57% 349.000 0,59% 1.459.000 1,38%Tcl 311.000 1,23% 458.000 1,24% 557.000 0,94% 1.081.000 1,02%ANOTACIONES297


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Existen lenguajes a los que podríamos consi<strong>de</strong>rar minoritarios que<strong>al</strong>canzan un puesto bastante <strong>al</strong>to en la clasificación. Esto se <strong>de</strong>be aque aun encontrándose presentes en un número reducido <strong>de</strong> paquetes,éstos son bastante gran<strong>de</strong>s. T<strong>al</strong> es el caso <strong>de</strong> Ada, que en trespaquetes (gnat, un compilador <strong>de</strong> Ada, libgtkada, un enlace a la bibliotecaGTK, y Asis, un sistema para gestionar fuentes en Ada) aglutina430.000 <strong>de</strong> un tot<strong>al</strong> <strong>de</strong> 576.000 líneas <strong>de</strong> código fuente que sehan contabilizado en Debian 3.0 para Ada. Otro caso parecido es el<strong>de</strong> Lisp, que cuenta sólo con GNU Emacs y con Xemacs, con más <strong>de</strong>1.200.000 líneas <strong>de</strong> los aproximadamente 4 millones <strong>de</strong> toda la distribución.9.9.2. Comparación con otros sistemas operativosSi dice que todas las comparaciones son odiosas, las <strong>de</strong> <strong>software</strong> <strong>libre</strong>con <strong>software</strong> propietario lo son más. Las radiografías tan <strong>de</strong>t<strong>al</strong>ladas<strong>de</strong> Red Hat Linux y Debian han sido posibles por su condición<strong>de</strong> <strong>software</strong> <strong>libre</strong>. El acceso <strong>al</strong> código (y a otra información que hasido expuesta en este capítulo) es indispensable para estudiar a fondolas diferentes versiones en cuanto a número <strong>de</strong> líneas, paquetes,lenguajes <strong>de</strong> programación utilizados, etc. Pero las ventajas <strong>de</strong>l <strong>software</strong><strong>libre</strong> van más <strong>al</strong>lá, porque a<strong>de</strong>más facilitan la revisión <strong>de</strong> terceraspersonas, ya sean grupos <strong>de</strong> investigación o sencillamentepersonas interesadas.ANOTACIONESEn los sistemas propietarios, en gener<strong>al</strong>, re<strong>al</strong>izar un estudio así es tareaimposible. De hecho, las cuentas que se ofrecen a continuacióntienen sus fuentes en las propias compañías que están <strong>de</strong>trás <strong>de</strong>l <strong>de</strong>sarrollo<strong>de</strong> <strong>software</strong>, por lo que no po<strong>de</strong>mos av<strong>al</strong>ar su veracidad.Para más inri, en muchos casos no sabemos si se está hablando <strong>de</strong>líneas <strong>de</strong> código fuente físicas t<strong>al</strong> como hemos venido haciendo a lolargo <strong>de</strong> este capítulo o también incluyen en sus cuentas las líneas enblanco y las <strong>de</strong> comentarios. A ello hay que añadir que tampoco sabemosa ciencia cierta lo que consi<strong>de</strong>ran en su <strong>software</strong>, por lo quepara <strong>al</strong>gunas versiones <strong>de</strong> Microsoft Windows no sabemos si incluyenel paquete <strong>de</strong> Microsoft Office o no.En cu<strong>al</strong>quier caso, y teniendo en cuenta todo lo que se ha comentado<strong>al</strong> respecto en párrafos anteriores, pensamos que incluir esta comparativaes interesante, ya que nos ayuda a situar las diferentes dis-298


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492tribuciones <strong>de</strong> Red Hat y <strong>de</strong> Debian <strong>de</strong>ntro <strong>de</strong> un panorama másamplio. Lo que parece estar fuera <strong>de</strong> toda duda es que tanto Debiancomo Red Hat, pero especi<strong>al</strong>mente el primero, son las colecciones <strong>de</strong><strong>software</strong> más gran<strong>de</strong>s vistas jamás por la humanidad hasta el momento.Los números que se citan a continuación proce<strong>de</strong>n <strong>de</strong> Mark Lucovsky(2000). From nt os/2 to windows 2000 and beyond - a <strong>software</strong>-engineeringodyssey para Windows 2000, SUN Microsystems (2000).Sun microsystems announces availability of StarOffice(TM) sourceco<strong>de</strong> on OpenOffi-ce. org para StarOffice 5.2, Gary McGraw. “Buildingsecure <strong>software</strong>: How to avoid security problems the right way”.En: David A. Wheeler para Windows XP y Bruce Schneier (2000).Software complexity and security para el resto <strong>de</strong> sistemas. En la tablatabla 9-20 se muestra la comparativa en or<strong>de</strong>n creciente.Lectura complementaria[Ver bibliografía, apartados147, 150, 148 y 179]Tabla 9-20. Comparación con sistemas propietariosSistemaFecha <strong>de</strong>publicaciónLíneas <strong>de</strong> código(aprox.)Microsoft Windows 3.1 Abril 1992 3.000.000SUN Solaris 7 Octubre 1998 7.500.000SUN StarOffice 5.2 2000.06 7.600.000Microsoft Windows 95 Agosto 1995 15.000.000Red Hat Linux 6.2 Marzo 2000 18.000.000Debian 2.0 Julio 1998 25.000.000Microsoft Windows 2000 Febrero 2000 29.000.000Red Hat Linux 7.1 Abril 2001 32.000.000Debian 2.1 Marzo 1999 37.000.000Windows NT 4.0 Julio 1996 40.000.000Red Hat Linux 8.0 Septiembre 2002 50.000.000Debian 2.2 Agosto 2000 55.000.000Debian 3.0 Julio 2002 105.000.000ANOTACIONES299


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Bibliografía[1] About issues. http://www.openoffice.org/project_issues.html[2] Ada core technologies. http://www.gnat.com[3] Aegis. http://aegis.sourceforge.net/in<strong>de</strong>x.html[4] Alcove. http://www.<strong>al</strong>cove.com[5] Alcove-labs. http://www.<strong>al</strong>cove-labs.org[6] Alioth. http://<strong>al</strong>ioth.<strong>de</strong>bian.org[7] The apache ant project. http://ant.apache.org[8] Arch revision control system. http://arch.fifthvision.net/bin/view[9] artofco<strong>de</strong> LLC. http://artofco<strong>de</strong>.com[10] Autoconf. http://www.gnu.org/<strong>software</strong>/autoconf[11] Barrapunto. http://barrapunto.com[12] Berlios: The open source mediator. http://berlios.<strong>de</strong>[13] Bitkeeper source management. http://www.bitmover.com/bitkeeper[14] Bruce perens. http://perens.org/OpenStandards[15] C<strong>al</strong><strong>de</strong>ra. http://www.sco.com[16] Cisco enterprise print system. http://ceps.sourceforge.net[17] Concurrent version system. http://www.cvshome.org[18] Creative commons. http://creativecommons.org[19] Directory of open access journ<strong>al</strong>s. http://www.doaj.orgANOTACIONES301


© FUOC • XP06/M2101/01492Software <strong>libre</strong>[20] ecos. http://sources.redhat.com/ecos[21] ecos license 2.0. http://www.gnu.org/licenses/ecos-license.html[22] First monday: Peer rewiewed journ<strong>al</strong> on the internet. http://www.firstmonday.dk[23] Free Software Foundation. http://www.fsf.org[24] Fundación wu ming. http://www.wumingfoundation.com[25] G-forge. http://gforge.org[26] Gettext. http://www.gnu.org/<strong>software</strong>/gettext[27] GNU automake. http://www.gnu.org/<strong>software</strong>/automake[28] GNU libc. http://www.gnu.org/<strong>software</strong>/libc[29] GNU libtool. http://www.gnu.org/<strong>software</strong>/libtol[30] GNU make. http://www.gnu.org/<strong>software</strong>/make/make.html[31] GNU troff. http://www.gnu.org/<strong>software</strong>/groff/groff.html[32] Have you seen these hackers? http://www.mozilla.org/MPL/missing.html[33] History of tex. http://www.math.utah.edu/<strong>software</strong>/plot79/tex/history.html[34] IBM public license version 1.0. http://oss.<strong>software</strong>.ibm.com/<strong>de</strong>veloperworks/opensource/license10.html[35] Jam product information. http://www.perforce.com/jam/jam.htmlANOTACIONES[36] The Linux documentation project. http://www.tldp.org[37] LinuxCare. http://www.linuxcare.com[38] Mailman, the GNU mailing list manager. http://www.list.org[39] Mozilla public license 1.1. http://www.mozilla.org/MPL/MPL-1.1.html[40] Mozilla tin<strong>de</strong>rbox. http://www.mozilla.org/tin<strong>de</strong>rbox.html302


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492[41] Open cores. http://www.opencores.org[42] Open directory project soci<strong>al</strong> contract[43] Open Source Initiative. http://www.opensource.org[44] Public <strong>de</strong>velopment cluster. http://handhelds.org/projects/skiffcluster.html[45] Public library of science. http://www.publiclibraryofscience.org[46] Red hat. http://www.redhat.com[47] Savannah. http://savannah.gnu.org y http://savannah.nongnu.org[48] Slashdot: news for nerds. http://slashdot.org[49] Sleepycat license. http://www.sleepycat.com/download/oslicense.html[50] Sleepycat <strong>software</strong>. http://www.sleepycat.com[51] Sourceforge: Open source <strong>software</strong> <strong>de</strong>velopment website. http://sourceforge.net[52] Subversion. http://subversion.tigris.org[53] Texinfo - the GNU documentation system[54] Tigris.org: Open source <strong>software</strong> engineering. http://tigris.org[55] W3c document license. http://www.w3.org/Consortium/Leg<strong>al</strong>/2002/copyright-documents-20021231[56] Wikipedia. http://www.wikipedia.org[57] X window system release 11 license. http://www.x.org/Downloads_terms.html[58] Ximian. http://ximian.com/[59] Zope corporation. http://www.zope.com/[60] Zope public license 2.0. http://www.zope.org/Resources/ZPLANOTACIONES303


© FUOC • XP06/M2101/01492Software <strong>libre</strong>[61] Ley <strong>de</strong> Propiedad Intelectu<strong>al</strong>. Re<strong>al</strong> Decreto Legislativo 1/1996, <strong>de</strong> 12 <strong>de</strong>abril, abril 1996[62] Affero gener<strong>al</strong> public license (2002). http://www.affero.org/oagpl.html[63] ISO JTC 1/SC 34 (1986). Standard gener<strong>al</strong>ized markup language (SG-ML, iso 8879).[64] I. Antonia<strong>de</strong>s; I. Samoladas; I. Stamelos; G.L. Bleris. Dynamic<strong>al</strong> simulationmo<strong>de</strong>ls of the open source <strong>de</strong>velopment process. En: Koch. http://wwwai.wu-wien.ac.at/˜koch/oss-book[65] Edward C. Bailey (1998). Maximum rpm - taking the red hat packagemanager to the limit. http://rikers.org/rpmbook/[66] Jesús M. González Barahona (2000). “Software <strong>libre</strong>, monopolios yotras yerbas”. Todo Linux (núm. 3). http://sinetgy.org/˜jgb/articulos/soft-<strong>libre</strong>-monopolios[67] Jesús M. González Barahona (2002). “¿Qué se hace con mi dinero?”Todo Linux (vol. 17). http://sinetgy.org/˜jgb/articulos/sobre-administracion[68] Jesús M. González Barahona; Gregorio Robles. Libre <strong>software</strong> engineeringweb site. http://<strong>libre</strong>soft.dat.escet.urjc.es[69] Jesús M. González Barahona; Gregorio Robles (mayo, 2003). “Unmountingthe “co<strong>de</strong> god” assumption”. En: Proceedings of the Fourth Internation<strong>al</strong>Conference on eXtreme Programming and Agile Processes inSoftware Enginee-ring. It<strong>al</strong>ia: Génova.[70] Jesús M. González Barahona; Gregorio Robles; Miguel A. Ortuño Pérez;Luis Ro<strong>de</strong>ro Merino; José Centeno González; Vicente Matellán Olivera;Eva M. Castro Barbero; Pedro <strong>de</strong> las Heras Quirós. “Anatomy of two GNU/Linux distributions”. En: Koch. http://wwwai.wu-wien.ac.at/˜koch/oss-bookANOTACIONES[71] Matthew P. Barnson. The bugzilla gui<strong>de</strong>. http://www.bugzilla.org/docs214/html/in<strong>de</strong>x.html[72] Nikolai Bezroukov (diciembre, 1998). “A second look at the cathedr<strong>al</strong>and the bazaar”. First Monday (vol. 12, núm.4). http://www.firstmonday.dk/issues/issue4_12/bezroukov/in<strong>de</strong>x.html[73] Ladislav Bodnar (2003). Linux distributions - facts and figures. http://www.distrowatch.com/stats.php?section=packagemanagement304


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492[74] Barry W. Boehm (1981). Software Engineering Economics. Prentice H<strong>al</strong>l.[75] Leg<strong>al</strong> resources and tools for surviving the bad patents. http://www.buspatents.com[76] S. Bradner (oct.,1996). The internet standards process – revision 3 (rfc2026, bcp 9). http://www.ietf.org/rfc/rfc2026.txt[77] Per Ce<strong>de</strong>rqvist and GNU (1993). CVS–concurrent versions system. http://www.gnu.org/manu<strong>al</strong>/cvs/in<strong>de</strong>x.html[78] Ward Cunningham. Wiki <strong>de</strong>sign principles[79] Loic Dachary (2001). Savannah the next generation. http://savannah.gnu.org/docs/savannah-plan.html[80] Junta <strong>de</strong> And<strong>al</strong>ucía. Decreto 72/2003 <strong>de</strong> 18 <strong>de</strong> marzo, <strong>de</strong> medidas <strong>de</strong>impulso <strong>de</strong> la sociedad <strong>de</strong>l conocimiento en And<strong>al</strong>ucía, marzo, 2003. http://boja.and<strong>al</strong>uciajunta.es/boja/cgi-bin/frame_pagina.cgi?2003-55-8[81] Adam <strong>de</strong> Boor. Pmake – a tutori<strong>al</strong>. http://docs.freebsd.org/44doc/psd/12.make/paper.html[82] Miguel <strong>de</strong> Icaza. The story of the gnome project. http://primates.ximian.com/˜miguel/gnome-history.html[83] Senado <strong>de</strong> la República Francesa. Forum sur la proposition <strong>de</strong> loi tendanta génér<strong>al</strong>iser dans l’administration l’usage d’internet et <strong>de</strong> logiciels <strong>libre</strong>s.http://www.senat.fr/consult/log<strong>libre</strong>/in<strong>de</strong>x.htm[84] Pedro <strong>de</strong> las Heras Quirós; Jesús M. González Barahona (2000). “Iniciativas<strong>de</strong> las administraciones públicas con relación <strong>al</strong> <strong>software</strong> <strong>libre</strong>”. Bole.TIC,revista <strong>de</strong> ASTIC (vol. 14).[85] Debian. Debian free <strong>software</strong> gui<strong>de</strong>lines. http://www.<strong>de</strong>bian.org/soci<strong>al</strong>_contract.html#gui<strong>de</strong>lines[86] Debian. Debian policy manu<strong>al</strong>. http://www.<strong>de</strong>bian.org/doc/<strong>de</strong>bian-policy[87] Debian. Debian soci<strong>al</strong> contract. http://www.<strong>de</strong>bian.org/soci<strong>al</strong>_contract.html[88] Schriftenreihe <strong>de</strong>r KBSt (julio, 2003). Leitfa<strong>de</strong>n für die migration vonbasis<strong>software</strong>komponenten auf server- und arbeits-platzsystemen. Technic<strong>al</strong>ANOTACIONES305


© FUOC • XP06/M2101/01492Software <strong>libre</strong>report, Koordinierungs-und Beratungsstelle <strong>de</strong>r Bun<strong>de</strong>sregierung für Informations-technikin <strong>de</strong>r Bun<strong>de</strong>sverw<strong>al</strong>tung (KBSt).http://www.kbst.bund.<strong>de</strong>/download/mlf_v1_<strong>de</strong>.pdf[89] Chris DiBona; Sam Ockman; Mark Stone (ed.) (1999). Open Sources.Voices from the Open Source Revolu-tion. O’Reilly & Associates.http://www.oreilly.com/cat<strong>al</strong>og/opensources[90] Open directory project. http://dmoz.org[91] Justin R. Ehrenkrantz (mayo, 2003). “Release management within opensource projects”. En: Proceedings of the 3rd Works-hop on Open Source SoftwareEngineering at the 25th Internation<strong>al</strong> Conference on Software Engineering.USA: Portland.[92] Consejo Europeo (1991). Directiva 91/250/cee <strong>de</strong>l consejo, <strong>de</strong> 14 <strong>de</strong>mayo <strong>de</strong> 1991, relativa a la protección jurídica <strong>de</strong> programas <strong>de</strong> or<strong>de</strong>nador.http://europa.eu.int/scadplus/leg/es/lvb/l26027.htm[93] Karl Fogel; Moshe Bar (2001). Open Source Co<strong>de</strong> Development withCVS (2.ª ed.). Paragliph Press. http://cvsbook.red-bean.com[94] Electronic Frontier Foundation. Open audio.http://www.eff.org/IP/Open_licenses/eff_o<strong>al</strong>.html[95] Free Software Foundation (1985). The GNU manifesto.http://www.gnu.org/philosophy[96] Free Software Foundation (junio 1991). Gnu gener<strong>al</strong> public license, version2. http://www.fsf.org/licenses/gpl.html[97] Free Software Foundation (febrero, 1999). Gnu lesser gener<strong>al</strong> publiclicense, version 2,1. http://www.fsf.org/licenses/lgpl.htmlANOTACIONES[98] Free Software Foundation. Free <strong>software</strong> <strong>de</strong>finition.http://www.gnu.org/philosophy/free-sw.html[99] Free Software Foundation. Licencias <strong>libre</strong>s.http://www.gnu.org/licenses/license-list.html[100] Bd<strong>al</strong>e Garbee; Hartmut Koptein; Nils Lohner; Will Lowe; Bill Mitchell;Ian Murdock; Martin Schulze; Craig Sm<strong>al</strong>l. A brief history of <strong>de</strong>bian. En elpaquete <strong>de</strong>bian-history.306


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492[101] Daniel Germán (mayo, 2002). “The evolution of gnome”. En: Proceedingsof the 2nd Workshop on Open Source Software Engineering at the 24thInternation<strong>al</strong> Conference on Software Engineering. USA: Florida.[102] Daniel Germán; Audris Mockus (mayo, 2003). “Automating the measurementof open source pojects”. En: Proceedings of the 3rd Workshop onOpen Source Software Engineering at the 25th Internation<strong>al</strong> Conference onSoftware Engineering. USA: Portland.[103] Rishab A. Ghosh (marzo, 1998). “Cooking pot markets: an economicmo<strong>de</strong>l for the tra<strong>de</strong> in free goods and services on the internet”. First Monday(vol. 3, núm. 3).http://www.firstmonday.dk/issues/issue3_3/ghosh/in<strong>de</strong>x.html[104] Rishab A. Ghosh; Ruediger Glott; Bernhard Krieger; Gregorio Robles(2002). Free/<strong>libre</strong> and open source soft-ware: Survey and study - part iv: Surveyof <strong>de</strong>velopers.http://www.infonomics.nl/FLOSS/report/FLOSS_Fin<strong>al</strong>4.pdf[105] Rishab Aiyer Ghosh; Vipul Ved Prakash (julio, 2000). “The Orbiten free<strong>software</strong> survey”. First Monday (vol. 7, núm. 5).http://www.firstmonday.dk/issues/issue5_7/ghosh/in<strong>de</strong>x.html[106] Michael W. Godfrey; Qiang Tu (agosto, 2000). “Evolution in opensource <strong>software</strong>: A case study”. Proceedings of the 2000 Internation<strong>al</strong>Conference on Software Maintainance.[107] Juan Alberto González (marzo, 2002). Carta <strong>al</strong> congresista Villanueva.http://www.gnu.org.pe/mscarta.html[108] Jesús M. González-Barahona; Miguel A. Ortuño Pérez; Pedro <strong>de</strong> lasHeras Quirós; José Centeno González; Vicente Matellán Olivera (diciembre,2001). “Counting potatoes: The size of Debian 2.2”. Upgra<strong>de</strong> Magazine(vol. 6, núm. 2, págs. 60-66).http://people.<strong>de</strong>bian.org/˜jgb/<strong>de</strong>bian-counting/counting-potatoes[109] Michel Goosens; Sebastian Rahtz (1999). The LaTeX Web Companion.Addison Wesley.[110] Burton Grad (enero-marzo, 2002). “A person<strong>al</strong> recollection:IBM’s unbundling of <strong>software</strong> and services”. IEEE Ann<strong>al</strong>s of the Historyof Computing (vol. 1, núm. 24, págs. 64-71).[111] Working group on Libre Software (1999). Free <strong>software</strong> / open source:Information society opportunities for europe? http://eu.conecta.it/paper.pdfANOTACIONES307


© FUOC • XP06/M2101/01492Software <strong>libre</strong>[112] GrULIC. Legislación sobre el uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> en el estado.http://proposicion.org.ar/doc/referencias/in<strong>de</strong>x.html.es[113] Jim Hamerly; Tom Paquin; Susan W<strong>al</strong>ton (1999). Freeing the source -the story of mozilla.http://www.oreilly.com/cat<strong>al</strong>og/opensources/book/netrev.html[114] Michael J. Hammel (diciembre, 1991). “The history of xfree86”. LinuxMagazine. http://www.linux-mag.com/2001-12/xfree86_01.html[115] S. Harris (agosto, 2001). The tao of IETF: A novice’s gui<strong>de</strong> to the internetengineering task force (RFC 3160, FYI 17).http://www.ietf.org/rfc/rfc3160.txt[116] Paul Harrison (2002). The ration<strong>al</strong> street performer protocol.http://www.logarithmic.net/pfh/RSPP.[117] Ragib Hasan. History of Linux. http://ragib.hypermart.net/linux[118] Michael Hauben; Ronda Hauben (1997). Netizens. On the History andImpact of Usenet and the Internet. IEEE Computer Society Press.[119] Kieran He<strong>al</strong>y; Alan Schussman (enero, 2003). The ecology of opensource <strong>software</strong> <strong>de</strong>velopment.http://opensource.mit.edu/papers/he<strong>al</strong>yschussman.pdf[120] Frank Hecker (mayo, 1998). Setting up shop: The business of opensource<strong>software</strong>. http://www.hecker.org/writings/setting-up-shop.html[121] Frank Hecker (1998). Setting up shop: The business of open-source<strong>software</strong>. http://www.hecker.org/writings/setting-up-shop.htmlANOTACIONES[122] Guido Hertel; Sven Niedner; Stefanie Herrmann (2003). Motivation of<strong>software</strong> <strong>de</strong>velopers in open source projects: An internet-based survey of contributorsto the Linux kernel.http://opensource.mit.edu/papers/rp-hertelniednerherrmann.pdf[123] Allan Heydon; Roy Levin; Timothy Mann; Yuan Yu (2001). The vestaapproach to <strong>software</strong> configuration management. Technic<strong>al</strong> report, COM-PAQ Systems Research Center.ftp://gatekeeper.research.compaq.com/pub/DEC/SRC/research-reports/SRC-168.pdf[124] Pekka Himanen (2001). The Hacker Ethic and the Spirit of the InformationAge. Random House. http://www.hackerethic.org308


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492[125] Francis Hunt; Paul Johnson (2002). On the pareto distribution of sourceforgeprojects. Technic<strong>al</strong> report, Centre for Technology Management,Cambridge University Engineering Department, Mill Lane, Cambridge CB2 1RX.http://www-mmd.eng.cam.ac.uk/people/fhh10/Sourceforge/Sourceforge%20paper.pdf[126] Open Source Initiative. History of the osi. http://www.opensource.org/docs/history.php[127] Embajador <strong>de</strong> EE.UU. en Perú John R. Hamilton (junio, 2002). Carta<strong>al</strong> presi<strong>de</strong>nte <strong>de</strong>l congreso <strong>de</strong> la república. http://www.gnu.org.pe/lobbyusa-congreso.html[128] Paul Jones (mayo, 2000). Brook’s law and open source: The morethe merrier? http://www-106.ibm.com/<strong>de</strong>veloperworks/opensource/library/os-merrier.html?dwzone=opensource[129] Niels Jorgensen. Increment<strong>al</strong> and <strong>de</strong>centr<strong>al</strong>ized integration in freebsd.En: Joe Feller; Brian Fitzger<strong>al</strong>d; Scott Hissam; Karim Lakhani (ed.) (2003).Making Sense of the Bazaar. O’Reilly.http://www.dat.ruc.dk/˜nielsj/research/papers/bazaar-freebsd.pdf[130] Fre<strong>de</strong>rick P. Brooks Jr. The Mythic<strong>al</strong> Man-Month: Essays on SoftwareEngineering. Addison-Wesley, 1975[131] C. K<strong>al</strong>t (abril, 2000). Internet relay chat: Architecture (rfc 2810). http://www.ietf.org/rfc/rfc2810.txt[132] J. Kelsey; B. Schneier (noviembre, 1998). “The street performer protocol”.En: Third USENIX Workshop on Electronic Commerce Proceedings. USE-NIX Press. http://www.counterpane.com/street_performer.html[133] J. Kelsey; B. Schneier (junio, 1999). “The street performer protocol anddigit<strong>al</strong> copyrights”. First Monday (vol. 6, núm. 4).http://www.firstmonday.dk/issues/issue4_6/kelsey[134] Christopher M. Kelty (diciembre, 2001). “Free <strong>software</strong>/free science”.First Monday (vol. 12, núm. 6).http://firstmonday.org/issues/issue6_12/kelty/in<strong>de</strong>x.html[135] Jamil Khatib. Openipcore hardware gener<strong>al</strong> public license.http://www.opencores.org/OIPC/OHGPL_17.shtml[136] Don<strong>al</strong>d Knuth (1989). The TeXboak. Addison Welsley.ANOTACIONES309


© FUOC • XP06/M2101/01492Software <strong>libre</strong>[137] Stefan Koch (ed.) (2003). Free/Open Source Software Development.I<strong>de</strong>a Group Inc. http://wwwai.wu-wien.ac.at/˜koch/oss-book[138] Stefan Koch; Georg Schnei<strong>de</strong>r (2000). “Results from <strong>software</strong>engineering research into open source <strong>de</strong>velopment projects using publicdata. Diskussionspapiere zum Tätigkeitsfeld Informationsverarbeitung undInformationswirtschaft”. En: H.R. Hansen; W.H. Janko (Hrsg.).Wirtschaftsuniversität Wien (núm. 22).[139] San<strong>de</strong>ep Krishnamurthy (mayo, 2002). “Cave or community? an empiric<strong>al</strong>examination of 100 mature open source projects”. First Monday (vol. 4,núm. 7).http://www.firstmonday.dk/issues/issue7_6/krishnamurthy/in<strong>de</strong>x.html[140] Laffitte, Trégouet; Cabanel (1999) Proposition <strong>de</strong> loi numéro 495. Senado<strong>de</strong> la República Francesa.http://www.senat.fr/consult/log<strong>libre</strong>/texteloi.html[141] Laffitte; Trégouet; Cabanel (2000). Proposition <strong>de</strong> loi numéro 117. Senado<strong>de</strong> la República Francesa.http://www.senat.fr/consult/log<strong>libre</strong>/texteloi.html[142] Leslie Lamport (1994). LaTeX user’s gui<strong>de</strong> and reference manu<strong>al</strong>. AddisonWelsley, Reading, Mass. (2.ª ed.).[143] David Lancashire (diciembre, 2001). “Co<strong>de</strong>, culture and cash: The fading<strong>al</strong>truism of open source <strong>de</strong>velopment”. First Monday (vol. 12, núm. 6).http://www.firstmonday.dk/issues/issue6_12/lancashire/in<strong>de</strong>x.html[144] M.M. Lehman; J.F. Ramil; P.D. Wernick (noviembre, 1997). “Metricsand laws of <strong>software</strong> evolution - the nineties view”. Proceedings of the 4thInternation<strong>al</strong> Symposium on Software Metrics.http://www.ece.utexas.edu/˜perry/work/papers/feast1.pdfANOTACIONES[145] Barry M. Leiner; Vinton G. Cerf, Robert E. Kahn; David D. Clark; LeonardKleinrock; Daniel C. Lynch; Jon Postel; Larry G. Roberts; Stephen Wolff(1997). A brief history of the internet. Communications of the ACM.http://www.isoc.org/internet/history/brief.shtml[146] Netcraft Ltd. (agosto, 2003) web server survey, 2003. http://news.netcraft.com/archives/2003/08/01/august_2003_web_server_survey.html[147] Mark Lucovsky (2000). From nt os/2 to windows 2000 and beyond - a<strong>software</strong>-engineering odyssey.http://www.usenix.org/events/usenix-win2000/invitedt<strong>al</strong>ks/lucovsky_html310


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492[148] Gary McGraw. “Building secure <strong>software</strong>: How to avoid security problemsthe right way”. En: David A. Wheeler http://www.dwheeler.com/sloc[149] Marsh<strong>al</strong>l Kirk McKusick. “Twenty Years of Berkeley Unix. From AT&T-Owned to Freely Redistributable”. En: DiBona y otros (1999).http://www.oreilly.com/cat<strong>al</strong>og/opensources[150] SUN Microsystems (2000). Sun microsystems announces availability ofStarOffice(TM) source co<strong>de</strong> on OpenOffice. org.http://www.collab.net/news/press/2000/openoffice_live.html[151] Peter Miller (1993). Aegis a project change supervisor.http://aegis.sourceforge.net/auug93.pdf[152] Audris Mockus; Roy T. Fielding; James D. Herbsleb (junio, 2000). “Acase study of open source <strong>software</strong> <strong>de</strong>velopment: the apache server”. En:Proceedings of the 22nd Internation<strong>al</strong> Conference on Software Engineering(ICSE 2000, págs. 263–272). Irlanda: Limerick. ACM Press.[153] Brian Molenaar. What is the context of charityware?http://www.moolenaar.net/Charityware.html[154] Mit opencourseware. http://ocw.mit.edu[155] Laurence W. Nagel (sept, 1996). The life of SPICE. Presented at the1996 Bipolar Circuits and Technology Meeting. USA: Minneapolis, MN.http://www.icsl.ucla.edu/aagroup/Life%20of%20SPICE.html[156] Alessandro Narduzzo; Alessandro Rossi (mayo, 2003). Modularityin action: Gnu/Linux and free/open sour-ce <strong>software</strong> <strong>de</strong>velopment mo<strong>de</strong>lunleashed. http://opensource.mit.edu/papers/narduzzorossi.pdf[157] Nathan Newman (1999). The origins and future of open source <strong>software</strong>.http://www.netaction.org/opensrc/future[158] Nupedia. http://www.nupedia.com[159] Edgar Villanueva Núñez (2002). Carta a Microsoft Perú.http://www.gnu.org.pe/rescon.html[160] Open Source Initiative. Licencias <strong>de</strong> fuente abierto.http://www.opensource.org/licenses/in<strong>de</strong>x.html[161] Vilfredo Pareto. Course of Politic<strong>al</strong> Economy. Lausanne, 1896ANOTACIONES311


© FUOC • XP06/M2101/01492Software <strong>libre</strong>[162] Bruce Perens and The Open Source Initiative. (1998). The open source<strong>de</strong>finition. http://www.opensource.org/docs/<strong>de</strong>finition_plain.html[163] GNU Perú. Proyectos ley <strong>software</strong> <strong>libre</strong> en la administración pública<strong>de</strong>l gobierno peruano, congreso <strong>de</strong> la república.http://www.gnu.org.pe/proleyap.html[164] W<strong>al</strong>ter Pinheiro. (diciembre, 1999). Proposicao pl-2269/1999: Dispoesobre a utilizacao <strong>de</strong> programas abertos pelos entes <strong>de</strong> direito públicoe <strong>de</strong> direito privado sob controle acionário da administracao pública. Câmarados Deputados do Brasil. http://www.camara.gov.br/Internet/sileg/Prop_Det<strong>al</strong>he.asp?id=17879, http://www.fenadados.org.br/<strong>software</strong>.htm[165] Joseph Pranevich. (2003). The won<strong>de</strong>rful world of Linux 2.6.http://www.kniggit.net/wwol26.html[166] The Debian Project. Debian <strong>de</strong>veloper map.http://www.<strong>de</strong>bian.org/<strong>de</strong>vel/<strong>de</strong>velopers.loc[167] Joan Puigcercós Boixassa. (2002). Proposición <strong>de</strong> ley <strong>de</strong> medidas par<strong>al</strong>a implantación <strong>de</strong>l <strong>software</strong> <strong>libre</strong> en la administración <strong>de</strong>l estado.http://www.congreso.es/public_ofici<strong>al</strong>es/L7/CONG/BOCG/B/B_244-01.PDF[168] Joshua Quittner; Michelle Slat<strong>al</strong>la. (1998). Speeding the Net: The Insi<strong>de</strong>Story of Netscape and How It Ch<strong>al</strong>lenged Microsoft. Atlantic Monthly Pr.[169] Chris Rasch. A brief history of free/open source <strong>software</strong> movement.http://www.openknowledge.org/writing/open-source/scb/brief-open-source-history.html[170] Chris Rasch. (2001). “The W<strong>al</strong>l Street performer protocol. Using <strong>software</strong>completion bonds to fund open source <strong>software</strong> <strong>de</strong>velopment”. FirstMonday (vol. 6, núm. 6, mayo).ANOTACIONES[171] Eric S. Raymond. The Cathedr<strong>al</strong> and the Bazaar, Musings on Linux andOpen Source by an Acci<strong>de</strong>nt<strong>al</strong> Revolutionary. O’Reilly & Associates (http://www.ora.com), enero, 2001. http://catb.org/˜esr/writings/cathedr<strong>al</strong>-bazaar[172] Christian Robottom Reis; Renata Pontin <strong>de</strong> Mattos Fortes. (febrero,2002). An overview of the <strong>software</strong> engineering process and tools in the mozillaproject. http://opensource.mit.edu/papers/reismozilla.pdf[173] Francois-René Ri<strong>de</strong>au. (2000). Patents are an economic absurdity.http://fare.tunes.org/articles/patents.html312


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492[174] Lawrence Roberts. (1978). “The evolution of packet switching”. Proceedingsof the IEEE (vol. 66, noviembre).[175] Gregorio Robles; Jesús M. González Barahona; José Centeno González;Vicente Matellán Olivera; Luis Ro<strong>de</strong>ro Merino. (mayo, 2003). “Studyingthe evolution of <strong>libre</strong> <strong>software</strong> projects using publicly available data”. En:Proceedings of the 3rd Workshop on Open Source Software Engineering atthe 25th Internation<strong>al</strong> Conference on Software Engineering. USA: Portland.[176] Gregorio Robles; Hendrik Schei<strong>de</strong>r; Ingo Tretkowski; Niels Weber.(2001). Who is doing it? knowing more about <strong>libre</strong> <strong>software</strong> <strong>de</strong>velopers.http://widi.berlios.<strong>de</strong>/paper/study.pdf[177] Marc Rochkind. (mayo, 1986). Interview with dick haight. Unix Review.[178] W<strong>al</strong>t Scacchi. (2003). Un<strong>de</strong>rstanding open source <strong>software</strong> evolution:Applying, breaking and rethinking the laws of <strong>software</strong> evolution. http://www.ics.uci.edu/˜wscacchi/Papers/New/Un<strong>de</strong>rstanding-OSS-Evolution.pdf[179] Bruce Schneier. (2000). Software complexity and security. http://www.counterpane.com/crypto-gram-0003.html[180] Stephen J. Smoogen. The truth behind red hat names. http://www.smoogespace.com/documents/behind_the_names.html[181] Haggen So. Comparison of free/open source hosting (fosphost) sitesavailable for hosting projects extern<strong>al</strong>ly from project owners. http://www.ibiblio.org/fosphost/exhost.htm[182] Richard St<strong>al</strong>lman. GNU coding standards.http://www.gnu.org/prep/standards.html[183] Richard St<strong>al</strong>lman. Why Free Software is better than Open Source.http://www.fsf.org/philosophy/free-<strong>software</strong>-for-freedom.html[184] Richard St<strong>al</strong>lman. (1998). Copyleft: Pragmatic i<strong>de</strong><strong>al</strong>ism.http://www.gnu.org/philosophy/pragmatic.html[185] Richard St<strong>al</strong>lman. (1998). Why “free <strong>software</strong>” is better than “opensource”. http://www.gnu.org/philosophy/free-<strong>software</strong>-for-freedom.html[186] Richard St<strong>al</strong>lman. (1998). Why <strong>software</strong> should not have owners.http://www.gnu.org/philosophy/why-free.htmlANOTACIONES313


© FUOC • XP06/M2101/01492Software <strong>libre</strong>[187] Richard St<strong>al</strong>lman. The GNU Project. En: DiBona y otros.http://www.fsf.org/gnu/thegnuproject.html[188] Richard St<strong>al</strong>lman. (junio, 1999). “On free hardware”. Linux Today.http://features.linuxtoday.com/news_story.php3?ltsn=1999-06-22-005-05-NW-LF[189] Richard St<strong>al</strong>lman. (2001). The free univers<strong>al</strong> encyclopedia and learningresource. http://www.gnu.org/encyclopedia/free-encyclopedia.html[190] Richard St<strong>al</strong>lman. (2002). Free Software, Free Society: Selected Essaysof Richard M. St<strong>al</strong>lman. Joshua Gay.[191] Richard St<strong>al</strong>lman. (2003). Some confusing or loa<strong>de</strong>d words and phrasesthat are worth avoiding.http://www.gnu.org/philosophy/words-to-avoid.html[192] Mitch Stoltz. (1999). The case for government promotion of open source<strong>software</strong>. http://www.netaction.org/opensrc/oss-report.html[193] Andrew Tanenbaum; Linus Torv<strong>al</strong>ds. (1999). The tanenbaum-torv<strong>al</strong>ds<strong>de</strong>bate. http://www.oreilly.com/cat<strong>al</strong>og/opensources/book/appa.html[194] Michael Tiemann. “Future of cygnus solutions. an entrepreneur’saccount”. En: DiBona y otros.http://www.oreilly.com/cat<strong>al</strong>og/opensources/book/tiemans.html[195] Linus Torv<strong>al</strong>ds and David Diamond. (2001). Just For Fun: the story ofan acci<strong>de</strong>nt<strong>al</strong> revolutionary. Texere.[196] Ilkka Tuomi. (2002). Evolution of the Linux credits file: Methodologic<strong>al</strong>ch<strong>al</strong>lenges and referen-ce data for open source research. http://www.jrc.es/˜tuomiil/articles/EvolutionOfTheLinuxCreditsFile.pdfANOTACIONES[197] Varios autores. Carta abierta <strong>al</strong> director <strong>de</strong> la wipo.http://www.cptech.org/ip/wipo/kamil-idris-7july2003.pdf[198] Pere Vigo i S<strong>al</strong>lent; Ernest Benach i Pascu<strong>al</strong>; and Josep Huguet i Biosca.(mayo, 2002). Proposició <strong>de</strong> llei <strong>de</strong> programari lliure en el marc <strong>de</strong> l’administraciópública <strong>de</strong> Cat<strong>al</strong>unya. http://www.parlament-cat.es/pdf/06b296.pdfhttp://www.hisp<strong>al</strong>inux.es/modules.php?op=modload&name=Sections&file=in<strong>de</strong>x&req=viewarticle&artid=49[199] Edgar Villanueva Núñez. (diciembre, 2001). Proyecto <strong>de</strong> ley <strong>software</strong><strong>libre</strong>, número 1609. http://www.gnu.org.pe/proley1.html314


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492[200] Edgar Villanueva Núñez; Jacques Rodrich Ackerman. (abril, 2002).Proyecto <strong>de</strong> ley <strong>de</strong> uso <strong>de</strong> <strong>software</strong> <strong>libre</strong> en la administración pública, número2485. http://www.gnu.org.pe/proley4.html[201] W3C. (2000). Extensible markup language (xml) 1.0 (2.ª edic.).[202] Norman W<strong>al</strong>sh; Leonard Muellner; Bob Stayton. (2002). DocBook: TheDefinitive Gui<strong>de</strong>. O’Reilly. http://docbook.org/tdg/en/html/docbook.html[203] Larry Welke; Luanne Johnson. (1998). How the icp directory began.http://www.<strong>software</strong>history.org/history/Welke1.html[204] David A. Wheeler. (julio, 2000). Estimating Linux’s size.http://www.dwheeler.com/sloc[205] David A. Wheeler. (junio, 2001). More than a gigabuck: Estimatinggnu/Linux’s. http://www.dwheeler.com/sloc[206] Eric Wiesstein. Concise encyclopedia of mathematics. http://mathworld.wolfram.com[207] Wikipedia. Gini coefficient.http://www.wikipedia.org/wiki/Gini_coefficient[208] Wikipedia. Lorenz curve. http://www.wikipedia.org/wiki/Lorenz_curve[209] Wikipedia. Pareto. http://www.wikipedia.org/wiki/Pareto[210] Wikipedia. Tex. http://www.wikipedia.org/wiki/TeX[211] Brian Wilson. Netscape navigator.http://www.blooberry.com/in<strong>de</strong>xdot/history/netscape.htm[212] Computer World. (2000). S<strong>al</strong>ary survey 2000.http://www.computerworld.com/cwi/careers/surveysandreports[213] Robert Young. (1999). Giving it away. how red hat <strong>software</strong> stumbledacross a new economic mo<strong>de</strong>l and helped improve an industry.http://www.oreilly.com/cat<strong>al</strong>og/opensources/book/young.html[214] Jamie Zawinski. (1999). Resignation and postmortem. Why Mozillaproject failed: http://www.jwz.org/gruntle/nomo.html[215] Jamie W. Zawinsky. (1999). Resignation and postmortem.http://www.jwz.org/gruntle/nomo.htmlANOTACIONES315


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Appendix A. GNU Free Documentation LicenseCopyright (C) 2000,2001,2002 Free Software Foundation, Inc. 59Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone ispermitted to copy and distribute verbatim copies of this license document,but changing it is not <strong>al</strong>lowed.A.1. PREAMBLEThe purpose of this License is to make a manu<strong>al</strong>, textbook, or otherfunction<strong>al</strong> and useful document free in the sense of freedom: toassure everyone the effective freedom to copy and redistribute it, withor without modifying it, either commerci<strong>al</strong>ly or noncommerci<strong>al</strong>ly.Secondarily, this License preserves for the author and publisher a wayto get credit for their work, while not being consi<strong>de</strong>red responsible formodifications ma<strong>de</strong> by others.This License is a kind of copyleft which means that <strong>de</strong>rivative worksof the document must themselves be free in the same sense. Itcomplements the GNU Gener<strong>al</strong> Public License, which is a copyleftlicense <strong>de</strong>signed for free <strong>software</strong>.We have <strong>de</strong>signed this License in or<strong>de</strong>r to use it for manu<strong>al</strong>s forfree <strong>software</strong>, because free <strong>software</strong> needs free documentation: afree program should come with manu<strong>al</strong>s providing the samefreedoms that the <strong>software</strong> does. But this License is not limited to<strong>software</strong> manu<strong>al</strong>s; it can be used for any textu<strong>al</strong> work, regardlessof subject matter or whether it is published as a printed book. Werecommend this License princip<strong>al</strong>ly for works whose purpose isinstruction or reference.ANOTACIONES317


© FUOC • XP06/M2101/01492Software <strong>libre</strong>A.2. APPLICABILITY AND DEFINITIONSThis License applies to any manu<strong>al</strong> or other work, in any medium,that contains a notice placed by the copyright hol<strong>de</strong>r saying it canbe distributed un<strong>de</strong>r the terms of this License. Such a notice grantsa world-wi<strong>de</strong>, roy<strong>al</strong>ty-free license, unlimited in duration, to usethat work un<strong>de</strong>r the conditions stated herein. The Documentbelow, refers to any such manu<strong>al</strong> or work. Any member of thepublic is a licensee, and is addressed as you You accept the licenseif you copy, modify or distribute the work in a way requiringpermission un<strong>de</strong>r copyright law.A Modified Version of the Document means any work containingthe Document or a portion of it, either copied verbatim, or withmodifications and/or translated into another language.A Secondary Section is a named appendix or a front-mattersection of the Document that <strong>de</strong><strong>al</strong>s exclusively with the relationshipof the publishers or authors of the Document to the Document'sover<strong>al</strong>l subject (or to related matters) and contains nothing thatcould f<strong>al</strong>l directly within that over<strong>al</strong>l subject. (Thus, if the Documentis in part a textbook of mathematics, a Secondary Section may notexplain any mathematics.) The relationship could be a matter ofhistoric<strong>al</strong> connection with the subject or with related matters, or ofleg<strong>al</strong>, commerci<strong>al</strong>, philosophic<strong>al</strong>, ethic<strong>al</strong> or politic<strong>al</strong> positionregarding them.ANOTACIONESThe Invariant Sections are certain Secondary Sections whose titlesare <strong>de</strong>signated, as being those of Invariant Sections, in the noticethat says that the Document is released un<strong>de</strong>r this License. If asection does not fit the above <strong>de</strong>finition of Secondary then it is not<strong>al</strong>lowed to be <strong>de</strong>signated as Invariant. The Document may containzero Invariant Sections. If the Document does not i<strong>de</strong>ntify anyInvariant Sections then there are none.The Cover Texts are certain short passages of text that are listed, asFront-Cover Texts or Back-Cover Texts, in the notice that says that theDocument is released un<strong>de</strong>r this License. A Front-Cover Text may beat most 5 words, and a Back-Cover Text may be at most 25 words.318


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492A Transparent copy of the Document means a machine-readablecopy, represented in a format whose specification is available tothe gener<strong>al</strong> public, that is suitable for revising the documentstraightforwardly with generic text editors or (for imagescomposed of pixels) generic paint programs or (for drawings)some wi<strong>de</strong>ly available drawing editor, and that is suitable for inputto text formatters or for automatic translation to a variety offormats suitable for input to text formatters. A copy ma<strong>de</strong> in anotherwise Transparent file format whose markup, or absence ofmarkup, has been arranged to thwart or discourage subsequentmodification by rea<strong>de</strong>rs is not Transparent. An image format is notTransparent if used for any substanti<strong>al</strong> amount of text. A copy thatis not Transparent is c<strong>al</strong>led Opaque.Examples of suitable formats for Transparent copies inclu<strong>de</strong> plainASCII without markup, Texinfo input format, LaTeX input format,SGML or XML using a publicly available DTD, and standardconformingsimple HTML, PostScript or PDF <strong>de</strong>signed for humanmodification. Examples of transparent image formats inclu<strong>de</strong> PNG,XCF and JPG. Opaque formats inclu<strong>de</strong> proprietary formats that canbe read and edited only by proprietary word processors, SGML orXML for which the DTD and/or processing tools are not gener<strong>al</strong>lyavailable, and the machine-generated HTML, PostScript or PDFproduced by some word processors for output purposes only.The Title Page means, for a printed book, the title page itself, plussuch following pages as are nee<strong>de</strong>d to hold, legibly, the materi<strong>al</strong>this License requires to appear in the title page. For works in formatswhich do not have any title page as such, Title Page meansthe text near the most prominent appearance of the work's title,preceding the beginning of the body of the text.A section Entitled XYZ means a named subunit of the Documentwhose title either is precisely XYZ or contains XYZ in parenthesesfollowing text that translates XYZ in another language. (Here XYZstands for a specific section name mentioned below, such asAcknowledgements, Dedications, Endorsements, or History. ToPreserve the Title of such a section when you modify the Documentmeans that it remains a section Entitled XYZ according to this<strong>de</strong>finition.ANOTACIONES319


© FUOC • XP06/M2101/01492Software <strong>libre</strong>The Document may inclu<strong>de</strong> Warranty Disclaimers next to the noticewhich states that this License applies to the Document. TheseWarranty Disclaimers are consi<strong>de</strong>red to be inclu<strong>de</strong>d by reference inthis License, but only as regards disclaiming warranties: any otherimplication that these Warranty Disclaimers may have is void and hasno effect on the meaning of this License.A.3. VERBATIM COPYINGYou may copy and distribute the Document in any medium, eithercommerci<strong>al</strong>ly or noncommerci<strong>al</strong>ly, provi<strong>de</strong>d that this License, thecopyright notices, and the license notice saying this License applies tothe Document are reproduced in <strong>al</strong>l copies, and that you add noother conditions whatsoever to those of this License. You may not usetechnic<strong>al</strong> measures to obstruct or control the reading or furthercopying of the copies you make or distribute. However, you mayaccept compensation in exchange for copies. If you distribute a largeenough number of copies you must <strong>al</strong>so follow the conditions insection 3.You may <strong>al</strong>so lend copies, un<strong>de</strong>r the same conditions stated above,and you may publicly display copies.A.4. COPYING IN QUANTITYANOTACIONESIf you publish printed copies (or copies in media that commonly haveprinted covers) of the Document, numbering more than 100, and theDocument's license notice requires Cover Texts, you must enclose thecopies in covers that carry, clearly and legibly, <strong>al</strong>l these Cover Texts:Front-Cover Texts on the front cover, and Back-Cover Texts on theback cover. Both covers must <strong>al</strong>so clearly and legibly i<strong>de</strong>ntify you asthe publisher of these copies. The front cover must present the full titlewith <strong>al</strong>l words of the title equ<strong>al</strong>ly prominent and visible. You may addother materi<strong>al</strong> on the covers in addition. Copying with changeslimited to the covers, as long as they preserve the title of theDocument and satisfy these conditions, can be treated as verbatimcopying in other respects.320


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492If the required texts for either cover are too voluminous to fit legibly,you should put the first ones listed (as many as fit reasonably) on theactu<strong>al</strong> cover, and continue the rest onto adjacent pages.If you publish or distribute Opaque copies of the Documentnumbering more than 100, you must either inclu<strong>de</strong> a machinereadableTransparent copy <strong>al</strong>ong with each Opaque copy, or state inor with each Opaque copy a computer-network location from whichthe gener<strong>al</strong> network-using public has access to download usingpublic-standard network protocols a complete Transparent copy ofthe Document, free of ad<strong>de</strong>d materi<strong>al</strong>. If you use the latter option, youmust take reasonably pru<strong>de</strong>nt steps, when you begin distribution ofOpaque copies in quantity, to ensure that this Transparent copy willremain thus accessible at the stated location until at least one yearafter the last time you distribute an Opaque copy (directly or throughyour agents or retailers) of that edition to the public.It is requested, but not required, that you contact the authors of theDocument well before redistributing any large number of copies, to givethem a chance to provi<strong>de</strong> you with an updated version of the Document.A.5. MODIFICATIONSYou may copy and distribute a Modified Version of the Document un<strong>de</strong>rthe conditions of sections 2 and 3 above, provi<strong>de</strong>d that you release theModified Version un<strong>de</strong>r precisely this License, with the Modified Versionfilling the role of the Document, thus licensing distribution andmodification of the Modified Version to whoever possesses a copy of it.In addition, you must do these things in the Modified Version:• A. Use in the Title Page (and on the covers, if any) a title distinctfrom that of the Document, and from those of previous versions(which should, if there were any, be listed in the History section ofthe Document). You may use the same title as a previous versionif the origin<strong>al</strong> publisher of that version gives permission.• B. List on the Title Page, as authors, one or more persons orentities responsible for authorship of the modifications in theANOTACIONES321


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Modified Version, together with at least five of the princip<strong>al</strong>authors of the Document (<strong>al</strong>l of its princip<strong>al</strong> authors, if it has fewerthan five), unless they release you from this requirement.• C. State on the Title page the name of the publisher of theModified Version, as the publisher.• D. Preserve <strong>al</strong>l the copyright notices of the Document.• E. Add an appropriate copyright notice for your modificationsadjacent to the other copyright notices.• F. Inclu<strong>de</strong>, immediately after the copyright notices, a license noticegiving the public permission to use the Modified Version un<strong>de</strong>r theterms of this License, in the form shown in the Ad<strong>de</strong>ndum below.• G. Preserve in that license notice the full lists of Invariant Sectionsand required Cover Texts given in the Document's license notice.• H. Inclu<strong>de</strong> an un<strong>al</strong>tered copy of this License.• I. Preserve the section Entitled History. Preserve its Title, and addto it an item stating at least the title, year, new authors, andpublisher of the Modified Version as given on the Title Page. Ifthere is no section Entitled History in the Document, create onestating the title, year, authors, and publisher of the Document asgiven on its Title Page, then add an item <strong>de</strong>scribing the ModifiedVersion as stated in the previous sentence.ANOTACIONES• J. Preserve the network location, if any, given in the Document forpublic access to a Transparent copy of the Document, and likewisethe network locations given in the Document for previous versionsit was based on. These may be placed in the History section. Youmay omit a network location for a work that was published at leastfour years before the Document itself, or if the origin<strong>al</strong> publisherof the version it refers to gives permission.• K. For any section Entitled Acknowledgements or DedicationsPreserve the Title of the section, and preserve in the section <strong>al</strong>l the322


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492substance and tone of each of the contributor acknowledgementsand/or <strong>de</strong>dications given therein.• L. Preserve <strong>al</strong>l the Invariant Sections of the Document, un<strong>al</strong>tered intheir text and in their titles. Section numbers or the equiv<strong>al</strong>ent arenot consi<strong>de</strong>red part of the section titles.• M. Delete any section Entitled Endorsements Such a section maynot be inclu<strong>de</strong>d in the Modified Version.• N. Do not retitle any existing section to be Entitled Endorsementsor to conflict in title with any Invariant Section.• O. Preserve any Warranty Disclaimers.If the Modified Version inclu<strong>de</strong>s new front-matter sections orappendices that qu<strong>al</strong>ify as Secondary Sections and contain nomateri<strong>al</strong> copied from the Document, you may at your option<strong>de</strong>signate some or <strong>al</strong>l of these sections as invariant. To do this, addtheir titles to the list of Invariant Sections in the Modified Version'slicense notice. These titles must be distinct from any other sectiontitles.You may add a section Entitled Endorsements, provi<strong>de</strong>d it containsnothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has beenapproved by an organization as the authoritative <strong>de</strong>finition of astandard.You may add a passage of up to five words as a Front-Cover Text, anda passage of up to 25 words as a Back-Cover Text, to the end of thelist of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be ad<strong>de</strong>d by (or througharrangements ma<strong>de</strong> by) any one entity. If the Document <strong>al</strong>readyinclu<strong>de</strong>s a cover text for the same cover, previously ad<strong>de</strong>d by you or byarrangement ma<strong>de</strong> by the same entity you are acting on beh<strong>al</strong>f of, youmay not add another; but you may replace the old one, on explicitpermission from the previous publisher that ad<strong>de</strong>d the old one.ANOTACIONES323


© FUOC • XP06/M2101/01492Software <strong>libre</strong>The author(s) and publisher(s) of the Document do not by this Licensegive permission to use their names for publicity for or to assert orimply endorsement of any Modified Version.A.6. COMBINING DOCUMENTSYou may combine the Document with other documents releasedun<strong>de</strong>r this License, un<strong>de</strong>r the terms <strong>de</strong>fined in section 4 above formodified versions, provi<strong>de</strong>d that you inclu<strong>de</strong> in the combination<strong>al</strong>l of the Invariant Sections of <strong>al</strong>l of the origin<strong>al</strong> documents,unmodified, and list them <strong>al</strong>l as Invariant Sections of yourcombined work in its license notice, and that you preserve <strong>al</strong>l theirWarranty Disclaimers.The combined work need only contain one copy of this License,and multiple i<strong>de</strong>ntic<strong>al</strong> Invariant Sections may be replaced with asingle copy. If there are multiple Invariant Sections with the samename but different contents, make the title of each such sectionunique by adding at the end of it, in parentheses, the name of theorigin<strong>al</strong> author or publisher of that section if known, or else aunique number. Make the same adjustment to the section titles inthe list of Invariant Sections in the license notice of the combinedwork.ANOTACIONESIn the combination, you must combine any sections Entitled History inthe various origin<strong>al</strong> documents, forming one section Entitled History;likewise combine any sections Entitled Acknowledgements, and anysections Entitled Dedications. You must <strong>de</strong>lete <strong>al</strong>l sections EntitledEndorsements.A.7. COLLECTIONS OF DOCUMENTSYou may make a collection consisting of the Document and otherdocuments released un<strong>de</strong>r this License, and replace the individu<strong>al</strong>copies of this License in the various documents with a single copy thatis inclu<strong>de</strong>d in the collection, provi<strong>de</strong>d that you follow the rules of this324


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492License for verbatim copying of each of the documents in <strong>al</strong>l otherrespects.You may extract a single document from such a collection, anddistribute it individu<strong>al</strong>ly un<strong>de</strong>r this License, provi<strong>de</strong>d you insert acopy of this License into the extracted document, and follow thisLicense in <strong>al</strong>l other respects regarding verbatim copying of thatdocument.A.8. AGGREGATION WITH INDEPENDENT WORKSA compilation of the Document or its <strong>de</strong>rivatives with other separateand in<strong>de</strong>pen<strong>de</strong>nt documents or works, in or on a volume of a storageor distribution medium, is c<strong>al</strong>led an aggregate if the copyrightresulting from the compilation is not used to limit the leg<strong>al</strong> rights ofthe compilation's users beyond what the individu<strong>al</strong> works permit.When the Document is inclu<strong>de</strong>d in an aggregate, this License doesnot apply to the other works in the aggregate which are notthemselves <strong>de</strong>rivative works of the Document.If the Cover Text requirement of section 3 is applicable to thesecopies of the Document, then if the Document is less than one h<strong>al</strong>fof the entire aggregate, the Document's Cover Texts may be placedon covers that bracket the Document within the aggregate, or theelectronic equiv<strong>al</strong>ent of covers if the Document is in electronic form.Otherwise they must appear on printed covers that bracket thewhole aggregate.A.9. TRANSLATIONTranslation is consi<strong>de</strong>red a kind of modification, so you maydistribute translations of the Document un<strong>de</strong>r the terms of section 4.Replacing Invariant Sections with translations requires speci<strong>al</strong>permission from their copyright hol<strong>de</strong>rs, but you may inclu<strong>de</strong>translations of some or <strong>al</strong>l Invariant Sections in addition to theorigin<strong>al</strong> versions of these Invariant Sections. You may inclu<strong>de</strong> aANOTACIONES325


© FUOC • XP06/M2101/01492Software <strong>libre</strong>translation of this License, and <strong>al</strong>l the license notices in the Document,and any Warranty Disclaimers, provi<strong>de</strong>d that you <strong>al</strong>so inclu<strong>de</strong> theorigin<strong>al</strong> English version of this License and the origin<strong>al</strong> versions ofthose notices and disclaimers. In case of a disagreement between thetranslation and the origin<strong>al</strong> version of this License or a notice ordisclaimer, the origin<strong>al</strong> version will prevail.If a section in the Document is Entitled Acknowledgements,Dedications, or History, the requirement (section 4) to Preserve its Title(section 1) will typic<strong>al</strong>ly require changing the actu<strong>al</strong> title.A.10. TERMINATIONYou may not copy, modify, sublicense, or distribute the Documentexcept as expressly provi<strong>de</strong>d for un<strong>de</strong>r this License. Any other attemptto copy, modify, sublicense or distribute the Document is void, andwill automatic<strong>al</strong>ly terminate your rights un<strong>de</strong>r this License. However,parties who have received copies, or rights, from you un<strong>de</strong>r thisLicense will not have their licenses terminated so long as such partiesremain in full compliance.A.11. FUTURE REVISIONS OF THIS LICENSEANOTACIONESThe Free Software Foundation may publish new, revised versions ofthe GNU Free Documentation License from time to time. Such newversions will be similar in spirit to the present version, but may differin <strong>de</strong>tail to address new problems or concerns. See http://www.gnu.org/copyleft/.Each version of the License is given a distinguishing version number.If the Document specifies that a particular numbered version of thisLicense or any later version applies to it, you have the option offollowing the terms and conditions either of that specified version orof any later version that has been published (not as a draft) by theFree Software Foundation. If the Document does not specify a version326


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492number of this License, you may choose any version ever published(not as a draft) by the Free Software Foundation.A.12. ADDENDUM: How to use this License for yourdocumentsTo use this License in a document you have written, inclu<strong>de</strong> a copy ofthe License in the document and put the following copyright andlicense notices just after the title page:Copyright (c) YEAR YOUR NAME. Permission is granted to copy,distribute and/or modify this document un<strong>de</strong>r the terms of theGNU Free Documentation License, Version 1.2 or any laterversion published by the Free Software Foundation; with noInvariant Sections, no Front-Cover Texts, and no Back-CoverTexts. A copy of the license is inclu<strong>de</strong>d in the section entitled GNUFree Documentation LicenseIf you have Invariant Sections, Front-Cover Texts and Back-CoverTexts, replace the with...Texts. line with this:with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.If you have Invariant Sections without Cover Texts, or some othercombination of the three, merge those two <strong>al</strong>ternatives to suit thesituation.If your document contains nontrivi<strong>al</strong> examples of program co<strong>de</strong>, werecommend releasing these examples in par<strong>al</strong>lel un<strong>de</strong>r your choiceof free <strong>software</strong> license, such as the GNU Gener<strong>al</strong> Public License, topermit their use in free <strong>software</strong>.ANOTACIONES327


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492Apéndice B. Licencia <strong>de</strong> Documentación Libre <strong>de</strong> GNUÉsta es una traducción no ofici<strong>al</strong> <strong>de</strong> la GNU Free Document License(GFDL), versión 1.2 a Español (Castellano). No ha sido publicadapor la Free Software Foundation y no establece leg<strong>al</strong>mente los términos<strong>de</strong> distribución para trabajos que usen la GFDL (sólo el texto <strong>de</strong>la versión origin<strong>al</strong> en Inglés <strong>de</strong> la GFDL lo hace). Sin embargo, esperamosque esta traducción ayu<strong>de</strong> los hispanohablantes a enten<strong>de</strong>rmejor la GFDL. La versión origin<strong>al</strong> <strong>de</strong> la GFDL esta disponible en laFree Software Foundation (http://www.gnu.org/copyleft/fdl.html).Esta traducción está basada en una <strong>de</strong> la versión 1.1 <strong>de</strong> Igor Támaray Pablo Reyes. Sin embargo la responsabilidad <strong>de</strong> su interpretaciónes <strong>de</strong> Joaquín Seoane.Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. 59Temple Place, Suite 330, Boston, MA 02111-1307 USA. Se permitela copia y distribución <strong>de</strong> copias liter<strong>al</strong>es <strong>de</strong> este documento <strong>de</strong> licencia,pero no se permiten cambios.B.1. PREÁMBULOEl propósito <strong>de</strong> esta Licencia es permitir que un manu<strong>al</strong>, libro <strong>de</strong> texto,u otro documento escrito sea <strong>libre</strong> en el sentido <strong>de</strong> libertad: asegurara todo el mundo la libertad efectiva <strong>de</strong> copiarlo y redistribuirlo,con o sin modificaciones, <strong>de</strong> manera comerci<strong>al</strong> o no. En segundo término,esta Licencia proporciona <strong>al</strong> autor y <strong>al</strong> editor una manera <strong>de</strong>obtener reconocimiento por su trabajo, sin que se le consi<strong>de</strong>re responsable<strong>de</strong> las modificaciones re<strong>al</strong>izadas por otros.Esta Licencia es <strong>de</strong> tipo copyleft, lo que significa que los trabajos <strong>de</strong>rivados<strong>de</strong>l documento <strong>de</strong>ben a su vez ser <strong>libre</strong>s en el mismo sentido.Complementa la Licencia Pública Gener<strong>al</strong> <strong>de</strong> GNU, que es una licenciatipo copyleft diseñada para el <strong>software</strong> <strong>libre</strong>.ANOTACIONES329


© FUOC • XP06/M2101/01492Software <strong>libre</strong>Hemos diseñado esta Licencia para usarla en manu<strong>al</strong>es <strong>de</strong> <strong>software</strong><strong>libre</strong>, ya que el <strong>software</strong> <strong>libre</strong> necesita documentación <strong>libre</strong>: un program<strong>al</strong>ibre <strong>de</strong>be venir con manu<strong>al</strong>es que ofrezcan la mismas liberta<strong>de</strong>sque el <strong>software</strong>. Pero esta licencia no se limita a manu<strong>al</strong>es <strong>de</strong><strong>software</strong>; pue<strong>de</strong> usarse para cu<strong>al</strong>quier texto, sin tener en cuenta sutemática o si se publica como libro impreso o no. Recomendamosesta licencia princip<strong>al</strong>mente para trabajos cuyo fin sea instructivo o<strong>de</strong> referencia.B.2. APLICABILIDAD Y DEFINICIONESEsta Licencia se aplica a cu<strong>al</strong>quier manu<strong>al</strong> u otro trabajo, en cu<strong>al</strong>quiersoporte, que contenga una nota <strong>de</strong>l propietario <strong>de</strong> los <strong>de</strong>rechos <strong>de</strong> autorque indique que pue<strong>de</strong> ser distribuido bajo los términos <strong>de</strong> esta Licencia.T<strong>al</strong> nota garantiza en cu<strong>al</strong>quier lugar <strong>de</strong>l mundo, sin pago <strong>de</strong><strong>de</strong>rechos y sin límite <strong>de</strong> tiempo, el uso <strong>de</strong> dicho trabajo según las condicionesaquí estipuladas. En a<strong>de</strong>lante la p<strong>al</strong>abra Documento se referiráa cu<strong>al</strong>quiera <strong>de</strong> dichos manu<strong>al</strong>es o trabajos. Cu<strong>al</strong>quier persona esun licenciatario y será referido como Usted. Usted acepta la licencia sicopia, modifica o distribuye el trabajo <strong>de</strong> cu<strong>al</strong>quier modo que requierapermiso según la ley <strong>de</strong> propiedad intelectu<strong>al</strong>.Una Versión Modificada <strong>de</strong>l Documento significa cu<strong>al</strong>quier trabajoque contenga el Documento o una porción <strong>de</strong>l mismo, ya sea unacopia liter<strong>al</strong> o con modificaciones y/o traducciones a otro idioma.ANOTACIONESUna Sección Secundaria es un apéndice con título o una sección preliminar<strong>de</strong>l Documento que trata exclusivamente <strong>de</strong> la relación entrelos autores o editores y el tema gener<strong>al</strong> <strong>de</strong>l Documento (o temas relacionados)pero que no contiene nada que entre directamente en dichotema gener<strong>al</strong> (por ejemplo, si el Documento es en parte un texto<strong>de</strong> matemáticas, una Sección Secundaria pue<strong>de</strong> no explicar nada <strong>de</strong>matemáticas). La relación pue<strong>de</strong> ser una conexión histórica con eltema o temas relacionados, o una opinión leg<strong>al</strong>, comerci<strong>al</strong>, filosófica,ética o política acerca <strong>de</strong> ellos.Las Secciones Invariantes son ciertas Secciones Secundarias cuyostítulos son <strong>de</strong>signados como Secciones Invariantes en la nota que330


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492indica que el documento es liberado bajo esta Licencia. Si una secciónno entra en la <strong>de</strong>finición <strong>de</strong> Secundaria, no pue<strong>de</strong> <strong>de</strong>signarsecomo Invariante. El documento pue<strong>de</strong> no tener Secciones Invariantes.Si el Documento no i<strong>de</strong>ntifica las Secciones Invariantes, es queno las tiene.Los Textos <strong>de</strong> Cubierta son ciertos pasajes cortos <strong>de</strong> texto que se listancomo Textos <strong>de</strong> Cubierta Delantera o Textos <strong>de</strong> Cubierta Trasera enla nota que indica que el documento es liberado bajo esta Licencia.Un Texto <strong>de</strong> Cubierta Delantera pue<strong>de</strong> tener como mucho 5 p<strong>al</strong>abras,y uno <strong>de</strong> Cubierta Trasera pue<strong>de</strong> tener hasta 25 p<strong>al</strong>abras.Una copia Transparente <strong>de</strong>l Documento, significa una copia par<strong>al</strong>ectura en máquina, representada en un formato cuya especificaciónestá disponible <strong>al</strong> público en gener<strong>al</strong>, apto para que los contenidospuedan ser vistos y editados directamente con editores <strong>de</strong> texto genéricoso (para imágenes compuestas por puntos) con programasgenéricos <strong>de</strong> manipulación <strong>de</strong> imágenes o (para dibujos) con <strong>al</strong>gúneditor <strong>de</strong> dibujos ampliamente disponible, y que sea a<strong>de</strong>cuado comoentrada para formateadores <strong>de</strong> texto o para su traducción automáticaa formatos a<strong>de</strong>cuados para formateadores <strong>de</strong> texto. Una copiahecha en un formato <strong>de</strong>finido como Transparente, pero cuyo marcajeo ausencia <strong>de</strong> él haya sido diseñado para impedir o dificultar modificacionesposteriores por parte <strong>de</strong> los lectores no es Transparente.Un formato <strong>de</strong> imagen no es Transparente si se usa para una cantidad<strong>de</strong> texto sustanci<strong>al</strong>. Una copia que no es Transparente se <strong>de</strong>nominaOpaca.Como ejemplos <strong>de</strong> formatos a<strong>de</strong>cuados para copias Transparentesestán ASCII puro sin marcaje, formato <strong>de</strong> entrada <strong>de</strong> Texinfo, formato<strong>de</strong> entrada <strong>de</strong> LaTeX, SGML o XML usando una DTD disponiblepúblicamente, y HTML, PostScript o PDF simples, que sigan los estándaresy diseñados para que los modifiquen personas. Ejemplos <strong>de</strong>formatos <strong>de</strong> imagen transparentes son PNG, XCF y JPG. Los formatosOpacos incluyen formatos propietarios que pue<strong>de</strong>n ser leídos yeditados únicamente en procesadores <strong>de</strong> p<strong>al</strong>abras propietarios,SGML o XML para los cuáles las DTD y/o herramientas <strong>de</strong> procesamientono estén ampliamente disponibles, y HTML, PostScript o PDFgenerados por <strong>al</strong>gunos procesadores <strong>de</strong> p<strong>al</strong>abras sólo como s<strong>al</strong>ida.ANOTACIONES331


© FUOC • XP06/M2101/01492Software <strong>libre</strong>La Portada significa, en un libro impreso, la página <strong>de</strong> título, más laspáginas siguientes que sean necesarias para mantener legiblementeel materi<strong>al</strong> que esta Licencia requiere en la portada. Para trabajos enformatos que no tienen página <strong>de</strong> portada como t<strong>al</strong>, Portada significael texto cercano a la aparición más prominente <strong>de</strong>l título <strong>de</strong>l trabajo,precediendo el comienzo <strong>de</strong>l cuerpo <strong>de</strong>l texto.Una sección Titulada XYZ significa una parte <strong>de</strong>l Documento cuyo títuloes precisamente XYZ o contiene XYZ entre paréntesis, a continuación<strong>de</strong> texto que traduce XYZ a otro idioma (aquí XYZ se refiere anombres <strong>de</strong> sección específicos mencionados más abajo, comoAgra<strong>de</strong>cimientos, Dedicatorias, Aprobaciones o Historia. Conservarel Título <strong>de</strong> t<strong>al</strong> sección cuando se modifica el Documento significaque permanece una sección Titulada XYZ según esta <strong>de</strong>finición.El Documento pue<strong>de</strong> incluir Limitaciones <strong>de</strong> Garantía cercanas a lanota don<strong>de</strong> se <strong>de</strong>clara que <strong>al</strong> Documento se le aplica esta Licencia.Se consi<strong>de</strong>ra que estas Limitaciones <strong>de</strong> Garantía están incluidas,por referencia, en la Licencia, pero sólo en cuanto a limitaciones <strong>de</strong>garantía: cu<strong>al</strong>quier otra implicación que estas Limitaciones <strong>de</strong> Garantíapuedan tener es nula y no tiene efecto en el significado <strong>de</strong>esta Licencia.B.3. COPIA LITERALANOTACIONESUsted pue<strong>de</strong> copiar y distribuir el Documento en cu<strong>al</strong>quier soporte,sea en forma comerci<strong>al</strong> o no, siempre y cuando esta Licencia, las notas<strong>de</strong> copyright y la nota que indica que esta Licencia se aplica <strong>al</strong>Documento se reproduzcan en todas las copias y que usted no añadaninguna otra condición a las expuestas en esta Licencia. Usted nopue<strong>de</strong> usar medidas técnicas para obstruir o controlar la lectura ocopia posterior <strong>de</strong> las copias que usted haga o distribuya. Sin embargo,usted pue<strong>de</strong> aceptar compensación a cambio <strong>de</strong> las copias. Sidistribuye un número suficientemente gran<strong>de</strong> <strong>de</strong> copias también <strong>de</strong>beráseguir las condiciones <strong>de</strong> la sección 3.Usted también pue<strong>de</strong> prestar copias, bajo las mismas condicionesestablecidas anteriormente, y pue<strong>de</strong> exhibir copias públicamente.332


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492B.4. COPIADO EN CANTIDADSi publica copias impresas <strong>de</strong>l Documento (o copias en soportes quetengan norm<strong>al</strong>mente cubiertas impresas) que sobrepasen las 100, yla nota <strong>de</strong> licencia <strong>de</strong>l Documento exige Textos <strong>de</strong> Cubierta, <strong>de</strong>be incluirlas copias con cubiertas que lleven en forma clara y legible todosesos Textos <strong>de</strong> Cubierta: Textos <strong>de</strong> Cubierta Delantera en lacubierta <strong>de</strong>lantera y Textos <strong>de</strong> Cubierta Trasera en la cubierta trasera.Ambas cubiertas <strong>de</strong>ben i<strong>de</strong>ntificarlo a Usted clara y legiblementecomo editor <strong>de</strong> t<strong>al</strong>es copias. La cubierta <strong>de</strong>be mostrar el título completocon todas las p<strong>al</strong>abras igu<strong>al</strong>mente prominentes y visibles. A<strong>de</strong>máspue<strong>de</strong> añadir otro materi<strong>al</strong> en las cubiertas. Las copias concambios limitados a las cubiertas, siempre que conserven el título <strong>de</strong>lDocumento y satisfagan estas condiciones, pue<strong>de</strong>n consi<strong>de</strong>rarsecomo copias liter<strong>al</strong>es.Si los textos requeridos para la cubierta son muy voluminosos paraque ajusten legiblemente, <strong>de</strong>be colocar los primeros (tantos comosea razonable colocar) en la verda<strong>de</strong>ra cubierta y situar el resto enpáginas adyacentes.Si Usted publica o distribuye copias Opacas <strong>de</strong>l Documento cuyacantidad exceda las 100, <strong>de</strong>be incluir una copia Transparente, quepueda ser leída por una máquina, con cada copia Opaca, o bienmostrar, en cada copia Opaca, una dirección <strong>de</strong> red don<strong>de</strong> cu<strong>al</strong>quierusuario <strong>de</strong> la misma tenga acceso por medio <strong>de</strong> protocolos públicosy estandarizados a una copia Transparente <strong>de</strong>l Documentocompleta, sin materi<strong>al</strong> adicion<strong>al</strong>. Si usted hace uso <strong>de</strong> la última opción,<strong>de</strong>berá tomar las medidas necesarias, cuando comience la distribución<strong>de</strong> las copias Opacas en cantidad, para asegurar que estacopia Transparente permanecerá accesible en el sitio establecido porlo menos un año <strong>de</strong>spués <strong>de</strong> la última vez que distribuya una copiaOpaca <strong>de</strong> esa edición <strong>al</strong> público (directamente o a través <strong>de</strong> susagentes o distribuidores).Se solicita, aunque no es requisito, que se ponga en contacto con losautores <strong>de</strong>l Documento antes <strong>de</strong> redistribuir gran número <strong>de</strong> copias,para darles la oportunidad <strong>de</strong> que le proporcionen una versión actu<strong>al</strong>izada<strong>de</strong>l Documento.ANOTACIONES333


© FUOC • XP06/M2101/01492Software <strong>libre</strong>B.5. MODIFICACIONESPue<strong>de</strong> copiar y distribuir una Versión Modificada <strong>de</strong>l Documentobajo las condiciones <strong>de</strong> las secciones 2 y 3 anteriores, siempre queusted libere la Versión Modificada bajo esta misma Licencia, con laVersión Modificada haciendo el rol <strong>de</strong>l Documento, por lo tanto dandolicencia <strong>de</strong> distribución y modificación <strong>de</strong> la Versión Modificada aquienquiera posea una copia <strong>de</strong> la misma. A<strong>de</strong>más, <strong>de</strong>be hacer losiguiente en la Versión Modificada:• A. Usar en la Portada (y en las cubiertas, si hay <strong>al</strong>guna) un títulodistinto <strong>al</strong> <strong>de</strong>l Documento y <strong>de</strong> sus versiones anteriores (que <strong>de</strong>berían,si hay <strong>al</strong>guna, estar listadas en la sección <strong>de</strong> Historia <strong>de</strong>lDocumento). Pue<strong>de</strong> usar el mismo título <strong>de</strong> versiones anteriores <strong>al</strong>origin<strong>al</strong> siempre y cuando quien las publicó origin<strong>al</strong>mente otorguepermiso.• B. Listar en la Portada, como autores, una o más personas o entida<strong>de</strong>sresponsables <strong>de</strong> la autoría <strong>de</strong> las modificaciones <strong>de</strong> laVersión Modificada, junto con por lo menos cinco <strong>de</strong> los autoresprincip<strong>al</strong>es <strong>de</strong>l Documento (todos sus autores princip<strong>al</strong>es, si haymenos <strong>de</strong> cinco), a menos que le eximan <strong>de</strong> t<strong>al</strong> requisito.• C. Mostrar en la Portada como editor el nombre <strong>de</strong>l editor <strong>de</strong> laVersión Modificada.• D. Conservar todas las notas <strong>de</strong> copyright <strong>de</strong>l Documento.• E. Añadir una nota <strong>de</strong> copyright apropiada a sus modificaciones,adyacente a las otras notas <strong>de</strong> copyright.ANOTACIONES• F. Incluir, inmediatamente <strong>de</strong>spués <strong>de</strong> las notas <strong>de</strong> copyright, unanota <strong>de</strong> licencia dando el permiso para usar la Versión Modificadabajo los términos <strong>de</strong> esta Licencia, como se muestra en laA<strong>de</strong>nda <strong>al</strong> fin<strong>al</strong> <strong>de</strong> este documento.• G. Conservar en esa nota <strong>de</strong> licencia el listado completo <strong>de</strong> lasSecciones Invariantes y <strong>de</strong> los Textos <strong>de</strong> Cubierta que sean requeridosen la nota <strong>de</strong> Licencia <strong>de</strong>l Documento origin<strong>al</strong>.334


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492• H. Incluir una copia sin modificación <strong>de</strong> esta Licencia.• I. Conservar la sección Titulada Historia, conservar su Título yañadirle un elemento que <strong>de</strong>clare <strong>al</strong> menos el título, el año, losnuevos autores y el editor <strong>de</strong> la Versión Modificada, t<strong>al</strong> como figuranen la Portada. Si no hay una sección Titulada Historia en elDocumento, crear una estableciendo el título, el año, los autoresy el editor <strong>de</strong>l Documento, t<strong>al</strong> como figuran en su Portada, añadiendoa<strong>de</strong>más un elemento <strong>de</strong>scribiendo la Versión Modificada,como se estableció en la oración anterior.• J. Conservar la dirección en red, si la hay, dada en el Documentopara el acceso público a una copia Transparente <strong>de</strong>l mismo, asícomo las otras direcciones <strong>de</strong> red dadas en el Documento paraversiones anteriores en las que estuviese basado. Pue<strong>de</strong>n ubicarseen la sección Historia. Se pue<strong>de</strong> omitir la ubicación en red <strong>de</strong> untrabajo que haya sido publicado por lo menos cuatro años antesque el Documento mismo, o si el editor origin<strong>al</strong> <strong>de</strong> dicha versiónda permiso.• K. En cu<strong>al</strong>quier sección Titulada Agra<strong>de</strong>cimientos o Dedicatorias,Conservar el Título <strong>de</strong> la sección y conservar en ella toda la sustanciay el tono <strong>de</strong> los agra<strong>de</strong>cimientos y/o <strong>de</strong>dicatorias incluidaspor cada contribuyente.• L. Conservar todas las Secciones Invariantes <strong>de</strong>l Documento, sin<strong>al</strong>terar su texto ni sus títulos. Números <strong>de</strong> sección o el equiv<strong>al</strong>enteno son consi<strong>de</strong>rados parte <strong>de</strong> los títulos <strong>de</strong> la sección.• M. Borrar cu<strong>al</strong>quier sección titulada Aprobaciones. T<strong>al</strong>es seccionesno pue<strong>de</strong>n estar incluidas en las Versiones Modificadas.• N. No cambiar el título <strong>de</strong> ninguna sección existente a Aprobacionesni a uno que entre en conflicto con el <strong>de</strong> <strong>al</strong>guna Sección Invariante.• O. Conservar todas las Limitaciones <strong>de</strong> Garantía.Si la Versión Modificada incluye secciones o apéndices nuevos quec<strong>al</strong>ifiquen como Secciones Secundarias y contienen materi<strong>al</strong> no co-ANOTACIONES335


© FUOC • XP06/M2101/01492Software <strong>libre</strong>piado <strong>de</strong>l Documento, pue<strong>de</strong> opcion<strong>al</strong>mente <strong>de</strong>signar <strong>al</strong>gunas o todasesas secciones como invariantes. Para hacerlo, añada sus títulosa la lista <strong>de</strong> Secciones Invariantes en la nota <strong>de</strong> licencia <strong>de</strong> la VersiónModificada. T<strong>al</strong>es títulos <strong>de</strong>ben ser distintos <strong>de</strong> cu<strong>al</strong>quier otro título<strong>de</strong> sección.Pue<strong>de</strong> añadir una sección titulada Aprobaciones, siempre que contengaúnicamente aprobaciones <strong>de</strong> su Versión Modificada por otrasfuentes –por ejemplo, observaciones <strong>de</strong> peritos o que el texto ha sidoaprobado por una organización como la <strong>de</strong>finición ofici<strong>al</strong> <strong>de</strong> un estándar.Pue<strong>de</strong> añadir un pasaje <strong>de</strong> hasta cinco p<strong>al</strong>abras como Texto <strong>de</strong> CubiertaDelantera y un pasaje <strong>de</strong> hasta 25 p<strong>al</strong>abras como Texto <strong>de</strong>Cubierta Trasera en la Versión Modificada. Una entidad sólo pue<strong>de</strong>añadir (o hacer que se añada) un pasaje <strong>al</strong> Texto <strong>de</strong> Cubierta Delanteray uno <strong>al</strong> <strong>de</strong> Cubierta Trasera. Si el Documento ya incluye un texto<strong>de</strong> cubiertas añadidos previamente por usted o por la misma entidadque usted representa, usted no pue<strong>de</strong> añadir otro; pero pue<strong>de</strong> reemplazarel anterior, con permiso explícito <strong>de</strong>l editor que agregó el textoanterior.Con esta Licencia ni los autores ni los editores <strong>de</strong>l Documento danpermiso para usar sus nombres para publicidad ni para asegurar oimplicar aprobación <strong>de</strong> cu<strong>al</strong>quier Versión Modificada.B.6. COMBINACIÓN DE DOCUMENTOSANOTACIONESUsted pue<strong>de</strong> combinar el Documento con otros documentos liberadosbajo esta Licencia, bajo los términos <strong>de</strong>finidos en la sección 4anterior para versiones modificadas, siempre que incluya en la combinacióntodas las Secciones Invariantes <strong>de</strong> todos los documentosorigin<strong>al</strong>es, sin modificar, listadas todas como Secciones Invariantes<strong>de</strong>l trabajo combinado en su nota <strong>de</strong> licencia. Así mismo <strong>de</strong>be incluirla Limitación <strong>de</strong> Garantía.El trabajo combinado necesita contener solamente una copia <strong>de</strong> estaLicencia, y pue<strong>de</strong> reemplazar varias Secciones Invariantes idénticas336


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492por una sola copia. Si hay varias Secciones Invariantes con el mismonombre pero con contenidos diferentes, haga el título único <strong>de</strong> cadauna <strong>de</strong> estas secciones añadiéndole <strong>al</strong> fin<strong>al</strong> <strong>de</strong>l mismo, entre paréntesis,el nombre <strong>de</strong>l autor o editor origin<strong>al</strong> <strong>de</strong> esa sección, si es conocido,o si no, un número único. Haga el mismo ajuste a los títulos<strong>de</strong> sección en la lista <strong>de</strong> Secciones Invariantes <strong>de</strong> la nota <strong>de</strong> licencia<strong>de</strong>l trabajo combinado.En la combinación, <strong>de</strong>be combinar cu<strong>al</strong>quier sección Titulada Historia<strong>de</strong> los documentos origin<strong>al</strong>es, formando una sección Titulada Historia;<strong>de</strong> la misma forma combine cu<strong>al</strong>quier sección TituladaAgra<strong>de</strong>cimientos, y cu<strong>al</strong>quier sección Titulada Dedicatorias. Debeborrar todas las secciones tituladas Aprobaciones.B.7. COLECCIONES DE DOCUMENTOSPue<strong>de</strong> hacer una colección que conste <strong>de</strong>l Documento y <strong>de</strong> otros documentosliberados bajo esta Licencia, y reemplazar las copias individu<strong>al</strong>es<strong>de</strong> esta Licencia en todos los documentos por una sola copiaque esté incluida en la colección, siempre que siga las reglas <strong>de</strong> estaLicencia para cada copia liter<strong>al</strong> <strong>de</strong> cada uno <strong>de</strong> los documentos encu<strong>al</strong>quiera <strong>de</strong> los <strong>de</strong>más aspectos.Pue<strong>de</strong> extraer un solo documento <strong>de</strong> una <strong>de</strong> t<strong>al</strong>es colecciones y distribuirloindividu<strong>al</strong>mente bajo esta Licencia, siempre que inserte unacopia <strong>de</strong> esta Licencia en el documento extraído, y siga esta Licenciaen todos los <strong>de</strong>más aspectos relativos a la copia liter<strong>al</strong> <strong>de</strong> dicho documento.B.8. AGREGACIÓN CON TRABAJOSINDEPENDIENTESUna recopilación que conste <strong>de</strong>l Documento o sus <strong>de</strong>rivados y <strong>de</strong>otros documentos o trabajos separados e in<strong>de</strong>pendientes, en cu<strong>al</strong>quiersoporte <strong>de</strong> <strong>al</strong>macenamiento o distribución, se <strong>de</strong>nomina unagregado si el copyright resultante <strong>de</strong> la compilación no se usa par<strong>al</strong>imitar los <strong>de</strong>rechos <strong>de</strong> los usuarios <strong>de</strong> la misma más <strong>al</strong>lá <strong>de</strong> lo queANOTACIONES337


© FUOC • XP06/M2101/01492Software <strong>libre</strong>los <strong>de</strong> los trabajos individu<strong>al</strong>es permiten. Cuando el Documento seincluye en un agregado, esta Licencia no se aplica a otros trabajos<strong>de</strong>l agregado que no sean en sí mismos <strong>de</strong>rivados <strong>de</strong>l Documento.Si el requisito <strong>de</strong> la sección 3 sobre el Texto <strong>de</strong> Cubierta es aplicablea estas copias <strong>de</strong>l Documento y el Documento es menor que la mitad<strong>de</strong>l agregado entero, los Textos <strong>de</strong> Cubierta <strong>de</strong>l Documento pue<strong>de</strong>ncolocarse en cubiertas que enmarquen solamente el Documento<strong>de</strong>ntro <strong>de</strong>l agregado, o el equiv<strong>al</strong>ente electrónico <strong>de</strong> las cubiertas siel documento está en forma electrónica. En caso contrario <strong>de</strong>benaparecer en cubiertas impresas enmarcando todo el agregado.B.9. TRADUCCIÓNLa Traducción es consi<strong>de</strong>rada como un tipo <strong>de</strong> modificación, por loque usted pue<strong>de</strong> distribuir traducciones <strong>de</strong>l Documento bajo los términos<strong>de</strong> la sección 4. El reemplazo las Secciones Invariantes con traduccionesrequiere permiso especi<strong>al</strong> <strong>de</strong> los dueños <strong>de</strong> <strong>de</strong>recho <strong>de</strong>autor, pero usted pue<strong>de</strong> añadir traducciones <strong>de</strong> <strong>al</strong>gunas o todas lasSecciones Invariantes a las versiones origin<strong>al</strong>es <strong>de</strong> las mismas. Pue<strong>de</strong>incluir una traducción <strong>de</strong> esta Licencia, <strong>de</strong> todas las notas <strong>de</strong> licencia<strong>de</strong>l documento, así como <strong>de</strong> las Limitaciones <strong>de</strong> Garantía, siempreque incluya también la versión en Inglés <strong>de</strong> esta Licencia y las versionesorigin<strong>al</strong>es <strong>de</strong> las notas <strong>de</strong> licencia y Limitaciones <strong>de</strong> Garantía. Encaso <strong>de</strong> <strong>de</strong>sacuerdo entre la traducción y la versión origin<strong>al</strong> en Inglés<strong>de</strong> esta Licencia, la nota <strong>de</strong> licencia o la limitación <strong>de</strong> garantía, laversión origin<strong>al</strong> en Inglés prev<strong>al</strong>ecerá.ANOTACIONESSi una sección <strong>de</strong>l Documento está Titulada Agra<strong>de</strong>cimientos, Dedicatoriaso Historia el requisito (sección 4) <strong>de</strong> Conservar su Título (Sección1) requerirá, típicamente, cambiar su título.B.10.TERMINACIÓNUsted no pue<strong>de</strong> copiar, modificar, sublicenciar o distribuir el Documentos<strong>al</strong>vo por lo permitido expresamente por esta Licencia. Cu<strong>al</strong>quierotro intento <strong>de</strong> copia, modificación, sublicenciamiento o338


Introducción <strong>al</strong> <strong>software</strong> <strong>libre</strong>© FUOC • XP06/M2101/01492distribución <strong>de</strong>l Documento es nulo, y dará por terminados automáticamentesus <strong>de</strong>rechos bajo esa Licencia. Sin embargo, los tercerosque hayan recibido copias, o <strong>de</strong>rechos, <strong>de</strong> usted bajo esta Licenciano verán terminadas sus licencias, siempre que permanezcan en tot<strong>al</strong>conformidad con ella.B.11.REVISIONES FUTURAS DE ESTA LICENCIADe vez en cuando la Free Software Foundation pue<strong>de</strong> publicar versionesnuevas y revisadas <strong>de</strong> la Licencia <strong>de</strong> Documentación LibreGNU. T<strong>al</strong>es versiones nuevas serán similares en espíritu a la presenteversión, pero pue<strong>de</strong>n diferir en <strong>de</strong>t<strong>al</strong>les para solucionar nuevos problemaso intereses. Vea http://www.gnu.org/copyleft/.Cada versión <strong>de</strong> la Licencia tiene un número <strong>de</strong> versión que la distingue.Si el Documento especifica que se aplica una versión numeradaen particular <strong>de</strong> esta licencia o cu<strong>al</strong>quier versión posterior, ustedtiene la opción <strong>de</strong> seguir los términos y condiciones <strong>de</strong> la versión especificadao cu<strong>al</strong>quiera posterior que haya sido publicada (no comoborrador) por la Free Software Foundation. Si el Documento no especificaun número <strong>de</strong> versión <strong>de</strong> esta Licencia, pue<strong>de</strong> escoger cu<strong>al</strong>quierversión que haya sido publicada (no como borrador) por laFree Software Foundation.B.12.ADENDA: Cómo usar esta Licenciaen sus documentosPara usar esta licencia en un documento que usted haya escrito, incluyauna copia <strong>de</strong> la Licencia en el documento y ponga el siguientecopyright y nota <strong>de</strong> licencia justo <strong>de</strong>spués <strong>de</strong> la página <strong>de</strong> título:Copyright (c) AÑO SU NOMBRE. Se otorga permiso para copiar,distribuir y/o modificar este documento bajo los términos <strong>de</strong> la Licencia<strong>de</strong> Documentación Libre <strong>de</strong> GNU, Versión 1.2 o cu<strong>al</strong>quierotra versión posterior publicada por la Free Software Foundation;sin Secciones Invariantes ni Textos <strong>de</strong> Cubierta Delantera ni TextosANOTACIONES339


© FUOC • XP06/M2101/01492Software <strong>libre</strong><strong>de</strong> Cubierta Trasera. Una copia <strong>de</strong> la licencia está incluida en lasección titulada GNU Free Documentation License.Si tiene Secciones Invariantes, Textos <strong>de</strong> Cubierta Delantera y Textos<strong>de</strong> Cubierta Trasera, reemplace la frase sin ... Trasera por esto:siendo las Secciones Invariantes LISTE SUS TÍTULOS, siendo losTextos <strong>de</strong> Cubierta Delantera LISTAR, y siendo sus Textos <strong>de</strong> CubiertaTrasera LISTAR.Si tiene Secciones Invariantes sin Textos <strong>de</strong> Cubierta o cu<strong>al</strong>quier otracombinación <strong>de</strong> los tres, mezcle ambas <strong>al</strong>ternativas para adaptarsea la situación.Si su documento contiene ejemplos <strong>de</strong> código <strong>de</strong> programa no trivi<strong>al</strong>es,recomendamos liberar estos ejemplos en par<strong>al</strong>elo bajo la licencia<strong>de</strong> <strong>software</strong> <strong>libre</strong> que usted elija, como la Licencia PúblicaGener<strong>al</strong> <strong>de</strong> GNU (GNU Gener<strong>al</strong> Public License), para permitir su usoen <strong>software</strong> <strong>libre</strong>.ANOTACIONES340

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!