Planet Odoo

Revamping Odoo's Entire UI - Roadmap Odoo 17

October 17, 2023 Season 1 Episode 38
Planet Odoo
Revamping Odoo's Entire UI - Roadmap Odoo 17
Show Notes Transcript

In this week's episode, we are keeping up with our roadmap marathon and exploring the tech improvements expected for the new version, Odoo-wide.
 
We sat down with Damien Bouvy, Product Owner at Odoo, to discuss the major changes that are coming to the platform, from a complete revamp of the website and interface to a new UI, without mentioning all the cool features in between.

Do not miss this exclusive sneak peek on Odoo 17, tune in now and join the conversation!

_______________________________________________________________

Don’t forget to support us by clicking the subscribe button, leaving a review, and sharing your favorite episode!

➡️  Secure your spot for Odoo Experience here.
➡️  Try Odoo for free

Concept and realization : Manuèle Robin, Ludvig Auvens, Marine Louis, Cécile Collart
Recording and mixing : Lèna Noiset, Judith Moriset
Host: Olivier Colson





Damien:

I think it's the first time that we've merged something so visually big, not for we revamped the UI. That's actually one of the reasons that we did it is that it was a little bit outdated. Some of the UI trends or UI good practices were not no longer applied or relevant. And so I think it was kind of time to do a little bit of a freshen. One of the big changes we did, which not everybody notices, at least consciously, is that we made the font bigger. You can now reorganize the icons as you like as a users. Basically, we didn't add a lot of features to the automation, so we added a little bit of stuff, of course, but what we did was make it way simpler to use.

Olivier:

Welcome back to Planet Odoo. This week we are continuing our road map marathon by exploring the tech improvements expected for Odoo 17. We are joined by Damien Bouvy, product owner at Odoo to discuss the major changes that are coming to the platform. This includes a complete revamp of the interface and enhanced user experience and new features to improve the solution. These are some big changes and we are excited to share them with you. So whether you are a current Odoo user or you're just getting started, this episode is for you. Ready? Let's dive in. Hello, Damien.

Damien:

Hello, Olivier.

Olivier:

So today is a very broad episode, actually, because it's the tech roadmap. What is the tech roadmap? What are we going to talk about?

Damien:

Oh, uh, well, we. We saw each other a few days ago to discuss a little bit of what we were going to talk about. Obviously, we can't talk about. Yeah, no, we can't. We can't talk about everything because it's either way too much or it's either way too technical. And I mean, I like Python and XML as much as anyone, but I don't think describing describing XML attributes online is going to be is going to be fine.

Olivier:

Come on. That would be kind of experimental. You know, reading each of of of each attribute of an XML file in a podcast like this, like asMr style, that would be something I think.

Damien:

It depends if you want to keep your listeners or.

Olivier:

Not, I'll come on, we'll try it on Twitch someday. Uh, so, uh, what is your expertise exactly? So you're a product owner, and so what are the things we're going to discuss today?

Damien:

Um, I'm a product owner indeed, but I have somewhat of a bit of a special I still have one feet in the functional side with with E-sign, for example. But we're not going to talk about that today. What I usually work on is the frameworks, both of them. So either the web, let's say the backend framework with the python and stuff like this, the Http stack or the web framework. So the front end framework, which is the whole, um, build framework. So everything you see in the web client and today I think we're mostly going to talk about that because it's usually the most visible stuff. And in that area, in the crossing of that area actually is also studio, which is kind of technical, kind of functional, but really interesting to manage, actually.

Olivier:

Sure. Sure. There are, of course, always tons of topics that we don't talk about big things, uh, UI. So user interface, uh, because I know it already, so I'm spoiling it a little bit. A little bit. But uh, there is a big change coming for that in 17.

Damien:

I'm not even sure you're spoiling it because we actually released on the SaaS

Olivier:

A few months ago. But come on, people maybe don't know about it. Uh, and.

Damien:

It's actually, it's quite I think it's the first time that we've merged release.

Olivier:

Just before.

Damien:

The release. Exactly. Usually we merge that on like the five, the 5th of October

Olivier:

But here it's a full revamp of the interface. It hasn't occurred since Odoo version nine, I think.

Damien:

Uh, version nine. I think there was also in version then like some sort of improvement of what was done in nine, because what was done in nine was done in a hurry. I mean, nine is a it's like a nightmare we all had together. I think it was a long time ago. But yeah it has been super long since we revamped the UI. That's actually one of the reasons that we did it, is that it was a little bit outdated. Some of the UI trends or UI, let's say good practices were not no longer applied or relevant. And so I think it was kind of time to do a little bit of a freshen.

