El código abierto y sus límites  

IMAGE: Nick Youngson (CC BY-SA) - Pix4free

Sin duda, el código abierto es la forma más ventajosa de crear software: cuando un proyecto de software toma la forma de código abierto y logra congregar a una comunidad de desarrolladores trabajando activamente en él, documentándolo y mejorándolo constantemente, se obtiene un círculo claramente virtuoso en el que, entre otras cosas, se cumple la conocida Ley de Linus: “dado un número suficientemente elevado de ojos, todos los errores se vuelven obvios”. 

Cuando un cierto número de personas, diversas y no pertenecientes a una única organización, se coordinan para desarrollar un proyecto de software, los resultados suelen ser buenos. Buena parte del software que utilizamos habitualmente tiene su base en proyectos de código abierto, simplemente porque es la manera más adecuada de desarrollar software. Simplemente el hecho de querer que un software esté disponible en forma de código abierto obliga a sus creadores, como mínimo, a revisarlo profundamente y a documentarlo de forma adecuada, algo que a pocos desarrolladores les gusta hacer, pero que resulta fundamental si quieres que pueda ser inspeccionado, entendido y mejorado por otros. La idea, además, de crear un software para que cualquiera pueda beneficiarse de su uso tiene un componente altruista que resulta sumamente interesante de cara a lo que deberían ser nuestras sociedades.

Sin embargo, un estudio reciente que tomó como base más de 1.2 millones de proyectos de software de código abierto se encontró con una conclusión preocupante: tan solo alrededor del 11% de estos proyectos reciben un mantenimiento mínimamente activo. La preocupación emerge, lógicamente, de lo que suele ocurrir cuando el software, que es cualquier cosa menos algo aislado, estable y monolítico, no es sometido a ese mantenimiento: los proyectos de software, por lo general, tienen múltiples dependencias que pueden cambiar a medida que lo hacen las versiones de los componentes en los que se apoyan para sus funcionalidades.

Sin el adecuado mantenimiento periódico, en el software suelen aparecer vulnerabilidades, que pueden ser activamente explotadas por actores interesados: se calcula que en torno al 10% de las incidencias de seguridad se deben a vulnerabilidades surgidas en software de código abierto. 

El resultado de este estudio, en cualquier caso, no debería desilusionar a nadie: los “grandes” proyectos de código abierto mantienen una salud excelente y tienden cada vez más a convertirse en estándares, en cimientos sólidos para otros proyectos, en grandes generadores de valor. Sin embargo, entre los proyectos de código abierto hay muchísima diversidad: hay muchos pequeños proyectos, a veces unipersonales o que no logran alcanzar la escala de comunidad, que sin embargo, son capaces en muchas ocasiones de tener una gran importancia. 

A veces, de hecho, nos encontramos con la paradoja de que esas piezas creadas por auténticos devotos que durante un tiempo encontraron su motivación en su creación son utilizadas como componentes en muchos otros proyectos, lo que tiende a generar enormes estructuras que, en último término, se apoyan sobre un eslabón débil, sobre algo a lo que su creador, a menudo ya en otra fase de su vida y con otros intereses, ya no le da mantenimiento. En muchos casos, ese software simplemente no logró interesar a suficientes desarrolladores como para que, además de utilizarlo en sus proyectos, colaborasen en su mejora o mantenimiento. Puede ser que el autor original no lograse darle suficiente difusión, posiblemente no estaba cortado para liderar una comunidad, o simplemente lo hizo tan bien que no parecía que precisase nada más. Hay un montón de posibilidades de muchos tipos que pueden hacer que un proyecto de código abierto no se convierta en comunidad, incluso aunque obtenga popularidad. Utilizar algo no requiere el mismo nivel de compromiso que colaborar en su desarrollo. Muchos, simplemente, ni se lo plantean.

