Before getting into this post, do yourself a favor and download the extension for Visual Studio Live Share. There is a version for Visual Studio 2017 (15.6 or higher, but recommend 15.7 which just released this week) or Visual Studio Code (1.22 or higher).
Background
Back in November 2017 the Visual Studio team announced a new feature called Live Share (blog post) that allows a team to collaborate on the same codebase using the same development tools, settings, or environment. When I first heard about this I thought to myself “no thanks, I’m fine with screen-sharing through Skype / Sococo / Google Hangouts / etc. for real-time collaboration on code projects.”
A few weeks later I listened to Scott Hanselman’s Hanselminutes podcast on “Revolutionizing remote pair programming with Live Share” and realized what I was missing. Screen sharing works when both users have a copy of the same codebase (re: checked-in to source control, shared permissions, etc.) but what happens when you want to collaborate with someone who doesn’t have access to the codebase? Or the codebase is rather large to download? Or the bandwidth needed to screen-share a 4k monitor display is causing poor performance on the screen-share session? And on and on with limitations.
Problems Solved
Visual Studio Live Share solves a number of these issues:
- Allows you to share with anyone simply by giving them a link
- Files that are interacted with from the source projects are temporarily cached on the target machine in real-time (i.e. doesn’t download the entire project at start)
- Doesn’t require the person sharing with to have the same extensions, developer tools, etc. installed
- Allows real-time 2-way collaboration and debugging (the latter is a huge deal)
- Reduces network bandwidth used by only sends minimal data like cursor position and typed characters (i.e. doesn’t push 1080p or 4k monitor worth of pixels across the network)
- And much more…
Walkthrough
You can watch the videos the Live Share team has put together but I’m also sharing a couple quick screenshots from my testing with my peer Ken Kilty yesterday. I’ll be showing Visual Studio 2017 but Visual Studio Code is also available.
Note: ensure that you follow the instructions for allowing Live Share to work through the firewall if you have one enabled on your device.
Open a project / folder. Click the Share button in upper right corner.
After sending the link to the person(s) you want to collaborate with they will see a screen similar to the following. Clicking the link they can choose which application to launch.
You can share with multiple people and even cross collaborate on different IDEs with one user using Visual Studio 2017 while the other is using Visual Studio Code.
Conclusion
I’m still exploring the capabilities of Visual Studio Live Share such as “follow me”, shared terminal, remote debugging, shared servers, and more. You can read up on the documentation as well. Live Share is currently in preview but I already see a number of scenario where this will be extremely useful for working with peers, customers, and beyond. Give it a try today and let me know in the comments if you have any feedback or questions.
-Frog Out