Olivier:

And globally speaking, so of course you won't be able to show it. So I don't ask you to describe each and every button that are in the screen, that will be for twitch as well, what are the key things that changed in the, in the UI now? So, uh, maybe the name of this new UI.

Damien:

It was an internal name, but I think it's kind of caught on. We call it milk. Um, because it's very white. And I think one of the reasons it got so white, it's that we wanted to put the focus on the content and what you're working on. So we wanted to kind of have the rest of the interface be less in-your-face, be less distracting, and we wanted to make it more readable. So that's also why one of the big changes we did, which not everybody notices, at least consciously, is that we made the font bigger. It seems like a stupid change, which I think we moved from like 12 to 14 or 14 to 16. I don't remember the number exactly, but it actually changes a lot because everything gets a little bit bigger. So you have to like squeeze some stuff to make room for the content because again, that's what we want to you to see, is basically if you're working on a task or on a sales order or on the CRM, we want you to see what you have on the record and the discussion that you have.

Olivier:

The focus shouldn't be on the menu bar on top. Exactly.

Damien:

And in the past it was kind of that because if you look at what was in color in visible.

Olivier:

So no more purple bar, no more purple bar.

Damien:

And it's actually it's kind of interesting because when we when I saw the first part of our identity for so long that I totally agree.

Olivier:

That was my first reaction as well. It was like, Oh, it's gone. Where is.

Damien:

It exactly? We lost a little bit, I think. I think we lost a little bit of brand identity or in-your-face brand identity, maybe something that was a little bit too visible in my opinion. We still have it and we still have the the Odoo. It used to be pink, now let's call it, I don't know, mauve or purple. Um, we still have it in the main buttons and in different places, but it's much, much more subtle, which I think is fine because as I said, the focus is on the content. And sure, brand awareness is cool and we still want it, but I don't think it should be as obvious.

Olivier:

Yeah, of course the brand awareness is fine, but at the end of the day what you Exactly. Exactly. Um, maybe also the icons. So there are changes with the icons, right?

Damien:

It's it's a funny story because the icons are kind of it was the, the crux of to like key users or key participants in the in the design nobody really liked them or at least at every time somebody did not like them. And it was difficult to, let's say, make the difference between like just simple rejection of change. Like I prefer the way it was before versus okay, there is really a problem with the icons. Maybe they are too difficult to to distinguish or something like this. And it's actually one of the feedback we got the most even after we finished the redesign and merged it and started using it internally. I think I received a few feedback saying "I don't like the new icons" and nothing more. When you get feedbacks like that, usually you know that you don't have to do something or anything about it because, well, it's not constructive, constructive criticism. It's just like a knee jerk reaction of, Oh, it was better before.

Olivier:

Yeah. Is this a matter of taste? And you're saying, Oh, I don't like it, but,you're not thinking about the "Why" you're not liking it.

Damien:

Exactly. And we have another funny story about the icons, and I'm not sure if that in the end, the version we chose, I think he tested it with his children

Olivier:

He experiment on his children.

Damien:

It does that quite often, actually. It's come up a few times in internal trainings or stuff like this. And he asked them to match the name of the apps with the icon, and they basically got everything right, which was like not the best test, but simple and good and kind of funny test to see that. Okay, they make sense. People will find them. And in in other areas also, we made it somewhat easier and less necessary to distinguish the icons. For example, for example, what we made for version 17, but I think it was actually merged in 16.4, is that you can now reorganize the icons as you like as a user, so you can have the icons in the order you want. I can have them in another order basically like the iPhone home screen or like on your mobile phone. Exactly.

Olivier:

Talking about mobile phones. What can you tell us? Is there something new on on the mobile side of things?

Damien:

Yes, it's kind of a big step in 17 that we did is that we we are switching away I wouldn't call them native mobile apps because they're not really native. They're basically just a wrapper around the website. But we publish them on the Google Play store and the Apple iTunes store or App store. And now we're moving away from that to a technology that is called progressive Web apps or PWAs for those in the know. And the idea behind that is that instead of having to go through a publisher and to validate all the updates with them and then have back and forth conversation with kind of stupid publisher rules and now you just have to make a website, tweak it a little bit so that the browser can recognize that it's more than just a simple website, it's more like an app. And then your OS, so either iOS or Android or Windows does it as well will suggest to you, hey, actually this website, you can install it as an app, just click there and you will get offline notifications, you will get the app in your dock or the Windows taskbar as any other app, and then you can install it if you want. It really behaves like a native app.

