Definición y ejemplos de software de código abierto
Aprende a Programar desde cero en C/C++ [Parte 1] (Primer Programa)
Tabla de contenido:
- Criterios de software de código abierto
- Licencias
- Software de código abierto frente a software comercial
- Software de código abierto frente a software libre
- Ventajas del software de código abierto
- Tipos populares de software de código abierto
- Software de código abierto y desarrolladores
- La línea de fondo
El software de fuente abierta (OSS) es cualquier tipo de software de computadora que se distribuye con su código fuente disponible para su modificación. Eso significa que, por lo general, incluye una licencia para que los programadores cambien el software de la forma que deseen: pueden corregir errores, mejorar las funciones o adaptar el software para satisfacer sus propias necesidades.
Criterios de software de código abierto
La Open Source Initiative (OSI), una organización sin fines de lucro mundial fundada en 1998, actúa como una autoridad líder en OSS. Su definición de software de código abierto incluye 10 criterios, relacionados con asuntos tales como:
- Redistribución de software
- Disponibilidad e integridad del código fuente
- Distribución y propiedades de las licencias.
- Trabajos derivados
- Contra la discriminación
Licencias
Diferentes licencias permiten a los programadores modificar el software con varias condiciones adjuntas. Según la base de conocimientos de Black Duck, una base de datos de unos dos millones de proyectos de código abierto, cinco de las licencias más populares son:
- Licencia MIT
- Licencia pública general de GNU (GPL) 2.0
- Licencia Apache 2.0
- Licencia pública general de GNU (GPL) 3.0
- Licencia BSD 2.0 (cláusula 3, nueva o revisada)
Cuando cambia el código fuente, OSS requiere la inclusión de lo que modificó, así como sus métodos. El software creado después de las modificaciones del código puede o no estar disponible de forma gratuita.
Software de código abierto frente a software comercial
El software disponible comercialmente, también conocido como software comercial o propietario, no da acceso a su código fuente porque el software es propiedad intelectual de otra persona. Como resultado, los usuarios a menudo pagan por ello. OSS, por otro lado, es un esfuerzo de colaboración; El software es propiedad intelectual compartida entre todos los que han ayudado a desarrollarlo o alterarlo.
Software de código abierto frente a software libre
Aunque los términos se usan indistintamente, OSS es ligeramente diferente del software libre. Ambos se relacionan con la capacidad de descargar y modificar software sin restricciones ni cargos. Sin embargo, el software libre, un concepto desarrollado en la década de 1980 por Richard Stallman, investigador de informática del MIT, se define por cuatro condiciones, según lo descrito por la organización sin fines de lucro Free Software Foundation. Estas "cuatro libertades" enfatizan la capacidad de los usuarios para usar y disfrutar el software como mejor les parezca.
En contraste, los criterios OSS, que la Iniciativa de Código Abierto desarrolló una década más tarde, ponen más énfasis en la modificación del software y las consecuencias de alterar el código fuente, las licencias y la distribución.
Obviamente, los dos se superponen; algunos dirían que las diferencias entre OSS y software libre son más filosóficas que prácticas. Sin embargo, tampoco debe confundirse con el software gratuito. El software gratuito generalmente se refiere al software propietario que los usuarios pueden descargar sin costo, pero cuyo código fuente no se puede cambiar.
Ventajas del software de código abierto
Si bien su falta de costo es una ventaja clave, OSS tiene varios beneficios adicionales:
- Su calidad puede mejorarse fácilmente y en gran medida cuando su código fuente se transmite, se prueba y se corrige.
- Ofrece una valiosa oportunidad de aprendizaje para los programadores. Pueden aplicar habilidades a los programas más populares disponibles en la actualidad.
- Puede ser más seguro que el software propietario porque los errores se identifican y solucionan rápidamente.
- Dado que está en el dominio público y está sujeto a actualizaciones constantemente, hay pocas posibilidades de que no esté disponible o se pase de moda, lo que es una ventaja importante para los proyectos a largo plazo.
Tipos populares de software de código abierto
Las tecnologías de código abierto ayudaron a establecer gran parte de internet. Además, muchos de los programas en uso todos los días se basan en tecnologías de código abierto. Ejemplos: el sistema operativo Android y el sistema operativo OS X de Apple se basan en las tecnologías de código abierto del kernel y Unix / BSD, respectivamente.
Otro software popular de código abierto es:
- El navegador web Firefox de Mozilla
- Cliente de correo Thunderbird
- Lenguaje de scripting PHP
- Lenguaje de programación Python
- Servidor web HTTP Apache
Software de código abierto y desarrolladores
Los proyectos OSS son oportunidades de colaboración que mejoran las habilidades y crean conexiones en el campo. Las áreas en las que los desarrolladores pueden trabajar incluyen:
- Herramientas de comunicación. El correo electrónico, la mensajería en tiempo real, los foros y los wikis ayudan a los desarrolladores a encontrar soluciones o intercambiar ideas entre ellos.
- Sistemas de control de revisión distribuidos. Cuando varios desarrolladores en diferentes ubicaciones geográficas modifican datos y archivos, estos sistemas administran las diferentes versiones y actualizaciones.
- Rastreadores de errores y listas de tareas. Estas características permiten que los proyectos a gran escala monitoreen los problemas y realicen un seguimiento de sus soluciones.
- Herramientas de prueba y depuración. Estas características automatizan las pruebas durante la integración del sistema y depuran otros programas.
La línea de fondo
El software de código abierto es una alternativa al software propietario. Participar en un proyecto OSS puede ser un camino para desarrollar una carrera en el desarrollo de software, permitiendo a los programadores perfeccionar sus habilidades trabajando en los programas de software más grandes del mundo. Facebook, Google y LinkedIn lanzan OSS para que los desarrolladores puedan compartir conocimientos, innovar soluciones y contribuir a productos estables y funcionales.
Dónde encontrar software de código abierto y dominio público
Descubra la diferencia entre las aplicaciones de código abierto y el software de dominio público y cómo las aplicaciones de código abierto no están bajo dominio público.
Universidades con grandes programas tecnológicos de software abierto
Cada vez más universidades ofrecen cursos gratuitos en línea. Ahora, cualquiera puede tomar cursos de ingeniería en el MIT o clases de informática en Harvard.
Aplicaciones de software de código abierto frente a dominio público
El software de código abierto permite a los usuarios acceder y modificar el código fuente del programa. Estas aplicaciones no están bajo dominio público.