Los que olvidan la historia a menudo la repiten sin querer. Algunos recordamos que hace veintiún años, el sitio de alojamiento de código más popular, un sitio totalmente libre y de código abierto (FOSS) llamado SourceForge, privatizó todo su código, para no volver a hacerlo FOSS. Los principales proyectos de software libre abandonaron poco a poco SourceForge, ya que ahora era, en sí mismo, un sistema privativo, y antitético al software libre. Las comunidades de software libre aprendieron que era un error permitir que una empresa (...)
|
etiquetas: github , software freedom conservancy
Los que olvidan la historia a menudo la repiten sin querer. Algunos recuerdan que hace veintiún años, el sitio de alojamiento de código más popular, un sitio totalmente libre y de código abierto (FOSS) llamado SourceForge, privatizó todo su código, para no volver a hacerlo FOSS. Los principales proyectos de software libre abandonaron poco a poco SourceForge, ya que ahora era, en sí mismo, un sistema propietario, y antitético al software libre. Las comunidades de software libre aprendieron que era un error permitir que una empresa de software privativo con fines de lucro se convirtiera en el sitio de desarrollo colaborativo de software libre dominante. SourceForge se derrumbó lentamente después de la caída del DotCom, y hoy en día, SourceForge es más un señuelo publicitario que un alojamiento de código. Aprendimos una valiosa lección que fue demasiado fácil de olvidar, especialmente cuando la participación de las empresas manipula las comunidades de software libre para sus propios fines. Ahora debemos aprender de nuevo la lección de SourceForge con GitHub de Microsoft.
Una parodia del logo de GitHub, tapiando los derechos de los usuarios y exigiendo un pago
En los últimos diez años, GitHub ha llegado a dominar el desarrollo del software libre. Lo hicieron construyendo una interfaz de usuario y añadiendo características de interacción social a la tecnología Git existente. (Por su parte, Git se diseñó específicamente para que el desarrollo de software se distribuyera sin un sitio centralizado). En la ironía central, GitHub tuvo éxito donde SourceForge fracasó: nos han convencido de promover e incluso ayudar a la creación de un sistema propietario que explota el FOSS. GitHub se beneficia de esos productos propietarios (a veces de los clientes que lo utilizan para actividades problemáticas). En concreto, GitHub se beneficia principalmente de aquellos que desean utilizar las herramientas de GitHub para el desarrollo de software propietario interno. Sin embargo, GitHub aparece una y otra vez como un buen actor - porque señalan su generosidad en la prestación de servicios a tantos esfuerzos de FOSS. Pero hemos aprendido de las muchas ofertas gratuitas en la Gran Tecnología: si no eres el cliente, eres el producto. La metodología de desarrollo del software libre es el producto de GitHub, que han patentado y reempaquetado con nuestra ayuda activa (aunque a menudo involuntaria).
Los desarrolladores de software libre han sido durante demasiado tiempo la… » ver todo el comentario
Y lo que es más importante, nos comprometemos a ofrecer alternativas a los proyectos que aún no tienen otro lugar al que acudir. En las próximas semanas anunciaremos más opciones de instancias de alojamiento y una guía para sustituir los servicios de GitHub. Si estás dispuesto a asumir el reto ahora y abandonar GitHub hoy mismo, tenemos en cuenta que CodeBerg, que se basa en Gitea, implementa muchas (aunque no todas) de las características de GitHub. Por lo tanto, también vamos a trabajar en más soluciones, seguir examinando otras opciones de software libre, y publicar y / o curar las guías de (por ejemplo) cómo implementar una instancia de auto-alojamiento de GitLab Community Edition.
Mientras tanto, el trabajo de nuestro comité sigue estudiando detenidamente la cuestión general de las herramientas de desarrollo de software asistidas por IA. Una de las conclusiones preliminares es que las herramientas de desarrollo de software asistidas por IA pueden construirse de forma que respeten por defecto las licencias de software libre. Seguiremos apoyando al comité mientras explora esta idea y, con su ayuda, estamos supervisando activamente esta nueva área de investigación. Aunque GitHub, de Microsoft, fue el primero en actuar en este ámbito, a modo de comparación, los primeros informes sugieren que el nuevo sistema CodeWhisperer de Amazon (lanzado también la semana pasada) trata de proporcionar la atribución adecuada y la información de licencia para las sugerencias de código0.
Esto recuerda a los problemas de larga data con GitHub, y la razón central por la que debemos renunciar juntos a GitHub. Hemos visto con Copilot, con el servicio de alojamiento principal de GitHub, y en casi todas las áreas de esfuerzo, el comportamiento de GitHub es sustancialmente peor que el de sus compañeros. No creemos que Amazon, Atlassian, GitLab o cualquier otro proveedor de alojamiento con fines de lucro sean actores perfectos. Sin embargo, una comparación relativa del comportamiento de GitHub con el de sus pares muestra que el comportamiento de GitHub es mucho peor. GitHub también tiene un historial de ignorar, desestimar y/o menospreciar las quejas de la comunidad en tantos temas, que debemos instar a todos los desarrolladores de FOSS a abandonar GitHub tan pronto como puedan. Por favor, únete a nosotros en nuestros esfuerzos por volver a un mundo en el que el software libre se desarrolle utilizando el software libre.
Esperamos que esta entrada del blog en particular genere mucha discusión. Le invitamos a interactuar con el personal de SFC en nuestra lista de correo pública sobre este esfuerzo.
Firefox Translations (Proyecto Bergamot)
Esperamos que este post en particular genere mucha discusión. Le damos la bienvenida a interactuar con el personal de SFC en nuestra lista de correo público sobre este esfuerzo.
Nota de pie
0 Sin embargo, no hemos analizado CodeWhisperer en profundidad por lo que no podemos decir con seguridad si la implementación de Amazon cumple con las respectivas licencias. Sin embargo, El comportamiento de Amazon aquí muestra un fuerte contraste con GitHub de Microsoft: Amazon reconoce el hecho obvio de que hay obligaciones de licencia que merecen atención y cuidado a la hora de construir soluciones de programación asistidas por IA.
El código abierto (dependiendo de la licencia en la que lo publiques) tiene unas obligaciones que no te puedes saltar, si por ejemplo la publicas bajo la licéncia CC Reconocimiento-NoComercial, nadie que use tu código podra vender el resultado del mismo, entonces la pregunta peliaguda de la noticia (bajo mi punto de vista) viene de ¿qué pasa si han usado mi código para entrenar una IA y crear un producto comercial?
Y todas las preguntas deribadas que puedas hacerte, es más, si vemos todo el artículo se ve como MS no responde a esas preguntas, no se si porque la han cagado o porque no está nada claro....
Interesante debate bajo mi punto de vista y una buena noticia que la comunidad quiera salirse de GitHub.
Buen debate abres
Entiendo que la respuesta sería la misma que para un humano. Todos hemos aprendido mirando código de los demás, viendo cómo se programa, aprendiendo estructuras de datos y organización de código, técnicas, etc. Si una IA hace lo mismo ¿no sería lo mismo?
El problema es que no sé hasta qué punto aprende o simplemente replica. Pero eso también es extensible a los humanos. La mayoría del software que generamos es metódico y repetitivo, la mayoría de programadores simplemente repiten patrones una y otra vez en su día a día.
Aquí el problema viene de que no tenemos una iniciativa seria de IA abierta. Si existiera un Copilot hecho y entrenado por la comunidad, el debate sería otro.
Ayudar a ese ecosistema sólo puede mejorar en beneficio de todos, de la comunidad de software, de los desarrolladores y de las empresas.
Como ejemplo clásico tenemos a Linux, incluso siendo GPL como es, no estaríamos donde estamos hoy sin él y ahí le tienes ( github.com/torvalds/linux ).
A partir de ahí, todas las librerías que se te ocurran y prácticamente todo lo demás. Si yo tuviera que hacer una app/web desde cero sin usar software libre sería impensable a nivel personal y a nivel empresarial el coste sería inmenso.
Dicho ésto, entiendo las reticencias a confiar.
Venga, ¿cuántas veces al día haces copy/paste de stackoverflow?
Copilot te ayuda con algunos fragmentos repetitivos y algunas funciones simples, pero si lo dejas a su bola se le va bastante la olla, no programa por ti.
#9 Pero no es que aprenda para luego aplicarlo en soluciones comerciales, es que aprende para convertirse en sí misma en una solución comercial. Esa IA es un producto en sí mismo, mientras que un programador no es un producto.
#11 Si han utilizado código de proyectos con licencia no comercial, es argumentable que están infringiendo la licencia (están utilizando el código en un producto comercial). Incluso si usan código de licencias comerciales, el hecho de que no indiquen esas licencias y esos proyectos de los que beben es también un infringimiento de licencia.
Por otra parte si tienes acceso a código fuente privativo tienes complicado publicar una herramienta equivalente de código libre sin problemas legales
Me recuerda a los que ponen el copia/pega en Facebook de que no autorizan el uso de sus fotos. Si, tus fotos en Badajoz son un bestseller en la deep web.
Habrá que revisar las licencias para contemplar estos casos, porque con lo que hay no es suficiente. Puedo argumentar a favor de ambos puntos de vista.
¿Te convierte eso en un producto o solución comercial? No. ¿Te están vendiendo a ti o a tu trabajo?
¿Copilot está usando el resultado del trabajo de mi código? No, está usando directamente mi código. ¿Tu jefe está usando el producto de tu trabajo o te está usando a ti directamente?
Tengo en mi proyecto de FOSS una cláusula que dice que cualquiera que use mi código lo documentará en el suyo. Y copilot usa el código, lo integra en su base de conocimiento de una manera que no es la misma que utilizamos los programadores.
¿Hace eso que Copilot esté infringiendo la licencia si lo ha usado y no lo ha documentado? Pues eso parece.
Es complicado, sí. Pero fíjate que otras compañías como Amazon que aprovechan el código de proyectos FOSS para alimentar IAs de asistencia a la programación sí piensan que es un uso de ese código y que merece cuando menos reconocimiento. Solo Microsoft piensa que es mejor sencillamente pasar hasta el culo de los desarrolladores FOSS y de sus rollos legales.
Además, como dice en la segunda pregunta... ¿por qué el código de Microsoft Windows y Microsoft Office no forman parte del corpus de aprendizaje de Copilot?
Esta IA no tiene un diseño de "sala limpia": en.wikipedia.org/wiki/Clean_room_design
Entiendo que los abogados de MS estarán revisando este caso con lupa por lo que pudiera suceder, jajajaja.
En el caso de CoPilot, ya han reconocido que la IA la han entrenado con todo el código disponible en GitHub (y de más sitios), pasándose por el forro las licencias. De la Wikipedia:
"Licensing controversy
Although most code outputted by Copilot can be classified as a transformative work, GitHub admits that a small proportion is copied verbatim, which has led to fears that the outputted code is insufficiently transformative enough to be classified as fair use and may infringe on the copyright of the original owner."
y apunta a este artículo de The Verge:
www.theverge.com/2021/7/7/22561180/github-copilot-legal-copyright-fair
#27 Microsoft ha tenido (y sigue teniendo) muy poca vergüenza en ese aspecto, lo cual da coraje pero no sorprende. De todas maneras, para mí, el objetivo del debate no es Copilot en sí, sino en la legitimidad de usar según qué datos para entrenar a modelos profundos. Piensa en DALL-E o en GPT-x. Al final todas han aprendido de imagenes o textos (respectivamente) posiblemente con Copyright y, sin embargo, lo que están crean no es una burda copia. Si le dan una vueltecita a Copilot de tal manera que se comporte de forma "novedosa", ¿sigue siendo problemático aprender de código GPL? ¿No hacemos eso también nosotros?