During an interview with a prospective employee last week, we got to talking about Visual SourceSafe.
He remarked that while VSS provides solid version control facilities, the reporting was lacking. How do you get a snapshot of the VSS activity for a time period, or for a person?
VSS is project-centric, providing history for a project. If you want info on activity for a time period or a person, you are left to eyeball the journal (text file), provided you have one configured.
This guy brought up a good point, and it was clear from the discussion that he was used to working with the tool. But I got to thinking. The VSS Journal is a list of entries like the following:
User: diablopup Date: 4/03/07 Time: 4:10p
Couldn't we parse this file into a normalized database, indexed, say, by VSS Path, User, DateTime? Then I thought, I bet someone has done this before. A little Google research, and...Thank you, Lewis Moten!
He created this neat Windows Service. Not only does it parse the journal data into a database, it keeps the database up to date by polling the journal file on a regular basis.
You can also configure it to send you notifications as a project is updated, or even to send you an instant message from MSN Messenger (I found this feature distracting, and removed it). Team Foundation Server is supposed to have these features built-in, but you (like me) may not be using it at your company for awhile.