La cuestión resulta sumamente interesante: el software permite que cualquiera con las ideas adecuadas pueda añadir valor, pero ese valor no siempre se expresa de formas convencionales. A menudo, un desarrollador que crea proyectos interesantes se ve remunerado con mejores trabajos o con más prestigio, pero no necesariamente de manera directa. A partir de ahí, con el software que creó puede ocurrir cualquier cosa: puede simplemente caer en la obsolescencia, pero también puede, si es bueno, convertirse en algo en lo que otros desarrolladores pasan a apoyarse de forma habitual para sus proyectos. 

Cada vez más, es habitual encontrarse con problemas de este tipo: pequeños componentes de código no mantenidos por su creador o creadores durante años, que terminan generando problemas. Si incorporamos la inteligencia artificial a la ecuación, podemos encontrarnos con asistentes que toman porciones de código de repositorios en función de una necesidad determinada, pero que ni siquiera dejan clara su trazabilidad, su tipo de licencia, de dónde proceden o sus condiciones en términos de mantenimiento. El uso de componentes de software creados mediante inteligencia artificial y machine learning en entornos corporativos creció el pasado año un 135%. 

Si ya en muchos casos, el retorno a la comunidad de los proyectos que utilizan componentes software de código abierto es escaso o nulo —poco menos que las gracias, si acaso— cuando quien decide qué código se utiliza es un algoritmo, ese retorno suele volverse inexistente. Si muchos desarrolladores, como hemos visto, ni se plantean colaborar con la mejora o mantenimiento de una pieza de software de código abierto que utilizan, ¿qué esperamos de un simple algoritmo carente de tales razonamientos? ¿Va el algoritmo a decir «hmmm, a lo mejor sería interesante ayudar aquí y mejorar esto»? No, simplemente va a tomar lo que necesite, e irse sin ni siquiera decir eso de… hasta luego, y gracias por todo el pescado!

¿Cómo manejarnos en un entorno cada vez más complejo y variado, con cada vez más piezas creadas mediante procesos en muchos casos voluntaristas, y que son gestionadas cada vez más de manera arbitraria y sin demasiada visibilidad? ¿Cómo dotar a los repositorios de software de la inteligencia adecuada como para entender cuándo es recomendable o no reutilizar un componente? O mejor, ¿cómo crear incentivos para que una tarea como el mantenimiento, mucho menos motivadora que el desarrollo como tal, reciba la atención adecuada y se reconozca su valor?


This article is also available in English on my Medium page, «Open source is a wonderful thing, but AI is exposing its weaknesses»

