Proposal: Shared network-enabled virtual desktop for KDE 4.0

Janne Ojaniemi janne.ojaniemi at nbl.fi
Wed Aug 10 17:10:44 BST 2005


My apologies for screwed-up formatting in the original message. It looked fine 
on he compose-window, but on the list it looks bad. I will try to fix the 
formatting on this message

On Wednesday 10 August 2005 19:00, Janne Ojaniemi wrote:

> PROPOSAL

> KDE 4.0 should have network-enabled shared virtual desktop that could be
> shared with other users on the network. The proposal is tentatively called
> “Foresight”.

> RATIONALE 

> Network-awareness seems to be the order of the day these days. And while
> KDE 3.x is network-enabled by default (different IO-slaves for example)
> that is really just baby-steps when compared to things that KDE could and
> should be able to do. With Foresight, KDE would take a huge step forward
> when it comes to true collaborative working between individuals over the
> network. And as networked KDE is, there’s currently no way to substitute
> physical meetings and on-location brainstorming. Foresight would make those
> possible, using nothing but the internet and KDE.

> DETAILS 

> KDE (as do other desktops in Linux/UNIX) offers virtual desktops by
> default. What if one (or more, if the users so wishes) of those desktops
> were network-enabled and shared? Meaning, all the people who are sharing
> that desktop would see the exact same thing. If one of the users launches
> an app on that desktop, it would appear on everyone’s shared desktop. Every
> user could use the apps on that desktop, and everyone could see the others
> working on it. Each user could also have a mouse-cursor of their own. The
> desktop would clearly state “Shared with: Linus Torvalds
> (torvalds at osdl.org), Bill Gates (billg at microsoft.com) and Janne Ojaniemi
> (janne.ojaniemi at nbl.fi)” (for example). Or it could simply say: “Shared
> with: The IT-department”, where “IT-department would be a group of people.
> Foresight could tie in to Kaddressbook for providing the user with names of
> groups and users. 

> The shared desktop would look different from the other 
> desktops. This is done in order to differentiate it from the private
> desktops, so users won’t use the shared desktop for personal work. Also,
> moving a running app from a private desktop to shared desktop would pop up
> a dialog-box warning the user that he’s about to share the application with
> others.

> By default, the shared desktop could offer an area for “doodling” 
> and typing text. This way the people using the shared desktop could quickly
> type text and/or make doodles demonstrating an idea they have. This way
> there would be no need to launch a separate IM-client or send emails. A
> small-scale variant of Foresight could be a shared plasmoid on the desktop.
> That plasmoid would be shared with other users. Users could drop files on
> to the plasmoid and it would appear on everyone’s desktop. They could write
> texts in the plasmoids and it would appear on everyone’s desktop as well.
> They could also share output of apps there (presentations etc.). While this
> functionality could be replicated with IM, shared folders and the like,
> this would allow central place to handle this, and it would make ad hoc
> collaboration easier. This would allow users and developers to quickly
> share something they have been working on. 

> TECHNICAL IMPLEMENTATION: ROUGH DETAILS

> Sharing could be done through peer-to-peer networking using NX-compression.
> This way there would be no disruption to others if one user loses
> network-connectivity. Also, by using peer-to-peer, the bandwidth-strain on
> one particular machine will be lessened. The actual networking could be
> done through Zeroconf, where the user could simply pick and choose the
> users with whom he would like to share the desktop with. Or the user could
> pick people up from Kaddressbook. Shared desktops could also announce
> themselves to the network using Zeroconf, and other could join them with a
> click of a mouse, if the desktop is “open” for joining. “closed” shared
> desktops would require authorization/password in order to join.
> Authorization could either be handled by anyone sharing the desktop, by
> voting, or by decision by the master user. Master user would be the user
> who created the shared desktop. Should the Master User lose
> network-connection while sharing a closed desktop, the approval procedure
> would automatically default to popular vote. And since the networking
> would be done through peer-to-peer, there would be no disruption in the
> shared desktop evn if master users loses connection.

> INTENDED USES 

> This system could be used in following environments:

> - Education & training. Students could share a desktop with the teacher,
> and the teacher could actually show the users what he’s talking about on
> the screen (code for example). Also, training users to use some app (or KDE
> itself) would be easier when the instructor could actually show to the
> users how to do something. 

> - Distributed projects & teamwork: All members 
> of a distributed team could see the same desktop. Working would be smooth
> when each team-member could actually see in real-time what the other person
> is doing. It would enable the “why not change this thing
> here?”-communication with instant feedback. Also, one person could write
> code, while others read what he’s writing. One person could create artwork,
> while others provide instant feedback as he’s creating the artwork. Instead
> of waiting for the user to finish working and mail/upload his work, others
> could see it as it is being created. 

> WHY NOT? 

> What problems could there be in creating this technology? The technology
> might not be there yet. NX might not work with peer-to-peer. Hopefully
> people with needed technological expertise will provide feedback on
> possible issues.

> SUMMARY 

> This proposal, if implemented, could turn KDE in to de facto standard when
> it comes to distributed teamworking at this level. Not only would this be
> an immense help to open-source developers (who are often physically
> separated and work over the internet), it would really help companies with
> offices and teams around the world. And my proposal presents a paradigm
> that simply does not exist in competing products, open or proprietary. With
> Foresight, KDE would take “network-awareness” to a whole new level. This
> could become a “must have” feature in the future.

> GLOSSARY 

> Closed Desktop: Shared desktop that requires authorization from the Master
> User or from the other users of the desktop for new users to join the
> desktop. Foresight: Set of technologies that enables user to share a
> desktop and associated applications with other users in the network Master
> User: User who creates the shared desktop and shares it with others. This
> user can decide who can connect to the desktop, or whether such decisions
> will be made by popular vote. NX: Compression-algorithm created by
> NoMachine that allows remote-X even over dial-up links. Core libraries are
> licensed under the GPL, and free implementations exist (FreeNX) Open
> Desktop: A shared desktop anyone on the network can join
> freely.
___________________________________________________
This message is from the kde mailing list.
Account management:  https://mail.kde.org/mailman/listinfo/kde.
Archives: http://lists.kde.org/.
More info: http://www.kde.org/faq.html.


More information about the kde mailing list