Creating diagrams is a stereotypical software architect task, but the fact of the matter is that a picture can convey a thousand words of information. Diagrams are important for understanding.

Google Drawings

I’ve been using Google Drawings a lot recently, because of the ease of collaboration and the ability to embed them in Google Docs.

I don’t like Google Drawings, though. Diagrams look bad by default, in my opinion, and it takes extra work to make them look okay. If you’ve ever used OmniGraffle, which doesn’t suffer from this, you’ll know what I mean.

Others I’m considering

There was a thread about diagramming on Hacker News.

  • SimpleDiagrams is a desktop app that gives you drawings with a hand-drawn look. I’ve always liked this sort of aesthetic.
  • PlantUML and Mermaid look interesting because you create your diagram as text.
    • This makes it quick to create a diagram
    • This can be great for collaboration and versioning
    • These systems are more limited in what you can express when compared to a plain old drawing tool
    • Integration with Confluence is a bonus