I uses tmux for remote development. My main dev machine is on datacenter, and all my development environment is set on the machine. With tmux I can persist my dev session across various terminals, like my laptops, desktops, even on phone when there is an urgent issue.
It also works well with remove session with unstable network, like tethering with cellular network or wibro. Even when SSH connection is disconnected, I can persist the session and don't need to deal with .swp files.