Olivier:

And just to be clear,the apps that were in the app store so they will totally

Damien:

No, not right away. Clearly we have like an interest in staying there because there is some kind of visibility to being there. The problem we have is that Apple is really difficult to work with. Actually. We had to make some changes specifically for them. For example, if you open the the iOS app, instead of having a grid of icons, you will have a list of apps because they don't want you to put a grid of icons because it looks too much like their homescreen. Or so they say. It's kind of weird, but I mean they kind of take their users for a bit of like limited mentally, I don't know. But that's an actual rule we had to abide by. And actually that's one of the main pros of switching to a progressive web app is that you don't have to take Apple's bullshit anymore because there is a lot of bullshit in their iTunes guidelines. We also had, I think we had in the past, but now that's been solved. We had issues with pricing and the fact that you could pay your subscription from the app, from the app, and we didn't use the in-app purchase mechanism of Apple and they didn't like that at all, I can tell you that. And we had to send a lot of back and forth emails. And right now the problem we have is that Apple doesn't want any apps published on the App store that basically where most of the code comes from somewhere else than the app package itself. But that's what Odoo does because obviously your server is hosted maybe not even on our cloud and so it can be hosted anywhere. You can have any kind of JS code for customizations. And so it's basically impossible to package all the JavaScript code in the app.

Olivier:

Actually from the way you describe it sounds like the kind of tasks that

Damien:

Exactly. And and in fact we haven't been able to update. I don't know if it is publicly known, but maybe it's a scoop. I don't know. We haven't been able to update the App Store app for nearly two years, I think, because they want us to abide by this rule. But we obviously cannot. It's a technical impossibility. And so at some point, indeed, these apps will get unpublished simply for, I think, for the simple reason that we're not updating them anymore. And Apple from time to time will tell you, okay, you haven't updated your app in 3 or 4 years. We will unpublish it for you and we won't have any way to appeal to that, I think. Or maybe we will for a few months, but at some point they will win anyway. So yeah, the apps will leave the stores at some point. We don't want that because we think it's a good way to also get visibility. If you look on the App Store and you find Odoo, it's always very comforting to know that your app exists. Sure. But yeah, it's not going to be there forever.

Olivier:

Okay. Moving on to maybe some more framework, internal things, the backend side You told me there were new things coming from for automation, so maybe we can start recalling what automations are.

Damien:

Yeah. So automations is basically a way for you to customize some workflows. So for example, if you work in project in CRM, are usually the good examples. A good example for that, let's say you have a project management stages and so you may want an email to get sent when a task is marked as done, for example, or when a task arrives in the project. Or you may want to, I don't know, maybe assign the task to someone specific if some VIP tag is added on the task. Stuff like this and automate.

Olivier:

You do that.

Damien:

In the past you had to first switch to the developer mode, which is always, It's like for mere mortals. Yeah, we, we ask you to go behind the scenes, but you don't really know your way around. So it's kind of, I mean a bit impressive. And then you had to go into technical menus, configure some domain, which again, if you are not technical, you have no idea what I'm talking about right now. But if you are, then you already know that it's probably too technical for the normal people. And you had. Reconfigure all of that in a very complicated way. What we try to do here is that basically we didn't add a lot of features to the automation, so we added a little bit of stuff, of course, but what we did was make it way simpler to use, and it began by making it accessible through something else than a technical menu in the developer mode. Now if you have basically any Kanban view, you can simply click on the configuration icon for a column and you will have an entry point to get the automations. Once you do that, we try to detect in what state you were when you did that. So for example, if you click on the on the automations menu for the done stage of your project, let's say, then we will say, okay, if you create an automation now, it probably means that you want it to happen when the stage is switched to that done state and so it will be pre-configured for you. You can change everything of course, and it will even be named for you. For example, stuff like this. We already.

Olivier:

Tried to make it, uh, to, to, to, to avoid the configuration steps as much as

Damien:

Things. Exactly. Because when you have to say to people, you have to select the It's already not clear. It's already not.

Olivier:

Clear. For us it is.

Damien:

