Desarrollando Software de Código Abierto en una Gran Empresa

Santiago Basaldúa

d&a blog

El mundo funciona con datos, pero sin la naturaleza dinámica, accesible y adaptable del Software de Código Abierto (OSS, por sus siglas en inglés — Open Source Software), el ritmo de explotación de los campos ricos en datos sería dolorosamente lento. Imagine un mundo de ciencia de datos sin Linux, Python, Anaconda o Tensorflow, sólo por citar algunos ejemplos relevantes de software de código abierto.

En los últimos años, la tendencia a utilizar OSS para el procesamiento y análisis de datos ha ido en aumento hasta el punto de que la mayoría de las soluciones actuales son OSS. Las corporaciones más grandes, incluyendo Google, Microsoft o Facebook, están contribuyendo activamente a ello. A pesar de las historias de éxito, la adopción de la filosofía de código abierto requiere desafiar muchas ideas establecidas, especialmente si queremos atraer a colaboradores activos en lugar de sólo usuarios que no están aportando conocimiento al proyecto, o usuarios libres.

Identificamos tres temores que impiden que las empresas adopten el OSS:

  • Miedo a que los competidores se beneficien de sus inversiones.
  • Las hojas de ruta de la producción corporativa no favorecen el desarrollo a largo plazo de las herramientas necesarias para crear productos futuros.
  • No controlar la narración. Las corporaciones heredadas están acostumbradas a construir una narrativa perfecta y no les gusta la competencia abierta a pesar de sus afirmaciones.

OSS 101 para ejecutivos

  • Contribuir al OSS siempre es rentable. En un estudio reciente de la Unidad de Estrategia de la Escuela de Negocios de Harvard, el profesor Frank Nagle afirma que: Pagar a los empleados para que contribuyan a dicho software [OSS] aumenta la productividad de la compañía al usar el software hasta en un 100%, en comparación con la competencia libre . Los colaboradores activos producen más y mejor código.
  • En hojas de ruta de producción: Las herramientas necesarias para crear aplicaciones suelen dar lugar a grandes proyectos que, hoy en día, son en su mayoría OSS. Lo que las corporaciones desarrollan son típicamente aplicaciones de negocio construidas sobre eso. Los horarios y los incentivos son diferentes en cada caso. Las comunidades de OSS son meritocráticas, mientras que en el legado de desarrollo corporativo, la jerarquía, los presupuestos y los calendarios dan forma a los productos.
  • En OSS puedes controlar la experiencia de aterrizaje creando introducciones, tutoriales y documentación, pero no puedes controlar la narrativa. Los usuarios lo prueban y deciden si se adapta a sus necesidades. Todos los reclamos pueden ser verificados. Para las corporaciones esto puede sonar como una pesadilla, pero no lo es. En realidad, la transparencia es una de las principales razones por las que el OSS ya ha reemplazado el antiguo modelo de negocio. Los usuarios técnicos están saturados de narrativas sobrevaloradas e inverificables y buscan transparencia.

La comunidad

Solíamos pensar en el OSS como un fragmento de código estable, útil y bien documentado que se libera continuamente. Ese es el resultado visible en un caso de éxito. Pero la mayoría de los proyectos de OSS fracasan antes de esa etapa. Las razones son diversas, incluyendo la creación de un producto que nadie quiere, pero una razón crucial es no construir una comunidad. Bootstrapping una comunidad es la parte más difícil y es un requisito para el éxito. Los fundadores deben invertir muchos recursos para producir algo lo suficientemente utilizable y fiable como para atraer a los primeros adoptantes en una etapa en la que no hay muchos incentivos para utilizar el producto. Aquí es donde las grandes corporaciones tienen el poder de apoyar nuevos esfuerzos. Pueden ayudar apoyando el desarrollo de la marca, la comunicación, la infraestructura, los contribuyentes a tiempo parcial y el presupuesto. Las empresas deben visualizar el OSS como una oportunidad para invertir en proyectos ambiciosos en su propio beneficio por una fracción insignificante de lo que invierten en soluciones de negocio. Esto mejora la motivación y la productividad de los empleados. También les da el poder de elegir lo que apoyan o recortar sus fondos sin costo alguno en cualquier momento.

En BBVA D&A

Como ejemplo, BBVA lanzó Jazz en diciembre de 2017 como OSS. Jazz era originalmente un almacén de datos distribuido de alta eficiencia con un cliente R (ahora en cran) desarrollado para uso interno en BBVA Data & Analytics. Tras su lanzamiento como OSS, su principal autor decidió rediseñar el producto, convirtiéndolo en una plataforma de IA que aborda problemas que no están bien o no están soportados en absoluto en las plataformas principales.

Jazz ha ido avanzando a lo largo de los primeros nueve meses de 2018, la refactorización ya está completa y se está abordando una lista de tareas pendientes. Proyectos igualmente ambiciosos tuvieron un período de dos a cuatro años “bajo el radar” antes de que fueran relevantes. Para esos estándares, Jazz es todavía joven. El tiempo dirá si se convierte en otro proyecto abandonado o en una historia de éxito de OSS de una gran corporación, en la que algún día podría contar a sus creadores: Esta misión es demasiado importante para mí como para permitir que la pongas en peligro.1)Hal in 2001: A Space Odyssey, 1968

References   [ + ]

1. Hal in 2001: A Space Odyssey, 1968