Openbravo, el ERP privativo que dice ser libre

Ya hablamos de este tema hace algún tiempo, y es que Openbravo ha cerrado varios módulos funcionales en la versión 3, que está aún por venir. Ahora ya es oficial, aunque no se desde cuando porque no le presto mucha atención a la versión 3, lo podemos consultar en esta dirección. En el listado por ejemplo vemos que la gestión de proyectos y servicios, la gestión de producción y la gestión de MRP ahora tienen  la licencia privativa de Openbravo.

Vuelvo a lanzar la pregunta que ya hice en anteriores ocasiones. ¿Lo siguiente que será?. Como parece que nos echan de aquí tendremos que llamar a la puerta de otro proyecto de ERP libre, ¿OpenErp quizá?.

Cheli

¿Openbravo ERP o Openerp?

Hace poco me solicitaron un presupuesto de una implantación de Openbravo ERP. El cliente al final quedó muy contento con mi oferta, el problema fué que se decantaron finalmente por Openerp.

Openbravo vs Openerp

Google ratifica esta tendencia, y yo lo entiendo. Openbravo es una empresa de software privativo que dice que hace un ERP libre, pero eso es una verdad a medias. Parece que la gente empieza a darse cuenta y busca alternativas, y aunque no conozco mucho el caso de Openerp si que tiene una gran ventaja, y es que su licencia es GPL v3 o AGPL v3 en su última versión, con lo que garantiza totalmente la libertad del software. En contraposición tenemos a Openbravo con una licencia MPL para el core y una licencia privativa para la mayoría de módulos.

Cheli

El cortijo de Openbravo termina siendo una casita de muñecas

Era un mensaje que llevaba esperando desde hace muchísimo tiempo, acabo de recibirlo y lo reproduzco para no tergiversar la información.


Dear Cheli,


after having received complaints from several other users I have removed some of the recent cross-posts you have made across the Openbravo ERP forums and have moved a few other posts to different forums.


We appreciate your presence on our forums and I hope we’ll receive many useful posts from you. Please make sure to review the guidelines below before your next posts to make sure they are valuable to others:


-Make sure your posts contain textual content stating what they are about – posting just a link to external content is not nice to others since they will not know what it is about and if it is relevant to them. If you have nothing to say, don’t post.

-Please stick to the given topics on the different forums we operate and pick an appropriate place for your post

(E.g. the Help forum is to be used if you are looking for help in English language. The Russia forum is for topics related to use of Openbravo in Russian Language or to discuss things related to the use of Openbravo in Russia in Russian or English language.)

-Do not cross-post identical posts in more than one forum


Best regards & Thank you,

Peter

Esto me llega desde una dirección de correo-e peter.nuding en openbravo punto com, por lo que se entiende que es verídica.

De este texto extraigo dos interpretaciones o teorías si preferís llamarlo así, sobretodo basándome en el primera párrafo.

after having received complaints from several other users I have removed some of the recent cross-posts you have made across the Openbravo ERP forums and have moved a few other posts to different forums.

Primera y obvia es que Openbravo, como empresa de software privativo (ver mis anteriores exposiciones para justificar esta afirmación), se ha cansado de que yo redistribuya un software que ellos licencian con una licencia libre, esperando (y recalco el esperando) que nadie ejerza los derechos que esa licencia otorga. Se que soy pesado pero el actual director general de Openbravo, Paolo Juvara, hace pocos meses lanzaba acusaciones infundadas hacia mi persona argumentando que yo incumplía no se cuantas clausulas de dicha licencia, al mismo tiempo demostraba su ignorancia en cuanto al movimiento del software libre y en cuanto al texto legal de dicha licencia. No me quedaría corto si calificara sus acusaciones como calumnias. Pero bueno, pelillos a la mar.

Nota: En ese momento el era el director de producto de Openbravo, un cargo suficientemente representativo como para que se hubiera leído la licencia al menos una sola vez. En cualquier caso ahora a nadie nos sorprende sabiendo de que filosofía de empresa venía este hombre (Oracle),  y lo que ha terminado haciendo esta última con los proyectos libres de Sun Microsystems.

La segunda teoría es que realmente algún socio  tecnológico se quejara. En tal caso creo que Openbravo lo ha utilizado más como excusa para argumentar la censura que otra cosa, y de paso incumplir su propia licencia. Si fuera así entonces el llamamiento es a esos socios tecnológicos.

Carta abierta a dichos socios tecnológicos.

En cuanto una empresa intenta hacer negocio con el software libre debe tener unas premisas claras.

