I’ve read before some posts on this topic – mostly on Lifehacker, as an informative tidbit. And lately I have had the opportunity to put that into practice for a small project on which some friends are starting work (no, I won’t expose it yet ๐ ). They are a small team – only three people, but which do not work, or sometime even live in the same area. So the web is the greatest medium to work on, and it provides all the tools to keep the project going:
- Nothing works if the team cannot communicate in an efficient manner. This is where Gmail comes in – you can access it from anywhere via web (or a POP account if you really are an Outlook/ Thunderbird addict) and it allows you to keep track of conversations in an orderly fashion.
- Instant messaging – however fun e-mailing is, if you get to have 3-4 e-mails back and forth on a single topic, you’d better get on Yahoo! Messenger and talk it out. It can sort some very nasty misunderstandings.
- Phone – talking is even better. Team members can keep in touch via classic phone (mobile mostly) or Skype -VoIP at its finest.
- Source control -subversion is my favourite candidate. However I could not setup a private SVN server for this particular project, so I searched a little on the web and found some free (as in beer) SVN servers. The choice fell on Assembla.com. They allow you to have whatever project you wish – including private ones (unlike Google code where you MUST have an open-source project), no space limit and some other interesting tools.
- Bug tracking – this is important especially when you finish the first10 lines of code (and added the first 30 bugs ๐ ). It will let other team-mates check your code and submit their findings/ideas. Assembla came in handy here too, as it provides Trac – a way to add tickets for your bugs. You can even assign them to a team-member, pick milestones and such.
- Collaboration – this is easy: wiki, wiki and more wiki. Also on Assembla, integrated with Trac.
- Project management- this area is not very well covered since the project is small. Since it only required a basic roadmap, the features in Trac were sufficient.
What I am curious now is what other virtual office setups are used? Perhaps some comments will clear this out (hint hint ๐ )