Tools for Remote Collaboration
For those of you who don't know, Janson works in Seattle while Aaron and I work in Holland MI. Even though he's in Seattle, we're still able to work as if he were in the office. We've had pretty good success with a few tools.
Skype and a good microphone
Multiple times a day we call Janson on Skype via our badass Snowball. This microphone rocks, and it's fairly inexpensive (around $100). It works so well that Janson is able to listen to the music we have playing in the office.
Janson also picked up a Snowflake which has worked great.
I always thought video was key to remote collaborating, but I've totally changed my mind. Audio is the first step. Often Janson and I will be working for over an hour via Skype and it feels like the other person is right next to you.
Writeboards are a 37Signals product that are like a versioned document. We use these frequently for asynchronous collaboration.
There are other alternatives to Writeboards, but we've found that their low barrier of entry and textile support has helped a lot.
Another form of text communication we use regularly are Campfire chat rooms, another 37Signals product. These have been really helpful from pasting code snipbits, uploading shared files and privacy/guest access.
All of us at Elevator Up are very familiar with IRC, and we may switch back to it someday, but Campfire gives us all the chat room features we need without hassle.
Last Monday Janson came across EtherPad and oh boy it's a gem.
When collaborating on a document we've been using a combination of Writeboards/Campfire chats. They do the job, but there's a ton of "Okay, I saved. Reload." or "Hrm, I'd rephrase it this way. Lemme copy/paste" which gets rather annoying.
EtherPad on the other hand allows multiple people to be editing text at the same time. As far as I know, it's very similar to SubEthaEdit but through the browser instead of with a client. It's helped us out tremendously especially when writing user stories.
EtherPad is in a closed beta, but they are pretty quick to grant beta access. We've only been using it for a week, and already consider it a part of our remote toolset.
Both Janson and I code in Textmate, but we both came from Vim. We've toyed with using a VPN to SSH into the other's machine. Connect to a shared Screen session and code in Vim for Paired Programming. As of yet, we've only done it a couple of times, and most of our issues are related to going back into the console for development.
We were both amazed at the responsiveness with a shared session, though thinking back on it, there's very little traffic compared to other remote solutions. This is one of our rougher tools, but I wouldn't be surprised if we make this a permanent addition.
Surprisingly we don't use VNC that often. Sometimes we use it when we need to present to a client who is also remote, but that's fairly rare. We've also found using screen capturing software like SnapX Pro to do a better job when presenting remotely.