¿Qué es código abierto?

Código abierto , movimiento social , iniciado por programadores informáticos, que rechaza el secreto y el control centralizado del trabajo creativo a favor de la descentralización, la transparencia y el intercambio de información sin restricciones (“abierto”).

La fuente se refiere al código fuente legible por humanos de los programas de computadora , a diferencia de las instrucciones compiladas del lenguaje de programación de computadoras , o el código objeto, que se ejecuta en las computadoras pero que las personas no pueden entender ni modificar fácilmente.

En código cerrado, opropietario , desarrollo de software, solo se publica el código objeto; el código fuente se mantiene en secreto para controlar clientes y mercados. Los proyectos de código abierto rechazan esta práctica y publican todo su código fuente en elInternet bajo licencias que permiten la redistribución gratuita. Una característica importante del desarrollo de código abierto es que la extensa revisión por pares resultante parece hacer un mejor trabajo al minimizar los errores informáticos y los riesgos de seguridad informática que el proceso interno típico de garantía de calidad en los proveedores de código cerrado.

Más allá del software de computadora, el concepto de código abierto se ha utilizado para crear bases de datos en línea gratuitas y los proveedores comerciales de Internet completan reseñas de artículos en venta, como libros, música y películas.

Cultura hacker

Las raíces del código abierto se remontan a las prácticas informáticas de la década de 1960 en el mundo académico y los primeros grupos de usuarios de computadoras. Los programadores informáticos compartían con frecuencia y de manera informal el código que habían escrito (“pirateado”), reciclando rápidamente y modificando libremente el código que resolvía problemas técnicos comunes. Varias culturas técnicas diferentes comenzaron a desarrollar, en paralelo y de forma semiindependiente, prácticas similares al desarrollo moderno de código abierto, aunque sin el aparato actual de licencias comunes y comunicación rápida a través de Internet.

La práctica de compartir código fue más efectiva y consistente entre los desarrolladores del Sistema operativo UNIX , que fue fundamental para el éxito inicial de UNIX. UNIX se desarrolló por primera vez alrededor de 1970 en la subsidiaria Bell Laboratories de AT&T Corporation para su uso en la minicomputadora PDP-7 de Digital Equipment Corporation . A medida que UNIX se adaptaba a varios sistemas de hardware informático , se desarrollaron nuevas variantes del sistema operativo. Para cuando AT&T y Sun Microsystems, Inc. (un defensor de la variante UNIX desarrollada en la Universidad de California, Berkeley), finalmente decidió comercializar UNIX en 1987, un gran segmento de fabricantes de computadoras y desarrolladores de software decidieron que necesitaban un sistema “abierto” y formaron laFundación de software abierto. Esto desencadenó las llamadas “guerras UNIX” entre los entusiastas de las minicomputadoras.

El cambio del intercambio informal de código a la práctica explícita de código abierto en realidad comenzó unos años antes conRichard M. Stallman . Stallman, un programador carismático que había prosperado en el entorno de las ciencias de la computación en laInstituto de Tecnología de Massachusetts (MIT), chocó con la creciente comercialización de software a principios de los años ochenta. Con más empresas bloqueando el acceso a sus códigos fuente, Stallman se sintió frustrado en sus esfuerzos por corregir y mejorar estos códigos, por lo que decidió que el software propietario debe ser objeto de oposición pública. En 1984 renunció al MIT para fundar laProyecto GNU , con el objetivo de desarrollar un sistema operativo similar a UNIX completamente libre. (GNU es un acrónimo recursivo de “GNU’s not UNIX”.) En 1985, entregó el “Manifiesto GNU” que describe su programa de desarrollo de software libre, formó laFree Software Foundation (FSF), y lanzó lo que llamó elmovimiento de software libre.

Stallman pudo haber sido el primero en proponer una etiqueta para lo que muchos programadores de computadoras habían estado haciendo todo el tiempo, pero el término software libre nunca fue universalmente aceptado entre los programadores. Antes de que Stallman publicara el “Manifiesto GNU”, pocos programadores tenían la sensación de ser miembros de un movimiento social y, una vez que se desarrolló esa sensación, la etiqueta de Stallman tenía demasiada carga ideológica para muchos de ellos.

En la búsqueda de sus fines, Stallman escribió elLicencia pública general (GPL), un documento adjunto al código de computadora que legalmente requeriría que cualquier persona que distribuya ese código ponga a disposición cualquiera de sus modificaciones y trabajos distribuidos (una propiedad que Stallman llamó “copyleft ”). En efecto, buscó codificar el espíritu hacker . A finales de siglo, la GPL era la licencia elegida para aproximadamente la mitad de todos los proyectos de código abierto. La otra mitad se dividió entre licencias sin copyleft, en particular la licencia MIT, y varias licencias basadas en elBerkeley Software Distribution (BSD), desarrollado en la década de 1970 en la Universidad de California en Berkeley.

Después de 1987, la disponibilidad del microprocesador 386 de 32 bits de Intel Corporation significó que las computadoras personales (PC) económicas tenían suficiente potencia para ejecutar UNIX; de hecho, elSCO Group lanzó la primera versión de UNIX para ejecutarse en el 386 ese año. Algunos programadores que habían sido actores clave en el desarrollo de la variante BSD de UNIX fundaron un proyecto llamado 386BSD para trasladar esa variante a las PC. La Fundación del Software LibreEl proyecto del sistema operativo HURD también se reenfocó en la PC basada en 386 . Pero ambos proyectos se retrasaron en un momento crítico, 386BSD debido a una demanda y HURD debido a objetivos de diseño poco realistas.

Linux

Para 1991, el acceso a Internet se había vuelto lo suficientemente común como para que el correo electrónico pudiera unir a una gran comunidad mundial de desarrolladores voluntarios y funcionar como un medio efectivo de distribución de software. La FSF y el proyecto 386BSD tardaron en captar estas posibilidades.Linus Torvalds , un estudiante de la Universidad de Helsinki en Finlandia, salió al paso. Usando la GPL y las herramientas de programación del Proyecto GNU, en 1991 anunció un esfuerzo centrado en Internet para desarrollar una PC UNIX propia: Linux.

Linux fue el primer gran proyecto de código abierto centrado en Internet. Torvalds alentó las contribuciones de todos y emitió versiones actualizadas del kernel (el sistema operativo similar a UNIX en el núcleo de Linux) a un ritmo sin precedentes : semanalmente, a veces incluso diariamente. La comunidad de desarrolladores alrededor de Linux creció a una velocidad asombrosa, absorbiendo refugiados del estancamiento del proyecto HURD y las incertidumbres legales que rodean a BSD. Para 1995, lo que más tarde se llamaría la comunidad de código abierto se había vuelto consciente de sí misma como una comunidad, y cada vez más adoptaba Linux como una plataforma común.

“La Catedral y el Bazar”

En 1997 programador informáticoEric Raymond (autor de este artículo) propuso una nueva teoría del código abierto en su artículo “La catedral y el bazar”. Raymond comparó la centralización, el secreto, el ritmo de lanzamiento lento y la gestión vertical del desarrollo de software tradicional con una catedral con su estructura jerárquica de arriba hacia abajo; comparó la descentralización, la transparencia, la apertura y las redes de pares de la comunidad Linux con un bazar con sus negociaciones de toma y daca. El documento avanzó las razones de que se podría esperar que el enfoque distribuido similar al bazar para el desarrollo de software produzca software de mayor calidad.

