It’s now been roughly four weeks since we switched from RT to Trac. I’ve been using RT for perhaps 8 years, and for a while I was in regular contact with the author of RT – Jesse Vincent – on a project that we were working on together, so I kept up pretty well with the development of RT from its humble beginnings to the full-featured ticket tracking system that it is today.

But since I started here, something has been missing. RT is fabulous at what it does – issue tracking – and is not so great at what it doesn’t do. Which seems like a stupid thing to say, I’m sure. But folks frequently (I’d even say usually) try to get software to do things that it wasn’t designed for, and then complain a lot when it doesn’t do it well.

What I wanted was something that would allow me to manage multiple simultaneous projects, and keep track of milestones, and what went in those milestones. A bonus would be a tight integration between revision control (svn) and the ticket tracking, and the milestones, and reporting, and perhaps a wiki.

You know, like Trac.

We looked at several products along the way, including Basecamp. Basecamp is very, VERY slick and shiny, but didn’t do some of the basic things that we wanted from a project management system. Not only that, but certain features that were requested repeatedly on the support mailing lists were answered with no, you’re wrong, you don’t really need that, it’s outside of our vision, and, really, if you’re not a full-time professional project manager, you don’t actually need that. The thing is, in each case where I found this kind of response, I do really need it. And I need it *because* I’m not a full-time project manager. Therefore, I need software that takes off my hands the things that would be my main focus if I were. Things like collecting features into a milestone with a due date. So, as much as I wanted to believe in Basecamp, I simply couldn’t.

Trac is not polished. It is pretty raw looking, in most places. But it works, and it is incredibly easy to use. And the reports make sense to my manager, and to the folks that he reports to. My engineering team is composed of people who are smart, and could figure out how to use just about anything, so I was less concerned about them. But, at the same time, there’s no sense making it unnecessarily hard to use, like, say, Jira or Bugzilla.

There are certainly things that it doesn’t do well, and features I’d like to have. But, at least so far, every time I’ve said “I really wished it did X”, Andy comes right back with “there’s a plugin that does X. And Y and Z into the bargain. And I was already investigating it. It’ll be installed tomorrow.”