1) Esto no es un cortijo, o corralito o como lo queráis llamar. Vale que Openbravo sea una empresa de software privativo y intente aplicar las mismas reglas a Openbravo pero por ser socio tecnológico no tienes mayor privilegio que haber pagado a Openbravo por cuatro cosas que se resumen en:

-Visibilidad en su página. Irrelevante desde mi punto de vista.

-Posibles oportunidades de negocio proporcionadas por Openbravo (derivadas del primer punto). Esto puede llegar a ser interesante, pero según mi experiencia nunca llegó a ser algo determinante. Para que se entienda, la inversión era siempre mayor que el supuesto retorno de dicha inversión. Y es que ser socio de Openbravo supone un pastizal.

-Acceso a documentación generalmente innecesaria.

-Anuncios de mapas de ruta de producto incumplibles y que se han demostrado con el tiempo. Hoy nuestro producto empresarial lleva Oracle, mañana postgresql pero no lo tenemos decidido porque posiblemente pasado mañana llevará Oracle de nuevo. Yo he visto situaciones de vender una versión profesional porque Oracle es la repera y cuando se iba a poner en producción Openbravo decía que su versión profesional llevaba postgresql y para no hacer obvio el engaño al cliente ponerle una licencia ad-hominem fuera del producto para empresas oficial de ese momento. Esto es verídico.

-Documentos de metodología de implantación comúnmente conocidos en la industria. Hablamos de prototipado, metodologías ágiles como scrum etc.

-Nada más.

2) Nunca podrás saltarte la licencia de software. La licencia es un documento legal que incluso es de mayor rango que el contrato que firmes con tu cliente. Marcaros a fuego este punto.

3) Las reglas del juego están establecidas desde la casilla de salida (vuelvo a hacer referencia a la licencia). Si no os gustan, si queréis pegar un pelotazo o engañar a vuestros clientes o potenciales clientes es vuestro problema, pero luego no vengáis criminalizandome a mi o a otros que si lo tenemos claro desde un principio.

Y ahora vayamos a los puntos concretos de las reglas del foro.

We appreciate your presence on our forums and I hope we’ll receive many useful posts from you. Please make sure to review the guidelines below before your next posts to make sure they are valuable to others:

Resumen, somos una empresa de software privativo y unos hipócritas, pero lo suficientemente listos profesionales como para engañar a nuestros clientes y dar una imagen de correctos y buen rollito.

-Make sure your posts contain textual content stating what they are about – posting just a link to external content is not nice to others since they will not know what it is about and if it is relevant to them. If you have nothing to say, don’t post.

Ahora me tachan de spammer. Mis mensajes contenían enlaces a una entrada de mi bitácora donde únicamente aparecía un enlace al archivo de descarga de una versión concreta de Openbravo.  Vale que mi bitácora tenga publicidad porque históricamente la ha tenido. La explicación es muy simple, llevo 5 años con adsense y todavía no he llegado a los 100$ para cobrar el primer pago, cuando llegue la quitaré. Como veis no gano dinero con eso, y bueno cuando queráis hago los datos públicos para comprobarlo.  Openbravo, ¿Que cambio quieres que realice? ¿que apunte directamente al archivo?

Bien es cierto también que hubo una excepción. Puse un enlace a un artículo que consideré interesante en ese momento que fue el de Ciclo de vida de soporte recomendable para productos empresariales 2, ahí si que puede que me saltara las reglas del foro.

Lo más gracioso del comentario es la última parte «If you have nothing to say, don’t post.», la verdad es que tengo muchas cosas que decir y así lo demuestro cada día, pero ellos lo que realmente querían decir es un «shut up please» o lo que es lo mismo cállate la puta boca por favor.

Siguiente punto.

-Please stick to the given topics on the different forums we operate and pick an appropriate place for your post

(E.g. the Help forum is to be used if you are looking for help in English language. The Russia forum is for topics related to use of Openbravo in Russian Language or to discuss things related to the use of Openbravo in Russia in Russian or English language.)

Este también es gracioso. Cuando su actual director general quería anunciarse en algún foro siempre lo hacía en inglés, al margen que lo hiciera para calumniar infundadamente, independientemente del idioma del establecido en dicho foro. También es cierto que yo terminé haciéndolo por necesidad (no conozco tantos idiomas y no tenía un mecanismo para llegar a toda esa gente, ellos podían publicar en portada, yo no) y puestos a escribir en inglés incumpliendo las normas pues lo hacía en castellano. Eso no me exime de culpa, incumplí las normas, punto. Eso me recuerda a hace un par de días cuando vi a un coche de la guardia civil saltándose la mediana para hacer un cambio de sentido no necesario (ninguna urgencia a la vista), Paolo en este caso es la ley y se le permite, yo soy una mosca cojonera y no se me permite nada. En todo caso lo acepto.

