 Dwi'n ei fod yn ddain, hefyd, mae'n ddefnydd o'r penynodol. Mae'r ddaddeu'r penynodol yn ddiddorol erbyn gwneud y cwrson ar agor, a'r ddiddorol yn cymaint i ddiddorol, a'r ddiddorol yn ddiddorol. A'r ddiddorol yn ôl i'r ddiddorol yn ddiddorol i'r ddiddorol i'r ddiddorol i'r ddiddorol i'r ddiddorol. Mae'r ddiddorol yn olyg i'r ddiddorol i'r ddiddorol i'r ddiddorol. RhaUSNAM, ydy'r cyffrno Receach, eto am y cyffrno sy'n rwynt i'w dechydig iawn, rwynt i'w defnyddio'r cyffrno, rydyn ni'n gweithio'r hollol siaradau, yn unedig, saved, ychydig iawn. Wrth ddod, mae'r cwmhwng i'r cyffrno fel hyn, felly mae'n cyffrno'r cyffrno a'r cyffrno newydd, a'r cyffrno newydd, a'r ddiweddau ar y ychydig a byw yma'r cyffrno a'r cyffrno iechyd wedi eu gwneud hynny, nid oes aeth gyda'r cyffrno. Felly, dwi'n meddwl y gwaith yn ysgol, mae'n gwahog ynghylch i ddweud a'r cyfnodau. Mae'r bobl yn cael ei ddweud. Felly, roedd ychydig yn ddiffyn i ddweud o'r digwydd, y ddwylo o'r gael o'r gweld. A dyna'r cynnig o'r ddweud o'r hynny, ond rydyn ni'n meddwl. Mae'n meddwl o'r gael o'r gael o'r gael o'r gweld, o'r ddweud o'r ddweud o'r gweld o'r gweld o'r ddweud o'r gael o'r gweld. Y gynnwys yw'r credu rydych chi'n gwahod, nid ymgyrch ein pwynt yn ni gweith. Yn gyfaint, mae'n neud y classmates ar y bryddiant, ychydig o gael cael eu prif. Roedd efallai ysbydd yn momentiol ac yn cael ei gael i ddim yn gy danku, rydyn ni'n cyfreithio mewn gwahod yma, ddatgan i ddweudio. A phobl ydych chi'n gwahod ar y class yma yw'r clasfa, mae'n duol, ni'n gweithio ac iawn, felly mae'r cyfrifiadau. Plasma has four different views that services integrate with, it's search providers, K1 on its own is just a text box and nothing. It doesn't have anything with it, it's just a text box. Plasma Shell on its own is just an empty taskbar with nothing in it and you can drag around empty boxes that don't do anything. System settings on its own, it's an empty window, the recipe bar at empty, until you put other things in it. So what are your services that you would put in Plasma? We have the ones that come from us. So networking, it fits into all of those different components, you might have a networking searches, you might have a networking system settings module, you have a networking applet, it's a really rich interactive applet, and then audio, keyboard, all these very interesting things are provided by Plasma, but are set to services. But more interestingly, your wider PDE provides parts of fishing with Plasma. So K2 connects, it's not part of Plasma, but it integrates as though it's the first classic. It integrates really well and I think that's really good. Ballu, also not part of Plasma, but it fits in completely many ways. You start typing in searches, you get the results. And pretty fluffy, we had the updates, you can see your content there, you can even have full-on chats. Again, not part of Plasma, print manager. Even if you develop out of one, so you can load your sessions quickly. Probably don't want me developing part of Plasma. There's a wider community, it's a store, it's full of extra things you can download. There's a ton of applets, but there's also extra things to provide. Distro provides extra services that fit into all of these different views. We have a place called Munich providing extra services that intervote with those views. And anyone can add anything else. I had a case again for configuring upstats, not very useful now. But we have the flexibility to allow anything, and that's really important. So moving in that aspect, what are some of the problems that Plasma has faced in the past and continues to face? Our biggest problems. It needs a real-world example, not hypothetical. So CS5 came along, four years ago now. Applications had a wonderful plan, it did a staggered release where things were done slowly over time, it went through, it would be done along with it, endothin, inoculator. Plasma's plan, little bit less, and lab works. We did the lecturing at Audumbonga. And this led to two things, we had things that don't miss them. So you upgrade and some software disappears. And we also had bugs because very few design schools will tell you, this is a good idea. It's not a good idea. Because we had some application integration, now we have a staggered release cycle. It's practically impossible to do it exactly on time. You want my food I know most about to affect me. And we have plenty of testing and some messaging. The way you control it online or not was in the Plasma panel. So that meant, as soon as Plasma had a release, we needed to have a release. We didn't have a choice in that. And when we did that, we had to start developing early before Plasma 5 was released. Half of our developers weren't Plasma developers. They were just professional developers. So we just cut them out completely, and then we never came back. And other applications had the same situation. When KF6 came along, K developed people, can you promise to do a release on day one on Plasma 6? He's nodding, he's agreed. We have all of the stuff in the store. Even if we couldn't control everybody in this room. Which I don't know. It's much much higher than I think it is in my head. External stuff even though, we have 250 Plasma 5s in Codin Hall. And Plasma 5s when I was away. And that's not including all the other servers that I've distroed from people now. So 250 Plasma 5s, or sub-wagon, does that. Not ideal. I think it was X-turn, still once now. So why does X-turns don't work but not this? It's possibly not a real platform, cute not known to be inside on schedule, but we know it's going to come. And we're going to have all of these problems again. Another problem we have, is the quality of Plasma is determined by your weakest component of Plasma. And the worst example, if you do this but deliver it with your math up to the square of scales and search by duplicates, highest number of duplicates is still open at Plasma Shell, isn't caught by anything we ship. Which is very frustrating when my job is to fix Plasma. Cos I don't want to fix a hundred different external modules memory. And it makes us look bad. Cos they don't know that. It doesn't report to Plasma where it's crashing. They report to us. And that's a real query that you can do. And it sucks. Newly couldn't control this stuff. It's still difficult. There's two runners that have bring down all of Plasma. One is being searched for fighters. And the other interesting thing today is it's not just being a hay runner to be searched by from the top, but also in your main shell. And these runners are just bring down their intensity as I've apparently mentioned. Entirely a Plasma. And that's pretty nice. We're not very good at Plasma. We look like the proudest in the eastern world. And another example, a journey on the wall from Lathar Pradwy, on which we're just at home, we're just working like networking where you didn't work. And they shouldn't be romantic topics. And it was because of your touchpad module. With war and payday. That's not related to networking. It's not related to what we exploit your language. But it doesn't make sense. And a computer on networking for most people doesn't work on that. It could probably live a rogling out and think that that's bad. But if you think about everything, it's pretty bad. And what's happening? I mean, you can't avoid that. But we can find the minimum age that impact it has on everything else which is fine. Something's going to break next. I don't know what. If I do that with a computer. Secure it. Change your store. I'm going to upload here on our code. Somebody could write this code. We're going to start up. If you're all four people in this room, this is very bad for this code. I tried to upload it in the store, but somehow I left all my files in the process. We have nothing. And it's a problem that we don't even have a way that people could if they wanted to. There's no way to even try if you want to focus on it. And it's all open source so you can expect it. But it's in a weird situation like cross-stuff from the Android store more than a cross-stuff from a running store. Which is a sad situation. And a lot of you are probably thinking containers will fix this. Oh sorry, we're going to explode. Containers. Probably thinking they are a solution. People keep our very accessible now. Flap that. That's the problem, not a solution. Because if K-developer ships in a container, if it ships in a flap pack, that volume isn't going to work because we don't see it from the platform side. We are not loading it. And KD's next topic is a flap pack snappy not too long in the future. All of this is going to work. So containers aren't a solution right now. They are a problem and we need to address them with guidance. It's a simple one. At some point, the more modern things will happen, the better they will be. This isn't very uplifting at all by the way. So, if there are four main problems we face, I don't expect everyone in this room to agree with any points. What I expect is everyone in this room to resonate with one of these points. Or, person I think more for have quite a lot of other ways of doing it better. And sometimes we'll see one way of plug-ins. And a way platform is built in a moment is we have these different views and everything is a plug-in. And for the sake of argument I'm counting some QML files as a plug-in for this argument. So, networking, we'll have a playrunner and we'll have a plug-in here and then we'll have potentially our own custom communication protocol to talk between all these different green blocks. And our structures written like this come in with plans. Can we look at a different way of solving this? Nothing with just a search provider because it's a really, really simple case. It's just a name, it's a name. It's not very exciting, but it's simple in our illustration process. Instead of a plug-in we just talk to another process over the years because we love doing this. And a playrunner doesn't need to know about this, it's not lonely who you might know is. And the problem with the binders is that you're just running this and trying to set it as you need to do those. So if one plug-ins cause a word that's a problem to yourself. So, we're talking over a debush a playrunner doesn't need to know about this. And this service could be a standalone very, very small binding or it could be a central demon you can have anyway. So we could be talking two KDs next demon itself directly and have in multiple processes about it. So every time we type a letter a query, we get the dots back and eventually we're back. And as you can tell from the times it's not very important. So we've run a ship with .dust.file so that we can sort query any list or anything that we're going to search for and know where to ask in the written form and then we get the dots back. And we can even leave us accurate in which is a really good way of starting applications on demand when it's needed rather than just whenever. And you can look at a thing with service in application to preserve and start something. So we did it. It's something that's shipped and we started doing it. We inserted a long-tied account system which don't have plugins but then we passed it along by that trash content thing into a separate binding. And all of our problems not all of our problems for them but all of our problems went up. And it went away to the user as well because it typed a letter, it crashed it, it'll see a sad icon in the tray, it's still reported that we can still fix it but it's going to have people instead of us. And the user's not so confident, but we still fix it. And we didn't have any next feedback and there's a lot of new users. Like I was able to take this search and in 20 lines of Python integrate search into an existing app that I already had without any tiny or few labels in front of the interface in 20 lines. And somebody else talked to me and said oh now I can search all of the tabs in console in a couple of lines. So allow me to use these users which I didn't really expect. So next step, I want to import a place-of-flight container that I have in the internet or whatever to use this new system over the next three years so that when we move to Python search, we don't have a lot. Everyone will work unless they're able to continue to work. And long-term, that doesn't do something similar. So maybe if it sounded like this, it would be nice. So more excitingly, apps are still on the window, you've got controls, you can't narracify it. There's no way we wouldn't have known about what hidden connection we wanted to do ahead of time. And when it was called a problem to allow that. So, wait a little bit. I thought I was going to wait a little bit to allow that. I've got a demo, so it's in a class right. I'm just going to show it in the redirecting mode because that's the only reason we have my waiting. And that's something you couldn't do a retin bed which is showing how this works conceptually. And having pop-ups work is important because all classmates have left a combo box in the drop-downs. So, pop-ups are your words. But it's done. So we compared random arbitrary content inside a class mind, math keyword work showing to you, and it's all ETL generated, which is fantastic. Recycling work, pop-up. And interestingly we've gone on this without you having to use a way of plasma itself is a client of whichever window you're using, even if you want to use it yourself, and then it is a way to be positive to lower noise operation components. So, running on X is fine, even though we're using radio. And even things like NVIDIA or terrible arm fibres are a necessarily a problem because we're only using those small windows if the use schedule will be finished as well. So, putting up plasma in a class mind, it sounds like it should be TV. It's not. We have extra packages. You've got all your content pages, which are all separate window, and integrate and separate stuff. You have to deal with how you activate it and how you close it down. Pop-up, store, portal. We have some scripting. You have to work out where you're doing some storage, how you're doing, and learning an arbitrary window. So, we need to have two different communication services to talk between two different APIs to have the available parts on one, available parts on the other. And the reason we need this is Wales, very good at buffers, terrible renegades. So, your performance of that, in terms of rendering performance, it's fine. It is an extra overhead, but not massive. In terms of memory, if you run every pathway in this own separate process, you're looking roughly 20 memories of that pathway. It's not feasible. I said this wasn't an optimist at all. But, in turn, if you've got a step to come together, so all of the path where you're trying to run one at all of your stuff in the store, run another, that's actually fine. And I wouldn't have a significant overhead. So, it's not cost free, and it's in a case of choosing when we go down the strategy and when we don't. So, a roll-up plan, you can invert around the multiple windows inside Atlas, even on supertops in the panel, and hide it when you walk up first. It's a gimmick, but it's a gimmick that can be put out and how you just test and confirm that things are working and start fixing it. Running up just kind of works, but it will be about a year before it's fully run part. Sandboxes and things by default, picking up separation to make things more stable. And my long-term dream, in this date, this year here, maybe we can just jump up and challenge it just to be really thin, trying to keep it positive. There's loads of channel content and doesn't do anything. And that would be a super nice, super stable option. So, conflict models in system settings, effectively, it's exactly the same in the pattern. From a window, it's different than a window. Finishing it simply because you have a long amount of time in a pipeline. It's actually quite good because we already used multiple windows in system settings. Don't even know if you can't be much Q-Widget and Q-Code content, so there's a widget back there and another window in a site bar and another window in a content. So, actually, with reducing the number of windows, it's quite good and positive. Even if it makes no sense. And that means we can do awesome transitions when we change the system setting model, something not covered if possible, not really a reason to do a whole port, but it will be lots pretty cool and they will be happy from the site bar. So, 80 Demons in fact on services, it is a challenge to fix. But what's interesting is we started doing this already around having a sort of plan. We started seeing people migrate away into running power management now in a separate process. It's a general trend that I think we're naturally heading towards. Long term, I think this is where we want to end up. And this is very similar to Android, you have your one app and then you tell us for a window when you click on your window. It's normally just running a backup service. You open system settings, you tell it to open a window. It puts a window in system settings. It tells it to pick an applet. It sends you a window to your applet. So, we just have this one core and then you don't have custom communication between all these different level cards. I think it's a clean solution for app developers and if you want app developers to come to the plasma, this is nice. You're welcome to do it. So, it's a backup solution. Most of the problems are caused by plugins. They're not the only solutions here for them. The one solution, they're not always a byte solution. So, I'm convincing another option that we can use in all these different types of platform. And I think it will really help us if that's the direction we choose to take and we can choose how much we go down the different routes as time goes on. So, a lot of most of you have questions. I don't want to answer them now, in case I don't know how to answer. So, we have a bot where we want to take everything much more long term, more open than everything. So, this is happening at 3.30 on Monday. So, it's kind of interesting how long he did it. Have some fun. And a bit of advertisement, I also have two other bots coming up about plasma to know about other plasma on the way on top of it on Monday morning. And if you have an application that you haven't tested on the way in, but if you haven't or if you haven't and if you have problems, come to your session for a just-on-way-to-ex-quinn. I will have a document of application, fix it, be in practice, make it work. Any questions? So, does this mean that we can have any use to revert against the right that's why it's a problem to use this amazing growing age stuff? I will not start to answer all the questions, I will not be accepted to do that in terms of plasma, because obviously you have to and it is warned about ages. It allows developers to do things that are horrible. But it does allow you and I think it's important that we allow you to do whatever. So, technically yes. I have quite a quinn inside of a plasma head. It didn't work. I wasted too far. Technically it should. So, like many years ago we were trying to deal off all of these extra demons that we were having, but we were warned that it was not a process that was laying around after there was going to be done in use. And now we are going to go back and say again how are we happening and the issue about being able to do something that stops the background demon and the issue of being able to not be terrible and tell yourself when it's not in use. A left-off reminder to you to leave with activation is, you can say, I haven't done anything in 10 seconds, I'll just turn up and people will inform me again if I want it. And meeting Caleb is still having a responsibility to not eat up all the CPU cycles. So, I don't think that's a necessarily a problem. Another topic on that is I don't think we need to force everything. There's a stuff in KDD or KDN which can't say it, like free space enterprise. You're right, making it a such an application stupid, let's not. So it's about adding an extra tool we can use and then use the right tool for your job. And I don't think that's a problem that's always a right tool for your job. We have a more mainframe centric or activity centric approach that use the toolbars for example as less noise and then you can switch between the context and relate to your work. I mean, it seems that KDN3 had it in their quote and it was a song over that in terms of design, but not in terms of how we did it. And when we back in KDN3 where we had the global minima that's exactly how it works. There would be a separate window as far as QWid is concerned that's how it would work anybody and everybody can do it. So, it's actually interesting how it's happening so it's an option. I don't know if it's a good option. A lot of this is still very experimental but I think it's possible but I would try playing here trying to have a case inside and it's very difficult to do embracing things in the application because I particularly remember this because there's so many different weird patterns. So, some of the patterns I've got some of the traffic information I've taken out not the way to queue many of the patterns I'm coming in with.