Skip to main content
← Back to course

Why Remote Development Exists

Remote Development lets VS Code's full editor experience — IntelliSense, debugging, extensions, terminal — run against code living somewhere else entirely: another machine, a container, or a Linux subsystem on Windows.

The core idea: your UI stays local, but the actual "back end" (file system, extensions, terminal, language servers) runs on the remote target. This is different from just editing a file over a network share — VS Code Server runs genuinely close to your code, so IntelliSense, search, and terminal commands all execute where the code actually lives, not slowly over a remote file mount.

Three real scenarios cover most remote development needs, each with its own extension in the Remote Development extension pack: SSH (a remote Linux/macOS/Windows machine), Containers (a Docker container, matching an exact runtime environment), and WSL (Windows Subsystem for Linux, a Linux environment inside Windows itself).

Why this matters practically: matching your development environment to your actual deployment target. If your application runs in Linux containers in production, developing directly inside a matching container (or WSL) catches environment-specific bugs before they ever reach a real deployment — the same environment-parity principle behind Docker generally.

Extensions install per-environment, not globally shared across every remote target. An extension you use for Python development needs to be installed in whichever remote environment you're actually connected to — VS Code manages this per-connection, distinctly from your local machine's extension set.

Why this matters for you

Remote Development is what lets "my code needs to run somewhere that isn't my laptop's native OS" stop being a barrier — full editor fidelity, wherever your code actually lives.

▶️ Before the next lesson

Check whether the "Remote Development" extension pack (or its individual components) is already installed — it's official, from Microsoft, and a common inclusion in many default setups.