News

Remote Development Tools Unveiled for VS Code

Visual Studio Code, the increasingly popular programming tool that already tops some major surveys, is getting expanded remote development capabilities via a brand-new extension pack.

Aptly dubbed the Visual Studio Code Remote Development Extension Pack, the new offering consists of three individual extensions.

They provide functionality for working with containers, Secure Shell (SSH) and the Windows Subsystem for Linux (WSL).

The new remote development initiative stems from that aforementioned popularity of VS Code, which saw the open source, cross-platform code editor top the chart of most-popular development environments in a recent, huge Stack Overflow survey.

As more developers started using VS Code, the many new dev environments involved presented a host of challenges, of which remote development figured prominently. Current approaches to remote development -- such as Remote Desktop, SSH and Vim and browser-based tools -- can work, but can be cumbersome or problematic.

Upon listening to feedback provided by the new class of developers using VS Code, Microsoft investigated different approaches to ease their pain points.

"We convinced ourselves that what we needed was a way to run VS Code in two places at once, to run the developer tools locally and connect to a set of development services running remotely in the context of a physical or virtual machine (for example, a container or VM)," said the VS Code dev team in a blog post today (May 2). "This gives you a rich local development experience in the context of what is in the remote environment.

"Over the past few months, we've been working hard re-establishing proper boundaries between our code layers and eliminating assumptions about the local development environment. We've built three new extensions for working with remote workspaces running in WSL, Docker containers, or in physical and virtual machines over SSH."

Those three extensions -- all in the preview stage -- are:

  • Remote - SSH: Work with source code in any location by opening folders on a remote machine/VM using SSH.
  • Remote - Containers: Work with a sandboxed toolchain or container based application by opening any folder inside (or mounted into) a container.
  • Remote - WSL: Get a Linux-powered development experience from the comfort of Windows by opening any folder in the Windows Subsystem for Linux.

The extensions work by moving the execution of certain commands to a "remote server" that is quickly installed by VS Code when it's connected to a remote endpoint, allowing it to host extensions that interact directly with a remote workspace, machine and file system, as illustrated here:

VS Code Remote Development
[Click on image for larger view.] VS Code Remote Development (source: Microsoft).

The extension pack's description says the ability to set up a full-time development environment anywhere helps developers:

  • Develop on the same operating system developers deploy to or use larger, faster, or more specialized hardware than a local machine.
  • Quickly swap between different, isolated development environments and safely make updates without worrying about impacting a local machine.
  • Help new team members/contributors get productive quickly with easily spun up, consistent development containers.
  • Take advantage of a Linux based tool-chain right from the comfort of Windows from a full-featured development tool.

The new extension pack only works with the Insiders program (frequent builds for early adopters allowing side-by-side installations) of VS Code for now, but will graduate to the Stable build.

To help developers get started with the pack, Microsoft has published documentation, Dev Container samples, and a blog post devoted to remote Python development.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

Subscribe on YouTube