Cultura
Open Startup
Código Abierto
3 oct 2024
Resumen; En Documenso, vemos el OSS como co-propiedad de todos. Hacer un fork—colaborativo o no—es parte del espíritu de código abierto.
Libertad vs. Propiedad
Recientemente, ha habido mucho debate sobre el tema de los forks y el uso de la propiedad intelectual OSS (Propiedad Intelectual de Software de Código Abierto). Si bien en su mayoría trato de mantenerme al margen de estas controversias (ya que no hay "ganadores"), quería aprovechar esta oportunidad para compartir mis opiniones sobre la propiedad intelectual y la cultura de forks aquí en Documenso. No presumo que este sea el camino ideal, pero para mí, es el único camino que tiene sentido.
Lo que estos problemas muestran ante todo, en mi opinión, es que el concepto de Código Abierto todavía está evolucionando. He escuchado a muchos decir: “El Código Abierto está claramente definido” y que ya no hay ambigüedad. Eso puede ser cierto en el lado legal, pero hay enormes diferencias en cómo se interpretan y aplican estas reglas. Aquí hay algunas preguntas para ilustrar el punto:
¿Está bien usar un proyecto de código abierto sin dar nada a cambio?
¿Está bien hacer un fork (algunos podrían decir copiar) un producto OSS y construir algo sobre eso?
¿Estamos moralmente obligados a luchar contra aquellos que proporcionan respuestas diferentes a estas preguntas que nosotros?
Aceptando Forks y Colaboración
Desde que comencé Documenso, he pensado mucho en lo que realmente significa ser Código Abierto para nosotros. Hasta ahora, se ha tratado de apertura en el trabajo con todos, desde contribuyentes hasta clientes y compartir nuestro trabajo de manera transparente. Por esto, hemos sido ricamente recompensados con atención y alcance. Este intercambio colaborativo es lo que la gente comúnmente asocia con ser Código Abierto, y parece ideal.
Sin embargo, están las preguntas mencionadas anteriormente. Y aunque estas pueden ser polémicas, mi opinión es sencilla:
Sí.
Sí.
No.
Digo esto porque, para mí, los principios del Código Abierto están arraigados en la libertad y la colaboración. Eso significa permitir que otros usen, mejoren o incluso compitan con lo que has creado sin sentirse posesivos sobre el código. La belleza del Código Abierto radica en su apertura—su capacidad para ser bifurcado, reutilizado y adaptado por cualquiera.
Puedes responder a estas preguntas de manera diferente por tus propias razones. Una cosa que he encontrado que falta en el discurso es el hecho de que el Código Abierto todavía se trata como si fuera socialmente propietario. Si está bajo una licencia de código abierto, puedes hacer un fork e intentar mejorar lo original, y no hay nada de malo en eso. Lo mismo es cierto para las startups de código cerrado. Sin embargo, en el Código Abierto, hay una noción de que es de alguna manera “sucio,” a pesar de que la licencia lo permite explícitamente.
Forking en Acción: Ejemplos del Mundo Real
Cuando el equipo detrás de Node.js no estuvo de acuerdo con su gobernanza y ritmo de desarrollo, hicieron un fork del proyecto para crear io.js. Esto no se vio como algo sucio, sino como un empuje necesario para el cambio. De hecho, el fork resultó en cambios positivos—mejor gobernanza comunitaria y desarrollo más rápido—lo que eventualmente llevó a la fusión de los dos proyectos bajo la Fundación Node.js. Muestra que hacer un fork puede ser un catalizador para la mejora, no solo para la competencia.
El Malentendido del Uso “Explotador”
Sin embargo, a veces los forks no se fusionan de nuevo, pero aún así traen cambios positivos. Un buen ejemplo es Jenkins, que fue bifurcado de Hudson por desacuerdos en la gobernanza después de que Oracle adquirió Sun Microsystems. Jenkins rápidamente superó a Hudson en términos de apoyo comunitario, desarrollo e innovación. En lugar de verse como un movimiento hostil, el fork permitió a Jenkins convertirse en un proyecto próspero, mejor alineado con la ética del código abierto de colaboración y transparencia. Esto enfatiza que hacer un fork no es inherentemente explotador; simplemente puede ser una forma de realizar el potencial completo de un proyecto.
Y luego está MariaDB, un fork de MySQL. Después de que Oracle adquirió MySQL, muchos en la comunidad temían que la naturaleza de código abierto del proyecto pudiera ser comprometida. El fork preservó su espíritu, y MariaDB ha crecido para convertirse en una base de datos popular y próspera. Es un recordatorio de que a veces, hacer un fork no solo es aceptable—es necesario para mantener los valores y libertades del software de código abierto.
Mi opinión es que el código no es “tu” código, así como el código de Documenso no es “nuestro” código. Ha sido co-propiedad del mundo desde que publicamos el repositorio bajo AGPL V3. Ese es todo el punto. Finalmente, no es propiedad de nadie (cue el meme “todos/nadie”). El Código Abierto es para todos, incluso para los competidores. Sin embargo, seguimos tratando las licencias como extensiones del viejo mundo propietario y defendiendo injusticias percibidas basadas en ese modelo.
Nota al margen: El cumplimiento total de todas las licencias y otras reglas legales es un hecho aquí.
Enfoque de Documenso: Co-Propiamente y Comunidad
Así que, si deseas hacer un fork de Documenso y construir un negocio sobre ello, puedes. Si eso es algo bueno o no es otro asunto. Si haces un mejor trabajo que nosotros también es otro asunto (no lo harás). Pero si lo haces, seré el primero en unirme. Pero, ¿por qué no unirte a nosotros desde el principio ya que ya tienes la ventaja? Existimos porque creemos que este es el mejor camino a seguir—no porque lo forcemos.
La Perspectiva General: El Código Abierto como Progreso
También he pensado mucho en la pregunta #3. Entiendo el impulso de luchar contra cualquiera que no aprecie este enfoque colaborativo, pero no hay parte de este modelo que lo respalde. Eres libre de “explotar” siempre que sea de una manera que añada valor. La falacia está en considerar que alguien más usando la parte OSS para su negocio es traición, lo cual no es. Ese es todo el punto.
Si bien algunos podrían decir que esto es teórico y que la realidad es diferente, esta es la versión de Código Abierto sobre la cual estamos construyendo Documenso. El punto aquí es que las empresas OSS deben ser resistentes para manejar forks y competencia; sin esta resiliencia, una economía impulsada por el código abierto no puede prosperar. El enfoque en la libertad y la colaboración significa estar preparados para forks y desafíos como parte del crecimiento, no como amenazas.
Por supuesto, todo esto se aplica a Documenso, el proyecto OSS, no a Documenso Inc., la empresa, que es muy mucho una entidad privada con fines de lucro. Sin embargo, dado que el objetivo es escalar Documenso al mundo entero, hay mucho espacio para ver a todos como co-propietarios del proyecto de Código Abierto en lugar de como competidores. Al final, el Código Abierto se trata de progreso a través de la libertad. Si no te gusta cómo hacemos las cosas, haz un fork y mantennos responsables. No somos los propietarios de esto; simplemente lo comenzamos.
Dado que este artículo también es de código abierto, eres libre de hacer un fork y cambiarlo aquí: https://documen.so/repo
Si tienes alguna pregunta o comentario, contáctanos en Twitter / X (DM abierto) o Discord.
¿Pensando en cambiar a una plataforma moderna de firma? Contáctanos en cualquier momento: https://documen.so/sales
Saludos desde Hamburgo,
Timur