Recently I've been working on a project which mainly involves web development. It is a small project with only myself and one other person working on it. However, the other developer is located in a different city so it's somewhat challenging to keep up to date with what's going on.
We've been using PlayNice.ly to manage the project. It seems like a nice tool, and I recommend people checking out the free trial at least. The interface allows you to set up multiple projects and assign members of the team to them. As such I have the main project with both of us on, and then some ancillary projects with only myself on. This may sound silly having a collaboration tool with only one person listed, but I find that using this documented and structured approach helps me straighten out my thoughts.
Within a project the tool lets you list Tasks, Bugs & Ideas. Luckily at the moment we are only on Tasks & Ideas, but I'm sure Bugs will pop in soon! :-) We ping these tasks off to each other, picking them up when we're ready. There are loads of stages that a Task can be in, and I must admit I don't fully understand these or follow them particularly well. This may be a reflection of my naivety to management tools, or maybe not.
Incidentally the most useful feature that I find is potentially the most basic feature of the tool: the activity feed. We use subversion to manage our code revisions, and playnice.ly plugs directly into this. Most of the time I want updates on what has been happening in the last few days on the project. By checking the activity feed I can see not only all the changes in the playnice.ly projects, but also all the subversion commit changes.
Go have a look, or pester them on Twitter @playnicelyapp