Do you ever wish that collaborating with your team when working remotely, would feel more natural? A 4,300-person survey from Digital Ocean shows that 33% of developers primarily work remotely, and 28% split their time between remote and office work.
Remote work is on the rise, and one of the toughest parts to a developer’s remote work journey is when they are onboarding to a codebase. It’s tough to know how each of the pieces in the codebase work, why the code was written this way, and who to ask for help.
Our team created a prototype called Spaces, a VS Code extension, to address issues for onboarding and collaboration, especially for remote teams.
Here are some of the ways the prototype addresses some of these concerns to create a virtual team room that feels natural:
1. Talk about code, where the code is.
That way, context is never lost.
We wanted to cut distraction and make sure that a developer only gets notifications from people they are only working directly with, day-to-day. Focused discussion means less spam.
2. Get help without hassle.
We heard from developers that context-switching is the time-killer. So we wanted to reduce this by showing that getting help or making a note on a section of code is as easy as highlighting and right-clicking.
In Spaces, there's no need to paste to Slack/Teams, choose a channel, format code, or reference a line number, when you ask questions about code.
Note: We are looking at building this feature into the prototype and this is still in progress.
3. Sharing context is simple and fast.
We envision that discussing code on another branch or giving help can be as simple as viewing another person’s environment without disrupting your own. No checking out branches.
Note: We are looking at building this feature into the prototype and this is still in progress.
The implications of asynchronous collaboration are endless. A developer can provide or receive help whenever they have a window of time, without breaking their workflow.
Here is the current Spaces prototype. Feel free to check it out!
I have spoken to hundreds of developer teams to understand how they are collaborating in today's development landscape. I would be curious to know, what do you think? What are your challenges to creating a virtual team room?
Top comments (19)
Very cool. I’ll definitely check it out.
We have been big time MS Teams users, but I see how this could come in addition to standard PRs and Teams discussions.
Quick feedback - clicking "invite participants" generates an email, which is incorrect:
prod.liveshare.vsengsaas.visualstu...
"%3F" must be "?"
prod.liveshare.vsengsaas.visualstu...
(Looks like a very old issue in LShare: github.com/MicrosoftDocs/live-shar...)
Thanks for this, Olivier! I have forwarded this to the relevant stakeholders to look into.
That sounds great, Olivier! We are looking into further integration with existing tools. What tool is your team using for PRs?
It's GitHub, but GitHub Enterprise, self hosted.
Gotcha. We are looking into integration with Github!
Relatively off-topic, but Jetbrains is building a similar system for integrating with their products called Space. (jetbrains.com/space/)
I'd be curious if there are any trademark implications here for either team.
That's a good question! We released Spaces as a prototype for the virtual team room, prior to Jetbrains releasing Space. Because companies don't trademark a name that is already in use, it's possible that Jetbrains had trademarked a longer name in addition to just Spaces. So, at this time, the two product names do not affect each other.
Edit: Changed wording in a sentence to clarify meaning.
It actually is totally possible to trademark a name already in use. Trademarks are applied against names in business domains.
There's nothing preventing a business from trademarking "Google" as their brand name, they would just almost certainly be defeated in court when challenged.
Trademark protection is based on the validity of the claim (whether the business domains are similar enough to be confusing), and prior use. But prior use only really applies to other trademarks when we're talking about business domains (there are nuances, but in general this apples).
For example, if I trademark the name ACME, but ACME is already in use but not trademarked, and no one notices or issues a challenge for a little while, when the original author goes to trademark and I challenge, I will have a significantly better position to defend the trademark, even if I've technically used the name for less time. It really depends on how the trademark is used and advertised.
I don't know how relevant that is here, but I still think it would be an important thing to keep in mind if Jetbrains decides to release a "Space" plugin for Vs Code in addition to intellij.
Thanks for the input! We will look into trademarking issues in the future if they arise.
Hey Grace, love the ideas. We've been working on similar tools at CodeStream for about two years now, and have a really awesome new set of capabilities launching in a couple of weeks. I'd love to schedule a demo if you have some spare time. Ping me at pez@codestream.com if you are interested.
Great! I will send you a message. Thanks!
Sweet! Looking forward to using this with my team.
Sounds briliant!
Thank you, Mohammad!
Very interesting
Thanks, Ben!
Any plan to integrate it with Vim or GNU Emacs?
As this is a prototype, we are still in the process of defining a roadmap for the extension, based on developer feedback. At the moment, we don't have plans to integrate with Vim or GNU Emacs, but that could change in the future!