Comment Have you tried Krugle? (Score 2, Interesting) 532
About a year ago, I took advantage of my employer's "Innovation" program to promote our internal use of a code-search tool called Krugle. I took point in contacting Krugle, arranged for a free demo period, and administered the demo on a machine in our network. Of course, I fell afoul of the "Innovation" program, because my version of "Innovation" was something to help us develop a better product. In fact, the program was intended to find a better color for the box, so my Krugle effort was lost on them, but hey I'm not bitter....
Ok, on to the point. I got a dozen developers to participate in the evaluation of a Krugle copy running inside our firewall. It indexed millions of lines of legacy code, organized across a dozen different projects. In my opinion, and I believe the majority of other evaluators as well, being able to search our code exhaustively was a major benefit in getting "arms around" the code base. It changes your outlook. You start asking questions like
- Where are all the places that a different component calls this API?
- What the heck does error code 4872339 mean, and who generates it?
- How many derived classes override this virtual function?
If you surf on over to Krugle.com, you will see that they now offer a free evaluation copy as a standard product. If you want to get a feeling for what can be done with the tool, just check out Krugle.org, where lots of open-source projects are indexed online. I would definitely recommend using the free evaluation tool as a way of speeding your high-level understanding of any new-to-you code base.