Definición de código abierto

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 16 de diciembre de 2020; las comprobaciones requieren 2 ediciones .

La definición de código abierto ( OSD ) es utilizada por la Iniciativa de código abierto  para determinar hasta qué punto una licencia de software cumple con los estándares de software de código abierto ( Open Source ) . Basado en las directivas de software libre de Debian , escritas en su mayoría por Bruce Perens .

El término "Código abierto" se creó como una alternativa al término "Software libre". Para el software libre, el código abierto es imprescindible, lo que se deriva de la definición misma de "Software libre" ( "Libertad 1" y "Libertad 3" ).

Requisitos de licencia de código abierto revisados ​​por la Iniciativa de código abierto

  1. Distribución gratuita. Esto significa que la licencia no debe imponer restricciones a la venta y distribución del software.
  2. Textos fuente disponibles. Incluso si el software no viene con el código fuente, el código fuente debe estar disponible. Debe ser exactamente un código fuente editado por humanos , y no la salida de ofuscadores , preprocesadores y formas intermedias similares. Por lo tanto, el software gratuito no es de código abierto.
  3. Posibilidad de modificación. La mera capacidad de leer los textos fuente no permite experimentar con ellos y liberar modificaciones. Una licencia que dice ser "abierta" debe permitir no solo la lectura del código, sino también la modificación, el uso de partes del código en otros proyectos y la distribución de los programas resultantes bajo los términos de la misma licencia. id Software lanzó el código fuente (pero no los datos) de Doom en 1998 bajo una licencia "educativa". Cuando un disco fallido puso fin a un puerto prometedor, los textos fueron relicenciados bajo la GPL : si la licencia estuviera abierta, alguien definitivamente tendría una copia de seguridad [1] .
  4. Incluso en el caso de la inviolabilidad del código fuente del autor, los programas derivados y su código fuente deben distribuirse libremente. Para no confundir al usuario, las licencias gratuitas pueden reservar algunos derechos para el autor; por ejemplo, un programa derivado debe tener un nombre o una versión diferente; o debe consistir en textos fuente del autor y parches para ellos. Sin embargo, el autor debe permitir que los binarios compilados y el código fuente derivado se distribuyan de una forma u otra. Netscape retuvo el nombre de Netscape cuando lanzó el código fuente del navegador . A pesar de esta cláusula, la Licencia Pública de Mozilla está abierta.
  5. No discriminación de personas y grupos de personas. Algunos países, como Estados Unidos , tienen algunas restricciones para exportar software. Una licencia gratuita puede recordarle que existen tales reglas, pero no puede establecer las suyas propias. Una de las licencias "casi abiertas" creadas durante el apartheid , prohibía el uso del programa por parte de la policía sudafricana . Cayó el apartheid, pero la demanda se mantuvo.
  6. No discriminación basada en el propósito de la aplicación. Una licencia libre debería permitir todas las actividades, incluidas la investigación genética y nuclear, el uso comercial, etc. El uso comercial se establece específicamente: “Queremos que los usuarios comerciales se conecten con la comunidad y no se consideren aislados de ella”. Al igual que con el software libre, las creencias personales del autor no deben interferir y cláusulas como "no se debe usar en clínicas de aborto " están prohibidas. Al fin y al cabo, uno puede prohibir el aborto, otro jurar, un tercero ambas, y un cuarto de estas prohibiciones, sin dejar nada de libertad.
  7. Distribución de la licencia. Los derechos asociados con el software de código abierto deben ser aplicables a todos los usuarios del programa sin acuerdos adicionales, como los acuerdos de confidencialidad. En otras palabras, cualquier licencia abierta será una licencia pública .
  8. La licencia no debe estar vinculada a un producto específico. Los derechos sobre el código del programa no deberían depender de si el programa es parte de un producto. Una persona que distribuye el programa por separado de la colección o transfiere parte del código a otro producto tiene los mismos derechos que la colección le dio. Este requisito cierra algunas lagunas en la concesión de licencias. ReactOS y Wine están intercambiando código activamente. Sobre la base del kernel de Linux, se construye el firmware de varios dispositivos . Esto es posible porque ni una sola línea de código, ni un solo archivo fuente está vinculado a ningún programa.
  9. La licencia no debe restringir otros productos de software. Salvo incompatibilidad banal, el usuario tiene derecho a elegir qué utilizar. Por ejemplo, no puede exigir que otros programas que vienen con este también sean de código abierto. Las versiones recientes de Ghostscript tenían una licencia que prohibía que el programa se usara con software cerrado (las versiones obsoletas se publicaron bajo la licencia GPL ). Esta práctica fue abandonada en 2007. Algunas licencias de fuente compartida de Microsoft solo permiten la creación de software para Windows .
  10. La licencia debe ser tecnológicamente neutral. Es decir, la licencia no debe requerir nada de la interfaz o tecnologías utilizadas en el programa derivado. Por ejemplo, el elemento "el usuario debe aceptar la licencia haciendo clic en un botón determinado" no es adecuado; esto evitará que el software se use en modo de línea de comandos sin la intervención del usuario. Esta cláusula también sirve para cerrar lagunas en la licencia.

Véase también

Notas

  1. Licencias - Doom Wiki - Wikia . Consultado el 17 de diciembre de 2018. Archivado desde el original el 18 de diciembre de 2018.

Enlaces