Hi Simon,
I’m excited about extending LibreOffice to include peer-to-peer collaboration:
This seems a great direction to me; quite a chunk of the feedback we get around CODE/COOL is - what about peer-to-peer PC application collaboration? (following a similar pattern to the competition) - people still love the desktop client. My expectation is that integrating this sort of functionality - particularly if it could be extended to collaborate between COOL, Mobile & web versions as well as between desktop/LibreOffices would be a great feature for the whole community.
I’ve a number of technical thoughts around how to achieve this, and Collabora is part of a project proposed around a prototype in this area that could be accelerated here.
There are a number of interesting technical problems: how do we do the protocol/API ‘cut’ here to make this work reliably while being deliverable this century (ie, without the need to completely re-factor the whole core). My preferred approach would be to make the ‘cut’ around the smallest & simplest APIs we have: keyboard & mouse input. We could/should extend that via Caolan’s dialog welding & Szymon’s JSDialog protocol in core which was done for COOL to provide richer dialog semantics, as well as re-using the multi-window/view model approach use in COOL. This would have the benefit of being an extremely complementary and achievable technical approach that can be incrementally deepend as we improve the core to include more interesting operations/transforms as & when. We should probably also be extending the JSDialog/weld approach locally to implement proper native widgets support for Windows/Mac/Android?/iOS and better look/a11y too - though I guess we could wrap VCL widgets initially.
Of course, this will need to be discussed and planned properly with the ESC.
Anyhow - I’m encouraged to see a positive idea here that is constructive, collaborates with and leverages existing ecosystem investment around LibreOffice Technology, significantly enhances desktop/LibreOffice for the future, potentially allows new chat companies to get involved in collaboration channel setup and interested in LibreOffice, and so on. Seems like a direction we’d want to support at Collabora, and I’m excited by the prospect of a new board term and focus with the chance to working together constructively.
I look forward to digging into the technical details, at FOSDEM or sooner if people are interested.
Thanks,
Michael.