29 comentarios

  • #001
    Xaquín - 16 octubre 2023 - 12:17

    No me gusta ser contundente, pues como bien explicas en la entrada «nada hay tan contundente que el tiempo no debilite», pero estás hablando de la esencia de eso que llamamos trabajo de la naturaleza, aunque no sepamos muy bien lo que «ella» puede ser.

    Esa naturaleza se diferencia de sus criaturas llamadas seres humanos, en que no deja de actualizar cualquier cosa que ella «produce». Y por eso está tan cabreada, porque no consigue encontrar la forma de actualizar una «maquinaria», que se le ha desviado en mucho de la trayectoria prefijada. Y eso que no hay trayectoria natural, que no pueda evolucionar positivamente hacia nadie sabe donde.
    Pero seguro que empieza a «pensar», que nuestro software está anquilosado ya peligrosamente.

    Pero el trabajo de selección natural, tan despreciado por la mayoría de humanos, resulta de una complejidad y cansancio, dignos de mejor atención por parte de esta mediocre versión que somos.

    Y en ese sentido, sí que puede estar agradecida eso que llamamos naturaleza, de haber generado una IA… puede que con ella sea más fácil atender a un buen mantenimiento evolutivo del planeta.

    No me extrañaría que andemos cerca de convertirnos en material de deshecho, por ser tan poco operativos. Una especie de MS-DOS en el alba de los tiempos.

  • #002
    Rodrigo - 16 octubre 2023 - 12:38

    No puedo estar totalmente de acuerdo contigo. Por una parte es claro que hay código abierto de muy buena calidad, desarrollado por gente muy valiosa y revisado antes de su puesta en producción pero como bien dices en tu tercer párrafo casi el 90% de ese código abierto no está actualizado ni mantenido y eso es una auténtica basura.

    Por otra parte, yo he visto mucho código cerrado de muy buena calidad porque los desarrolladores trabajan en equipo utilizando las mejores prácticas de desarrollo software.

    Quiero decir con esto que no todo es tan blanco ni tan negro.

  • #003
    Carlos Quintero - 16 octubre 2023 - 12:46

    GitHub tiene esto:

    GitHub Sponsors

    Para desarrolladores individuales es extremadamente complicado, porque o se acaban cansando de dedicar tiempo al mantenimiento o es inevitable que quieran monetizar su tiempo y poder dedicarse full-time a lo que les apasiona:

    El caso de dos leyendas del mundo Microsoft/.NET:

    SQLitePCLRaw and open source sustainability

    SponsorLink: trying something new-ish for OSS sustainability

    SponsorLink: feedback and moving forward

    • Chipiron - 17 octubre 2023 - 09:28

      Hablando de Github, si no entiendo mal, fue comprado por Microsoft.

      Pregunta para los que lo usan: Que ha cambiado en su modo de operar o filosofia?

      • Carlos Quintero - 17 octubre 2023 - 09:44

        Hasta donde yo sé, no ha cambiado nada a peor. De hecho, Microsoft lo está potenciando mucho con nuevas funcionalidades.

  • #006
    menestro - 16 octubre 2023 - 13:16

    Maravillosa la metáfora de reutilizar el talento de otros.

    Pero es que en software libre, y en general, se estila más la producción original.

    Por qué resignarse a una imitación, si quieres el producto genuino.



    «See the world in green and blue»

  • #007
    Javier - 16 octubre 2023 - 13:52

    Tal vez diga una burrada (y me disculpo de antemano por ello) pero así como tenemos unas OMS, OMC, UNICEF, FAO, OIT, ONU, etc…a nivel global deberíamos tener organismos (con fondos asignados, políticamente autónomas, etc) que velaran por este tipo de iniciativas.

    Así como creamos una sociedad (y una cultura) que dependen en gran medida del software (y en no poca, del software libre) no se entiende que dejemos librado a la suerte de actores individuales, o privados, y de su motivación (o falta de ella), algo tan delicado.

    No abogo por ningún tipo de intervencionismo supra/para estatal. La iniciativa privada es clave para el avance de las sociedades, pero a cierto nivel de crecimiento y complejidad, se hace necesaria algún tipo de organización que, valga la redundancia, organice lo que fue creciendo de forma «ordenadamente desordenada».

    Lo sé, también se corre el riesgo de que (como la ONU) se politice y polarice tanto sobe un tema que se vuelva un completo desastre…

  • #008
    Antonio Gregorio Montes - 16 octubre 2023 - 14:11

    Compartiendo la preocupación principal del artículo, creo que debo exponer la principal fuente de discordancia, a mi entender el uso de open software como englobante también del free software sin hacer diferencia entre ambos. A partir de ahí, podríamos discutir algún planteamiento.

    • Chema - 16 octubre 2023 - 18:08

      Si es código abierto y software libre. Eres libre de arreglar cualquier posible problema o de mejorarlo. Si es abierto pero no es libre. Segun la licencia posible que no puedashacer nada. Solo revisar el código pero no cambiarlo.

      Si lo de que hablamos es que un voluntario arregle algo gratis…. A veces lo encuentras y a veces no.

      Tampoco es muy habitual que alguien ponga dinero para que se arregle algo que se convertirá en gratis. Aunque salga más barato que no arreglarlo, hay una tendencia a no querer soltar la pasta.

      Si tienes un proyecto muy chulo que se basa en otros proyectos, deberas asumir las consecuencias del comportamiento de esos otros proyectos. Tanto si es software libre o una empresa especializada en crear clientes cautivos. Un proyecto que lleva una sola persona es muy raro que perdure en el tiempo, pero si es software libre tienes la opción de heredarlo tu.

      Muy interesante el artículo pone el dedo en la llaga con un problema de los proyectos de software ,pero después de leer muchos artículos de Enrique, sospecho o que no he entendido algo o que esta vez se le ha pasado la diferencia entre software libre y código abierto.

  • #011
    JuanP - 16 octubre 2023 - 15:39

    Hace relativamente poco tiempo comenté en Linkedin que el gran problema de LLM es cuando no se pueda monetizar tu trabajo, publicaciones etc porque no ponen referencias. Eso hará que deje de existir poco a poco la creación de contenido no ia. Los creadores sea de código o de catedrales somos algo narcisistas y si no se alimenta ni los cluxk ni el ego, igual dejamos de participar en las comunidades, volviendo a la Edad Media de antes de internet, donde cada uno tenia sus libros y códigos en su caja fuerte.

  • #012
    Benji - 16 octubre 2023 - 16:34

    Esto sucedió con el cambio de PHP7 a PHP8, la versión 8 no es tan permisiva con las llamadas a funciones con variables nulas, o llamadas a métodos que no están correctamente instanciados.

    Proyectos que no se tocaban desde 2008 comenzaron a dar errores por primera vez. Me acuerdo de abrir phpmyadmin (que tiene unas 25 dependencias) y en dos de ellas solo salían errores. La pantalla era un galimatías que no había por donde cogerlo.

    Vamos, tuve que volver a la v7 porque no me apetecía estar debugando todo aquello y corrigiendo. Pensé «que phpMyadmin, que tienen dinero, lo corrijan». Y así fue… unos meses después.

    Yo creo que la cosa ha mejorado mucho. El reproductor «media player classic» fue descontinuado, pero un desarrollador hizo un fork y se llevó la comunidad a «mpc x64», y cuando ese se cansó vino otro fork llamado «mpc-hc», que es el que uso actualmente. Una maravilla. «yt-dlp» es otro ejemplo de proyecto que se ha mantenido gracias a los forks.

    PD: Un «fork» es la acción de copiar todo el código fuente de un repositorio central a uno tuyo. En el tuyo puedes editar, cambiar, modificar lo que quieras sin cortapisas. Cuando has hecho el cambio que querías, incluso puedes hacer un «pull request», que es solicitar al repositorio central a que incorpore tus cambios al código original. Si lo aceptan, todo ese código nuevo puede replicarse al resto de «forks».

    Los mejores proyectos son los que tienen muchos «forks»

    • JuanP - 16 octubre 2023 - 16:51

      Y donaste algo a la comunidad. Arreglaste algún error. Diste de alta algún ticket. En OpenSource la mayoría somos vampiros que solo chupamos y no aportamos valor.

    • Chipiron - 17 octubre 2023 - 09:26

      Entiendo poco de desarrollo actual de software, pero conozco los conceptos básicos de git y se lo que es un fork.

      Tus palabras parecen de mucho sentido común. Como dice Enrique, si hay muchos forks es que el código ha pasado por muchos ojos y eso ayuda a limar errores y agujeros de seguridad.

  • #016
    Javier Lux - 16 octubre 2023 - 18:51

    Lo que describes ya ocurrió con el OpenSSL bug de Heatbleed: https://en.wikipedia.org/wiki/Heartbleed

    Al final todo el mundo se dio cuenta que un software crítico, OpenSSL, no recibía la atención suficiente. Un par de programadores mantenían 90.000 líneas de código de una fundación financiada con 2000 USD anuales…. en fin un desastre. Menos mal que google puso un par de ingenieros que hicieron un parche que solucionaba el problema. La solución a largo plazo fue la creación de Core Infrastructure Initiative bajo el paraguas de la Linux Software Foundation que iba a mantener software crítico no lo suficientemente financiado. Al final todo el mundo pensó que lo raro es que el bug no hubiese ocurrido antes.

    Que software muerto como OpenOffice no reciba financiación ni mantenimiento es bueno. El 90% de ese software debe morir. En cambio el softare que usamos debe de ser mantenido por fundaciones, y ser sobretodo las grandes corporaciones las que lo financian.

    Linux ha estado financiado por Intel principalmente. Ahora son Google o Amazon los que debería de ser los máximos financiadores de Linux, además de grandes consumidores, como JPMorgan, Boeing o Airbus, o Telefónica, France Telecom…etc

    • Chipiron - 17 octubre 2023 - 09:24

      Sin ser, para nada, un experto (de hecho no lo uso habitualmente), diría que Linux es la culminación del proyecto Open Source más importante jamás creado, no creeis?

      Al menos los que trabajais con él habláis maravillas y lo situais por encima de SO privados como Windows o MacOS, con millones de dolares invertidos en su desarrollo…

      • Carlos Quintero - 17 octubre 2023 - 09:50

        Lo que ha hecho y está haciendo Linux en la parte servidor no tiene parangón. Y lo que ha hecho Windows en la parte cliente desde los 90 tampoco. Y la elegancia y belleza de un macOS tampoco :-)

        PD: no quiero guerras religiosas.

        • Chipiron - 17 octubre 2023 - 12:04

          Acertado comentario!

      • F3r - 17 octubre 2023 - 21:57

        Sin duda, el caso linux es para flipar. No hay ningún proyecto tocho y serio en el mundo que use otro SO (el cern, toda la supercomputación, todos los renderizados de las pelis, todas las bolsas[*]…), y empezó como un proyecto de UN SOLO friki.

        [*] fue gracioso hace una década cuando la bolsa de Londres era de las pocas que quedaban usando windows, y estaba siendo devorada en high frequency trading por temas de latencia, si no recuerdo mal

  • #021
    Roberto - 16 octubre 2023 - 22:47

    Y ni una sola vez aparece la palabra «ciberseguridad»en el articulo .No puede no estar hecho adrede.

  • #022
    Chipiron - 17 octubre 2023 - 09:32

    Sin ser, para nada, un desarrollador de software experto, diría que el codigo abierto hace sus contribuciones, pero en general a modo de pequeños «pedazos» o «bloques» luego usados impunemente por sistemas de pago.

    El único gran éxito (que yo conozco) de un sistema de codigo abierto que yo conozco es Linux (en sus diversas versiones), como producto hecho, de pies a cabeza, por una comunidad libre de desarrolladores.

    Me equivoco? Existen otros proyectos de gran envergadura y de éxito que se mantengan en el tiempo?

    Porque el otro que me viene a la cabeza es OpenOffice, pero me da la immpresión de que se está apagando.

    Alguna aclaración de alguien más entendido que yo (que seguro que hay) sobre este tema?

  • #023
    Lua - 17 octubre 2023 - 15:43

    Como si no hubiera bastante Open Source… Chatgpt os responde:

    Claro, hay muchos proyectos de código abierto de gran envergadura en diversas áreas. Algunos de los más destacados incluyen:

    1. **Linux Kernel:** El núcleo del sistema operativo Linux es un proyecto de código abierto masivo con contribuciones de miles de desarrolladores de todo el mundo.

    2. **GNU Compiler Collection (GCC):** GCC es un conjunto de compiladores de código abierto que se utiliza para compilar varios lenguajes de programación, incluyendo C, C++, Objective-C, y otros.

    3. **Apache HTTP Server:** Apache es uno de los servidores web más populares y es ampliamente utilizado en la web para servir sitios web.

    4. **Mozilla Firefox:** Firefox es un popular navegador web de código abierto desarrollado por Mozilla Foundation.

    5. **Apache Hadoop:** Es un framework de software de código abierto para el almacenamiento y procesamiento distribuido de conjuntos de datos grandes utilizando un grupo de computadoras.

    6. **WordPress:** WordPress es una plataforma de gestión de contenido (CMS) de código abierto que impulsa una gran parte de los sitios web en Internet.

    7. **Django:** Django es un marco de desarrollo web de alto nivel y de código abierto en Python que fomenta el desarrollo rápido y el diseño limpio y pragmático.

    8. **Kubernetes:** Kubernetes es un sistema de orquestación de contenedores de código abierto que automatiza la implementación, el escalado y la gestión de aplicaciones en contenedores.

    9. **TensorFlow:** TensorFlow es una biblioteca de código abierto para aprendizaje automático y desarrollo de modelos de inteligencia artificial desarrollada por Google.

    10. **OpenStack:** OpenStack es una plataforma de computación en la nube de código abierto utilizada para construir y gestionar servicios de nube pública y privada.

    11. **Eclipse IDE:** Eclipse es un entorno de desarrollo integrado (IDE) utilizado para el desarrollo de software en varios lenguajes de programación, incluyendo Java y C++.

    12. **GIMP:** GIMP (GNU Image Manipulation Program) es un poderoso programa de edición de imágenes de código abierto que se utiliza para tareas como retoque fotográfico, composición de imágenes y creación de ilustraciones.

    13. **Blender:** Blender es un software de creación de gráficos en 3D de código abierto utilizado para crear animaciones, efectos visuales, juegos y modelos 3D.

    14. **LibreOffice:** LibreOffice es una suite de oficina de código abierto que incluye aplicaciones como un procesador de texto, una hoja de cálculo, un programa de presentación y más.

    15. **Jenkins:** Jenkins es una herramienta de automatización de código abierto utilizada para la integración continua y la entrega continua (CI/CD) en el desarrollo de software.

    16. **Ruby on Rails:** Ruby on Rails, también conocido como Rails, es un marco de desarrollo web de código abierto basado en el lenguaje de programación Ruby.

    17. **Symfony:** Symfony es un marco de desarrollo de aplicaciones web de código abierto y PHP. Se utiliza para desarrollar aplicaciones web robustas y escalables.

    18. **Drupal:** Drupal es un sistema de gestión de contenido (CMS) de código abierto que se utiliza para crear una variedad de sitios web y aplicaciones web.

    19. **Qt:** Qt es un marco de desarrollo de aplicaciones de código abierto que se utiliza para crear aplicaciones con interfaces gráficas de usuario (GUI) en múltiples plataformas.

    20. **Rust:** Rust es un lenguaje de programación de sistemas de código abierto que se centra en la seguridad, el rendimiento y la concurrencia.

    21. **AngularJS / Angular:** Angular es un marco de desarrollo web de código abierto mantenido por Google. Se utiliza para crear aplicaciones web de una sola página (SPA) y aplicaciones web dinámicas.

    22. **React:** React es una biblioteca de JavaScript de código abierto para construir interfaces de usuario. Es mantenida por Facebook y es ampliamente utilizada en el desarrollo web moderno.

    23. **Docker:** Docker es una plataforma de contenedores de código abierto que permite a los desarrolladores empaquetar, distribuir y ejecutar aplicaciones como contenedores.

    24. **Kotlin:** Kotlin es un lenguaje de programación de código abierto desarrollado por JetBrains. Es compatible con Java y se utiliza para el desarrollo de aplicaciones Android, así como para aplicaciones de servidor y web.

    25. **Nextcloud:** Nextcloud es una plataforma de nube privada de código abierto que ofrece almacenamiento en la nube, colaboración en línea y servicios de productividad, similar a servicios como Google Drive y Dropbox.

    26. **Pi-hole:** Pi-hole es un servidor de red de código abierto que actúa como un sistema de bloqueo de anuncios y rastreadores en toda la red, protegiendo los dispositivos de los usuarios contra anuncios no deseados.

    27. **Home Assistant:** Home Assistant es una plataforma de automatización del hogar de código abierto que permite a los usuarios controlar dispositivos inteligentes y automatizar tareas en el hogar.

    28. **TensorFlow Lite:** TensorFlow Lite es una versión ligera de TensorFlow diseñada para dispositivos móviles y sistemas integrados, permitiendo inferencias de aprendizaje profundo en dispositivos con recursos limitados.

    29. **FreeBSD:** FreeBSD es un sistema operativo de código abierto basado en Unix que se utiliza para una variedad de aplicaciones, incluyendo servidores y estaciones de trabajo.

    30. **QGIS:** QGIS es un sistema de información geográfica de código abierto que permite a los usuarios crear, editar, visualizar, analizar y publicar datos geoespaciales en diversos formatos.

    31. **Node.js:** Node.js es un entorno de ejecución de JavaScript del lado del servidor de código abierto que se utiliza para construir aplicaciones de red escalables y de alta velocidad.

    32. **Swift:** Swift es un lenguaje de programación de código abierto desarrollado por Apple. Se utiliza para el desarrollo de aplicaciones iOS, macOS, watchOS y tvOS.

    33. **Raspberry Pi OS:** Es el sistema operativo oficial para la Raspberry Pi, una computadora de placa única (SBC) de bajo costo. Está basado en Debian y es utilizado para una variedad de proyectos y aplicaciones educativas.

    34. **PostgreSQL:** PostgreSQL es un sistema de gestión de bases de datos relacional de código abierto. Es conocido por su robustez y capacidad para manejar grandes volúmenes de datos.

    35. **OpenCV:** OpenCV (Open Source Computer Vision Library) es una biblioteca de visión por computadora y aprendizaje automático de código abierto. Se utiliza para desarrollar aplicaciones de visión por computadora.

    36. **Redis:** Redis es una base de datos en memoria de código abierto que se utiliza como almacén de datos, caché y servidor de mensajes.

    37. **Pandas:** Pandas es una biblioteca de código abierto para Python que proporciona estructuras de datos y herramientas de análisis de datos fáciles de usar y eficientes.

    38. **Apache Cassandra:** Apache Cassandra es una base de datos distribuida de código abierto altamente escalable y de alto rendimiento, adecuada para gestionar grandes volúmenes de datos en múltiples servidores.

    39. **Jupyter:** Jupyter es una aplicación web de código abierto que permite crear y compartir documentos que contienen código en vivo, ecuaciones, visualizaciones y texto narrativo.

    40. **Apache Spark:** Apache Spark es un motor de análisis de datos de código abierto que se utiliza para el procesamiento de datos en tiempo real, el aprendizaje automático y la analítica de datos a gran escala.

    En fin… sera eso… que el OpenSource es cosa de 4 frikis… XDDD

    • C3PO - 17 octubre 2023 - 20:16

      dpkg -l | wc -l

      ahora mismo da 1141

      • c3po - 17 octubre 2023 - 20:22

        y en su página dicen que tienen 70312 para amd64.

        (los 1141 son casi el sistema básico de terminal de WSL2 y lo poquito que uso ese sistema, y hay está incluido el core de Linux, en grandes números hay 69K paquetes de otras cosas … gratis y libres)

    • Chipiron - 18 octubre 2023 - 13:32

      Ves, aquí reconozco tranquilamente mi ignorancia y agradezco tu contribución.

      De todas maneras entiendo que muchos de los proyectos de Open Source que has puesto están soportados por compañias privadas como Apple, Google, etc.

      Pero es cierto que no dejan de ser proyectos OpenSource, entiendo.

      De todas formas yo me referia más a proyectos NO financiados por grandes corporaciones como Microsoft, Apple o Google.

      De las que comentas, quizás las que más había obviado son las relacionadas con el desarrollo o navegación web: Mozilla, Apache, etc.

      Pero, en cualquier caso, mil gracias por la aportación.

  • #027
    F3r - 17 octubre 2023 - 22:20

    OpenSSL, como bien explican aquí.
    https://www.zdnet.com/article/the-linux-foundation-identifies-the-most-important-open-source-software-components-and-their-problems/
    La madre del cordero…Por lo demás, dice lo mismo que Enrique.

    • F3r - 17 octubre 2023 - 22:24

      Openssl(wikipedia): It is widely used by Internet servers, including the majority of HTTPS websites.

      The project has a budget of less than $1 million USD per year and relies primarily on donations.

      Qué gran sistema económico el nuestro…

  • #029
    Leonardo - 20 octubre 2023 - 03:22

    El código abierto es un comienzo.
    Lo importante es el software libre.
    La diferencia es abismal. Tanto que no tiene siquiera sentido hablar del código bierto.

Dejar un Comentario

Los comentarios están cerrados