Okay everybody, attention is so, we are for the next talk of the day, so we have Michael
Anne, here from collaboration with GVT and there talk of the events and to boys collaboration
on and off collaboration.
Oh, look at that, fantastic, thank you so much.
Very good to have you come.
Look at this.
Just a quick background check.
Who have you was here for my earlier talk downstairs, if you've raised a hand?
Ah, good, I can give the same talk and all, no.
That's brilliant.
Oh, I mean, all these guys are cool, kids.
Right, excellent, let's get on with it.
So, one of the things that I should click on the right thing.
One of the things that we're doing is talking about this new office suite we're building for the desktop,
which is particularly cool.
They've pun intended, bringing the same UI from collaboration line to the desktop, as you can see.
And actually, we've been doing this for years.
So, this was already compiled into our Chrome OS version, so if you have an Android phone, you can run collaboration
and it looks beautiful for your phone.
In fact, Skyler, smiling over here in the front row is responsible for the wonderful, you know, mobile UI, which is great.
But we're used to put a bigger screen on that, so you install the APK on a Chrome OS book.
You discover, actually, the whole application is there, it's just a responsive.
And actually, probably if you resize your browser window too aggressively, you might discover you've become a phone.
So, you know, be careful, what you wish for.
Anyway, so it's always there.
And if you compile our iPhone version right, you could also run that on a Mac.
But in recent time, we've decided then to bring that as a full native app to the desktop.
And so, why is that?
Well, the first thing is, of course, offline support.
The term and train system, I'm told about, is, you know, a wonder of the world.
And, you know, people travel everywhere, but its connectivity is probably not great.
And so, that's great, save the world, but without an internet connection.
And so, yeah, bringing that to these long-suffering people is very helpful.
And then, so that's one strand of goodness.
The other strand of goodness is rich platform APIs.
So, web browsers are created by rightfully paranoid people,
so they turn off all interesting APIs.
And even APIs, they do have, like, the clipboard APIs,
are deliberately vandalized, tragically.
So, you know, we used to be able to copy and paste rich text format into documents.
So, you know, if you had, like, a chart in Microsoft Office,
you could paste it into a collaborate online,
and you got a chart, and it had axes and labels and formats and colours,
and you could edit it as a chart.
No longer, it has to be decided that rich text format is too dangerous.
I know it's only a string, but it could be dangerous.
So, that's been disabled in the new tipboard APIs.
So, you can either have a really old lane API that does it,
or a really brand new sparkly API that doesn't do it.
So, sad.
Quite typical of the browsers.
It would be nice if we could work around those and actually do a good job.
Because we get a lot of blame for copy and paste not working,
and it's pretty, well, it will become our fault.
Monty screen project management.
So, you're sitting able to detect what projectors are attached
and adapt dynamically to that.
We need you to do that.
You know, being able to discover your printers.
Do you have a printer?
What page sizes it and so on?
Just the really basic stuff that the web just can't do,
and then various other nasty image formats.
So, here we go.
It used to look like this with a browser,
and a URL bar at the top, and now it looks like that without a browser,
and a URL bar, but these are kind of similar, which is good.
And the same UI then, one set of training, pretty welcome screen.
We actually did a chunk of work to translate templates.
So, you can have templates.
Now, you can load and translate and show you all sorts of stuff.
There's a little slide show that uses our engine, of course,
animated videos, web jail transitions, introduction, very nice.
And then, yeah, well, you know the classic look, something like that.
So, same document then looks, you know, just different.
I mean, I guess, you know, it's simplified, more discoverable,
arguably more efficient.
And based on lots of UI research, which perhaps will look at later, if you have time.
Nice, you know, pieces like this.
I'm trying to get to the collaboration bit, which is Stephens, Stephens, Baby.
So, you know, we'll get there in a second.
Nice integration with Max.
If you are, if you're a Mac user, don't confess.
Don't show your Mac here, or falls down.
You get my get lynched, you know.
So, what can you do?
And this is really complementary to the classic mode.
So, classic, of course, will continue to be there.
It has huge code base.
It has a whole load of fascinating integrations and things.
It's a vital, a piece of the community backing that.
But we really complement you to that.
So, shipping and stripping lots of pieces out to simplify it.
Right.
And the fun bit, though, of course, is when I take this off.
And then we talk about how we can then collaborate.
Why don't they?
Collaborate whilst, you know, swallowing the microphone.
It sounds better inside.
I promise you.
And that's all good.
Well, that'll work.
Do you hear me?
Okay.
How do I operate this?
Just the page down.
Okay.
So, yes.
So, you have your great new offline office suite.
And you have those multiple documents that are working on.
And you're working on your private sailing yacht,
document, and on your whatever archit.
But you also want to actually do things that are not that private to yourself.
You want to be one of these busy beavers that are collaborating and working together.
So, you need some way to actually access documents that other people could access as well.
And you're working on them collaboratively, as you know, from the online office suite.
And you want all of that packed into one.
So, you don't want to go from your local app to the browser just to collaborate.
And then move back if you want to work on your sailing yacht again.
So, this should all be in one local app that also has access to the browser,
to the server documents that you want to collaborate on.
And the great thing is, most of that is already there due to how we built this offline application.
So, on the server in the in the server world, we have this server.
And we have the client-side JavaScript that is responsible for drawing all the UI and the integration.
And on the client side, what we have there is also for each of these tabs.
We have this JavaScript bit that was otherwise run in the browser.
And this server part crippled down a bit.
We have that as well on the client side running inside that app.
Now, coming from a desktop application developer perspective, you would say,
it's kind of complicated.
While you have the separation and stuff and talking.
So, these two talk about the web socket.
These two here in one application.
They talk about a cross something that is called a fake web socket.
But it's almost like a web socket.
Just a bit simpler.
And it's just added complexity, right?
No, that's not a bug, that's a feature.
Because this connection here between all things you see and all things that do the actual computing,
you can switch that from doing a local fake communication with your local app back store.
To doing transparently, reusing that connection, that web socket, as a real web socket,
to your server and your document will stage up to sign.
Because what you did here when you initially start to view that document,
the client application tells to the server,
I'll start to view this document, this remote document.
And then the server tells you, okay, you can get the actual document for now.
Why are this HDBS connection to whatever data store?
So, we don't directly talk to the data store, which could be,
next cloud or whatever, we'll just control this here.
So, we have more flexibility, we can tell the client,
just grab them from over there, we'll show them here,
and you'll get them there.
And then you have the initial idea of what that document at that moment is.
And then when you want to actually operate on that, on modify it and change it,
then we'll move on to the next slide.
And that is when you start out with it.
So, the first one, watching that document,
and you're not actually yet modifying it.
Because you just started up, and you're a lazy beaver,
and most of the time you don't work anything.
Just look at what others worked, and what others created.
So, you're most of the time you're just watching these documents,
and pretend you're working.
But in reality, you're just delving away.
We already have this connection to the server, which told us,
this is the current state of the document that you're viewing there.
And we have this real web socket connection,
but it's kind of a lazy one, because we don't do anything across it.
All the display here is done on the client side.
The only thing we keep this web socket connection here is about this coming.
So, the server and the server doesn't have to do much.
It just has to take note, okay, there's somebody looking at this document,
just about beaver at the moment.
And more will might come, but I don't need to start any state on the server yet.
Or much state, because there's not much to do.
Now, more beaver is pop up.
Two, three, fifty, hundreds of beavers.
All looking at the same document.
All lazy beavers.
Nobody doing anything.
So, they all have this document still in redone remote,
because they're not really working to be true.
So, what's about the server?
The server can still stay green, because each of them now has this web socket connection
to the server, but which doesn't have to do anything.
It's just waiting for one of these beavers to wake up.
And the server is still very conservative on its needs for performance.
Because it doesn't have to do much.
Now, beaver one wakes up.
Oh my god, what happens?
He wants to edit that document.
Now, what's with all the other beavers?
Hmm.
Something has to change on the server's side.
Ideally, there will be some dialogue popping up,
but the dialogue got eaten by a software.
I don't know.
Okay.
So, the dialogue will show you multiple opportunities or choices what to do.
So, the one scenario is beaver one.
Edit this document now.
So, this web socket connection between the client,
which until now did all the rendering here,
and all the computation when you scroll through the document,
was done on the client side until now.
Now, this beaver starts to actually type something into the document,
and edit these cartoons.
So, this connection becomes hot.
All the computation is now done on the server's side,
on the server document.
And then, channel back through the web socket,
or the information, what actual pit maps to draw
into the canvas on the client side.
The other ones, for example, could say whatever the number one is doing,
he's doing nonsense anyway.
I don't care.
I keep looking at the original one,
because in the end he undo everything anyway.
So, they keep these fake connections
or these cool connections to these steps on the server's side,
which still operate on this document completely client side.
So, the server gets a bit hotter.
Next scenario.
All the beavers want to see what beaver number one does.
So, even if they still don't actually modify the document themselves,
they want to see what beaver one is doing,
they're very interested beavers in seeing what their colleague actually does.
And they might even decide so.
There's first beaver over there,
decides no, I don't want to edit.
I'll keep sleeping and just blink once and twice
and see what these other guys are doing.
But this beaver actually wakes up and says,
yeah, I'll operate on the document as well.
And this is kind of the classical or the usual browser scenario.
Very each of them has a hot and live web socket connection
to the server and the server is doing all the computations
for each of the three different ones and serving them.
They're data depending on where they scroll to in the document.
So, this is kind of heavy on the load over there.
But give you the full flexibility of each one working on the document.
Another scenario still a third scenario could be beaver number one.
The middle one here says, I'll edit the document,
but I'm not sure I'll do it right and maybe the others are not interested anyway.
So we could have a third option that they operate on the local copy of the document
and then from the server perspective everything keeps staying cool.
Each of them are looking at the local kind of copies each of them
doing their computations on the local side.
And this one just having a local copy that they're moderating
that they're operating on and actually modifying.
And then some later time they'll have to save it back.
And if multiple people want to save back then, of course we have these problems
of doing the merging at that time.
But that's a lighter time because for now they are just each of them editing it,
faithfully locally.
And what happens then we'll see later.
Because can I get this already anyway?
Quite.
We're working on it.
And there's of course some still some decisions to be made.
Some naughty parts.
And so we need to decide which of these scenarios actually makes sense
to a user base which of them should be prioritized to implement
and which might be nice to have additions.
The protocol haven't been taken out completely yet.
And of course with all these hundreds of beavers popping up at unpredictable times
during the workflow.
There's a bit of a space explosion in the state machine.
What happens when people one is doing a and then another beaver comes up
and another beaver comes up while the second one comes up.
So yeah, we have to be careful that our beautiful implementation there
where we had just this easy switch from a fake socket to a true web socket.
And we get that right so that we don't mix up the different web sockets
that each one gets.
And the great news is if you want to work with us on that then
I think we get over to the slides from Michael again.
Because then there's this hack for us coming up.
Who?
Can we see them in the back?
Lovely.
So we saved lots of exciting different options for getting it wrong.
You know that's even the absolutely brilliant.
The state machine we already talked earlier about weirdness is in state machines
and we're going to find a whole lot more from user interaction.
Obviously we talked about the conflicts.
If you're on a train for an hour and someone else is editing the document
of a problem and that problem is not made any better by hyper complicated things.
It is made better by super easy comparison of what changed.
So I think that's also going to be a big part of resolving the idea of the connection
broke and now we need to make something good out of it later on.
So the rest of this I guess is mostly looking at UI UX stuff
and some of the things we've been doing there and just a bit of the improvements
So we have quite a lot of telemetry.
So actually some of the things that we're doing now
flow out of watching what users actually do.
I had a graph of all sorts of things.
This is a nice graph of what operation is following what other operation.
So you know you do a mouse move and then you do something else.
And so it's kind of nice to see what's what's going on people are doing.
That's an internal service and also somewhat some of our demo telemetry there
that we watch and try and optimize the product.
Yeah, particularly play that way obviously.
And some of the optimizations that come out of that are pretty nice then.
So making the UX just much prettier in a whole lot of ways.
I have one minute and 19.
So we're just going to with through some of the nice things
about a context support.
So lots of functionality we already had.
But just making it nicer and more easy to get to.
And then use more intuitive and functional.
You're adding a slide.
It would be nice to pick the layout when you're adding it.
I'll just have a drop down better responsive tabs grouping and so on.
We've also got a whole lot of new features that are coming actually really soon in the next month or so.
So there you can play with them already there in the code base but just not released.
So nice to page view there.
Whole new interoperable table design thing.
Thanks to Marcus and the.
Balish and Marcus community hero of all that we love so much.
Multiple sheet views which is frequently requested so you can filter staff and not corrupt someone else's view.
So, you know, you can see different different things say there's five departments.
Each department can see different different different view of the same underlying data.
Also, so good things from Skylar.
Have you given your mobile talk yet?
Oh, you just now.
Oh, well, there you are.
So here for you got that.
Follow me presentation is coming out later.
So I'm not going to ruin Pranam's talk too badly.
Yeah, absolutely.
We have a whole bit of improved settings.
I just really simplifying the huge massive settings.
Lots of work on interoperability.
So this is the most toxic waste.
Oh, let's see there you go.
The toxic waste of our interoperability work.
And we're just hammering that down to squash it.
I get that that's good.
And cool days.
If you can't make it Monday, Tuesday to come and make this rock then come to see us in Hamburg.
And thank you so much to all good people that do so much of the hard work.
And yeah, I don't have any more bevels.
I think we gave 300 out today.
Oh, if you won't bevels.
Oh, brilliant.
Where are they?
It's crazy about the audience.
Yeah, so Scarlet should have a whole suitcase full of, you know, there you go.
And we need special bevel insurance to, you know,
So we have this very hard work in creature, you know,
and then we've picked them as our mascot, you know, for doing all sorts of things.
Don't fight.
There'll be a hundred more tomorrow.
Something like that, at least.
And we also have a comic called The Open Roads of Freedom
that talks about open source and communities and all sorts of good things around that.
So do you have a play with that should be slightly amusing.
And yeah, look at that.
Handles, trains and planes smoothly.
That's what we need.
And all sorts of new collaboration, locking things stuff.
Thanks for everyone who contributes.
So I know many people here contribute to both Librofist and
Calabrofist and we think you're awesome.
So keep it up.
You'd be very patient.
Thank you so much.
We have time for a question.
We have a few minutes for questions.
Why don't I have a bevel yet?
So Skyler's under arm is really quite something.
Look at this, you know.
This is years of training in those sports fields.
Oh, yeah, yeah.
So, you know, questions?
Any questions?
Yeah, would you like your questions?
Yeah.
I noticed recently there was a slight change
for the colabro online version, which is usually
integrated in the next thought.
That the icons and the UI changed to be from
B monochrome to more colorful.
Yeah.
So this is an intentional move towards back from
We do everything monochrome.
And now we do it back in colorful icons.
I mean, personally, I find it nice.
But I just wanted to know if this wasn't intentional change
because of better UI and better recognizableity of the icons.
Yeah.
So you would be amazed at the impact that
color has on people and the ability to distinguish
components from each other.
You know, like, we do lots of heavy lifting all day every day.
And it's surprising when the most positive feedback you get
is like, oh, the color, you know, I feel like, oh,
my look at it and it's like, oh, this is, you know,
what I mean, expecting familiar with.
So, so yes, the color thing turns out to be really
really helpful for people seeing which of their spreadsheets
and which of their presentations and so on.
I mean, it's much loved and we've persuaded the next cloud.
So we will support it.
I think to have the status bar at the bottom, which they'd
carefully hidden and various other things that quite useful.
So I think this, yeah, I mean, it's a really very mature
office productivity suite.
And it has a lot of features for a reason.
And we should really be showing it to people.
So they don't get where's there's no ruler.
Yeah, well, actually there is a ruler.
It's just being turned off and wouldn't it be nice if it wasn't?
So yeah, so there's some changes in the options there.
I think the monochrome stuff is probably still there.
If you are a lover of monochromatic, heavy, bold icons,
but yeah, I think that is a change this haven't recently.
Another question?
Fantastic.
Huh?
Going once?
No.
Ah, okay.
So I'm very happy to collaborate with colleagues that are in the user experience community.
So it's the user data open source.
And the answer is yes, for you, HIKO, I share it with you, of course.
Well, see what we're trying to do is we make sure that there's no user identifiable anything in it.
And as far as I'm where, hand on heart, there isn't.
But I'm not going to release lots of data.
If there's even a small risk that there might be something in there.
See, you know, commands we can have all sorts of parameters added to them.
And we filter those off, which actually phrase away.
A lot of useful information like what page size would you like or what thing.
But they also have like user data in them.
So we try and filter those things and so yes, it's not publicly shared.
But if people are interested in design and interested in the stats and seem sensible,
then we could share them.
Yeah.
Good question.
Love it.
Last question.
Last question to finish.
Ah.
Again, you.
That's all right.
I'll give you the microphone.
But the question is obvious if you are now also targeting a desktop environment,
what happens with Librovis in the long term.
Are there any plans to become an independent project?
Because Librovis and Colabra on the desktop,
I mean, it makes no sense of both products.
If both products will fill the same requirements,
when it just comes to editing documents.
If you've ever watched, yes, minister,
you'll see this episode where he is asked a question he doesn't want to answer.
And he says, I'm glad you asked that question.
And that is a question a lot of people wanting to know the answer for.
And he goes on for a very long time.
And it forgets what the question was in the end.
Hopefully I've achieved a similar effect with fewer words.
No, no, no.
So Librovis is really, really good at lots of things.
And it fills another niche.
I would argue.
And it's controlled obviously by the document foundation,
who own that brand and that product.
And we'll do what they want with it.
We're obviously focused on a slightly different demographic.
And that familiarity in terms of training and user experience for online and offline at same time.
It just really helps our product maximum.
Good news is vast amounts of the core work we do is completely shared.
So lots of the features I've shared here are there in Librovis as well.
And I think that's a vital strength.
Writing your own office suite from scratch is just a folly.
When there's so much great open source office technology out there.
So I hope that helps.
Thanks, guys.
Very good.
Thank you, Mark.
Thank you.
So.