Published October 22, 2026

WSL (Windows Subsystem for Linux)

WSL lets you run a real Linux system inside Windows, so developers can use Linux tools without a second computer or dual boot.

windows
linux
developer-tools
wsl

Short answer

WSL (Windows Subsystem for Linux) is a feature built into Windows 11 that runs Linux alongside Windows. You open a terminal, and you're in Ubuntu (or the Linux distribution of your choice), with access to the same Linux tools a server uses. No second computer, no reboot into another system.

Today "WSL" almost always means WSL 2, which runs a real Linux kernel in a lightweight virtual machine that Windows manages for you.

Why it matters

Most of the web runs on Linux. The servers, Docker containers, deployment scripts and a lot of developer tools are built for it first. On a plain Windows machine, a developer runs into small differences constantly: paths, line endings, commands that don't exist, packages that only document the Mac and Linux install.

WSL removes that gap. The developer gets Windows for everyday desktop apps (Outlook, Figma, the browser) and Linux for the code environment.

If your developer works on Windows, WSL is a good sign. It usually means their machine behaves like the server your site will run on.

How it works

  • Install: one command in an admin PowerShell, wsl --install, then a reboot. Ubuntu is the default.
  • Files: Linux has its own disk inside WSL. Windows can browse it at \\wsl.localhost\, and Linux sees your Windows drives at /mnt/c, /mnt/d and so on.
  • Editors: VS Code, JetBrains IDEs and the majority of IDEs can open a project inside WSL while their window stays on Windows.
  • GUI apps: Linux apps with windows also work with a few tweaks, though most developers only use the terminal.

Example

This site is built from a Windows 11 laptop where the work happens entirely in WSL 2: the code, git, Node, the AI coding agents and the terminal all live in Ubuntu. Windows handles the browser, design tools and everything else.

The one rule worth knowing: keep project files on the Linux side (~/projects), not on /mnt/c. Crossing between the two file systems is slow, and an npm install across it feels like it's paying a toll on every file. That's also why a Windows Dev Drive doesn't speed up WSL.

Often confused with

  • A virtual machine (VirtualBox, VMware): WSL 2 technically uses one, but you don't manage it. No separate desktop, no fixed memory to allocate up front.
  • Dual boot: installing Linux next to Windows and choosing at startup. WSL runs both at the same time.
  • WSL 1: the original version, which translated Linux calls into Windows ones instead of running a Linux kernel. Still available, rarely the right choice for new setups.
  • Git Bash or Cygwin: Linux-style commands on Windows. Handy, but not a real Linux system.
Dontdoit.Club

Purposeful, joyful productivity tools and software for people who build things.

Practical notes on building useful products.

Dontdoit Inc. © -10000