La OCA(Odoo Community Association) es una organización sin ánimo de lucro cuya misión es promover el uso generalizado de Odoo y apoyar el desarrollo colaborativo de las características de Odoo. Este post es una continuación de Contribuir en OCA: Introducción si aún no lo has visitado te animamos a que lo hagas.
Contributor License Agreement or CLA
Antes de comenzar a participar en la OCA es necesario realizar el ICLA o el CLA.
La CLA es un acuerdo que permite al futuro contribuidor, poder contribuir en un proyecto de desarrollo abierto. Este también, simplifica el proceso de colaboración con socios en proyectos, ya que pueden formar parte de un acuerdo de colaboración más amplio. Dichos acuerdos definen la propiedad de los derechos de autor en obras producidas en colaboración y, además, describen cualquier licencia de derechos de autor específicos en materiales generados por el proyecto.
Individual Contributor License Agreement (ICLA), el propósito de este acuerdo es definir claramente los términos bajo los cuales se ha contribuido la propiedad intelectual a la OCA y, por lo tanto, permite defender el proyecto en caso de que haya una disputa legal con respecto al software en algún momento futuro. Se requiere un CLA firmado para estar archivado para cada miembro delegado y antes de que se otorgue a un individuo derechos de compromiso para un proyecto OCA.
CLA or Corporate : CCLA, para una corporación que ha asignado empleados para trabajar en un proyecto OCA.
Estos documentos se deben enviar a: cla@odoo-community.org
Estructura de OCA
La OCA al ser un proyecto OpenSource, es totalmente accesible desde Github.
Una vez entramos en el Proyecto, veremos que existen una multitud de repositorios. Esto es debido a que los módulos se agrupan según su ámbito, por ej. un módulo de contabilidad española estará en el repositorio l10n-spain, por otro lado si buscamos un módulo dedicado a ventas seguramente esté en el sale_workflow, etc.
A parte de proyecto en Github, OCA tiene otras websites donde se puede encontrar mucha información, destacamos unas pocas:
https://odoo-community.org : Página oficial de la Odoo community.
https://odoo-community.org/page/ogranization : Explicación oficial sobre la organización.
https://odoo-community.org/page/Contribute : Página oficial donde explica las diferentes maneras de contribuir.
https://odoo-community.org/shop : "E-commerce" donde se pueden descargar directamente los módulos realizados por OCA.
https://github.com/OCA/maintainer-tools : Explicación sobre herramientas de mantenimiento.
Cada repositorio de OCA está supervisado por diferentes PSC's, estos son contribuidores experimentados en ese repositorio, estos miembros son independientes y su objetivo siempre será realizar un buen mantenimiento del repositorio donde están asignados. Los repositorios se gestionan mediante un proceso colaborativo basado en el consenso. No se sigue una estructura jerárquica. Mas bien, diferentes grupos de contribuyentes tienen diferentes derechos y responsabilidades en la organización. Dado que los PSC designados tienen el poder de crear sus propias reglas de autogobierno, no existe una visión única sobre cómo los PSC deben ejecutar un proyecto y las comunidades que albergan.
En OCA cómo tal no existen unos principios en concreto, pero si que se han podido extraer unos cuantos que se suelen llamar el "OCA Way":
Desarrollo de software colaborativo.
Licencia estándar comercial amigable.
Software consistente de alta calidad.
Interacción respetuosa, honesta y técnica.
Implementación fiel a los estándares.
Seguridad como característica obligatoria.
¿Cómo puedo contribuir?
Las contribuciones en OCA son muy diversas, no es necesario tener conocimientos técnicos para poder realizar contribuciones. Nos podemos dedicar ha:
Solicitar nuevas funcionalidades: Las aportaciones de nuevos conceptos que no estén soportados son muy valoradas, siempre y cuando se realice una explicación detallada y correcta.
Resolver dudas en el apartado de Issues en cada repositorio o en el foro oficial de Odoo: Una muy buena manera de contribuir es resolviendo dudas sobre el funcionamiento o sobre dudas generales que puedan tener los diferentes contribuyentes.
Escribir contenido de calidad: Cada vez más existen más y más videos, documentación, posts, etc sobre funcionamientos de Odoo, aún y así, hay muchos puntos que no se explican, por lo que tener un contenido de calidad que amplíe el existente es una gran manera de contribuir.
Programando: este punto puede incluir una multitud de funciones (realizar nuevos módulos, migrar módulos a nuevas versiones, realizar scripts de migración, etc). Es una gran manera de contribuir.
Revisiones: dado que es un repositorio de código, todo se debe de revisar, no es necesario saber programación para realizar una buena revisión de una aportación. Estas revisiones pueden realizarse de manera funciona y de código, por lo que, siempre está bien este tipo de contribuciones. Además cuanto mas revises y ayudes a los demás contribuyentes más te ayudarán a ti.
Realizar Traducciones: Odoo al estar realizado en una gran cantidad de localizaciones, necesita de traducciones. Por lo que si quieres que este todo completo en tu localización es una buena manera de aportar.
Informar de Errores/mejoras: Es posible que el código y las revisiones fallen, entonces entran los pequeños fallos o mejoras de los módulos, es muy importante explicarlo y detallarlo lo máximo posible para que se puedan aportar soluciones más rápidamente.
Hay que tener en cuenta que cuando se llega por primera vez a un proyecto OpenSource puedes sentirte solo, desatendido, etc. Pero no te desanimes, si contribuyes y tienes una buena actitud verás como poco a poco irás adquiriendo mucho conocimiento, una nueva manera de pensar/actuar y nuevos contactos.
P.D: Si es el caso de que es la primera vez que contribuyes en un proyecto OpenSource te recomendamos que leas la siguiente guía, que además de ser divertida seguro que aprendes cosas nuevas guía.