Antes de hablar de la facturación de GitHub y GitLab, debemos tener claro qué son estas dos plataformas pero, sobre todo, qué es git, el origen de ambas.
Qué es git
Git es un sistema de control de versiones distribuido, muy utilizado en el desarrollo de software para llevar registro de los cambios en los archivos y coordinar el trabajo que varias personas realizan sobre archivos compartidos. Aunque es muy utilizado por desarrolladores, puede ser utilizado por cualquier persona que trabaje con ficheros informáticos ya que ayuda no sólo en las versiones de código, sino para cualquier otro propósito. Yo mismo, para escribir este artículo, estoy usando git.
Un sistema de control de versiones es una herramienta que ayuda a los equipos de desarrollo a gestionar los cambios en el código fuente a lo largo del tiempo. Mantiene un registro de cada modificación realizada en los archivos de un proyecto y permite volver a cualquier versión anterior si es necesario.
Algunas de sus características son:
- Cada cambio en el repositorio se registra con un mensaje de confirmación, que incluye una descripción y un identificador único. En todo momento podemos ir a una versión anterior y recuperar algo que hemos borrado o modificado. Esto evita tener que hacer múltiples ficheros como «trabajo_fin_de_curso_1.md», «trabajo_fin_de_curso_2.md», «trabajo_fin_de_curso_final.md», «trabajo_fin_de_curso_final_mejorado.md»…
- Varias personas pueden trabajar en el mismo proyecto simultáneamente sin interferir con el trabajo de los demás. Y también podemos seguir el historial de cada cambio realizado por cada usuario. De nuevo, nos evitamos esos ficheros como «trabajo_fin_de_curso_1_paco.md», «trabajo_fin_de_curso_1_pepe.md».
- Los participantes del proyecto pueden crear ramas para trabajar en nuevas características o correcciones sin afectar la línea principal de desarrollo, y luego fusionar esos cambios cuando estén listos.
- Cuando dos o más participantes de un proyecto cambian la misma parte de un fichero, el sistema de control de versiones puede ayudar a resolver esos conflictos.
Linus Torvalds
El sistema de control de versiones git fue diseñado por Linus Torvalds, el padre del kernel Linux e inspirador de la «Ley de Linus», descrita por Eric S. Raymond:
Dado un número suficientemente elevado de ojos, todos los errores se vuelven evidentes.
Eric S. Raymond
El hecho de que el padre de git sea Linus Torvalds nos puede dar una idea de dos características de este software: es de una calidad extraordinaria y, además, es Software Libre.
Git permite que cada copia de trabajo del código de un desarrollador sea también un repositorio que puede contener el historial completo de todos los cambios, por lo que no depende de un servidor central y permite un trabajo autónomo y descentralizado.
Con todo esto, git ha desbancado a todos los anteriores sistemas de versiones anteriores siendo actualmente, con mucha diferencia, el sistema más usado en el mercado.
Gracias a ser Software Libre, no sólo cualquier usuario o cualquier grupo de usuarios, como una empresa, puede crear su servidor propio donde compartir los proyectos entre los usuarios, sino que cuenta con varias plataformas que ofrecen este servicio. Las dos principales son GitHub y GitLab.
GitHub
La historia de GitHub comienza en 2008, cuando fue fundada por Chris Wanstrath, PJ Hyett, Tom Preston-Werner y Scott Chacon en San Francisco, EE. UU. El mismo año del lanzamiento del otro gran software descentralizado, la red Bitcoin.
Desde sus inicios, GitHub se destacó como una plataforma de alojamiento de código fuente que facilitaba la colaboración entre desarrolladores. Su crecimiento fue notable desde el principio; en febrero de 2009, apenas un año después de su creación, GitHub ya contaba con más de 46,000 repositorios públicos.
El crecimiento de GitHub continuó de manera exponencial. Para julio de 2010, la plataforma ya albergaba más de 1 millón de repositorios, y para abril de 2011, esa cifra se había duplicado a más de 2 millones. Este rápido aumento en la cantidad de repositorios reflejaba la creciente popularidad de GitHub entre los desarrolladores de todo el mundo.
Uno de los factores clave detrás del éxito de GitHub fue su papel en la promoción del software de código abierto. La plataforma no solo proporcionaba un sistema de control de versiones eficiente y fácil de usar basado en Git, sino que también fomentaba una comunidad activa de colaboración. Las características como las solicitudes de extracción (pull requests) y la capacidad de «forkear» proyectos permitieron a los desarrolladores contribuir fácilmente a proyectos de otros usuarios, lo que impulsó aún más la adopción de GitHub.
Microsoft
En 2012, GitHub ya era rentable, con ingresos que crecían un 300% anualmente desde su fundación. Para enero de 2013, la plataforma superó los 3 millones de usuarios registrados y alojaba más de 5 millones de repositorios. La interfaz intuitiva de GitHub y su comunidad activa de desarrolladores contribuyeron significativamente a la popularización de tanto de git, el sistema de control de versiones creado por Linus Torvalds como de la plataforma GitHub.
El modelo de negocio de GitHub también jugó un papel importante en su crecimiento. Aunque ofrecía repositorios gratuitos para proyectos de código abierto, también proporcionaba planes de pago con características adicionales para usuarios individuales y empresas. Esto permitió a GitHub monetizar su servicio manteniendo la filosofía del código abierto.
La adquisición de GitHub por Microsoft en 2018 marcó un nuevo capítulo en la historia de la plataforma. A pesar de algunas preocupaciones iniciales de la comunidad, Microsoft ha mantenido el compromiso de GitHub con el Software Libre y ha continuado desarrollando la plataforma, añadiendo nuevas características y mejorando la experiencia del usuario.
Si bien esto no hace que se pueda considerar a Microsoft como una empresa de Software Libre, sí que es una muestra de que, para sobrevivir, ha tenido que adaptarse a las demandas del mercado. Han pasado de afirmaciones de Steve Balmer, ex CEO de Microsoft, que decía que el Software Libre no crea empleo o que es un cáncer, a gastarse 7.500 millones de dólares para comprar GitHub o liberar otro software, como Visual Studio Code o TypeScript.
GitLab
GitLab es una plataforma de gestión de ciclo de vida DevOps integrada y de código abierto. La crearon en 2011 los programadores ucranianos Dmitriy Zaporozhets y Valery Sizov. Lanzaron su primera versión en 2012.
A lo largo de su vida, ha ido mejorando muchos aspectos tanto a nivel técnico, ya han ido reescribiendo partes de su código en Go, sustituyendo las originales, escritas en Ruby, como a nivel de modelo de negocio, ya que en julio de 2013, el proyecto se dividió en dos versiones: GitLab CE (Community Edition) y GitLab EE (Enterprise Edition). En febrero de 2014, GitLab EE comenzó a desarrollarse bajo una licencia privativa. También ha ido evolucionando en cuanto a diversificación y adquisición de nuevas herramientas, como cuando en marzo de 2017, GitLab anunció la compra del servicio de mensajería instantánea Gitter.
Es una empresa participada por Google y utilizado por organizaciones de renombre como la NASA, el CERN, IBM y Sony, por lo que, aunque no sea tan famosa como GitHub, nos da una idea de su calidad.
GitLab ha recibido varias rondas de financiación a lo largo de los años. En una ronda de financiación en 2016, recibió una ronda de 25 millones de dólares y en 2018, GitLab levantó 100 millones de dólares, lo que ayudó a la empresa a alcanzar una valoración de 1.000 millones de dólares, convirtiendo a GitLab en un «unicornio», término utilizado en el ámbito de las startups para describir a las empresas privadas valoradas en más de mil millones de dólares.
Principales diferencias entre GitHub y GitLab
Aunque GitHub y GitLab son dos plataformas que están orientadas hacia públicos similares y muy populares para la gestión de repositorios Git. Tienen algunas diferencias clave:
GitLab ofrece una plataforma más integrada para el ciclo de vida completo del desarrollo de software, incluyendo herramientas de CI/CD (integración continua y entrega continua) y gestión de proyectos.
GitLab se conoce por su versión Community Edition, que es de código abierto y se puede instalar en un servidor propio de forma gratuita. GitHub también tiene proyectos de código abierto, pero para instalar GitHub en un servidor propio se requiere la versión Enterprise.
GitHub es anterior, es más famosa y tiene una comunidad de usuarios más grande.
Ambas plataformas ofrecen versiones gratuitas y de pago (Enterprise). Sin embargo, la instalación en un servidor propio con la versión gratuita es exclusiva de GitLab.
GitLab permite una mayor personalización y tiene un enfoque más fuerte en la seguridad y la privacidad.
Ingresos de las plataformas de git
GitLab ha experimentado un crecimiento significativo en sus ingresos durante los últimos años. Veamos una comparación del crecimiento anual:
2022: Los ingresos alcanzaron los 253 millones de dólares, lo que supuso un aumento del 66.03% en comparación con 2021. Año 2023: Los ingresos fueron de 424.3 millones de dólares, marcando un incremento del 67.95% respecto al año 2022. Y año 2024: GitLab reportó ingresos de 579.9 millones de dólares, lo que representa un aumento del 36.66% en comparación con el año anterior.
GitHub ha reportado un ingreso anual recurrente de mil millones de dólares. Este dato refleja el éxito y la expansión de la plataforma, que se utiliza por una gran comunidad de desarrolladores en todo el mundo. Como vemos, se puede generar un muy buen negocio ayudando a los demás, ofreciendo soporte para el desarrollo de proyectos colaborativos y la posibilidad de compartir dichos proyectos pero, viendo la financiación y los ingresos de uno y otro proyecto, vemos que, una vez más, en esta comparativa, se cumplen las palabras de Jesús Huerta de Soto: «lo mejor moralmente, es lo más rentable». O, adaptado al Software Libre, «cuanto mayor es la libertad, mayor es la rentabilidad».
Serie ‘El negocio del software libre’
- (I) Las instituciones
- (II) El caso de Wikipedia
- (III) Sólo crecen las redes sociales que liberan código
- (IV) Hackers frente a académicos
- (V) Evan You, un hacker empresario no emprendedor
- (VI) La generalización de los hackatones
- (VII) El intérprete o transductor
- (VIII) Red Hat: convirtiendo el free rider en free market
Aún no hay comentarios, ¡añada su voz abajo!