Aún así es incluso más curiosa la alusión al foro en ruso. Nadie, y digo más, absolutamente nadie ha escrito en ese foro desde que se abrió hará cosa de mes y medio. El único que ha escrito una palabra en ruso he sido yo, quizá porque tuve una novia rusa, controlo bastante la codificación cirílica y al menos se las palabras de cortesía. Lo pongo como anécdota porque aunque incumplí las normas de este foro por los mismos motivos expuestos anteriormente, por lo menos en este caso está menos justificado el reproche.

-Do not cross-post identical posts in more than one forum

Lo dicho, era el único mecanismo para llegar a la gente en cualquier idioma accesible desde el foro. Si realmente fuera verdad que quisiera spammear hubiera publicado en todos los foros. Yo sólo lo hacía en el de ayuda de cada idioma, aún habiendo por ejemplo 10 foros en inglés (Contributing to Openbravo ERP, Developers, Documentation, Early releases discussion, Extension module webinars, Functionality, Help, Open discussion, Translations and localizations, User experience labs),  sólo lo hacía en el de ayuda.

Como decía era una cosa que llevaba esperando hace tiempo conociendo la filosofía cerrada de Openbravo. Y como digo en el título, esto está pasando de ser un cortijo de cuatro, a ser una casa de muñecas de 2, pero si algún día desaparecéis nadie llorará por vosotros porque os lo merecéis.

Yo mientras tanto sigo con mis clientes, que siendo tan transparente y claro como siempre dicen que están contentos conmigo. Sólo digo esto para demostrar que hay otra forma de hacer las cosas.

Un saludo.

Los problemas de siempre con merges en Openbravo ERP

Ya hablé en su día de porqué el sistema de módulos no aportaba nada nuevo al desarrollo de Openbravo ERP. Entre otras cosas hablaba del problema de los merges y como se trasladaba el problema del core a los módulos. Esta vez me ha tocado sufrirlo en un módulo de Philanthros ERP, pero hagamos un poco de historia.

Philanthros ERP es un desarrollo que se encargó a Openbravo para la versión 2.40. Openbravo también ha sido el encargado de migrarlo a la versión 2.50 y generar las plantillas y módulos actuales. Aunque digo que es Openbravo el que ha desarrollado Philanthros no os penséis que son los encargados del desarrollo del core, ni mucho menos, los encargados fueron los que pertenecen a lo que Openbravo llama Custom. Esto no es más que tener su propio equipo de consultoría y desarrollo dentro de casa, vamos lo mismo que puede hacer cualquier consultoría al uso de las que ya conocemos. De hecho se nota mucho que han sido estos quién han hecho el desarrollo por algunas chapucillas la baja calidad del código en muchos aspectos. Informes mal internacionalizados, estilo de código caótico y que no sigue la guía de estilo de Openbravo, código insertado a pelo (hard coded), etc.

Estos días se ha abierto una incidencia sobre el proceso de completar factura de compras en Philanthros ERP. Al revisar el código me he dado cuenta que en su día se personalizó el pl/sql que se ejecuta en este proceso y se renombró como CUS_INVOICE_POST (el original se llama C_INVOICE_POST), este a su vez se insertó en un módulo llamado sales. Pues bueno, cada vez que se ha ido actualizando el core se ha ido parcheando progresivamente el pl/sql orginal, pero el que se personalizó como es natural no ha estado afectado por estos cambios. ¿Qué he tenido que hacer? pues revisar los 33 parches que se han aplicado al archivo original desde septiembre de 2009, que es cuando se creó este fork por llamarlo de alguna forma, e ir integrándolos en la versión en uso.

No os podéis ni imaginar el trabajo de chinos que ha supuesto realizar todo este trabajo al estar tan desvirtuado el archivo personalizado que desarrolló Openbravo, pero bueno, parece que al final lo he conseguido.

Este es el problema de siempre, que cuando personalizas un archivo del core tienes que integrar manualmente los cambios que se le hagan.

Cheli

Ciclo de vida de soporte recomendable para productos empresariales 2

Hace casi un año que escribí sobre que ciclo de vida de soporte sería el recomendable para un producto empresarial. En aquel entonces comenté que 2 años me parecían excesivamente poco tiempo (me refería al ciclo de vida de soporte que tuvo Openbravo 2.35). Ahora Openbravo nos dice que va a tener ciclos de vida de almenos 5.5 años. Es un avance sin duda y es una cosa que mucha gente venía pidiendo desde hace tiempo.

Un día me puse a pensar que versión de las actuales de Openbravo (2.40 y 2.50) le pondría a un cliente nuevo si pudiera tomar yo la decisión. La principal métrica a utilizar sería que número de bugs tiene abiertos y cuantos se cierran en cada actualización. Pues bien, según esta métrica los bugs que se han cerrado en las últimas versiones son:

2.40 2.50
2.40MP12.19/2.50MP24 1 50 (3 nuevas funcionalidades)
2.40MP12.18/2.50MP23 3 86 (4 nuevas funcionalidades)
2.40MP12.17/2.50MP22 3 80 (5 nuevas funcionalidades)
2.40MP12.16/2.50MP21 7 98 (5 nuevas funcionalidades)

Esta tabla muestra los datos de las últimas 4 subversiones de Openbravo 2.40 y Openbravo 2.50, si nos vamos moviendo hacia atrás os podéis imaginar que la diferencia se hace mucho más notable. Tampoco os llevéis a error por la numeración, en 2.40 hubo un momento que pensaron que era mejor cambiarla y pasar a versionar con subversión x.y para cambios pequeños y (x+1).0 para cambios grandes, ya que supongo que pensarían que con una numeración muy alta daría la impresión de que habían parcheado mucho. Como veis esto en 2.50 no da lugar porque los cambios siguen siendo tremendos.

Otra diferencia fundamental es que en 2.50 al margen de corregir bugs se introducen en  cada versión muchas funcionalidades nuevas, lo que por lógica lleva a tener nuevos bugs y así hasta el infinito. Tampoco penséis que la diferencia es porque salen más paquetes de mantenimiento en una versión que en otra. La periodicidad de las dos versiones sigue un ritmo de más o menos un paquete al mes y ha sido así al menos durante los últimos 10 meses.

Con este panorama no tendríamos ninguna duda de que la versión 2.40 es la mejor opción, pero aún así alguno me dirá «Es que la 2.50 tiene módulos». Si tenemos en cuenta que la mayoría de los módulos que se proporcionan por parte de Openbravo y sus socios tecnológicos en el sistema de gestión de módulos no son libres, y que además yo tengo la política de ofrecer a mis clientes sólo software libre, entonces los módulos existentes no me servirían de nada. Sólo me quedaría el inconveniente de que aplicar actualizaciones y gestionar mis desarrollos es algo más eficiente en 2.50.

El problema es que antes no sabíamos hasta cuando Openbravo iba a soportar la versión 2.40, pero ahora nos aseguran que lo harán hasta septiembre de 2014, lo cual no está mal.

Llegado a este punto pensé, ¿y que hay de la 3.0?. Paolo Juvara dijo que a partir de la versión 3.0rc2 se puede utilizar en producción. Imaginaos el escenario, si yo con lo que os acabo de decir estoy poniendo en duda que la versión 2.50 sea la mejor opción para poner en producción, pues pensad que resultados podría arrojar el mismo análisis sobre una versión que está todavía en desarrollo. Pero no pasa nada, para solventar este problema Openbravo ha llamado a estas versiones RC, que típicamente significa Release Candidate o Versión Candidata, pero que está claro que para Openbravo no significa eso. Estas versiones en cualquier otro proyecto serio se utilizan cuando ya tienes lista la versión final, pero quieres dejar un margen de unos días o una semana para que la gente la pruebe, y en caso de descubrirse un fallo grave se corrige y se lanza la siguiente RC, y así hasta que no hay ningún fallo grave a corregir y se lanza la versión final. La diferencia es que lo que Openbravo llamó 3.0RC1 puede significar perfectamente 3.0 prealfa1 y así sucesivamente hasta tener una beta1 en la MP10 y una versión que podríamos considerar final en una MP30.

Por cierto Paolo Juvara es el nuevo director general y a parte de decir esta insensatez, es el mismo que en su día dijo que un software con licencia MPL (la de Openbravo) no se puede redistribuir. Menudo porvenir tiene Openbravo con esta persona al frente, muy triste.

Y mientras tanto algunos de mis clientes continúan pagando el soporte mientras la versión MP24 sigue sin aparecer en el gestor de actualizaciones, y después de notificárselo el día 2 en soporte, dos después del lanzamiento, a día de hoy todavía no nos han contestado.

Cheli

Openbravo 2.40MP12.19

Lista de cambios.

2.40MP12.19 md5

2.40MP12.19 (megaupload)

Nota: Estoy teniendo problemas de ancho de banda, por favor intentar primero el enlace de megaupload y si no funciona utilizad el otro.

 

Actualización: Si quieres obtener la última versión de la rama 2.40 ponte en contacto conmigo (cheli en aradaen.com).

 

Cheli