Ravines are better than plateaus

Remote Pair Programming with Vim, ssh, tmux and skype

In utils on July 10, 2011 at 20:51

Here’s how we do remote pair programming or code reviews(works on mac osx and linux):

Lets say person A wants to pair program remotely on Person B’s computer:

  1. Person B installs tmux which is a terminal multiplexer, a bit like screen.
  2. Person B connects to Person A on skype chat
  3. Person B requests person A for his public ssh ID, to give him pernissions to connect to his machine
  4. Person A gives his public ssh key to Person B, by doing “cat ~/.ssh/id_dsa.pub” and then copies the contents of the output into Person B’s chat window on skype
  5. Person B adds the person A’s ssh id to a new line at the end of the file ~/.ssh/authorized_keys
  6. Person B opens port 22 on their machine to accept ssh requests
  7. Person B gives person A his public IP (go to whatismyip.com and paste result into skype)
  8. Person A fires up “ssh [ip of person B]” or possible “ssh someuser@[ip]”
  9. as they get the command line signal that they are in, Person A will type “tmux” to create a new tmux session, or “tmux at” to attach to an existing tmux session.
  10. Person B will type “tmux” on their locall command line to open a new tmux session, or, if person A has already created a session, they will type “tmux at” to join that existing session.

that’s it. from that moment on it will feel a bit like the old day so of IRC and BBS’s, as you can see each other types in real time.

now you can fire up vim (not mvim, but vim, so it runs inside the tmux terminal) and talk via skype voice.



  1. Great tip on using tmux, thank you!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 10,718 other followers

%d bloggers like this: