← Fundamentos

5 razones para usar o publicar software de código abierto

Por qué tiene sentido abrir tu código, para una persona que quiere aprender y para una empresa que quiere mejor software. Y cuándo no conviene.

En este artículo
  1. 1. Mejor código, porque alguien lo va a leer
  2. 2. Reduces el costo de mantener lo que no es tu negocio
  3. 3. Tu trabajo se vuelve tu currículum
  4. 4. Generas confianza
  5. 5. Defines el estándar
  6. Cuándo no conviene
  7. Antes de publicar
  8. Preguntas frecuentes

Usar código abierto ya es lo normal. Publicarlo todavía genera dudas: ¿no estoy regalando mi trabajo?, ¿alguien me lo va a copiar? Estas son cinco razones concretas para hacerlo, y al final, los casos en que no conviene.

1. Mejor código, porque alguien lo va a leer

Escribir código sabiendo que otros lo van a ver cambia cómo se escribe. Se documenta más, se nombran mejor las cosas, se agregan pruebas. Y cuando otros lo usan aparecen errores que tus propios casos nunca habrían encontrado. Eric Raymond lo resumió como “con suficientes ojos, todos los errores son superficiales”. No siempre hay suficientes ojos, pero sin código público no hay ninguno.

2. Reduces el costo de mantener lo que no es tu negocio

La mayoría de las empresas escribe herramientas internas que no son su ventaja competitiva: un cliente para una API, una biblioteca para leer un formato, un script de despliegue. Publicarlas permite que otros con el mismo problema las mejoren. El mantenimiento se reparte.

Así nacieron proyectos como React (Meta), Kubernetes (Google) o Kafka (LinkedIn). Ninguno de ellos era el producto que esas empresas vendían.

3. Tu trabajo se vuelve tu currículum

Para alguien que desarrolla software, un repositorio público vale más que una línea en el CV. Muestra cómo escribes, cómo documentas, cómo respondes a otros y cómo resuelves problemas. Muchas personas consiguen su primer empleo así, o su siguiente. Lo explicamos con más detalle en cómo convertirse en desarrollador de software.

Para una empresa funciona igual: proyectos abiertos bien mantenidos atraen a desarrolladores que quieren trabajar ahí.

4. Generas confianza

Cuando un cliente puede leer el código que procesa sus datos, la conversación sobre seguridad cambia. No tiene que creerte: puede verificar. Por eso el código abierto es especialmente fuerte en criptografía, gestión de contraseñas y todo lo que toca información sensible.

5. Defines el estándar

Si tu solución es abierta y buena, otros la adoptan y se convierte en la manera normal de hacer las cosas. Quien define el estándar tiene ventaja sobre quien lo sigue. Muchas empresas abren protocolos y formatos justamente para que el mercado se ordene alrededor de ellos.

Cuándo no conviene

Abrir código no siempre es buena idea:

  • Si es tu ventaja competitiva directa. Si lo que vendes es exactamente ese algoritmo, publicarlo puede no tener sentido comercial.
  • Si no lo vas a mantener. Un repositorio abandonado con usuarios esperando respuesta es peor que no tener repositorio. Si no puedes mantenerlo, dilo claramente en el README.
  • Si contiene secretos. Revisa el historial completo de Git antes de publicar: contraseñas, llaves de API y datos de clientes quedan en commits antiguos aunque los hayas borrado después.
  • Si no tienes los derechos. El código escrito para un empleador o un cliente puede no ser tuyo para publicar. Revisa el contrato.

Antes de publicar

Una lista mínima:

  1. Elige una licencia y agrega el archivo LICENSE. Sin licencia, nadie puede usar legalmente tu código.
  2. Escribe un README que diga qué hace, cómo se instala y cómo se usa.
  3. Revisa que no haya secretos en el historial.
  4. Define cómo quieres recibir contribuciones (un CONTRIBUTING.md breve basta).
  5. Publica, y responde los primeros issues rápido. Las primeras semanas definen si se forma una comunidad.

Si vas a hacerlo como organización, lee también cómo construir una estrategia de código abierto.

Preguntas frecuentes

¿Publicar mi código como código abierto significa regalar mi trabajo? No necesariamente. Sigues siendo el autor y la licencia que elijas define qué pueden hacer otros con tu código; además, publicar herramientas que no son tu negocio reparte el costo de mantenerlas.

¿Puedo publicar en GitHub código que escribí para mi empleador? Depende del contrato. El código escrito para un empleador o un cliente puede no ser tuyo para publicar, así que revisa el contrato antes de hacerlo.

¿Qué pasa si publico código sin licencia? Nadie puede usarlo legalmente. Sin un archivo LICENSE el autor conserva todos los derechos aunque el repositorio sea público; para elegir una, revisa qué licencia elegir para tu proyecto.

¿Borrar una contraseña del código la elimina del repositorio? No. Las contraseñas, llaves de API y datos que alguna vez se subieron quedan en el historial de Git aunque se borren después, por eso hay que revisar el historial completo antes de publicar.

¿Qué empresas grandes publican código abierto? Muchas. React nació en Meta, Kubernetes en Google y Kafka en LinkedIn, y ninguno de ellos era el producto que esas empresas vendían.