But exactly. And so all that is usually pre-configured. And then we tried also to make the actions themselves way clearer. So for example, if you say, I want to send an email when this happens, in the past you had to like really understand the difference between sending an email, posting a message and posting a note. And again, if you're even internally, sometimes it's not clear to all developers. So for non developers, it's really not clear.

Olivier:

Yeah, and that's something you need to learn. But indeed, uh, I personally use Odoo in a bunch of personal projects and um, and I had to explain that to people every time.

Damien:

Yeah, exactly. And so instead of having to like, discharge without any context, Here's if you select that, here's what will happen exactly. And so that's the kind of stuff that we did hide some stuff that was kind of useless for normal people, leave it in the developer mode and stuff like this.

Olivier:

Okay. Um, still on the backhand side, uh, there are things changing from the Uh, because it's something you notice in the UI. I mean, the first time I saw it again, like for the purple bar, I was like, Whoa, what is that?

Damien:

It's a it's an interesting change as well. So in the past you had, like we called it an advanced search. You had a dropdown menu where you could select a field. Let's say, for example, I want the customer of my task to contain this kind of string in its name, but it was not that advanced. And actually, if you really wanted to do something advanced, for example, saying, I want to see all the tasks where the customer is based in France, I mean, you had to write it technically, so you had to go into, again, a developer menu, go to the filters, write a domain which for mere mortals is complicated or even magic. And now what we decided to do was, okay, if you want to do an advanced search, we will allow you to literally we call traversing relations so you can ask for the country of the customer, of the project, of the task to have some kind of attribute traversing.

Olivier:

Because every time it's accessing a new model that is linked to the previous

Damien:

You're moving through the database, you're moving through models to get the And we've also made it so that these searches should be more efficient. For example, in the past, most of these searches were text based, but if you have 5 or 6 million customers doing a text search can be really slow. And now instead of doing that, we suggest instead of using text searches to really define a clear data set so you can select a customer, a specific country, a specific whatever, but not just text searches, you can still do them. Of course, we didn't remove any options, but we made them efficient by default.

Olivier:

Also for translated values. It was a bit, uh, yeah.

Damien:

For example, if you search, all the customers that have the country "Belgique", working in English in the same database. Your filter will not work because it will not be called "Belgique".

Olivier:

It will be "Belgium" Of course not "Belgique" Yeah.

Damien:

And so this solves these kind of issues, but of course we had to really walk a use. And that's I mean, that's where usually I come in. And Fabian also kind of intervenes a lot in those IDs. But yeah, it's a fine line to walk. And here I think it was clearly way too simple in the past. We moved the cursor a bit towards complexity and powerfulness. We will see of course with usage if it's maybe too complex. I don't think it is. But sometimes you have the curse of knowledge and you don't always kind of can, um, expect what your users will do with the new tools you give them.

Olivier:

Talking about tools given to the users. Uh, we changed some things for approvals as well. So that's again a confidential feature that not everybody. Audi knew about. So what is it?

Damien:

I wouldn't say it's confidential. I would just say it's kind of discreet.

Olivier:

Confidential than the advanced search. Come on. Yeah.

Speaker3:

Yeah.

Damien:

It's way less used. And it was actually by design. So the story of approvals is that what you can do with studio is select a button, for example, the "confirm" button on the sales order or the "post" button on the invoice. And you can say, okay, I want this button to be validated by someone else before someone can click them. So for example, I can only validate invoices if Olivier, which is the CFO of the company, gives me the the approval to do so. And you can make them conditional. For example, you can say, okay, but if it's an invoice for more than 10K, then I need two approvals because it's kind of sensitive. And this has existed for I think two years now, and we initially developed it with the idea that it would remain a corner case because our point of view is that if it's a really small company, usually trust is enough. And if it's a middle company, maybe they will want to use that. And if it's a big company, this tool will be useless because they will want something more complicated with like multi-step approval and stuff like this.

Olivier:

And I guess something maybe too specific per company.

Damien:

That was our reasoning. What we've seen, in fact, is that while we thought it would be really a small corner cases that it's now become used by way bigger companies than we thought. And the problem is that this limitation, this approval flow was since it was meant like kind of a really limited feature, was not fully secure. If you had a smart access in your user base, they could bypass it, if they knew how to do it. And what we've made now is that these approvals are now completely locked on the server and actually checked for each call, so there is no way to bypass them anymore. And we've also added quite a few features to kind of allow multi-step approvals without doing anything too complicated. And we also allow users to configure people to be notified about these approval requests. For example, if the CFO or VA is on holiday, I might want to still notify someone else that can jump in for him and validate to avoid locking everything up in the company.

