Odoo 9 - an Open Source and Marketing Nightmare

Why you shouldn't use anything Odoo (S.A.) related starting from version 9 pending further notice

H. Stadler

Odoo (the former OpenERP) is arguable one of the most feature rich open source enterprise resource planning softwares out there. And in general these features (like CRM, project management, contract management, accounting and much more) are quite good and as a small to medium sized company you will have a hard time to find a comparable product. Even if you also look at paid SaaS products.

However, it has also a really nasty code base, one of the worst community forums we know and a quite odd versioning strategy where there only is a stable channel with no milestone releases but only nightly builds. And those (also they are from the so called stable channel) are full of bugs out of the box.

In former versions of Odoo you could overlook this quite easily when you had some technical abilities yourself or resources at hand as when you were finished with your implementation you had an enterprise grade ERP solution which was hard to match. Unfortunately things are changing in the Odoo world and not in a good direction. The Odoo S.A. which mainly is maintaining the project decided to introduce an Enterprise Version next to the Community Version starting from version 9.
While an approach like this can work (like many other open source examples show) the people from the Odoo S.A. are doing their best to do this the worst possible way - so far with success. 

Their problem is that they have to invent new enterprise features for a product which already fulfilled nearly every common business life wish. Their solution to this problem is to rewrite old modules to make them much better (at least that is what they say). Now if you look at the quality of the Odoo code so far and draw conclusions regarding the skills of the Odoo S.A. programming team you may get frightened in consideration of such a task. And that's completely justified as what Odoo S.A. people did for version 9 was to change the data scheme in a lot of aspects. This alone leads to a lot of problems as key modules often have 10 or more dependent other modules (which have their own dependencies) and all need to respect the new schemes. A refactoring task the Odoo S.A. team cannot cope with. But as if this wouldn't be enough, when they feel like they are finished refactoring they remove the module from the Community Version to move it to Enterprise.

The result is a Odoo 9 with missing key features which is buggy as hell due to refactoring and ripped out modules to which some other modules still have dependencies.

If you now think "it probably isn't all that bad" then I invite you to have a look at account_analytic_analysis. This module did all the contract managment up to Odoo 8 and for example hr_timesheet_invoice (which you need if you want to be able to create invoices based on the time you or your employees work) is dependent from it. Every sane person would certainly say that these are absolute key features - at least for medium sized companies but probably even for small to one-person-companies. Well unfortunately at least Nicolas Martinelli from the Odoo S.A. did not care. If you check the history of account_analytic_analysis and then sale_contract (to which it got renamed during the heroic refactoring) in the Odoo git repository of branch 9.0 with something like 

git log -- addons/account_analytic_analysis/__init__.py
git log -- addons/sale_contract/__init__.py

you will see some refactoring work and a final removal with the reason that this now is an enterprise feature in August (one month before 9.0 official release). This leaves a great gap - on purpose and with no plans of filling it in future.

Now you could think maybe the Odoo Enterprise Version is worth it. Well we tested it just a little bit but it seems like it has the same (or an even higher) amount of bugs and need of customization as Odoo 8 and is in a quite high price class where you certainly will find much better and stress-free products.

Our recommendation currently is to stick with Odoo 8. You may even consider it for new implementations if you have a good tech department or partner as it has a rich set of basic functionality and you will probably be able to run your business with it quite well for much years to come. But beware! Expect that you need to do all future customization yourself and that no Odoo version past 8 will be useable anymore. If that is okay for you, you can lean back and watch how the Odoo S.A. drives this open source project into the ground. Well with a little luck there will be a good fork at some time but for that to happen somebody would have to be willing to maintain a code base of that quality...

Indicators for a failing open source project (at the time of writing this)