Github ha muerto...larga vida al nuevo rey: GitLab

Microsoft compra Github
Jun05Microsoft ha comprado Github y todo el mundo está huyendo, ¿están locos o son sensatos?

Por :NO{legaltech}
// Son 2668 palabras. Esto se lee en, nah, 13 minutos, 20 segundos.

 

Sin duda la compra de Github por parte de Microsoft se perfila como la noticia del año. Que un gigante del mundo tecnológico quiera hacerse con el mega almacén de los repositorios informáticos es la pesadilla de muchos, la panacea para otras y se ha montado un enorme revuelo entre los desarrolladores. Así lo anunciaban en su cuenta de Twitter:

Rastreando un poco la red nos encontramos con dos frentes claramente diferenciados: los que consideran que esto supone la muerte de Github y aquellos que dicen que no es para tanto, que Microsoft ya no es el malo de la película. Como en los pleitos, en que hay dos partes que se acogen a sus versiones absolutas, vamos a intentar analizar cada una de ellas con un poco de rigor, para variar.

El Frente Popular de Judea ha optado por la masiva salida de Github, asaltando a golpe de teclado al competidor número 1, GitLab, situación que ha cogido por sorpresa a la propia plataforma:

Tal ha sido la huída que en GitLab han creado su propio hastag #movingtogitlab intentando sacarle un poco de provecho a la situación, como diría nuestra abuela “en río revuelto ganancia de pescadores”, como explican maravillosamente en este post de genbeta . Ni tiene nada de malo ni resulta extraño que aquellos defensores del software libre, de compartir en comunidad y de contribuir al desarrollo desinteresado del software hayan elegido esta alternativa.

El Frente Judeo Popular ha optado por defender a la corporación tecnológica, insistiendo en que Microsoft no es el malo de la película. El principal argumento es que Microsoft es uno de los mayores contribuidores al mundo open source. A ver, esto un poco con matices: son los mayores contribuidores de Github pero no todos los proyectos de software libre o open source se alojan en este repositorio. No vamos a discutir a estas alturas la diferencia conceptual entre free software y open source. Nosotros estuvimos la semana pasada en el DotNet y muchos de los proyectos son open source y tenían los repositorios en Github, ¿casualidad?…

Desde nuestro punto de vista de personas que no están muy en el ajo, pensamos que esa huída debe fundamentarse en el temor de que el repositorio de Github pierda su naturaleza. Es decir, que se convierta en un nuevo Skype y la sensación de “traición” a la comunidad es algo que también se palpa en el ambiente, de ahí la necesidad de ser un poco rigurosos con el asunto.

El hecho de que Github sea un repositorio desde donde puedes clonar repositorios que sí son software libre / open source no significa que Github sea software libre, de hecho, Github no es software libre, su código fuente no está en sus repositorios.

Según se apunta desde Bloomberg la venta a Microsoft tiene una razón fundamental: la viabilidad económica, Github no es rentable con su modelo de negocio y por eso necesita esa inyección de capital. Puede ser un caso similar a Twitter.

¿Está justificada la huída hacia GitLab?, ¿es la única alternativa a Github?

Esta es la pregunta del millón de $ y que nadie puede responder y no, no es la única alternativa a Github, los rabbits por ejemplo usamos también Bitbucket porque a diferencia de Github puedes tener repositorios privados siendo usuario free. Si quieres conocer otras alternativas a Github puedes leer este post en donde los están recopilando, y si te da pereza te dejamos aquí la lista para que luego no digas que “sólo puede quedar uno“:

Gitea - https://gitea.io/en-us/
Apache Allura - https://allura.apache.org/
GitBucket - https://gitbucket.github.io/
GitLab: https://about.gitlab.com/

Términos y Condiciones de Github

Pero…aprovechando que el Pisuerga pasa por Valladolid (hola, gente del WeCode) hemos decidido revisar los Términos y Condiciones de Github y traducirlos al lenguaje humano para que si decidís iros o quedaros en Github tengáis las cosas claras.

Nos gusta el estilo de Github, estos términos podrían haber sido escritos por los rabbits. Tienes una versión reducida y una versión amplia, ante el revuelo montado hemos decidido leerlos la versión extendida pero os haremos un resumen, ¿de acuerdo? Que luego os quejáis del rollo legal de los artículos.

El texto comienza con una sección de definiciones, a modo de declaración de variables; así definen lo que se entiende por acuerdo, servicio, web, usuario/tu/tuyo, Github/nosotros, contenido y cuenta.

Como podréis imaginar algunos de estos conceptos abarcan un montón de cosas; así por “acuerdo” se entiende: los términos y condiciones, términos adicionales y todas las políticas que regulan el uso Github. Por “web” se entiende no sólo github.com sino también sus otros subdominios como education.github.com, pages.github.com, githubuniverse.com y atom.io.