Olivier:

So a bit more feature and more secure so everybody can use it.

Speaker3:

Yeah.

Damien:

Yeah. We I honestly still think that it's probably not needed when people ask And actually that's what I tell a lot of functional consultants when they come back to me talking about that, it's like, Are you sure you're your customer cannot trust their five employees?

Olivier:

That's raises a lot of questions, actually.

Speaker3:

Exactly.

Damien:

But still, even in medium and sometimes large sized companies, they want to use But so we had to focus a little bit more on that for 17.

Olivier:

Now we we are reaching the end of the of the episode. But there's something you mentioned at the beginning. You were talking about Studio and you didn't tell tell us anything about it yet. So is there something with Studio that you can tell us?

Damien:

Oh, there's a lot of things with studio. We have a lot of small details and in fact, the automations also kind of get interfaced with Studio. And one of the big new stuff that's also coming for 17 is the integration with Website. If you've ever used Studio, you know that the the demo data or the demo flow we kind of suggest when you use it is the management of real estate properties that you may want to sell, which is a good example until you think about website publishing, because in the past you could manage your real estate properties but you could never show them online, which is kind of counterintuitive. Now we will allow users to generate automated web pages and listing pages. So for example, you will be able to see a list of all the items you created through a custom model on Studio, on the website, and then you will have the possibility to visit a page for each of these records. And what we did, of course we tried to use sensible defaults. So for example, if you configured a price field, on the record, we will include it in the page. Stuff like this. If you have set an image, we will also display it on the website. Then of course after that, if you want to customize it a bit more, you have to know your way around XML and the Odoo framework a little bit. But yeah, as usual, if you want to take things further, you will need some technical expertise or someone to do it for you. But we try to make it usable by normal people and to have sensible defaults. So that's the idea.

Olivier:

More powerful tools and less less work for developers.

Damien:

Yeah, that's the idea. We we did a lot of that in Studio actually this year. A lot of small details to give more power to normal users. So you have more, a lot more options on fields and stuff like this. These are more details. So we won't go into into into them now. But yeah, for the first time in three years we've a lot to show for Studio because a lot of the time before was used to refactor stuff. We switched JavaScript frameworks and. Took actually up until four months ago to finish all that work. And now we're nearly done. And we again could introduce new features, which is a really good feeling. Cool.

Olivier:

Cool, cool. And I guess people interested by that will just have to come to Odoo

Damien:

Indeed. We have several talks planned. I don't remember which one I will be giving, but I think there are 4 or 5 talks about new Studio features and new framework features that will be given.

Olivier:

So it's the end of the episode. Sorry.

Speaker3:

And it was really quick. I mean, maybe it's a compliment.

Olivier:

Can you give us as a conclusion a glimpse at the future. Other things you know that you are going to work on for Odoo 18 or later, and that you can tell us now.

Damien:

It's a difficult question, and we talked about it.

Olivier:

That's why I'm here for.

Damien:

We talked about it a little bit a few days ago. But the fact is that if we had really interesting features planned for V 18, we would have actually done them for V 17 because that's where we want here. We don't do a lot of long term planning. If we have a good idea, we do it immediately. But I think the, the focus will stay the same on the technical aspect is that we want to improve performance. For example, what we did this year was in the past when we did performance improvements, they were usually isolated to either the back end or the front end framework. Here this year we've really worked the both team work together to improve performance from like an integration point of view, so the client will optimize a little bit the queries it make to the server and the server knows what the client will usually ask and can again optimize stuff so that things are faster and you don't have to to do as many network requests to get the information you need. So and I think we'll keep going in that way probably.

Olivier:

So that would be the final word, Odoo will be blazing faster than before.

Damien:

It's kind of become a meme at this point. But yeah, that's why I'm saying it. You know, you have to.

Olivier:

It's a tradition. Okay, Well, Damiaen, thank you for your answers.

Damien:

Yeah, thank you for having me.

Olivier:

Oh, my pleasure. That's all for this sneak peek of the main tech features and changes coming for Odoo 17. If you're eager to learn more, I recommend you check out our other roadmap episodes, which cover everything from our accounting to human resources modules. But keep in mind that this is just a small taste of what's to come to discover all about Odoo 17 and meet the community. Be sure to attend Odoo experience in November. I hope to see you there. Until then, see you next time. Cheers.