¿Es viable un ERP de código abierto?

Subtítulo

Administrator

En los últimos años, el software de código abierto ha crecido de forma impresionante en software de infraestructura como Linux, Apache, MySQL, nGinx, entre otros. Según el estudio realizado por North Bridge a principios de este año, el 78% de las empresas utilizan alguna aplicación de código abierto para hacer funcionar alguna parte de su infraestructura.

Sin embargo, el software de código abierto ha fallando en ganar la aceptación del público empresarial en las aplicaciones de negocio. Más allá de las apasionadas comunidades con que cuentan, la realidad es que son pocas las empresas que están comprando y utilizando aplicaciones empresariales de código abierto. Hay algunas excepciones como SugarCRM o LibreOffice, más abajo amplío más el tema, pero, ¿por qué ninguna aplicación de Planeación de Recursos Empresariales (ERP) ha ganado logrado una masa crítica de usuarios?

Los proyectos de implementación de sistemas ERP son siempre de los proyectos empresariales que de forma constante exceden el presupuesto tanto en tiempo como en recursos monetarios y con más riesgo de fracaso. No es de extrañar que, bajo estas circunstancias, muchas empresas estén buscando romper la dependencia con su proveedor de software. En gran medida, la mayor propuesta del software de código abierto es precisamente la libertad de trabajar con el proveedor que aporte mejores resultados para la empresa. Lamentablemente en muchas ocasiones la parte de software gratis es la que obtiene mayor atención

Podría decirse que hay una oportunidad para una empresa desarrolladora de software que haga las cosas de forma diferente. La idea de este artículo es examinar algunos de los retos a los que se enfrenta una aplicación de código abierto en el mercado y ver si la comunidad, de forma colaborativa, puede encontrar alguna forma de responder la pregunta: ¿Es viable construir un ERP de código abierto?

Las aplicaciones empresariales no se compran, se venden

La fuerza tradicional del software de código abierto es el desarrollo: miles de desarrolladores contribuyen con código para generar un mejor sistema y, la expectativa es que al tener este código disponible de forma pública, la calidad del software va a hacer que lleguen los primeros early adopters que empezarán a hacer ruido al rededor del sistema y de sus capacidades. Se espera que el ruido generado por los early adopters al rededor del sistema se suficiente para influenciar la adquisición de nuevos usuarios generando una especie de círculo virtuoso. Esta forma de trabajo ha demostrado ser efectiva en aplicaciones de infraestructura donde los usuarios son desarrolladores curiosos que tienen la habilidad y el gusto por jugar con las nuevas tecnologías.

Sin embargo las aplicaciones empresariales son diferentes. Los compradores de aplicaciones empresariales esperan que un experto los lleve de la mano durante todo el ciclo de ventas para que puedan tomar la mejor decisión para su empresa. Y la verdad es que en muchos casos, lo necesitan de esta forma, pues de no ser así, estarían navegando a oscuras en el mundo de sistemas y aplicaciones empresariales que están disponibles hoy en día.

Como resultado, rara vez es el mejor producto el que gana la mayor cuota de mercado. Gana el que tienen la mejor fuerza de ventas y el mejor equipo de marketing. En el caso de las aplicaciones de ERP, las empresas que trabajan con software de código abierto se encuentran en franca desventaja frente a sus homólogos privados como SAP u Oracle que disponen de presupuestos en el orden de millones de dólares para promocionar sus productos.

Odoo CMS - a big picture

Los capitalistas hacen contribuciones muy pobres

El eje central del modelo de código abierto es la cooperación. Tradicionalmente esta colaboración se ha dado en forma de desarrolladores escribiendo y contribuyendo código. Sin embargo, las colaboraciones también pueden ser en pruebas de calidad, documentación, soporte, entre otros. De nueva cuenta, este modelo funciona muy bien para proyectos de infraestructura donde la tecnología está desarrollada por y para desarrolladores. Los desarrolladores tienen un admirable sentido de compañerismo y pertenencia, son sus propias necesidades de crecimiento y reconocimiento las que estimulan su capacidad de innovación, mientras que el deseo de reconocimiento estimula su participación y les impulsan a compartir el código en el que han trabajado.

