Informe Open Source y Software Libre

UNIVERSIDAD DE AQUINO BOLIVIA FACULTAD DE CIENCIA Y TECNOLOGÍA Carrera: Ingeniería de Sistemas TEMA: SOFTWARE LIBRE Y

Views 42 Downloads 4 File size 384KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

UNIVERSIDAD DE AQUINO BOLIVIA FACULTAD DE CIENCIA Y TECNOLOGÍA

Carrera: Ingeniería de Sistemas

TEMA: SOFTWARE LIBRE Y OPEN SOURCE

Materia: NUEVAS TECNOLOGÍAS

Nombres: Pedro Javier Mostajo López Marcelo Roberto Yampasi Morales Flores Venegas Florencio Gabriel

Docente: Ing. Hugo Rojas Ajata

FECHA DE ENTREGA: 01/04/2013

SOFTWARE LIBRE ¿Qué es el software libre? El software libre se está convirtiendo poco a poco en algo cada vez más cotidiano y está dejando de ser asunto de técnicos, entusiastas o usuarios avanzados. Hoy en día la comunidad de software libre dispone de múltiples herramientas de altísima calidad (como alternativa al software protegido o software propietario) como el paquete ofimático OpenOffice, reproductores multimedia como Mplayer, navegadores de Internet como Mozilla o soluciones íntegras para la web como la que conforman el lenguaje de programación php, la base de datos MySql y el servidor Apache, con un rendimiento comparable o superior al de una solución no libre (el servidor Apache es líder mundial en servidores web1). Además, el uso del Sistema Operativo Linux ha crecido enormemente en la Administración y el Gobierno, se ha adoptado en escuelas y universidades y en la ciencia e industria. Aunque la asignatura pendiente del software libre sigue siendo la de llegar al mundo empresarial y a los usuarios domésticos, más que nada debido a la resistencia al cambio y al hecho de que existe ya una costumbre y una formación a favor del uso de productos no libres, además de que todavía algunas compañías de software no desarrollan versiones comerciales de sus programas para este sistema. Pero lo fundamental es explicar qué es realmente el software libre. Se suele asociar el concepto de software libre con el de software de código abierto (Open Source). El código abierto implica que disponemos del código fuente, esto es, el código escrito en lenguaje de programación, previo a su transformación a código binario, directamente ejecutable en los ordenadores. Es cierto que todo el software libre es de código abierto, pero la inversa no siempre se cumple. El disponer del código fuente no implica la posibilidad de distribuir copias modificadas o la libertad de adaptarlo a nuestras necesidades (que sí posee el software libre). A pesar de esto, frecuentemente se asocian los dos términos al hablar de Free Open Source Software (FOSS, o también FLOSS2), por las ventajas que ambos ofrecen frente al software privativo. Tampoco debemos confundir software libre con software gratuito (por el doble significado que el término 'free' tiene en Inglés), aunque normalmente puede conseguirse sin coste económico en realidad la gratuidad del mismo no es uno de los aspectos ni principios básicos del software libre. De hecho, tampoco su utilización supone el que no se pueda cobrar por el software libre, y menos aún que no se pueda cobrar por desarrollar un software que será distribuido como software libre. El hecho de que un desarrollo sea software libre o no, no depende de cuestiones económicas sino de los derechos sobre el software y los mecanismos de delegación de los mismos. Igual que se puede llegar a un acuerdo por el cual a un cliente solo le damos derecho de explotación del producto y ningún derecho sobre el código o derecho de explotación más propiedad del código, también se puede llegar a un acuerdo en el cual se especifique que el producto final será software libre.

GNU/Linux: Los cuatro principios del software libre Existe la confusión de identificar la unión GNU/Linux como Linux. GNU identifica la filosofía que hay detrás, y Linux el software que la materializa. A principios de los años 80 del pasado siglo el único Sistema Operativo cuyos componentes eran portables a otros era UNIX, capaz de funcionar en distintas plataformas (PC, Mac, grandes servidores, etc.), pero faltaba el kernel o núcleo del Sistema Operativo. En 1991 Linus Torvalds desarrolló el kernel de Linux, y en 1992 lo lanzó con una licencia de software libre GPL (con los cuatro niveles de libertad). Por primera vez era posible usar un PC en libertad gracias a la unión GNU/Linux3. Estas son las cuatro libertades esenciales que debe respetar todo software que se defina como software libre (GNU): 1. 2. 3. 4.

