Software projects are complicated. They usually don't start out to be, but inevitably even the simplest piece of functionality quickly ends up requiring numerous modules, versions, branches, all with various tests that can run against them and bugs that have been reported. Getting a good summary view of this complexity is one of the challenges of software engineering, and it is especially important for a project with a distributed team. The ability to see at a glance what has changed or what is broken is very valuable. At the same time, for someone new joining a project, the ability to see the landscape of the project is essential, picking up the shape of new projects is hard and time consuming.    more »