Cuenta de usuario: individual y de empresa. La individual es la normal, la que cualquier desarrollador se crea para subir su código y lógicamente la de empresa es la que usa tu empresa para alojar el código de sus proyectos y en los que participáis tu y tu compañeros; en ambos casos hay siempre una única persona responsable de la cuenta y que es la que se come el marrón si hay algún problema. Y además ese responsable en todo caso tiene que ser una persona física, sí lo has leído bien, una persona física, no se admiten las cuentas creadas por bots u otros medios automatizados. En cambio, sí que está permitido la creación de lo que Github denomina “cuenta de máquina”, destinada exclusivamente para la ejecución de tareas automatizadas. Esa cuenta de máquina tiene que haber sido creada por una persona física y hay normas adicionales si eres un gobierno o usas un business plan.

Edad mínima para abrirte una cuenta en Github es de 13 años si vives en USA, si vives en otro sitio tienes que tener la edad mínima exigida por las leyes para poner realizar actos jurídicos vinculantes, así en España esa edad es de 14 años.

Cuenta única: sólo está permitido una cuenta de usuario por persona y si la cuenta la ha abierto una empresa sólo pueden acceder a ella las personas que determine el plan de empresa contratado.

Se admite el scraping, lo normal es que lo prohíban en todas sus formas pero Github permite hacer scraping si eres investigador y lo usas para tus investigaciones, que tienen que ser de público acceso, y la información que scrapees sea pública y no personal. No puedes hacer scraping con fines de spam, incluyendo la venta de información personal de los usuarios de GitHub, tales como reclutadores, headhunters, y bolsas de trabajo. Ojo con esto, que sabemos que hay quien se lo pasa por el forro.

No te comas todo el ancho de banda, te lo pueden reducir o suspender tu cuenta, usan un término ámbiguo para definir “abuso de ancho de banda”, literalmente dicen: “significativamente excesivo en relación con otros clientes de GitHub”.

Contenido es todo lo que un usuario sube o comparte en una web. Este apartado te dice que todo aquello que subas a Github es tuyo, lo que implica que también eres responsable de lo que ese código haga.

Aquí se dice que eres el titular del código que subas, pero como ya sabréis (porque os lo hemos explicado cienes y cienes de veces), si lo que subes es código que has creado haciendo tu trabajo, ese código no es tuyo, es de quien te paga por él salvo algunas cosas, aquí lo explica así porque se está refierendo a ti sin diferenciar persona individual o empresa.

En calidad de titular, tienes que conceder una licencia de uso tanto a Github como a los demás usuarios del repositorio. A Github le concedes el derecho a almacenar, analizar, mostrar, hacer copias en su base de datos, backups y ejecutar tu contenido si es música o vídeo. Respecto a los demás usuarios de Github, si tu repositorio es público pueden ver lo que publicas, incluídas issues, comentario y contribuciones y hacer forks de tus repositorios. Si subes un contenido que no es tuyo tienes que asegurarte que su licencia concede estos permisos a los demás usuarios de Github.

Si haces una contribución a un repositorio todo lo que subas quedará sujeto a la licencia que ya tenía ese repositorio, pero si tienes un acuerdo especial, como un acuerdo de contribuidor, para licenciar tus aportaciones ese acuerdo prevalecerá sobre la otra licencia (inbound=outbound).

Repositorios privados: en teoría esta es tu caja fuerte: al contratar un repositorio privado, esa información es confidencial y sólo accederá a ella por razones de seguridad o de mantenimiento del servicio, con tu conocimiento y consentimiento. Excepciones: 1) Si tienen motivos para pensar que aquello que estás alojando en un repositorio privado es ilegal se reservan el derecho a acceder, analizar y en su caso eliminar su contenido. 2) Si les obligan las autoridades.

Propiedad intelectual de Github: Github es el titular de los derechos de propiedad intelectual de todo, como es lógico, lo que es Github; no puedes duplicar, copiar o reutilizar ninguna porción de su HTML/CCS, Javascript o diseño visual o conceptos sin su permiso por escrito. Si quieres utilizar su logo tienes que seguir las normas establecidas en su página. Sin embargo el propio documento de TyC está licenciado con la Creative Commons Zero license.

Github Pages: todos los usuarios de Github tenemos acceso a un hosting gratuito para tener una web estática. El uso de estas Github Pages está sujeto a sus propios términos, los puedes consultar aquí; en esencia dicen que si pretendes tener una web con tráfico intenso este producto no es adecuado para ti y que lo alojes en otro sitio

