Totally agree with the morning meetings though, plus we have one longer scheduled weekly.
1. Searchable backlog for all discussions.
2. API for connecting bots (which can be used for C&C).
3. Web-based and native clients.
4. Public and private rooms chat rooms.
HipChat is more like IRC than like IM, which, for distributed teams, is often very useful.
- Hipchat: Internal discussions and exchange, syntax highlighting, easy room and pwemission management, updates from other services (github, new relic etc). Furthermore to push notifications to email, mobile device and/or via text.
- Skype: easy 1on1 communication with externals (sometimes replaces the regular phone), internal LAN file transfer
- Google Hangouts: group video conferences (our company uses Google Apps so everyone has it and can access it from anywhere through a browser)
I probably missed some features and usecases, but I think I got the most important ones :)
Communication:
- chat during the day (hipchat)
- skype for voice calls, usually to quickly discuss something
- Google hangout (highest bandwidth communication, I run my daily standups on google hangout and sporadically for "crisis" moments or "clarification" moments)
Project management:
- trello
Product management:
- prodpad
So the trick is to have a daily scrum meetup on google hangout every morning so that you can explain tasks, check how far everybody got the previous day and update the trello board to reflect the new state. It's the only moment in the day that communication is cheap and high bandwidth.
Knowledge center: Google docs and github wiki
There are other auxiliaries like github, airbrake, circleCI and papertrail that report into hipchat so you can get a sense of the work being done.