Earlier quoted context omitted.
I’ve personally settled on grapviz (a derivative actually, plantuml) being “good enough” for casual diagrams. Plantuml is built with the idea that it’s for quick and dirty communication, and I think graphviz translates well to this. It’s a nice way to put together a sequence diagram that just helps you understand control flow (and then never took at it again). I have to admit, I haven’t found a more formal programmat…
I also promote PlantUML for projects, specifically because: 1. It provides a convenient DSL targeting specific diagram use-cases that I actually want (generally sequence diagrams.) 2. The "source code" for the diagram is trivial to check in and diff with version-control, sometimes right along with the code it describes. 3. If the app/renderer is for some reason not available, the source is clear enough that you aren'…
The creator of PlantUML is working on translating graphviz into a native form to eliminate the dependency for PlantUML use. Once this has been done, it would open up even a whole new world of possibilities (graphviz does allow a bit more specification of element locations).