[Qt-creator] Collaborative Editing

Tobias Hunger tobias.hunger at digia.com
Mon Oct 28 10:36:12 CET 2013


On 26.10.2013 09:49, Campbell Barton wrote:
> Hi, I was wondering if there was any effort to support collaborative
> editing in QtCreator,

I am not aware of any, no.

> Recently at the GSOC mentor summit I met with one of the mentors who's
> student added a generic library for KDE to support this, he says this
> will be added to the up-coming release of KDE. []

Does that work on windows and mac, too or is it linux specific. I think 
it sits on top of telepathy, which -- considering the poor state of dbus 
on windows/mac -- would make it a linux only solution.

> I was wondering if this would be interesting to others, and if it
> would be possible/desirable to add such a feature to QtCreator?

It should be possible. Whether it is desireable depends a lot on how 
well it will actually work in the end:-)

> If this is acceptable would there be the possibility of accepting
> funding to get such a feature into QtCreator?

There are always consulting companies like Digia and others available 
for such kind of work.

> In case it matters - I'm interested in this feature for virtual
> pair-programming.
>
> [0] https://floobits.com
> [1] http://scummos.blogspot.de/2013/09/collaborative-text-editing-02-beta.html
>

As floobits.com says: To make this worthwhile there needs to be more 
than sharing an editor. Pair programming makes sense only if you both 
parties can agree on the state of the application they are working on. 
Otherwise there is no basis to start the programming from.

That opens more questions like:

  * How can we share the terminal output? floobits mentions terminal 
sharing, too.

  * How can we share the debugger session?

  * How can we share the running application? RDP/VNC maybe?

  * Should collaborative editing integrate into version control somehow? 
Synchronization of state could be easier if you can just tell any editor 
to checkout revision X and then apply a couple of changes on top.
Should one of the collaborators be responsible for saving/commiting the 
file?

  * An IDE is a bit more complex than a text editor: It has the code 
model to worry about. That needs to know the complete project state, not 
only one file. How is that going to be synchronized? Are you going to 
ask the user to open project X before he can join a collaborative 
editing session? How do you make sure both projects are in the same 
state then?

  * How can this work across platforms and ideally even between parties 
that use different versions of QtC (and ideally even other IDEs)?

Many people seem to be interested into collaborative editing nowadays, 
so there is work we can build on in that area. Is somebody aware of work 
on the other aspects of colaborative (C++) programming?

Best Regards,
Tobias

-- 
Tobias Hunger, Senior Software Engineer - Digia, Qt
Digia Germany GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Anja Wasenius
Sitz der Gesellschaft: Berlin. USt-IdNr: DE 286 306 868
Registergericht: Amtsgericht Charlottenburg, HRB 144331 B



More information about the Qt-creator mailing list