 It's Orston can you share your screen? I believe that's what I'm doing There's it. I might just not pull up because I didn't say anything Could be the magic there it is Yeah, but then obviously people can hear me so I wait another minute then Sounds good. Okay, so it's half past the hour Good morning. Good afternoon. Good evening, wherever you are welcome to My talk about the liberal office in your browser maybe not the usual talk about that it's about WebAssembly and a number of other new tags To perhaps make that happen in a different way I work for CIB I Glad to be here today My name is Thorsten Behrens Since year we would see of these things 2015 and building the liberal office team in there and actually one of those Naughty people who found it and Forced the role for certain found the TDF And I've been working With that code base which was open office before 2001 Various other things And I'm a hacker computer scientist fighting and routine for open source and open standards Whenever I get the occasion Good, so what's this all about I'm the state of the art. That's what we have Then obviously you're scratching your head and asking so you already have your office in the browser. What's the point? so Let me get to that in a second. First of all Where I'll be today? State of the art and what we have is an HTML5 canvas space browser version of liberal office Which is lightweight on the browser side on the client side Using tight rendering like a maps viewer and all they have any lifting actually happens on the server so all Documents of all users running on this instance have to be loaded there And all rendering and also all editing has to happen in the data center. So that's essentially like Terminal server like application virtualization in a data center essentially Heat perspective that's that's how that works and there's a number of websites quite light on the client both in terms of Amount of JavaScript you need to download but also in terms of processing on the client side The documents never leave your data center. So they stay there. It's just the view or the some rendered down Pixel version of the documents that use a data center that you can then take any number of measures to make sure that if that's leaked by screenshot that needs to know Who that was by embedding some watermarks for example And it makes collaborative editing Quite easy because you simply only have one instance of the document and unless you run into scalability issues because you have I don't know 500 users editing on the same document And this is all kind of single essentially single-flatted Vita core there It's essentially just routing multiple inputs until multiple cursor positions and sending the resulting document updates back the cons are Well, there is no offline mode obviously because so always there's some document on your client and whenever you scroll zoom Edit Then or somebody else that it's then you need an update over the wire It's quite expensive to host and comparison and there's nothing like peer-to-peer editing or end-to-end encryption possible between Between two clients or any number of clients. We always need a Version of the document that is necessarily Not encrypted loaded on the server Right so Pricing and total cost of ownership for the purpose online, so That's that's what I was some referring to with this There is if you if you want to like if you look at those hyper scalars they They work because that their cost of running anything is essentially handed over to the client so so that that Running this the stuff in the data center per user that the cost is extremely low otherwise it wouldn't scale and for the purpose online as it is now there there's cost of licensing obviously and support and it's Strongly recommended actually that you if you run the purpose online professionally that you do get support and and a license Because you will be more happy and your users will be more happy and also the office and the Ecosystem around you both will be more happy But there's also the cost of operation. So you need staff you need maintenance and you need user support those can presumably be kept pretty low by simply not doing that or just Trying to push that as low as possible So it becomes economic economically viable Because the first thing that's probably something that will also go down over time But that's something that we can't tweak by much. So real world needs Which is always actively working with us as somebody who's typing or scrolling And That's two to three active users per CPU threat In our experience and you need about 100 megabytes because People unless they work on very very simple documents, but anything that is impressed slides or or cult sheets That is that more trivial. It's easily that so on average we have that hundred megabyte Which is kind of the same order of magnitude Lasso Minos, I mean, that's that's constant factor obviously, but Same order of magnitude is like right now So that's turns into around 50 to 100 years dollars per average active user in here, which is licensed and bought and dominating that is actually your AWS bill because that's what Mostly compute costs you On that order of magnitude Okay, so then drilling down a bit more or putting the finger into that Talking a bit more so pain points that that and that's actually why why we don't see This widespread adoption. It's not that everyone's using free versions of your office Hosting free versions of your purpose online like you find that for for jitsie other pads other things but are which are just normal to make it cheaper to host and for this online, it's actually can be ruinous So price of hosting and price of hosting and And I'm actually price of hosting and so Just just put this into perspective advertising base average revenue per user Industry average for something that is advertised advertising business. It's like less than half less than 50 cent per year and Facebook which is really the king of the castle which which is like Industry benchmark for expecting lots of value to use it. That's more than seven most dollars per year So so you have to have users that do very very little Editing to make that viable business. So, yeah, what does that? What does it do to us like them? Oh, yeah, and also There's an offline mode and there's some bandwidth and latency requirements Which it's arguable. I mean, if you're offline today, that's probably many other things that you cannot do But obviously latency sucks Which happens especially in mobile networks if you can't Frequently can't do things or the reaction of the application is slow Yeah, so what now? Well, um How about whether simply so he offers that was something instead of oh well, okay? So looking at the trajectories of hardware, it's pretty obvious and kind of floating in that horse that the On the client side on the edge like outside the data center. It's like it's the most loss of the phones We're up to eight cores more than two gigahertz 12 gigabyte of RAM in the high-end Story with ultra books and so to just it's a pretty safe bet that that what three years five years ago You had on on a low-powered laptop tend to have on your mobile So so just not using that power and Memory on the client side like a race So why not do what we did? Even before two thousand during star division times. I just hope the bloody thing to a new architecture How hard can it be? That's been I don't know the number of ports like the fortune to new architecture that must be like Order of magnitude 10 As it's just a new platform the browser and with weather assembly there's a standard now since end of 2019 For running native code in the browser Scripting story that's been much older, but it's now actually there standardized available in all modern browsers and the feature set is actually sufficient And where do we do that? Well as always we use the core code That's what we need to meet the writer and the code and the interest core and the model and the filters to do that on the client and cross-compile that to web assembly and As cross-compile to many other platforms like Android iOS Windows arm, etc. Etc. And at the same time That's that's the other part of the porting Afford use platform API's were ever feasible As we do that for for other native platforms where we use the native file store for Android and IOS we use networking API's now He was obviously use native API's for limits and windows So Right Actually, this is an announcement So that's what we're going to do And in the next perhaps year or so Hoping to start next month Some bits and pieces missing. It's not Exclusively my my own decision here But that's the plan with getting a crossbook going and by the end of the year probably latest for Boston next year However, wherever that happens Looks like likely Have first pixel rendered. So actually not only compiling but also running and by someone next year I'm being able to edit text and writer likely not Script down likely not like Super super polished compute but having a minimal viable product for writer with enter-end encryption editing of documents within one year that's the goal and How to do that in detail? So well actually it started playing with that in 2015 And then gave it up because it was just not great M-scripten Couldn't even do exceptions properly. Well, it could but it was terribly emulated. It came at a horrible price like three times the size and ten times slower Now starts online. So we have the WPC standard. We have browser support Nothing is really missing except perhaps reading which is which is Not standardized or that there's prototypes and chrome and other browsers, but it's not say final and Also, you know the market so vast demand for that Obviously and What it's doing? Well, first we need to get a cross-building which is a bit of muti-biti make file working and Perhaps a little bit of You know rich, but I think we don't need that for at least for the first the first release As there's no no external, you know API or anything Useful in the browser as we public lots of code to use browser APIs mss for example and Beyond that to get down the monolith Let's be the only one for this target writer for a start Challenges Yes, first and foremost size of the binary if you look at what the mobile apps which are also Monolithic kind of only the stuff that you need to run That's no no no extra. That's 100 megabytes. We have some compiles down Something that's more than x64 But still I don't think loading hundreds of megabytes in the browser So we need to cut this down significantly It has to be single threaded As I said multi-threading is not there yet of the main screen On the other hand writers single-threaded since 1990. So so that's essentially It's a single threat and if you need to do something in parallel you send yourself message or set up a timer and then Healed and then the timer at some stage comes and does what you want Um, so so that's also not not a blocker or fundamental problem. There's lots of multi-threading in liberal office in clipboard and you know bridges Optional multi-threading in tons of places, but that's optional. That's not required to have it down like rendering like loading like Formula engine And also the heap size is an issue. So we only have right now a two-digabyte max with the current memory model So we really need to put liberal office on a diet It's just probably good good idea anyway to look a bit like where the waste is and have it out Right so This is almost all I wanted to say in that topic just some miscellaneous notes So this is pure clay open source. It's not going to be any separate repository. It's all gonna happen in core and a master That the likely over time grows on JavaScript we called Just to make it nice and shiny and and blend in browser queries But that's gonna be all below core like for example the Android or curious already so so that's Essentially a port of Europe is core and therefore everything we do that is going to be Okay That was that And now thanks for your attention and maybe there's some questions Anybody have questions Well, thank you Thorsten appreciate the Presentation next step we'll have document foundation Toolkit oh, yeah, sorry. Oh, yeah, took it From Shantae and that should be about 10 minutes or so again. Thank you Yeah, thanks for your attention and um, yeah, you know what you were to reach me I'm gonna sit on Telegram and RSC and just to read that from the From the chat for students can be virtual first weekend Saturday Sunday. It's always in February So see you there later Thanks, everyone. My father one Josh But I don't have the same impression. I can tell you