-
Opening Keynote - Unveiling Odoo 16
Fabien PinckaersDone
-
Patterns and antipatterns in Odoo module development
Alexandre FayolleDone
-
How to manage customers' sensitive data and keep them anonymized through the use of a blockchain?
Bléry GeoffroyDone
-
Building custom apps using React or Vue
Yi LinDone
-
Adding features to Odoo PoS : a case study
Iván TodorovichDone
-
Glovo's success case: how to deliver groceries in less than 10 mins with Odoo.
Andrés García CastillaDone
-
Generate a Ready-to-Deploy Odoo Add-on Directly from UML Diagram
Akhmad Daniel SembiringDone
-
The restructuring of an branded merchandize agency: Kick and Rush
Henri CaronDone
-
Easing the scale up process of an eCommerce company with Odoo
Samuel RiederDone
-
Discover Odoo LIMS, a set of fully integrated applications for laboratories
Vincent LAURENTDone
Stéphane is a founding partner and CTO of ACSONE, a Software Engineering company dedicated to crafting high-quality solutions based on Open Source technologies. He is an elected board member of the Odoo Community Association and an active member of the Python Packaging Community.
The Odoo ORM is extremely powerful and perfectly adapted to the dynamic and modular nature of Odoo.
However, its approach to declaring fields and class inheritance makes it difficult to leverage the capabilities of modern Python IDEs and static code analysis tools. It also leads to code that can be hard to navigate and verify as the field and method argument types are often not expressed explicitly, and the code of base classes is hard to locate.
In this fireside conversation, we shall discuss how the Odoo ORM could evolve to take advantage of syntactic Python features such as native class inheritance and type annotation.
Such an approach would open the door to leveraging modern tooling such as IDEs (for code completion, navigation, cross-referencing, and refactoring), static type checking, and code documentation.
The talk will be supported by a small, fully functional, and backward compatible patch to the Odoo ORM.