Collaborative mode for Service Studio
1497
Views
12
Comments
New
Collaboration

Motivation:

Pair programming is nowadays a largely accepted modus operandis to reach a productive state where quality is increased. While Service Studio is a collaborative tool to some extent, it could be improved, hence this idea. This idea also applies to situations where one person wants to interchange ideas with another person that is remote or wants to teach something to someone else. (Bootcamps, workshops, knowledge transfer sessions, etc). 


Inspiration

Scrimba has a collaborative IDE that allows a developer to have live coding sessions that are broadcasted/streamed to subscribers. Those live coding sessions are two way channels, meaning that the "master peer"/"host" can makes changes to the files but the "subscribers" can also submit changes to the code.  See this demo video to see the potential that scrimba can offer to its users.


The idea

Video streaming over webex/skype/slack is very resource consuming (net bandwith, RAM usage, CPU usage, etc) and can break the experience completely. Many times have I suffered on a knowledge transfer session while attempting to share my screen to explain something to some customer within Service Studio and suffered lag, pixelization, audio loss, etc. 

Bringing the concepts showcased on the video aforementioned, Service Studio could broadcast interaction events (user keystrokes, mouse clicks, mouse movement, etc) that happen within its context to another remote instance (or multiple instances) of Service Studio. 

By broadcasting only those events the data transfer size is reduced and by sharing the same application context there's no need to transfer image/video so that others could see what is happening given that those interactions actions are replicated on each subscribed Service Studio instance.


The usages of this idea could be:

  • Easy hands-on support with customers where the support person can do a live session that has immediate impacts on the customer end
  • Easy pair-programming sessions
  • Easy knowledge transfers/ teaching sessions
  • Easy collaborative workshop sessions


Fortunately, nowadays we can leverage real time communications very easily with technologies such as WebSockets, MQTT, etc that scale easily and would allow for an easier development process. (There's no need to bring those UDP connections into the table and relive many of the difficulties that multiplayer games have given that this solution could, to some extent, ignore state sharing and management).


Cheers,

João Gonçalves

2014-02-07 17-02-43
Vasco Pessanha
Changed the category to
Collaboration

Maybe this idea became more relevant and deserves the COVID-19 tag to get added?

2014-02-07 17-02-43
Vasco Pessanha
Merged this idea with 'Service Studio - Code Live Share' (created on 23 Oct 2020 08:25:13 by Emidio Correia)

More than ever, we need remote collaboration tools. So, it'll be extremely useful if service studio can make a code live share: and all the invited members can interact with the code.


Something like this:


1 - Generate a link with token;


2 - Send the link.


3 - The invited member can insert that URL/Token  in an option in is service studio.


4 - Now they can both see, interact with the same code, and chat.

Changed the category to
Collaboration
Merged this idea with 'Collaborate in real-time | Live Share' (created on 28 Jun 2019 14:54:06 by Swatantra Kumar)

Motivation:

  1. Collaborate with remote working team
  2. Pair Programming
  3. Interviewing the right candidate and to see the approach
  4. Easily work together, in any way you need
  5. No-hassle of sharing any other app
  6. Training and workshop
  7. Support session
  8. Debug with team
  9. Collaborate from the comfort of IDE
2014-02-07 17-02-43
Vasco Pessanha
Changed the category to
Collaboration
Merged this idea with 'integrating a real-time collaborative development environment' (created on 01 Jul 2024 09:10:23 by Youssef Moussa)

As an OutSystems developer, I propose integrating a real-time collaborative development environment within the platform. This feature would enable multiple developers to work on the same application simultaneously, similar to Google Docs. With live editing, team members can see each other's changes in real-time, enhancing communication and speeding up the development process. Integration with version control systems like Git would allow for seamless branching and merging. This addition would significantly improve collaboration, efficiency, and the overall quality of application development in OutSystems. 

Merged this idea with 'Real-Time User Collaboration Awareness in Service Studio' (created on 26 Jul 2024 05:59:55 by Pratham Rasal)

To enhance collaborative development and avoid unintentional conflicts during module updates, I propose the implementation of a real-time user collaboration awareness feature in Service Studio. 

This feature would allow users to see who else is currently working on the same module or application. 

By providing visibility into which users are making changes to specific actions or screens, developers can coordinate more effectively, avoid merge conflicts, and ensure that their work remains consistent. 

This enhancement aims to streamline the development process, improve communication among team members, and maintain the integrity of ongoing projects.

Possible Solutions :
Figma is a software who have this feature in which they have users logo on the changes they have made. 
So whenever multiple users are changing something in the same module at the same time the place where they are making changes suppose a block should have their logo in front of the block.