Libertad de ejecución del programa. Libertad de estudiar el código fuente y modificarlo. Libertad de distribución de copias. Libertad de publicar versiones cambiadas.

Ventajas del software libre Pero lo importante es que detrás del software libre se esconde mucho más que cuestiones legales o tecnológicas. En torno al software libre se mueve una extensa comunidad de desarrolladores, usuarios, ingenieros e investigadores, con unos objetivos éticos de mejora común, solidaridad y de acceso libre al conocimiento. El software libre puede disminuir sensiblemente los costos de una solución informática completa, ahorrando los precios de las licencias del software tradicional para asignar más presupuesto a la capacitación, soporte y equipo de hardware. Sin embargo, la ventaja fundamental radica en que hace posible comprender la lógica de funcionamiento de los programas, y permite su mejora y desarrollo a un nivel global que el modelo de licenciamiento y de protección de ideas y conocimiento (con departamentos empresariales cerrados dedicados en exclusiva a la investigación y mejoras del producto) no puede igualar. El modelo tradicional dificulta el acceso al conocimiento de los países en desarrollo, que no deberían seguir siendo dependientes de los adelantos tecnológicos de los países más avanzados, ni de las agendas en investigación de éstos, que a menudo se rigen únicamente por razones de mercado. La investigación y la innovación son fuentes de desarrollo, por lo que es necesario fomentar el libre acceso al conocimiento y generar capacidades, aprovechando los conocimientos colectivos y contribuyendo a mejorarlos. Por esto el software libre pretende despuntar como una alternativa ante el modelo tradicional de desarrollo y venta de licencias que habitualmente puede ser inalcanzable para muchos colectivos. En relación a las dudas en cuanto a la seguridad y la protección de datos, el software de código abierto ayuda a la ciberseguridad en la medida en que ésta es responsabilidad de todos los estados, y una red de información interconectada a nivel global como es Internet hace necesarios los flujos abiertos de información, ya que la falta de recursos e incentivos hace que los países en desarrollo partan en desventaja y sean más vulnerables.

Desde el punto de vista del negocio y los inconvenientes que algunos sectores ven debido a la renuncia a las ganancias que se obtienen a partir de las ventas por licencias que supondría el uso de software libre, se estima que sólo el 7% de los programadores en los Estados Unidos trabajan en compañías de software privativo, y que el 30% de los trabajadores del sector lo hacen produciendo software a medida, y en labores de instalación-integración y soporte. La mayoría de personas y compañías que desarrollan software no generan beneficios por ventas de licencias sino vendiendo su tiempo. Además, el desarrollo de FLOSS libera a la industria de aproximadamente el 36% del gasto en inversión por Investigación y Desarrollo de software, incrementando los beneficios y optimizando la inversión en materia de innovación a futuro. El software libre aporta grandes ventajas para la educación, ya que, además de para economizar gastos, permite satisfacer la necesidad de saber natural de los jóvenes (posibilidad de acceder al código fuente para ver cómo funciona y poder modificarlo). Existe además un componente moral: las Escuelas tienen el deber de compartir el conocimiento. Desventajas del Software Libre Algunas aplicaciones (bajo Linux) pueden llegar a ser algo complicadas de instalar.    

Inexistencia de garantía por parte del autor, por ello existen comunidades, que ayudan y aportan tanto en código como en soluciones. Poca estabilidad y flexibilidad en el campo de multimedia y juegos. Menor compatibilidad con el hardware.(se está trabajando en ello) Dificultad en el intercambio de archivos: esto se da mayormente en los documentos de texto (generalmente creados con Microsoft Word), ya que si los queremos abrir con un Software Libre (p/ ej. Open Office o LaTeX) los formatos se dañan cuando se utiliza tablas por lo demás funciona perfectamente.

OPEN SOURCE