Donde Stallman había enmarcado su argumento principalmente en términos morales (“la información debe ser libre”), Raymond habló en términos de ingeniería, elección racional y economía de mercado. Resumió su argumento con esta máxima: “Dada una cantidad suficientemente grande de globos oculares, todos los errores [de la computadora] son ​​superficiales”. A principios de 1998, Raymond propuso el término fuente abierta como una descripción de las mismas prácticas comunitarias que Stallman había promovido previamente bajo la frase software libre . Con la propuesta de Raymond, y el reemplazo de la etiqueta gratis , llegó un nuevo programa de alcance a las corporaciones y los medios.

Bajo el estandarte del código abierto, el movimiento hizo grandes avances durante el “boom de las puntocom” de 1998–2000, y mantuvo esas ganancias en la caída del mercado de valores que siguió. En 2003, las dudas iniciales sobre si el código abierto podría ser la base de un modelo comercial viable se habían resuelto en gran medida. Los socios comerciales de la comunidad de código abierto incluían empresas medianas con raíces comunitarias (como Red Hat Software, Inc.) y grandes corporaciones (como IBM y Hewlett-Packard Company ) con la intención de capturar las eficiencias y la atracción de marketing del código abierto.

En el nuevo clima, los gobiernos de los Estados Unidos y de todo el mundo comenzaron a cuestionar la sensatez de confiar en el código propietario, que no podían examinar ni modificar. Los defensores del código abierto argumentaron, con cierto éxito, que la dependencia del software propietario podría dejar a los gobiernos expuestos a peligrosas infracciones de seguridad que los proveedores de software podrían tardar en solucionar. Por el contrario, argumentaron que el escrutinio independiente de los programas de código abierto ofrecía la auditoría más eficaz posible. Se desarrolló más presión política cuando los gobiernos fuera de los Estados Unidos comenzaron a preguntarse por qué estaban pagando grandes tarifas de licencia a corporaciones extranjeras, especialmente cuando el código abierto haría posible localizar software para comunidades lingüísticas.demasiado pequeño para que esas corporaciones extranjeras inviertan en servir.

En opinión de Raymond, el cambio al código abierto está siendo forzado por el fracaso de otros métodos de verificación de software para escalar a medida que el software se vuelve más complejo, una visión que ha pasado de la mera especulación a la sabiduría casi convencional dentro de la comunidad de código abierto. Sin embargo, persiste cierta tensión política en la comunidad entre los puristas del software libre y los pragmáticos, y los primeros a veces insisten en una identidad separada del resto del movimiento de código abierto. Esta fisura es más o menos paralela a la división entre GPL y licencias sin copyleft como BSD y MIT.

Técnicamente, la comunidad de código abierto permanece cerca de sus raíces UNIX. La facción más grande e importante sigue siendo la red de desarrollo en torno al sistema operativo Linux, que está eclipsando rápidamente a las variantes UNIX más antiguas. Otros proyectos prestigiosos y significativos de código abierto incluyen el El servidor Apache World Wide Web , el navegador web Firefox , los lenguajes informáticos Perl y Python, y el editor Emacs de Stallman.

Si bien Stallman, Torvalds y Raymond se han mostrado relativamente reacios a discutir la aplicación de los principios de código abierto fuera del software, otros se han inspirado en ellos.Wikipedia , una enciclopedia en línea gratuita y editada por el usuario, se fundó en una imitación explícita del movimiento de programación de código abierto, al igual que el movimiento de publicaciones abiertas en las ciencias ( ver Internet: publicación electrónica ) y el movimiento de genómica abierta en bioinformática. La influencia de la filosofía de programación de código abierto (y el código que ha construido) es omnipresenteen sitios web de redes sociales como eBay, Amazon, LiveJournal y MySpace, donde los comentarios y reseñas de productos son una característica esencial de su éxito comercial y popularidad. Quizás lo más importante para el desarrollo económico futuro en todo el mundo es que los visionarios están buscando formas de aprovechar el “efecto de muchos ojos” con organizaciones en red que emulan la estructura observada de los equipos de desarrollo de software de código abierto.

Relacionados

Deja un comentario