The original poster is seeking recommendations for diagram creation tools, specifically for software architecture diagrams and other technical illustrations. They desire a tool that balances ease of use with the ability to produce visually appealing and professional results. They're open to both cloud-based and locally installed options, and ideally the tool would support exporting to standard formats like SVG or PNG. The poster's current workflow involves using PlantUML but finds it cumbersome for creating presentable diagrams, prompting their search for a more user-friendly alternative.
The blog post "Common mistakes in architecture diagrams (2020)" identifies several pitfalls that make diagrams ineffective. These include using inconsistent notation and terminology, lacking clarity on the intended audience and purpose, including excessive detail that obscures the key message, neglecting important elements, and poor visual layout. The post emphasizes the importance of using the right level of abstraction for the intended audience, focusing on the key message the diagram needs to convey, and employing clear, consistent visuals. It advocates for treating diagrams as living documents that evolve with the architecture, and suggests focusing on the "why" behind architectural decisions to create more insightful and valuable diagrams.
HN commenters largely agreed with the author's points on diagram clarity, with several sharing their own experiences and preferences. Some emphasized the importance of context and audience when choosing a diagram style, noting that highly detailed diagrams can be overwhelming for non-technical stakeholders. Others pointed out the value of iterative diagramming and feedback, suggesting sketching on a whiteboard first to get early input. A few commenters offered additional tips like using consistent notation, avoiding unnecessary jargon, and ensuring diagrams are easily searchable and accessible. There was some discussion on specific tools, with Excalidraw and PlantUML mentioned as popular choices. Finally, several people highlighted the importance of diagrams not just for communication, but also for facilitating thinking and problem-solving.
Obsidian-textgrams is a plugin that allows users to create and embed ASCII diagrams directly within their Obsidian notes. It leverages code blocks and a custom renderer to display the diagrams, offering features like syntax highlighting and the ability to store diagram source code within the note itself. This provides a convenient way to visualize information using simple text-based graphics within the Obsidian environment, eliminating the need for external image files or complex drawing tools.
HN users generally expressed interest in the Obsidian Textgrams plugin, praising its lightweight approach compared to alternatives like Excalidraw or Mermaid. Some suggested improvements, including the ability to embed rendered diagrams as images for compatibility with other Markdown editors, and better text alignment within shapes. One commenter highlighted the usefulness for quickly mocking up system designs or diagrams, while another appreciated its simplicity for note-taking. The discussion also touched upon alternative tools like PlantUML and Graphviz, but the consensus leaned towards appreciating Textgrams' minimalist and fast rendering capabilities within Obsidian. A few users expressed interest in seeing support for more complex shapes and connections.
Summary of Comments ( 14 )
https://news.ycombinator.com/item?id=43343473
The Hacker News comments discuss a variety of diagramming tools, ranging from simple and free options like Excalidraw, PlantUML, and Draw.io to more powerful and specialized tools like Mermaid, Graphviz, and OmniGraffle. Many commenters emphasize the importance of choosing a tool based on the specific use case, considering factors like ease of use, collaboration features, output formats, and cost. Several users advocate for text-based diagramming tools for their version control friendliness, while others prefer visual tools for their intuitive interfaces. The discussion also touches on specific needs like network diagrams, sequence diagrams, and flowcharts, with recommendations for tools tailored to each. Some comments highlight the benefits of cloud-based vs. locally installed tools, and the tradeoffs between simplicity and feature richness.
The Hacker News post "Ask HN: What do you use to create diagrams?" generated a robust discussion with a variety of suggestions for diagramming tools. Several commenters emphasized the importance of choosing a tool based on the specific type of diagram needed, as different tools excel in different areas.
One recurring theme was the popularity of Excalidraw for its simplicity and ease of use, especially for quick sketches and informal diagrams. Commenters praised its hand-drawn aesthetic and collaborative features. A few users specifically mentioned using Excalidraw for sketching out system architectures and UI mockups. Related to this, some users suggested tools like PlantUML and Mermaid, which allow for generating diagrams from text-based descriptions, a useful feature for version control and dynamic updates.
Another popular category of tools were those focusing on more polished and professional diagrams, such as draw.io (now diagrams.net), Lucidchart, and Miro. These were often recommended for situations requiring more formal presentations or complex visualizations. Some comments highlighted specific features, like draw.io's offline capabilities and integration with Google Drive, and Miro's collaborative features.
Several niche tools were also mentioned, catering to specific needs. For example, Graphviz was recommended for visualizing graphs and networks, while Omnigraffle received praise for its precision and power, albeit at a higher price point. Other suggestions included specialized tools for specific domains like infrastructure diagrams (Cloudcraft, Terraform) or network diagrams.
A few comments focused on the process of diagram creation rather than specific tools. One commenter emphasized the importance of starting with pen and paper before moving to digital tools, while another suggested considering the target audience and the purpose of the diagram when choosing a tool.
The discussion also touched on the challenges of maintaining and updating diagrams, with some commenters lamenting the tendency for diagrams to become outdated. This reinforces the earlier points about choosing tools that integrate well with existing workflows and allow for easy updates.
Overall, the comments section provides a comprehensive overview of the diverse landscape of diagramming tools, highlighting the strengths and weaknesses of each and offering practical advice for choosing the right tool for the job. The discussion emphasizes that the best tool depends heavily on the specific context, including the type of diagram, the intended audience, and the user's personal preferences.