Este modelo se rompe cuando entran en juego los empresarios. Como capitalistas, los empresarios y hombres de negocios obtienen compensaciones por hacer crecer sus utilidades, no por apoyar a la comunidad, esto los impulsa a estar buscando constantemente ventajas competitivas que puedan mantener a lo largo del tiempo. Como resultado, los empresarios están muy poco inclinados a compartir sus innovaciones y, aunque apoyen el desarrollo de un software de código abierto, siempre están buscando la forma de monetizar su trabajo a través de extensiones propietarias o algún otro tipo de servicio al rededor del proyecto.

Basado en la poca historia que conozco de Compiere, uno de los pioneros en el desarrollo de ERP de código abierto, parece ser que los mayores desafíos del proyecto se centraban en la competencia por los recursos económicos que había entre el desarrollador principal, el canal de socios y la comunidad.

El desarrollo de la aplicación requiere de experiencia

Cuando hablamos de software de infraestructura, los desarrolladores que contribuyen a la aplicación normalmente están trabajando dentro de su zona de confort trabajando en las entrañas de las plataformas tecnológicas. Pero cuando hablamos de desarrollar aplicaciones empresariales, los desarrolladores están fuera de su zona de confort. Para realizar estos desarrollos, los desarrolladores necesitan que se les entreguen los requerimientos de forma muy minuciosa y detallada. En una empresa de software tradicional, estos requerimientos son elaborados por un líder de proyecto que tiene un alto sentido de negocios.

Como resultado del punto anterior, es difícil obtener este equipo de trabajo en un proyecto de código abierto, pues las personas de negocios no siempre están a gusto con la idea de compartir sus conocimientos con la comunidad.

De nuevo la historia de Compiere, o de su fork Adempiere, es muy ilustrativa, y se puede apreciar como la mayoría de las contribuciones hechas por la comunidad son de carácter técnico: soporte para nuevas bases de datos, mejoras en el rendimiento de la aplicación, soporte para nuevas tecnologías web, etc, es decir aquello que es importante para los desarrolladores. Mientras tanto, las mejoras funciones, desarrolladas por entidades comerciales, normalmente está protegidas en forma de software propietario para poder monetizarlas.

SugarCRM ha tenido éxito, pero no es realmente código abierto

SugarCRM surgió como alternativa a Salesforce.com que es el líder en el ramo del software de CRM, y se promociona a si mismo como un proyecto de código abierto. SugarCRM ha logrado alcanzar una masa crítica de usuarios, pero este éxito lo ha alcanzado a través de un esfuerzo comercial que es prácticamente imposible de distinguir de la actividad que realizaría un desarrollador de software propietario convencional. La empresa ha obtenido más de 50 millones de dólares que ha ocupado directamente para reforzar su equipo de marketing y ventas. Además el grueso de sus ingresos proviene de las ventas de las versiones Profesional y Enterprise de su software que, por lo que en esencia, es software propietario.

Otro software que lo estaba haciendo bastante bien era OpenERP, ahora conocido como Odoo. Creado originalmente en el 2004, había ganado bastante visibilidad y popularidad. Sin embargo, hace poco anunció el cambio de licencia en su repositorio principal y la aparición de una versión Enterprise a partir del cuatro trimestre de este año. Desde mi perspectiva, se ha convertido también en un software comercial.

¿Existe alguna forma de que un ERP de código abierto tenga éxito?

Con dije, no pretendo con este artículo tener las respuestas a una pregunta que muchas personas, más capaces que yo, han fallado en resolver. Así que dejo la pregunta para quien guste participar, ¿qué hace falta para que el desarrollo de un ERP de código abierto sea viable?