We've been using slack at Haven since before I made the first commit to our code repository, and it is a revelation. It deserves every glowing bit of coverage it has received. Given the opportunity, I would invest in them, even at their headline grabbing valuation.
The way they've stood on the shoulders of IRC and even HipChat to bring group chat from the super technical crowd to the rest of people who mostly work on a computer is inspiring from a product perspective.
In previous situations where I needed to collaborate with others to do my job, I was often frustrated by important information getting buried in email threads with too few or way too many people copied, or locked in conversations in meeting rooms that might as well have vanished into thin air after they happened.
After struggling to try to bring group chat into previous teams, I figured out a shortcut- founding a new company with like minded people who also despised the way email could get in the way of collaborating effectively. As a bonus of starting fresh, nothing would get in the way of finally have the correct tools for the job.
Of course, once freed from the shackles of internal email everyone in our slack team has communicated 100% perfectly from the start, from when it was just the 3 of us working part time all the way up to 10+ full time employees and external contractors and interns.
That is of course not true. No matter how we choose to share information, unless suddenly all parties can read minds like Professor X, collaborating with other people involves working with human beings, all of us imperfect.
Putting valuable information in searchable channels where anybody who might need it can access it is a huge leap forward. But, that will not get everyone to put enough detail or context into what they write, or stop incorrect assumptions, or even guarantee that a crucial piece of information won't be lost in the shuffle of too many of those incredibly useful messages from integrations.
Team communication is hard. Doing it well takes discipline and constant reinforcement, and it's so easy to get comfortable and assume understanding or even that the words I typed actually convey the correct set of ideas and not something close but very different. That degree of difficulty only goes up the more people you add to the mix.
Writing is thinking, and chat is immediate. Sometimes the immediate thought is not always the most coherent, so establishing ways to make sure everyone is not overwhelmed and is encouraged to layer on additional context via give and take is just as important as getting people to use the right tools.
Our team has had a lot of communication success and failure, but we're always looking to build the discipline to make it easier, and the first step is not deluding ourselves that it is easy or automatic even with the best tools available.
P.S. - These are probably separate post(s), but I can confidently say slack is not a wiki replacement and it is definitely not a task management system, no matter how tempting it is to try to use it in those ways