Decoding the Mystery: How to Know if a Company Collaborates with the OCA (Odoo Community Association)

Both Enric and Harald have been actively collaborating with the OCA for years, one on a more technical level and the other on a functional level in different areas. One of the big concerns that arise among their clients is how to detect if an Odoo implementer regularly collaborates with the OCA or not... Here’s a small fragment of their conversation.​

Harald: Hi Enric! Have you ever had clients who are unsure how to verify if an implementer is a regular OCA collaborator?

In my conversations with various companies, I always try to explain why it’s important for Odoo partners to work alongside the OCA. In my opinion, working this way benefits both parties because developers who frequently collaborate with the OCA tend to have an easier time managing and developing new modules that work seamlessly.

Even though it might not seem like it, in the long run, it can lead to cost savings and greater assurance that the code works exactly as the client desires. Moreover, I consider it an undeniable "seal of quality."

Once they understand this, they often ask me the same question: How can we know if a partner is truly involved with the OCA?

Enric:  Hi Harald, this is undoubtedly a relevant topic in the Odoo and open-source world. To start, a simple way is to visit the company’s website. Often, companies highlight their contributions and memberships in the OCA on their homepage or the “About Us” section.

Harald: But as we know, sometimes claims don’t match reality. It’s true that some partners claim to collaborate with the community when, in reality, they don’t. They argue that community collaboration can be costly or that they face difficulties getting their changes approved.

You’ll agree with me that you’ve often heard phrases like:

  • Everything takes forever in the OCA.
  • It’s really hard to get contributions approved.
  • I made a PR weeks ago, I’ve “pinged” several contributors and PSCs, and still, no one has responded or reviewed my work.
  • When another OCA contributor reviews my work, they always make me apply tons of changes before it’s accepted.
  • I think there should be a kind of "pre-OCA" where contributions could be made with fewer requirements and quality checks.
  • We have many modules we could release, but that requires investing too many resources.
  • We love the OCA and its philosophy; we have several interesting features pending to upload and plan to collaborate much more.

Based on your experience, what do you think of these kinds of statements and situations?

Enric: Well, these situations are common when dealing with people who don’t know much about the OCA. In my opinion, this can happen if we start working in a community with a non-collaborative attitude. To work with the OCA, we need to understand that the standards they ask for are meant to ensure everything works properly. They’re not there to make life harder but to help us in the future. On the other hand, there are cases where people simply use the OCA and then expect it to "work for them." That is, they misinterpret the concept of “Free Software” as in “freedom,” not “free beer.”

To work alongside the OCA, we must be able to give as well as receive, which is why we’re asked to review the work of others. By seeing how others work, we can help them improve, and we can also discover ways to improve ourselves.

For example, when I started working with the OCA, the beginning was overwhelming. Everyone was asking me for changes and small improvements that I didn’t fully understand. Now, I see that, in the end, the outcome has been much more positive by collaborating according to their rules. Still, it’s always good to check externally if the person we’re dealing with is a true collaborator. How can we verify this? ​

Harald: The most important thing is to verify it on a trusted site. The first thing I would do is search for the company name on the OCA website with all its applications: https://odoo-community.org/shop. This will allow us to determine if the company has created modules within the community or has been a contributor.​

It’s also advisable to search for the company name in the OCA GitHub repository https://github.com/OCA), where they might be collaborating by updating modules or adding features.

Still, I also find it crucial to get information about the individual user. Often, the person has changed organizations, but that doesn’t mean they’ve lost their experience collaborating with the community. For example, we can take a look at the search function (github.com/OCA):


This will open a window where I can search for a username or directly the name of a person:


If the user is active, we should see several results:


We can also go directly to the GitHub profiles of the organization in question and filter their contributions to check which ones were made in the OCA. If I wanted to verify your contributions, I would go here:


And if I really wanted to do an in-depth analysis of your technical contributions, I’d look at your PRs directly to get an idea. One option to obtain this information could be the following:



It’s also possible that the contributions are not made directly by the user but rather by the implementer’s company team. Considering this, it’s also a good idea to check the users working for the company to verify their level of involvement with the community.

Do any other strategies come to mind?

Enric: Of course, Harald. Another interesting option would be to check if they have given talks within the OCA. These can be found on their YouTube page(https://www.youtube.com/@OdooCommunity). To participate as a speaker at this event, you need to propose a talk about the work done in the OCA regarding new implementations or changes. Generally, we should find serious talks with interesting content focused on the community, both on how to work and on new functionalities.

Still, I would also opt to ask the implementer directly. I believe there should be a strong trust with a partner, and asking direct questions can provide valuable information, helping to establish a solid relationship with them.

I’d rather work with a partner who doesn’t collaborate with the OCA but can explain their reasons, than with one who claims something only to find a completely different reality after investigating.

We must remember that the relationship between an implementer and their clients should be based on mutual trust, as they are the team that will adapt the software to our needs, which involves a long-term relationship.

Harald: In summary, to discover if a company collaborates with the OCA, the first thing we should do is trust their transparency or ask them to show us their recent contributions.

If we want to complement the research, we can find out on the OCA website as well as on GitHub.

Enric: Exactly, Harald. With these steps, those interested in Odoo and the OCA can make more informed decisions and support companies that are truly committed to the open-source ecosystem.

Conclusions

Collaborating with the OCA is an important indicator of a company’s commitment to the open-source world and Odoo. Moreover, it is an unequivocal guarantee of the quality of the code developed.

Following Harald and Enric’s advice, companies can be better informed and make decisions that support those who truly embrace the values of the OCA and open source in the Odoo community.

Next time you wonder if a company collaborates with the OCA, now you have the tools to find out!

# Odoo
Ranking of Top Contributors to the Odoo Community Association (OCA) in 2022