En donde creemos que Github ha meado fuera del tiesto en el apartado de los derechos morales sobre tu contenido, porque renuncias al derecho a la integridad y a la atribución de tu código. No se puede renunciar a la atribución de una obra, en este caso código, porque la paternidad es para siempre. Respecto a la integridad en caso de código puede tener cierto sentido pero también es excesivo, haciendo un fork se mantiene la integridad del código y los demás usuarios pueden usarlo sin problemas.

Ellos tampoco lo deben tener muy claro porque incluyen un apartado de salvaguarda, muy típico de abogados, por el que si alguna parte de este texto legal no es aplicable (porque sea ilegal, porque sea imposible, porque sea una mierda), le concedes a Github los derechos necesarios para poder prestar su servicio y vía.

Presta especial atención a estas cuestiones si crees que Microsoft es el diablo:

Aplicaciones de terceros que creas o que utilizas

Este apartado de los TyC de Github te interesa si usas o creas terceras aplicaciones que se integran con los servicios del repositorio, porque impone algunas limitaciones:

  • No puedes vulnerar la política de privacidad.
  • Tienes que adoptar medidas de seguridad para evitar destrucción accidental o ilegal, o pérdida accidental, alteración, revelación o acceso no autorizado al procesar la Información Personal del Usuario o el Contenido Generado por el Usuario.
  • No uses el nombre de Github en vano.
  • Tienes que elaborar y facilitar a los usuarios tu propia política de privacidad.
  • Tienes que proporcionar a los usuarios un método para eliminar cualquier Información personal de usuario o contenido generado por el usuario que hayas recopilado a través de GitHub después de que ya no sea necesario para los fines limitados y específicos para los cuales el usuario autorizó su recopilación, excepto en los casos en los que la retención sea requerida por ley o de otra manera permitida, como a través de una licencia.

Si usas alguna aplicación que hayas adquirido en el marketplace de Github tienes que leerte este documento: Github Marketplace Terms of Service.

Cancelar tu cuenta de Github

Puedes cerrar tu cuenta cuando quieras, accediendo a tu panel de usuario y dándole al botón. Tras la eliminación todo tu contenido será eliminado en un plazo de 90 días, excepto lo siguiente: las contribuciones que hayas hecho a otros repositorios y evidentemente los forks que hayan hecho de tu repositorio.

Si se lo pides intentarán darte una copia de tu contenido siempre que lo hagas dentro de los 90 días siguientes a la cancelación de tu cuenta.

Aunque ya no tengas cuenta en Github estos términos y condiciones se te aplicarán para todo aquello que hayas hecho durante el tiempo que fuiste usuario y que puede tener consecuencias en el futuro. Al hacerte la cuenta de usuario y aceptar sus TyC has aceptado la siguiente cláusula:

GitHub has the right to suspend or terminate your access to all or any part of the Website at any time, with or without cause, with or without notice, effective immediately. GitHub reserves the right to refuse service to anyone for any reason at any time.

En esencia, que de la noche a la mañana puede que pierdas todos tus repositorios…yo haría una copia de seguridad o como dice @dagope “no pondría todos los huevos en la misma cesta”.

Disclaimer y limitación de responsabilidad

Github no quiere problemas y por eso te dice claramente que ellos no te van a indemnizar y que no son responsables de ningún daño y/o perjuicio que puedas sufrir por un fallo de ellos (pérdida contenido, acceso no autorizado, si el sitio está caído,etc…). Además te dice, y tú has aceptado, que si tienes algún conflicto con otro usuario de Github, que los dejarás al margen y en su caso que correrás con los gastos de sus abogados.

Por otro lado, este tipo de cláusulas es común que se pongan aunque nosotros entendemos que esta cláusula puede ser considerada abusiva por un tribunal, pero ya nos metemos en un fregado diferente.

Cambios en sus Términos y Condiciones

Como es lógico se reservan el derecho a cambiar los términos y condiciones de uso de su sitio web cuando lo consideren oportuno, y quien compre la empresa también lo hará. Es una distinción curiosa la que hacen, porque si los cambios que afecten a cosas materiales serán efectivos transcurridos 30 días desde su publicación. Por cosas materiales entendemos modificaciones en los precios del servicio, al menos es lo único a lo que se refieren en el texto.

Es decir, que los cambios relativos a cosas no materiales se aplican de manera automática, te lo dicen de la siguiente manera: “For non-material modifications, your continued use of the Website constitutes agreement to our revisions of these Terms of Service.”

Si por un casual una empresa compra Github y decide cambiar el uso de los repositorios de las cuentas free, esa modificación se aplica de manera efectiva si no te lees el texto y le das al botón de aceptar. Y ya para acabar pero por ello no menos importante, te dicen que pueden cerrar la web cuando quieran y sin previo aviso. Cuidadito que vienen curvas.


Publicado el 05 de junio de 2018