Joel Holder

Math, coding, philosophy, art, and other things that interest me

View on GitHub
17 July 2026

Remote C++ Development Over SSH: No GUI Required

by Joel Holder

A full IDE running inside nothing but an SSH session. No GUI. No lag. No lock-in.

Config, MIT licensed: github.com/jclosure/vscode-flavored-emacs-2026

The case for terminal-only development

Here’s the thing nobody tells you: the IDE you’ve been dragging across the network — the file tree, the extension marketplace, the remote-desktop handshake — none of it was ever the point. The point was always completion, navigation, refactoring, and debugging. Everything else is just weight.

Strip it down to a terminal, an SSH connection, and Emacs, and you get all four, running natively on the machine that actually has your code, your compiler, your build. Zero latency between you and it, because there’s no picture being pushed across the wire — just keystrokes and text, the two things a network connection has always been good at.

This isn’t old tech because it’s outdated. It’s old tech because it’s proven, and it turns out the fastest, most portable interface between a human and a remote machine was never a rendered window. It was text. This just points that idea at a modern problem.

Simple

One program. One set of keybindings that works the same whether you’re on your laptop or SSH’d three hops deep into a box you don’t even own. No juggling a local editor, a remote-desktop client, and a file-sync tool at the same time. You open a terminal, type ssh, and you’re already inside your actual development environment — not a shadow of it, waiting to sync.

Powerful

This isn’t a stripped-down, “good enough for a text editor” version of a real IDE. Autocomplete knows your types. Errors surface as you type them. Jump-to-definition takes you into the real standard library source, not a stub. Rename a function and every call site updates, project-wide. Set a breakpoint, step through it, inspect a variable live — all inside the same terminal window you started in.

You could be on a train with spotty wifi, or SSH’d into a machine on the other side of the planet, and it behaves identically either way. That’s not a compromise you’re making. That’s the actual advantage.

You don’t need to already be an Emacs wizard

This isn’t a “prove yourself first” tool. It’s a config — pre-built, documented, and free to just clone and point at your own project. The IDE part works immediately. Whatever else you want to do with the forty years of Emacs sitting underneath it is entirely optional, and entirely up to you, whenever you’re ready for it.

Try it: github.com/jclosure/vscode-flavored-emacs-2026 — MIT licensed, no strings attached.

tags: emacs - ssh - c++ - remote development - terminal