VS Code#
Visual Studio Code is Microsoft’s free, open-source, cross-platform editor. Released in 2015; the most-used editor on Earth by a wide margin in 2026, on every developer survey.
Built on Electron (Chromium + Node.js). Open-source core; the official
binaries include some Microsoft-specific extensions and telemetry.
VSCodium is a clean open-source build without those.
Why It Won#
VS Code took the editor market through a combination of being free, working everywhere, and shipping a few key ideas (LSP, extensions, remote development) that the rest of the field then had to chase. The list below is the package that won, not any single feature:
Free and cross-platform, macOS, Windows, Linux.
LSP-first, the protocol VS Code created is now spoken by every other modern editor.
Extensions, a marketplace with hundreds of thousands.
Sane defaults, works well on day one.
Tight Microsoft + GitHub integration, repos, Codespaces, Copilot.
Fast iteration, monthly releases.
Files#
VS Code stores configuration as JSON, both at the user level and
per project. The user files travel via dotfiles or Settings Sync;
the per-project .vscode/ directory is checked into the repo so
the dev experience matches across the team:
settings.json, per-user JSON config.keybindings.json, key remappings..vscode/per project, workspace-specific settings, launch configs, task definitions, extensions recommendations.User snippets in
snippets/<lang>.json.
Most settings are also editable through a GUI (Ctrl-,).
Essential Shortcuts#
The minimum to be productive without touching the menus. Ctrl-P
to jump to a file and Ctrl-Shift-P to fire any command are the
two that pay back fastest; almost everything else can be
discovered through the command palette:
Keys |
Action |
|---|---|
Ctrl-P |
quick open file |
Ctrl-Shift-P |
command palette |
Ctrl-` |
toggle terminal |
Ctrl-/ |
toggle line comment |
Alt-↑ / ↓ |
move line up / down |
F12 |
go to definition |
Shift-F12 |
find references |
F2 |
rename symbol |
Ctrl-D |
add next match (multi-cursor) |
Ctrl-Click |
add cursor at click |
(macOS: Cmd instead of Ctrl for the platform shortcuts.)
The Standard Set of Extensions#
Categories most users install. The list below is the closest thing to a default operator profile, with language servers for whichever languages you write, GitLens for blame in the gutter, formatter and linter integrations, AI assist, and remote/dev-container support:
Language servers, Python, Go, Rust, TypeScript, C/C++, Java (most via Microsoft- or community-published extensions).
GitLens, Git history and blame inline.
Prettier / ESLint, formatting and linting.
Path Intellisense, Auto Rename Tag, Better Comments.
Dev Containers, run the editor against a containerized dev environment.
Remote - SSH, edit files on remote servers.
GitHub Copilot / Codeium / Continue, AI assistance.
Live Share, collaborative editing.
Theme, whatever feels right; many people stop tweaking after
One Dark ProorTokyo Night.
Remote Development#
VS Code’s remote story is excellent and a major reason many operators choose it. The editor runs on your laptop, the language server and file system live elsewhere, and the protocol between them feels native, with no lag, no two-way sync, no broken jump-to- definition:
Remote - SSH, editor on your laptop, files and language servers on a remote machine.
Dev Containers, the project provides a
devcontainer.jsondescribing the dev environment as a container; VS Code spins it up.WSL, edit Linux files on Windows transparently.
Codespaces, cloud-hosted dev environments, fully managed by GitHub.
Embedding Vim#
Modal users frequently install one of the Vim emulations to bring
their muscle memory across. VSCodeVim is the lighter option;
vscode-neovim runs an actual Neovim process underneath for
higher fidelity if your existing Neovim config is involved:
VSCodeVim, the most popular vim emulation.
vscode-neovim, embeds an actual Neovim process; better fidelity.
Either is enough for most modal workflows; vscode-neovim if you want
your full Neovim config to work.
Strengths#
What VS Code does that the alternatives don’t, or don’t do as well. The ecosystem advantage is the big one; almost every modern editor matches the core feature set, but the depth of the extension catalog is an order of magnitude larger.
Dominant ecosystem, the extension you need probably exists.
Cross-platform, the same UX on Windows / Linux / macOS / web.
Remote development is best-in-class.
AI integrations are first-class.
Weaknesses#
What you give up by running on Electron and inside the Microsoft ecosystem. Most users never notice; for operators who care about memory footprint, telemetry, or licensing freedom, the points below explain the appeal of VSCodium, Zed, or a Neovim setup.
Electron, memory and battery footprint heavier than native editors.
Frequent updates can break extensions.
Telemetry in the official build (use VSCodium if it bothers you).
Microsoft-only marketplace for proprietary extensions; some are not redistributable in VSCodium / open-VSX.
When to Pick VS Code#
The default for most operators in 2026, especially those who work across many languages or need the remote-development story. Pick something else only when you have a specific reason, such as a modal preference, a hardware footprint constraint, or a licensing one.
You want a powerful editor that works well immediately.
You work across many languages and don’t want a per-language IDE.
You need remote / container / WSL development.
You want first-class AI integration.
For most operators in 2026, VS Code is the default unless they have a specific reason otherwise.