WEBVTT 00:00.000 --> 00:08.000 Is everyone excited for this next talk? 00:08.000 --> 00:10.000 Yeah, I am. 00:10.000 --> 00:14.000 All right. 00:14.000 --> 00:24.000 So, the semester is here to tell us about court eutails in a bunch of and how far. 00:24.000 --> 00:26.000 Thank you. 00:26.000 --> 00:27.000 Hello everyone. 00:27.000 --> 00:30.000 So, first I'd like to start by saying that I'm not the employee. 00:30.000 --> 00:34.000 It's not a material project and I've been a deviant developer for the last 20 years. 00:34.000 --> 00:40.000 And I love reading what people have been telling about modia and deviant and Firefox and this project. 00:40.000 --> 00:43.000 So, I have a PhD in reading those 12s. 00:43.000 --> 00:45.000 What are the courtyles? 00:45.000 --> 00:48.000 So, who doesn't know what it is in that room? 00:48.000 --> 00:51.000 One person, I think, is a joke. 00:52.000 --> 00:55.000 So, the first implementation is much older than many of us. 00:55.000 --> 01:01.000 If you look at the sort of the first unique, you will see an implementation in assembly. 01:01.000 --> 01:11.000 The second version in 72, what in see and the code is pretty similar and the usage and the interface is pretty similar to what you see currently in the very simple implementation. 01:11.000 --> 01:20.000 So, when you think about it, 50, 60 years after, we are still using what those folks did a long time ago. 01:21.000 --> 01:23.000 So, you know those comments. 01:23.000 --> 01:25.000 I'm not going to ask you if you know those comments. 01:25.000 --> 01:27.000 It would be an insult in that room. 01:27.000 --> 01:31.000 That one, the position that you know all of you, you know the first two. 01:31.000 --> 01:35.000 So, the last one, over the usage, it almost is for it's Linux. 01:35.000 --> 01:39.000 Next is video, who uses that comment in that room? 01:39.000 --> 01:40.000 And over it. 01:40.000 --> 01:42.000 Who knows what this stack? 01:42.000 --> 01:44.000 Oh, a few people. 01:44.000 --> 01:46.000 You are crazy guys. 01:46.000 --> 01:48.000 And the last one, PR. 01:48.000 --> 01:51.000 I don't know anyone who uses that one in real life. 01:51.000 --> 01:52.000 It's for printing. 01:52.000 --> 01:58.000 It is one of the comments where we still have work to do, but as nobody raise their hand in the room. 01:58.000 --> 02:02.000 So, we have more than one and a red comment in that project. 02:02.000 --> 02:05.000 I did two presentations on that stuff. 02:05.000 --> 02:13.000 Way more technical than the one I'm going to do right now because I want to focus on the human aspect of making those kind of changes and not really on the technical level. 02:13.000 --> 02:23.000 So, if you care about technical implementation, you will see me talking with the same accent three years ago and last year about those projects. 02:23.000 --> 02:29.000 But basically, the TLDR of what I presented and what we see is that it is first a super interesting project. 02:29.000 --> 02:30.000 We are all gigs. 02:30.000 --> 02:31.000 We love to create new stuff. 02:31.000 --> 02:32.000 Why do we do it? 02:32.000 --> 02:34.000 Sometimes we don't have a good reason. 02:34.000 --> 02:36.000 Just learning something for me to ask COVID. 02:36.000 --> 02:40.000 We were bought at home in France and I think in many countries in Europe. 02:40.000 --> 02:42.000 So, I want to learn the rest. 02:42.000 --> 02:43.000 I have been a Brazilian employee. 02:43.000 --> 02:45.000 I know many of the folks who created that language. 02:45.000 --> 02:46.000 So, I want to learn it. 02:46.000 --> 02:48.000 And why not carry it? 02:48.000 --> 02:50.000 Because see sucks. 02:50.000 --> 02:54.000 So, I'm going to throw a bit because I understood that this is a pre-firement. 02:54.000 --> 02:56.000 I think that see the language of the past. 02:56.000 --> 02:59.000 I think the new generations that I don't want to learn see. 02:59.000 --> 03:02.000 When I was at the university, it was a school ball. 03:02.000 --> 03:03.000 And fourth round. 03:03.000 --> 03:08.000 And now for me, I think that the next generation is going to sing the same. 03:08.000 --> 03:11.000 About see that I did about COVID and fourth round. 03:11.000 --> 03:13.000 This claimer is not about license. 03:13.000 --> 03:14.000 I don't want to talk about M.A.T. 03:14.000 --> 03:17.000 That is not the debate that is interesting to me. 03:17.000 --> 03:20.000 I know that some people are very passionate about that. 03:20.000 --> 03:25.000 But I'm not as long as it is a debyan compliant. 03:25.000 --> 03:26.000 I'm happy. 03:26.000 --> 03:28.000 And the rest is amazing for plenty of things. 03:28.000 --> 03:32.000 And I will go back to that in the next slide. 03:32.000 --> 03:34.000 So, a few months ago, 03:35.000 --> 03:38.000 John, the VP of Canonical approached me saying, 03:38.000 --> 03:41.000 oh, we want to evaluate your tool for the next release. 03:41.000 --> 03:42.000 Full disclosure. 03:42.000 --> 03:43.000 Also discussed with Max. 03:43.000 --> 03:45.000 Total worth a few years ago about it. 03:45.000 --> 03:49.000 And they published a blog post after discussing together. 03:49.000 --> 03:54.000 And we have been coordinating closely for the last six or seven months 03:54.000 --> 03:57.000 on that project with people who have been also debyan developers 03:57.000 --> 04:00.000 for people that I know from the community. 04:00.000 --> 04:03.000 Canonical is really trying to focus on what matters. 04:03.000 --> 04:07.000 And this project is really a great step to show that you can do this kind of thing. 04:07.000 --> 04:11.000 So taking a piece of software that has been exact, 04:11.000 --> 04:15.000 that has been shipping on software for like 20 years. 04:15.000 --> 04:18.000 And still being relevant and still works. 04:18.000 --> 04:20.000 But we want to show that. 04:20.000 --> 04:23.000 And we don't want to be right everything in the window that makes no sense. 04:23.000 --> 04:25.000 It's not a rest everywhere. 04:25.000 --> 04:26.000 It is being deliberate. 04:26.000 --> 04:30.000 So with Canonical, it's started with that project and pseudo. 04:30.000 --> 04:33.000 And there are also evaluating the pieces of software, 04:33.000 --> 04:40.000 especially unsafe software that I've been existing in Linux before for a long time. 04:40.000 --> 04:43.000 So we want to do also a great deal in production. 04:43.000 --> 04:46.000 So we did that not in the latest LTS of Ubuntu, 04:46.000 --> 04:50.000 but in the one before to make sure that we identify some classes of error. 04:50.000 --> 04:54.000 And they also worked and spent a lot of time on the explicit wallback. 04:54.000 --> 04:57.000 So that means if you didn't work, you have as a user. 04:57.000 --> 05:01.000 Or as a package of the capability to roll back to the previous version. 05:01.000 --> 05:05.000 And they also think that the rest is a future of Linux. 05:05.000 --> 05:11.000 Linux has a whole distribution and also the kernel and various pieces of the stack. 05:11.000 --> 05:15.000 And I have to do some product placement. 05:15.000 --> 05:19.000 It's not the first major software we've done in the rest in Ubuntu. 05:19.000 --> 05:21.000 The first one is Firefox years ago. 05:21.000 --> 05:25.000 So I have to talk about Firefox in my slide. 05:25.000 --> 05:28.000 So I guess everybody knows about that one. 05:28.000 --> 05:30.000 So it's KCD. 05:30.000 --> 05:31.000 Yeah. 05:31.000 --> 05:32.000 I love that one. 05:32.000 --> 05:35.000 But yeah, someone is wrong and didn't tell it. 05:35.000 --> 05:38.000 I have a question for you who reads in the room I can use. 05:38.000 --> 05:40.000 Yeah, almost everybody. 05:40.000 --> 05:41.000 Cool. 05:41.000 --> 05:43.000 Who reads phonics? 05:43.000 --> 05:45.000 Who reads a form on phonics? 05:45.000 --> 05:46.000 Only a few. 05:46.000 --> 05:48.000 You're crazy. 05:48.000 --> 05:50.000 You should not do that for your health. 05:50.000 --> 05:51.000 It's not healthy. 05:51.000 --> 05:53.000 Who reads Reddit. 05:53.000 --> 05:54.000 Almost everybody. 05:54.000 --> 05:55.000 Cool. 05:55.000 --> 05:58.000 And who cried reading some of those comments? 05:58.000 --> 06:00.000 Yeah, everybody. 06:00.000 --> 06:04.000 Well, yeah, in mini situation, I'm like, especially with my works. 06:04.000 --> 06:06.000 Sometimes people write stuff about Maria. 06:06.000 --> 06:08.000 I'm like, oh, it's exactly what happened. 06:08.000 --> 06:09.000 It's exactly the way things are going. 06:09.000 --> 06:11.000 And this is the same for that project. 06:11.000 --> 06:14.000 So what I'm going to show you now, it's by the example of people 06:14.000 --> 06:17.000 for links or projects or things to be seen on the internet. 06:17.000 --> 06:22.000 And trying to pass what they wrote and trying to explain what they wrote 06:22.000 --> 06:24.000 at the time it's half. 06:24.000 --> 06:27.000 But I also explain what else I've streamed. 06:27.000 --> 06:32.000 We have been doing to prevent those things from happening. 06:32.000 --> 06:35.000 So it is one of the first one. 06:35.000 --> 06:37.000 So the worst idea I've seen in a while, people will 06:37.000 --> 06:39.000 lie on the behavior of the new cow. 06:39.000 --> 06:41.000 It is going to break a lot of stuff. 06:41.000 --> 06:42.000 You will not dare yet. 06:42.000 --> 06:43.000 So you have the source. 06:43.000 --> 06:46.000 If you like following people, I will share the slide. 06:46.000 --> 06:50.000 And you can click on that link and discuss with the people. 06:50.000 --> 06:53.000 For eight months ago. 06:53.000 --> 06:56.000 So what that person meant is in the cow materials. 06:56.000 --> 06:58.000 We haven't documented the behavior. 06:58.000 --> 06:59.000 I will come back to that. 06:59.000 --> 07:00.000 We have a lot of source. 07:00.000 --> 07:03.000 When I say we are most contributing to the upstream project. 07:03.000 --> 07:06.000 So sometimes I'm going to confuse things. 07:06.000 --> 07:08.000 We ignore and sometimes rest. 07:08.000 --> 07:09.000 For me, the same. 07:09.000 --> 07:11.000 We are all trying to do the same thing. 07:11.000 --> 07:12.000 It's very friendly. 07:12.000 --> 07:16.000 And we have a lot of scripts that depend on those systems. 07:16.000 --> 07:18.000 And that person, when they wrote that, 07:18.000 --> 07:20.000 or you are going to break stuff. 07:20.000 --> 07:21.000 Yeah, we did. 07:21.000 --> 07:23.000 We bought stuff. 07:23.000 --> 07:24.000 For sure. 07:24.000 --> 07:25.000 And we knew that. 07:25.000 --> 07:27.000 When we started that project, 07:27.000 --> 07:30.000 we knew that we were going to break some of the things in the bunch. 07:30.000 --> 07:33.000 So one of the first things that we bought was the DD, 07:33.000 --> 07:35.000 some weird usage with MD5. 07:35.000 --> 07:37.000 That one we cut it before the release. 07:37.000 --> 07:40.000 The second one was a back in date where 07:40.000 --> 07:43.000 date dash R was not doing what it was supposed to do. 07:43.000 --> 07:47.000 And we broke the unintended software upgrade. 07:47.000 --> 07:50.000 We know the stuff that you can deploy on the deviant and 07:50.000 --> 07:52.000 Ubuntu to automatically upgrade your system. 07:52.000 --> 07:53.000 In the background, we are tunering. 07:53.000 --> 07:56.000 You can challenge that statement. 07:56.000 --> 07:58.000 That if it is more to do that or not. 07:58.000 --> 08:00.000 This is one of the things that we bought. 08:00.000 --> 08:05.000 That's far as I know that the only things that we bought for real in production. 08:05.000 --> 08:09.000 But before that, as a French, I started with a negative. 08:09.000 --> 08:11.000 So now I'm going to the positive. 08:11.000 --> 08:14.000 We did a lot of things to prevent that from happening. 08:14.000 --> 08:21.000 So yesterday we were at 75% of the new test suite passing in our implementation. 08:21.000 --> 08:24.000 So long sentence or I will pass it. 08:24.000 --> 08:27.000 But basically it means that we build our tool chain. 08:27.000 --> 08:31.000 And we run the upstream new test suite against our words. 08:31.000 --> 08:35.000 And we have only 5% of the tests that are not passing. 08:35.000 --> 08:37.000 Some of them, for example, are in date. 08:37.000 --> 08:39.000 So I learned last week that in Ethiopia, 08:39.000 --> 08:42.000 there are different calendars and we do. 08:42.000 --> 08:46.000 And in Ireland also, so it is a kind of thing that we are not supporting yet. 08:46.000 --> 08:49.000 But because we are relying on the ecosystem of first, 08:49.000 --> 08:51.000 with ICU, we can implement that easily. 08:51.000 --> 08:53.000 It's not going to be hard. 08:53.000 --> 08:58.000 As I said earlier, we are also not fully compliant with a PR command. 08:58.000 --> 09:00.000 But nobody uses it so that's fine. 09:00.000 --> 09:07.000 Except if you were working on the Unix in 72, maybe use it, but not anymore. 09:07.000 --> 09:09.000 And we have an amazing code coverage. 09:09.000 --> 09:14.000 So in text, I think everybody knows that if you are above 80% of code coverage, 09:14.000 --> 09:16.000 you are usually doing a good job. 09:16.000 --> 09:18.000 We do differential phases. 09:18.000 --> 09:22.000 So that means that we generate some commands. 09:22.000 --> 09:25.000 So for example, for sort, we send plenty of stupid arguments. 09:25.000 --> 09:26.000 We're leading valid. 09:26.000 --> 09:30.000 We send it to the new implementation, to the best implementation. 09:30.000 --> 09:34.000 And we compare the STDR, the STDR, and the exit code. 09:34.000 --> 09:38.000 And we do a DIF, if it is STDR, the STDR, the STDR, 09:38.000 --> 09:43.000 the STDR, the exit code are very important. 09:43.000 --> 09:45.000 So we verify those things. 09:45.000 --> 09:47.000 We have also huge community. 09:47.000 --> 09:48.000 I will share some numbers. 09:48.000 --> 09:50.000 So we get a lot of bugs, too many bugs. 09:50.000 --> 09:53.000 But if you don't have bugs, that probably means that we don't have users. 09:53.000 --> 09:54.000 So I'm happy to have bugs. 09:54.000 --> 09:57.000 And we work a lot with the Ubuntu folks. 09:57.000 --> 10:01.000 So we build the Ubuntu archive several times with our implementation. 10:02.000 --> 10:05.000 And in Debian and Ubuntu, we have a lot of post-picked 10:05.000 --> 10:08.000 that runs that rely on the new tools. 10:08.000 --> 10:12.000 So that helps you to cover a lot of things. 10:12.000 --> 10:15.000 And not but not least, we see a lot of bug report by users, 10:15.000 --> 10:16.000 also after we shift. 10:16.000 --> 10:18.000 So another one. 10:18.000 --> 10:22.000 So it may be a bad publicity for those who want to rewrite 10:22.000 --> 10:23.000 as much as possible in the rest. 10:23.000 --> 10:24.000 Yeah, fair. 10:24.000 --> 10:29.000 And what I like in the sentence is that we were trained 10:29.000 --> 10:33.000 to follow the hype of the rest. 10:33.000 --> 10:35.000 So basically, what the person who wrote is, 10:35.000 --> 10:37.000 we are trying to be fancy modern. 10:37.000 --> 10:39.000 And we want to show off someone say that I'm doing that 10:39.000 --> 10:41.000 for my resume, probably not. 10:41.000 --> 10:43.000 But it was fun still to read that. 10:43.000 --> 10:47.000 And obviously, the person said that we're writing 10:47.000 --> 10:48.000 does it make it better. 10:48.000 --> 10:49.000 Yeah, we all know that. 10:49.000 --> 10:51.000 But I was doing it for fun, right? 10:51.000 --> 10:54.000 So I do what I want with my free time. 10:54.000 --> 11:00.000 And so Annubuntu was fine to be trendy. 11:00.000 --> 11:04.000 And again, if you like to see your problems in the wrong room. 11:04.000 --> 11:07.000 But I'm used to be diverse that you should 11:07.000 --> 11:09.000 rewrite more things in versions of future 11:09.000 --> 11:12.000 for stability, but also for ownership of the young generation 11:12.000 --> 11:14.000 of the current. 11:14.000 --> 11:16.000 So we are not chasing hype. 11:16.000 --> 11:18.000 We use rest for concrete reasons. 11:18.000 --> 11:21.000 So I'm not going to do a marketing speech for rest here. 11:21.000 --> 11:23.000 But memory safety performances. 11:23.000 --> 11:26.000 And I think one of the key things that people don't realize. 11:26.000 --> 11:30.000 And I saw a lot of trouble about the one is that doing rest 11:30.000 --> 11:33.000 when you write first, the code is very easily portable 11:33.000 --> 11:34.000 to another platform. 11:34.000 --> 11:36.000 So when people disagree with me, I like to say 11:36.000 --> 11:38.000 think about a sea library. 11:38.000 --> 11:41.000 Think about LibExML and try to write programs that 11:41.000 --> 11:45.000 is going to use LibExML on max Linux and Android and Windows. 11:45.000 --> 11:47.000 And then you start crying and you know that you're going to waste 11:47.000 --> 11:50.000 one day of your life just making the build system correct 11:50.000 --> 11:51.000 and build it. 11:51.000 --> 11:54.000 With rest, you know that you do cargo in it, cargo out, 11:54.000 --> 11:57.000 and you have your XML parser and it is going to run and build 11:57.000 --> 11:58.000 on those platform. 11:58.000 --> 12:00.000 And you are not going to have an issue. 12:00.000 --> 12:02.000 In alpha and I work and do it easily. 12:02.000 --> 12:04.000 Code code can do it in 12 seconds. 12:04.000 --> 12:07.000 So it's super easy to do that. 12:07.000 --> 12:10.000 So it's one of the very great things with that. 12:10.000 --> 12:12.000 Of course, the control argument is that 12:12.000 --> 12:13.000 you need rest to work. 12:13.000 --> 12:16.000 So that means that you need LLVM to support that platform. 12:16.000 --> 12:19.000 Which is a different story that I'm not going to go into. 12:19.000 --> 12:23.000 But we have proper support in the LLN and Ubuntu for that. 12:23.000 --> 12:26.000 So this is one of my favorite. 12:26.000 --> 12:27.000 Absolutely. 12:27.000 --> 12:28.000 Fact this. 12:28.000 --> 12:31.000 I hope coroutile will be still available for saying people 12:31.000 --> 12:32.000 along to do. 12:32.000 --> 12:33.000 Yeah. 12:33.000 --> 12:34.000 So it's for an ex. 12:34.000 --> 12:35.000 Right. 12:37.000 --> 12:39.000 So that is an emotional reaction. 12:39.000 --> 12:40.000 And I do understand. 12:40.000 --> 12:42.000 People don't want to break it. 12:42.000 --> 12:44.000 Yeah, fact this. 12:44.000 --> 12:46.000 So it's a first replacement. 12:46.000 --> 12:50.000 So that person thing that is they're not going to be able to do a rollback. 12:50.000 --> 12:54.000 So as I was saying, the folks that can only call their smart. 12:54.000 --> 12:55.000 And they're doing. 12:55.000 --> 12:58.000 So they write from the start, they have the way to rollback. 12:58.000 --> 13:02.000 And so you can completely switch from the rest to the no implementation. 13:02.000 --> 13:05.000 But also you can what they have done is that they realize that some of the 13:05.000 --> 13:06.000 common. 13:06.000 --> 13:08.000 We have to risky to switch right now. 13:08.000 --> 13:11.000 So for example, see a challenge when you use a no Ubuntu today. 13:11.000 --> 13:15.000 The comments table is going to point to the no implementation because 13:15.000 --> 13:19.000 and just to be safe, we decided to leave the new one. 13:19.000 --> 13:23.000 So, we, so that this last week is T5, everyone. 13:23.000 --> 13:25.000 T1, number four. 13:25.000 --> 13:29.000 Yeah, that one is, I don't know if it is a real comment. 13:29.000 --> 13:33.000 Basically, that person called us the techno-fascist to steal Linux from us. 13:33.000 --> 13:38.000 So, that one is really a one of five of it. 13:38.000 --> 13:41.000 I don't know if that person was joking or not. 13:41.000 --> 13:44.000 But it's really, we in the room, if we do it, 13:44.000 --> 13:48.000 we have techno-fascist and we are trying to replace the old guard and so on. 13:48.000 --> 13:50.000 So, the blog post is very long and it's very funny. 13:50.000 --> 13:56.000 I wish that person was joking, otherwise they should see someone. 13:56.000 --> 14:00.000 So, that person could link to also how it will work in the co-retures, 14:00.000 --> 14:04.000 but it also the one in the GNU kernel, which are not related. 14:04.000 --> 14:08.000 I haven't sent any email to the new storehold about that. 14:08.000 --> 14:10.000 I don't think he cares. 14:10.000 --> 14:13.000 But it's, there is no controversy. 14:13.000 --> 14:14.000 We did not coordinate it. 14:14.000 --> 14:20.000 We are not trying to replace all the GNU tools or the GNU project by, by an email 14:20.000 --> 14:22.000 team implementation. 14:22.000 --> 14:26.000 It's really individual project and individual choices. 14:26.000 --> 14:30.000 Canonical is not trying to move up into our property platform. 14:30.000 --> 14:32.000 It would be impossible even if they wanted to. 14:32.000 --> 14:34.000 We said, don't want to do. 14:34.000 --> 14:37.000 And I'm not involved in the internal politics. 14:37.000 --> 14:39.000 And we're already doing way too much politics. 14:39.000 --> 14:41.000 So, 12 number 5, that's one is what? 14:41.000 --> 14:42.000 One of my favorite. 14:42.000 --> 14:45.000 When you have people doing meme about your project, 14:45.000 --> 14:48.000 I think you have an amazing line in your resume. 14:48.000 --> 14:51.000 There is another one that I didn't share with them. 14:51.000 --> 14:52.000 And great time to work. 14:52.000 --> 14:53.000 Someone did that one. 14:53.000 --> 14:55.000 I have not because I'm sick of things. 14:55.000 --> 14:56.000 That orange face. 14:56.000 --> 14:57.000 I'm not going to share it. 14:57.000 --> 15:00.000 But some people did some meme about the project. 15:00.000 --> 15:03.000 So, that person was pulling us about two bugs. 15:03.000 --> 15:05.000 So, first one was a sort. 15:05.000 --> 15:10.000 It was taking way too long if you had the line of two million characters. 15:10.000 --> 15:13.000 So, do you have that in your life? 15:13.000 --> 15:14.000 Probably not. 15:14.000 --> 15:17.000 And the other one is a checksum. 15:17.000 --> 15:22.000 Was 17 times slower in our implementation than the new one. 15:22.000 --> 15:24.000 So, yeah, we have bugs. 15:24.000 --> 15:25.000 For sure. 15:25.000 --> 15:29.000 So, the 17 slower is because we took the approach of first. 15:29.000 --> 15:31.000 You try to get compatibility. 15:31.000 --> 15:33.000 And then you have the nice performances. 15:33.000 --> 15:36.000 You don't try to first get the compatibility. 15:36.000 --> 15:37.000 You don't try to get performances. 15:37.000 --> 15:40.000 If you are not compatible, you do that the other way around. 15:40.000 --> 15:42.000 And because we have one on that command, 15:42.000 --> 15:45.000 Testing also combination is very hard. 15:45.000 --> 15:47.000 So, we fixed it in a week. 15:47.000 --> 15:49.000 The long line bug we fixed in the months. 15:49.000 --> 15:52.000 And many bugs, performances, compatibility. 15:52.000 --> 15:54.000 We fixed them in a few days. 15:54.000 --> 15:57.000 So, what did I learn? 15:57.000 --> 15:59.000 And what did you learn during that project? 15:59.000 --> 16:01.000 So, rest is not to save our bullet. 16:01.000 --> 16:05.000 If you are saying that rest is going to fix all the issues in the world. 16:05.000 --> 16:07.000 You're probably wrong. 16:07.000 --> 16:09.000 But it's still much better than CNC++. 16:09.000 --> 16:10.000 But it's not a silver bullet. 16:10.000 --> 16:12.000 You still have logic bugs. 16:12.000 --> 16:15.000 I also learned that coralityals can be very weird. 16:15.000 --> 16:17.000 To the points that upstream, 16:17.000 --> 16:21.000 they may after our works, they change some of the behavior in sub-new implementation. 16:21.000 --> 16:23.000 So, we contributed a lot. 16:23.000 --> 16:25.000 A stream has been contributing to our project. 16:25.000 --> 16:30.000 Two of the core maintainers have been answering to bug in our bug factor. 16:30.000 --> 16:32.000 And we, I think, in the last release, 16:32.000 --> 16:34.000 I'm committed number four or five. 16:34.000 --> 16:38.000 In the blue implementation, one of the contributors, the rest project, 16:38.000 --> 16:39.000 I think, is number three. 16:39.000 --> 16:43.000 So, we contribute a lot to upstream, especially in the test suite. 16:43.000 --> 16:46.000 So, the bullet strategy. 16:46.000 --> 16:49.000 And that's why I focus at presentation on human aspect. 16:49.000 --> 16:50.000 And not technical. 16:50.000 --> 16:52.000 That's why I didn't share any CLI today. 16:52.000 --> 16:53.000 Even if I love it. 16:53.000 --> 16:57.000 It's because I came all about the human aspect of that project. 16:57.000 --> 17:00.000 Because the bullet strategy was really key here, 17:00.000 --> 17:03.000 and coordination, and working with smart people. 17:03.000 --> 17:06.000 So, that slide is, I'm proud of that slide. 17:06.000 --> 17:08.000 In the meantime, I'm also scared. 17:08.000 --> 17:12.000 Because if you see the evolution of the number of PR on the project. 17:12.000 --> 17:19.000 So, in 2025, we had 2,054 pull requests on that project. 17:19.000 --> 17:21.000 That will present 4,000 commits. 17:21.000 --> 17:25.000 So, if you work on the project, that scale, you are scared. 17:25.000 --> 17:27.000 So, I'm afraid of burnout for now, I'm doing well. 17:27.000 --> 17:29.000 I am lucky to have some people helping. 17:29.000 --> 17:32.000 One of those guys in the room, other helping me with pull request. 17:32.000 --> 17:35.000 But it's really a creative volume. 17:35.000 --> 17:39.000 In December, we had more than 200 PR, just in December. 17:39.000 --> 17:41.000 So, imagine, we have to save all commits. 17:41.000 --> 17:44.000 So, when you start doing that, doing your weekend, well, not the weekend. 17:44.000 --> 17:47.000 But doing lockdown in COVID, and you start to project by your own. 17:47.000 --> 17:51.000 You don't have anyone to review your PR, and you have to review your own PR. 17:51.000 --> 17:53.000 So, you don't have your stuff. 17:53.000 --> 17:56.000 And now, we have, it's a huge success. 17:56.000 --> 17:59.000 And last year, we had the 206 contributor. 17:59.000 --> 18:02.000 So, it's an amazing way to run the rest. 18:02.000 --> 18:04.000 If you are in the room, and you don't move the rest, 18:04.000 --> 18:06.000 I'm not selling my project. 18:06.000 --> 18:09.000 But if you want to learn, it's very easy to start. 18:09.000 --> 18:10.000 Because you have the target. 18:10.000 --> 18:11.000 So, you know what you are supposed to do. 18:11.000 --> 18:14.000 You know that the new implementation is a reference. 18:14.000 --> 18:16.000 We still have a lot of compatibility issues. 18:16.000 --> 18:20.000 If you like playing with performances, you can do it also. 18:20.000 --> 18:23.000 There are many, many things that we can do. 18:23.000 --> 18:27.000 So, growing user-based, we have people also who came, 18:27.000 --> 18:31.000 and created some introduced support for the platform. 18:31.000 --> 18:35.000 So, we are supporting volunteers, they are 3DSD, 18:35.000 --> 18:38.000 also major operating systems, so Linux, Mac, Windows, 18:38.000 --> 18:43.000 Android, IQOS, we have plenty plenty of support. 18:43.000 --> 18:47.000 And I said earlier, we contribute a lot with the new projects. 18:47.000 --> 18:48.000 It's very friendly. 18:48.000 --> 18:51.000 So, we are really trying to improve the state. 18:51.000 --> 18:52.000 It's a state of the art. 18:52.000 --> 18:55.000 Many these two are going to stick to the new project for years, 18:55.000 --> 18:57.000 and maybe decades. 18:57.000 --> 19:01.000 And some of the project are going to move to our worse prediction. 19:01.000 --> 19:06.000 So, next, we want to reach one of the percent continuity. 19:06.000 --> 19:07.000 We are pretty close. 19:07.000 --> 19:11.000 Like I work, I like to say, you know, the parallel rules. 19:11.000 --> 19:14.000 So, doing 80 percent of the work, 19:14.000 --> 19:19.000 takes 20 percent of the time, and then the last 20 percent of the work, 19:19.000 --> 19:21.000 takes 80 percent of the time. 19:21.000 --> 19:22.000 It's not true here. 19:22.000 --> 19:26.000 We have a lot of easy things that we need to, we can fix. 19:26.000 --> 19:30.000 And next, after we do the next release of Canonical, 19:30.000 --> 19:32.000 of Ubuntu, I'm going to take a break. 19:32.000 --> 19:35.000 But then we want to work on the other program. 19:35.000 --> 19:37.000 We have some people who already contributed to set. 19:37.000 --> 19:40.000 So, we have a very good support of set in the rest. 19:40.000 --> 19:41.000 We return in the rest. 19:41.000 --> 19:44.000 We have dividers, and some people also start it, 19:44.000 --> 19:48.000 contributing to product, PIS, and Utilianics, etc. 19:48.000 --> 19:50.000 So, if you want to learn, and if you want to win, 19:50.000 --> 19:52.000 win runs a wheel. 19:52.000 --> 19:54.000 That can be a place for you to do it. 19:54.000 --> 19:57.000 Some people, which have to listen, I want to win a playman bash. 19:57.000 --> 19:58.000 Like sure. 19:58.000 --> 20:00.000 So, that we know the name of the project, and we can work together. 20:00.000 --> 20:03.000 And it's going to be fun. 20:03.000 --> 20:05.000 Final takeaway. 20:05.000 --> 20:08.000 So, we shipped in April. 20:09.000 --> 20:12.000 Not sorry, it was in October, typo in the fun. 20:12.000 --> 20:18.000 We shipped in the latest Ubuntu, and we are working with them on the 264, 20:18.000 --> 20:20.000 mixed up the number in a few weeks. 20:20.000 --> 20:25.000 So, we still have a few bugs that we want to fix before the release. 20:25.000 --> 20:29.000 And so, the toll, as you saw, they were in their fear. 20:29.000 --> 20:32.000 And even in their way, they expressed themselves. 20:32.000 --> 20:34.000 They were not wrong about risk. 20:34.000 --> 20:36.000 We had to identify them. 20:36.000 --> 20:39.000 Whatever one was about processes and mitigation, 20:39.000 --> 20:43.000 that we are not that stupid, and we know how to do those kind of changes. 20:43.000 --> 20:47.000 And you can mitigate the risk when you are doing such big migration. 20:47.000 --> 20:53.000 So, yeah, it was been easy, but we were hitting 30 years of expectation is not. 20:53.000 --> 20:57.000 So, if you have time for question, I think we have a few minutes. 20:57.000 --> 21:07.000 Thank you.