Código abierto (o fuente abierta) es el término con el que se conoce al software distribuido y desarrollado libremente. El código abierto tiene un punto de vista más orientado a los beneficios prácticos de poder acceder al código, que a las cuestiones éticas y morales las cuales se destacan en el software libre. Dada la ausencia de tal ambigüedad en la lengua española, el término software libre es adecuado para referirse a programas que se ofrecen con total libertad de modificación, uso y distribución bajo la regla implícita de no modificar dichas libertades hacia el futuro. De hecho en inglés también se usa el término "libre software" para evitar ambigüedades semánticas. Desde el punto de vista de una "traducción estrictamente literal", el significado textual de "código abierto" es que "se puede examinar el código fuente", por lo que puede ser interpretado como un término más débil y flexible que el del software libre. Sin embargo, ambos movimientos reconocen el mismo conjunto de licencias y mantienen principios equivalentes. Sin embargo, hay que diferenciar los programas de código abierto, que dan a los usuarios la libertad de mejorarlos, de los programas que simplemente tienen el código fuente disponible, previa restricciones sobre su uso o modificación. En la actualidad el código abierto se utiliza para definir un movimiento nuevo de software (la Iniciativa Open Source), diferente al movimiento del software libre, incompatible con este último desde el punto de vista filosófico, y completamente equivalente desde el punto de vista práctico, de hecho, ambos movimientos trabajan juntos en el desarrollo práctico de proyectos. La idea bajo el concepto de código abierto es sencilla: cuando los programadores (en Internet) pueden leer, modificar y redistribuir el código fuente de un programa, éste evoluciona, se desarrolla y mejora. Los usuarios lo adaptan a sus necesidades, corrigen sus errores a una velocidad impresionante, mayor a la aplicada en el desarrollo de software convencional o cerrado, dando como resultado la producción de un mejor software. Movimiento del "código abierto" La idea del código abierto se centra en la premisa de que al compartir el código, el programa resultante tiende a ser de calidad superior al software propietario, es una visión técnica. Por otro lado, el software libre tiene tendencias filosóficas e incluso morales: el software propietario, al no poder compartirse, es "antiético" dado que prohibir compartir entre seres humanos va en contra del sentido común. Al igual que el software libre, el código abierto tiene una serie de requisitos necesarios para que un programa pueda considerarse dentro de este movimiento, éstos son:

1. Libre redistribución: el software debe poder ser regalado o vendido libremente. La licencia no debe restringir a un tercero el vender o entregar el programa como parte de una distribución mayor que contiene programas de diferentes fuentes. La licencia no debe requerir una regalía u otras comisiones para esta venta. 2. Código fuente: el código fuente debe estar incluido u obtenerse libremente. El programa debe incluir el código fuente, y debe permitir la distribución de código fuente y en forma compilada. Si alguna forma de un producto no se distribuye con el código fuente, debe ser un medio muy publicitado de obtener el código fuente por no más de un costo razonable de reproducción preferentemente, la descarga a través de Internet sin costo alguno. El código fuente debe ser la forma preferida en la cual un programador podría modificar el programa. No se permite código fuente deliberadamente ofuscado. No se permiten formas intermedias tales como la salida de un preprocesador o traductor. 3. Trabajos derivados: la redistribución de modificaciones debe estar permitida. La licencia debe permitir modificaciones y trabajos derivados y debe permitir que estos se distribuyan bajo los mismos términos que la licencia del software original. 4. Integridad del código fuente del autor: las licencias pueden requerir que las modificaciones sean redistribuidas sólo como parches. La licencia puede restringir código fuente se distribuya en forma modificada sólo si la licencia permite la distribución de "archivos de revisión" con el código fuente con el fin de modificar el programa en tiempo de compilación. La licencia debe permitir explícitamente la distribución de software a partir de código fuente modificado. La licencia puede requerir trabajos derivados a llevar un nombre o número de versión del software original. 5. Sin discriminación de personas o grupos: nadie puede dejarse fuera. 6. Sin discriminación de áreas de iniciativa: los usuarios comerciales no pueden ser excluidos. La licencia no puede restringir el uso del programa en un campo específico de actividad. Por ejemplo, no puede restringir el programa se utilice en un negocio, o que se utilicen para la investigación genética. 7. Distribución de la licencia: deben aplicarse los mismos derechos a todo el que reciba el programa Los derechos de uso asociados al programa deben aplicarse a todos aquellos a quienes se redistribuya el programa, sin necesidad de pedir una licencia adicional para estas terceras partes. 8. La licencia no debe ser específica de un producto: el programa no puede licenciarse solo como parte de una distribución mayor. Los derechos asociados al programa no deben depender de que el programa forme parte de una distribución de software en particular. Si el programa se extrae de esa distribución y usado o distribuido dentro de los

términos de la licencia del programa, todas las partes a las que el programa se redistribuya deben tener los mismos derechos que los que se otorgan en relación con la distribución de software original.

9. La licencia no debe restringir otro software: la licencia no puede obligar a que algún otro software que sea distribuido con el software abierto deba también ser de código abierto. La licencia no debe poner restricciones sobre otros programas que se distribuyan junto con el programa licenciado. Por ejemplo, la licencia no puede insistir que todos los demás programas distribuidos sobre el mismo medio deben ser software de código abierto. 10. La licencia debe ser tecnológicamente neutral: no debe requerirse la aceptación de la licencia por medio de un acceso por clic de ratón o de otra forma específica del medio de soporte del software. Ninguna disposición de la licencia puede basarse en una tecnología individual o estilo de interfaz.

Este decálogo es compatible con las cuatro libertades del software libre. Programas en código abierto  



Sistemas Operativos: los más conocidos, Ubuntu y Debian, basados en Linux. Android, de Google, para teléfonos inteligentes y tabletas. Programas: las suites ofimáticas Open Office y Libre Office, el navegador Firefox, el cliente de correo electrónico Thunderbird, el reproductor multimedia VLC o el editor de imágenes GIMP Antivirus: ClamWin

Ventajas Open Source cuenta con una gran comunidad de usuarios y como el código es libre, cualquiera puede añadir sus ideas y mejorar los programas. Así se actualizan con más frecuencia e incorporan más funciones. La principal ventaja es que es completamente gratuito. Desventajas Una de las desventajas es que los programas suelen ser algo inestables precisamente porque muchos usuarios contribuyen para crearlos y algunas modificaciones generan bugs. Además, suelen tener un soporte de pocos días, por ejemplo las distribuciones Linux tienen muy poco tiempo de soporte en cuanto a actualizaciones (a excepción de Ubuntu). Tipos de licencias: Licencia Apache (Apache Software License para versiones anteriores a 2.0): es una licencia de software de código abierto creada por la Apache Software Foundation (ASF). Esta licencia te

permite hacer lo que quieras con el código fuente (incluso forks y productos propietarios) siempre que les reconozcas su trabajo.

Licencia MIT: es una de tantas licencias de software de codigo abierto que ha empleado el MIT (Massachusetts Institute of Technology) a lo largo de su historia, y quizás debería llamarse más correctamentelicencia X11, ya que es la licencia que llevaba este software de muestra de la informacion de manera gráfica X Window Systemoriginario del MIT en los años 80. La licencia X11 es una licencia compatible con la GPL y que permite que el código sea accesible para el mayor número de desarrolladores y trabajos derivados posible, y no importa que se pueda utilizar dentro software propietario, siempre y cuando se incluya la licencia. Licencia BSD: es la licencia de software de código abierto otorgada principalmente para los sistemas BSD (Berkeley Software Distribution). Esta licencia requiere que se preserve la nota sobre los derechos de autor, pero no es una licencia copyleft ya que permite reutilización del código fuente para el desarrollo de software, tanto libre/de código abierto, cómo propietario. Licencia Pública General de Affero (Affero General Public License, o Affero GPL): es una licencia código abierto derivada de la GNU GPLv2, incompatible con ella por la cláusula (sección 2(d)) que añade la obligación de distribuir el software si éste se ejecuta para ofrecer servicios a través de una red de ordenadores, pero redactada de tal forma que será compatible con la GNU GPLv3. Licencia Pública de Zope (Zope Public Licence o ZPL) es una licencia de código abierto usada primordialmente para el software de servidores de Zope. Permite el uso del código fuente en software no libre e Incluye clausulas prohibiendo su uso comercial y requiere la documentación de todos los cambios al software. Licencia Pública de Mozilla (Mozilla Public License o MPL): Fue desarrollada originalmente por Netscape Communications Corporation (una división de la compañía America Online), y más tarde su control fue traspasado a la Fundación Mozilla. Esta licencia cumple con la definición de la FSF y la definición de código abierto de la OSI. Sin embargo la licencia deja abierto el camino a una posible reutilización no libre del software, si el usuario así lo desea, sin restringir la reutilización del código ni el relicenciamiento bajo la misma licencia. Licencia Openbravo (Openbravo ERP Comunity Edition o OBPL): Openbravo es una aplicación con arquitectura cliente/servidor web escrita en Java. Se ejecuta sobre Apache y Tomcat y con soporte para bases de datos Postgre SQL y Oracle. Es software de codigo abierto y está licenciado bajo Openbravo Public License Version 1.1 (“OBPL”), que es una adaptación de la licencia libre Mozilla Public License. El código de la versión Network no se publica ni está íntegramente bajo esa licencia, sino que hay partes con licencias privativas diversas. La licencia de Openbravo OBPL aplica además algunas otras restricciones que la hacen incompatible con la licencia.