<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: graphviz</title><link>https://news.ycombinator.com/user?id=graphviz</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 27 Apr 2026 09:57:27 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=graphviz" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by graphviz in "Monosketch"]]></title><description><![CDATA[
<p>Is it easy to write a renderer in another program? Do people still say lazyweb?</p>
]]></description><pubDate>Fri, 13 Feb 2026 14:47:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=47003323</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=47003323</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47003323</guid></item><item><title><![CDATA[New comment by graphviz in "Show HN: ChartGPU – WebGPU-powered charting library (1M points at 60fps)"]]></title><description><![CDATA[
<p>Gratifying that it's still useful.<p>A lot of improvements are possible, based on 20 years of progress in interactive systems, and just overall computing performance.</p>
]]></description><pubDate>Wed, 21 Jan 2026 20:49:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=46711354</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=46711354</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46711354</guid></item><item><title><![CDATA[New comment by graphviz in "C Is Best (2025)"]]></title><description><![CDATA[
<p>Absolutely.</p>
]]></description><pubDate>Tue, 06 Jan 2026 13:28:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=46511957</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=46511957</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46511957</guid></item><item><title><![CDATA[New comment by graphviz in "Who needs Graphviz when you can build it yourself?"]]></title><description><![CDATA[
<p>Various tools use tool-specific graph attributes. For example, "rank" and "minlen" mean something to the hierarchical or layered graph layout tool (dot) but not to other layout tools. "size" and "label" are the same in all the layout tools.  They all use the same underlying graph representation library with a parser generated by yacc or bison.<p>The documentation includes a big table of attributes that graphviz tools recognize.<p>With the availability of LLMs, there is better automated support now to find features that are needed. Just imagining here, but "make the layout fill the available space" or "make all the nodes look like points with associated text labels" (not sure if that even works but it should).</p>
]]></description><pubDate>Thu, 30 Oct 2025 14:52:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=45760683</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=45760683</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45760683</guid></item><item><title><![CDATA[New comment by graphviz in "Who needs Graphviz when you can build it yourself?"]]></title><description><![CDATA[
<p>Don't most companies seek a supported product, like yWorks or Tom Sawyer Software in the case of graph layout?<p>Isn't the EPL "weak copyleft", so LGPL-ish? Would companies raise similar issues about glibc and GNU libstdc++?  Just curious.</p>
]]></description><pubDate>Thu, 30 Oct 2025 14:39:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=45760525</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=45760525</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45760525</guid></item><item><title><![CDATA[New comment by graphviz in "Who needs Graphviz when you can build it yourself?"]]></title><description><![CDATA[
<p>One of the nice things about this work is that by assuming the environment is a web client, it supports some basic interactive exploration, and offloads a lot of bothersome rendering problems.<p>Also, by focusing on control flow graphs, the proposed method does a better job with domain-specific layout. Apparently CFG visualization and exploration is a current topic; e.g. CFGExplorer. Probably Graphviz some users would benefit if it incorporated CFG-friendly level assignment as an option.<p>There's already machinery in Graphviz to support polylines instead of splines, and to control edge ordering, but it is not well tested or documented. It seems tempting to incorporate an edge routing algorithm of Brandes and Kopf, based on long vertical runs with at most 2 bends per edge. This seems close to a master's degree worth of work to understand and implement.<p>Graphviz started almost 40 years ago, is only supported by a few (one or two?) 2nd-generation volunteers with no 3rd generation on the scene yet.  Over the years we've had plenty of our own disdainful "What is all this junk" moments, about our own code and other people's (c.f. various xkcd comics), but sometimes a better perspective is asking "What is being optimized that led to some team choosing or ending up at this point in the design space".  Generally, the market is addicted to features.<p>It is a little dismaying to see the relatively slow progress in the broad field of declarative 2d diagramming. Given the way the pendulum has swung so hard back toward language based methods and away from using interaction to do everything, you'd think there would be a bigger payoff now for doing the work.  Unfortuantely tool-making has always been a tough market. The customers are generally smart, demanding, and work in cost centers so don't have generous budgets.</p>
]]></description><pubDate>Thu, 30 Oct 2025 12:15:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=45759178</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=45759178</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45759178</guid></item><item><title><![CDATA[New comment by graphviz in "Visualizing GPT-OSS-20B embeddings"]]></title><description><![CDATA[
<p>Interesting, glad to know it's been useful for some specific contributions. (Not questioning that interesting-looking, appealing displays as overviews for general awareness are also worthwhile.)</p>
]]></description><pubDate>Thu, 21 Aug 2025 16:41:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=44974863</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=44974863</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44974863</guid></item><item><title><![CDATA[New comment by graphviz in "Visualizing GPT-OSS-20B embeddings"]]></title><description><![CDATA[
<p>What do people learn from visualizations like this?<p>What is the most important problem anyone has solved this way?<p>Speaking as somewhat of a co-defendant.</p>
]]></description><pubDate>Wed, 20 Aug 2025 19:20:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=44965333</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=44965333</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44965333</guid></item><item><title><![CDATA[New comment by graphviz in "Good system design"]]></title><description><![CDATA[
<p>And by "system" we mainly meant "transactional website."</p>
]]></description><pubDate>Sat, 16 Aug 2025 12:54:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=44922953</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=44922953</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44922953</guid></item><item><title><![CDATA[New comment by graphviz in "Bezier-rs – algorithms for Bézier segments and shapes"]]></title><description><![CDATA[
<p>Any ideas how these primitives could be used to implement an edge router for drawing natural-looking curves around obstacles in diagrams, as an improvement on the 25-year-old solver in graphviz <a href="https://dpd.cs.princeton.edu/Papers/DGKN97.pdf" rel="nofollow">https://dpd.cs.princeton.edu/Papers/DGKN97.pdf</a>?</p>
]]></description><pubDate>Wed, 13 Aug 2025 13:32:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=44888217</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=44888217</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44888217</guid></item><item><title><![CDATA[New comment by graphviz in "I prefer human-readable file formats"]]></title><description><![CDATA[
<p>We learned the hard way, for some of us it's all too easy to make careless design errors that become baked-in and can't be fixed in a backward-compatible way (either at the DSL or API level). An example in Graphviz is its handling of backslash in string literals: to escape special characters (like quotes \"), to map special characters (like several flavors of newline with optional justification \n \l \r) and to indicate variables (like node names in labels \N) along with magic code that knows that if the -default- node name is the empty string that actually means \N but if a particular node name is the empty string, then it stays.<p>There was a published study, Wrangling Messy CSV Files by Detecting Row and Type Patterns by Gerrit J. J. van den Burg, Alfredo Nazábal, and Charles Sutton (Data Mining and Knowledge Discovery, 2019) that showed many pitfalls with parsing CSV files found on GitHub. They achieved 97%. It's easy to write code that slings out some text fields separated by commas, with the objective of using a human-readable portable format.<p>You can learn even more by allowing autofuzz to test your nice simple code to parse human readable files.</p>
]]></description><pubDate>Sat, 09 Aug 2025 13:22:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=44846267</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=44846267</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44846267</guid></item><item><title><![CDATA[New comment by graphviz in "Introducing tmux-rs"]]></title><description><![CDATA[
<p>haha yes</p>
]]></description><pubDate>Sat, 05 Jul 2025 00:15:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=44469086</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=44469086</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44469086</guid></item><item><title><![CDATA[New comment by graphviz in "Diagrams AI can, and cannot, generate"]]></title><description><![CDATA[
<p>Random thoughts:<p>Sketching backed by automated cleanup can be good for entering small diagrams. There used to be an iOS app based on graphviz: <a href="http://instaviz.com" rel="nofollow">http://instaviz.com</a><p>Constraint-based interactive layout may be underinvested, as a consequence of too many disappointments and false starts in the 1980s.<p>LLMs seem ill-suited to solving the optimization of combinatorial and geometric constraints and objectives required for good diagram layout. Overall, one has to admire the directness and simplicity of mermaid. Also, it would be great to someday see a practical tool with the quality and generality of the ultra-compact grid layout prototype from the Monash group, <a href="https://ialab.it.monash.edu/~dwyer/papers/gridlayout2015.pdf" rel="nofollow">https://ialab.it.monash.edu/~dwyer/papers/gridlayout2015.pdf</a>  (2015!!)</p>
]]></description><pubDate>Thu, 20 Mar 2025 12:02:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=43421992</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=43421992</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43421992</guid></item><item><title><![CDATA[New comment by graphviz in "Ask HN: Dense Tree Layout Algorithms"]]></title><description><![CDATA[
<p>IIRC Tamara Munzner and some colleagues worked on visualizing large phylogenic trees.<p>There's this, too, <a href="https://academic.oup.com/mbe/article/33/8/2163/2579233" rel="nofollow">https://academic.oup.com/mbe/article/33/8/2163/2579233</a> and it's implemented at <a href="http://phylo.io" rel="nofollow">http://phylo.io</a></p>
]]></description><pubDate>Fri, 17 Jan 2025 19:24:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=42742235</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=42742235</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42742235</guid></item><item><title><![CDATA[New comment by graphviz in "Why are cancer guidelines stuck in PDFs?"]]></title><description><![CDATA[
<p>Modularity is an excellent way of attacking complex problems. We can all play with algorithms that can carry on realistic conversations and create synthetic 3D movies, because people worked on problems like making transistors the size of 10 atoms, figuring out how processors can predict branches with 99% accuracy, giving neural nets self-attention, deploying inexpensive and ridiculously fast networks all over the planet, and a lot of other stuff.<p>For many of us, curing cancer may someday become more important than almost anything else a computer can help us to do. It's just there are so many building blocks to solving truly complex problems; we must respect all that.</p>
]]></description><pubDate>Tue, 24 Dec 2024 14:01:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=42501935</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=42501935</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42501935</guid></item><item><title><![CDATA[New comment by graphviz in "Why are cancer guidelines stuck in PDFs?"]]></title><description><![CDATA[
<p>Not ... even that interesting?</p>
]]></description><pubDate>Tue, 24 Dec 2024 13:08:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=42501671</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=42501671</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42501671</guid></item><item><title><![CDATA[New comment by graphviz in "DAGitty – draw and analyze causal diagrams"]]></title><description><![CDATA[
<p>This seems like it could be done in a little script in the graphviz gvpr processor.<p>Someone could implement this as a feature in graphviz. It might take a day to implement.<p>There are probably other "solutions" that already handle this more gracefully, but otherwise don't have a very complete set of features relative to graphviz.<p>It's reasonable (and constructive) for you to complain, but your "issue" is representative of a wide set of "issues" we've seen, and the real problem is we're just a little unimportant niche service and all this work is being done by volunteers and they mainly work on the things they know how to do.</p>
]]></description><pubDate>Fri, 06 Sep 2024 03:16:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=41462571</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=41462571</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41462571</guid></item><item><title><![CDATA[New comment by graphviz in "Penrose – Tool for Diagrams"]]></title><description><![CDATA[
<p>It would be great to see new practical software for declarative specification of general 2D diagrams. With increasing emphasis recently on language-based tools, this is an excellent opportunity.<p>It would be good to find ways to make the internal algorithms and their parameters more "open" or more easily parameterized and recombined in novel ways. It would be good to find ways to rely on more generic optimization methods, though software like this is probably skating on the edge of computational intractability (not to mention usability or interpretability issues) so it's a very challenging problem.<p>Kudos.</p>
]]></description><pubDate>Thu, 30 May 2024 17:00:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=40525986</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=40525986</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40525986</guid></item><item><title><![CDATA[New comment by graphviz in "Hobby's algorithm for aesthetic Bézier splines (2020)"]]></title><description><![CDATA[
<p>The Graphviz project often wished to find a convincing formal definition of what it means for curves (spline sequences) that connect two points and are routed around obstacles to be "natural". Maybe machine learning will help with this before long. Something similar could be said for other geometric properties of diagrams. Many aesthetics have been proposed and studied, but do we know what blend is preferred by human subjects? How much do individuals vary in this?</p>
]]></description><pubDate>Fri, 03 May 2024 22:21:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=40253016</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=40253016</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40253016</guid></item><item><title><![CDATA[New comment by graphviz in "Hardest problem in computer science: centering things"]]></title><description><![CDATA[
<p>A lot could be said. If there's a mistake, it was the economy not providing sufficient resources to solve this problem well. There was certainly awareness of this topic and some attempts to address it (for example North, Stephen C. "Incremental layout in DynaDAG." International Symposium on Graph Drawing, Berlin Heidelberg, 1995, or North, Stephen C., and Gordon Woodhull. "Online hierarchical graph drawing." Graph Drawing: 9th International Symposium, GD 2001 Vienna, Austria, Springer Berlin Heidelberg, 2002.<p>Successful systems like Tom Sawyer Software or yWorks have dynamic or incremental layout features. The market of course strongly rewarded work on interactive systems like Visio that were well integrated into larger platforms.<p>Not sure who remembers but high performance incremental constraint-based layout was one of the computer science lights that failed in the 1980s and 90s but with so many fundamental advances in technology (processors, algorithms, solvers, software platforms) and new emphasis on language-based approaches (in part due to LLMs) there might be a better opportunity now.<p>Anyway it's a hard problem, it's not as if nobody was aware of it.</p>
]]></description><pubDate>Thu, 18 Apr 2024 12:06:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=40075326</link><dc:creator>graphviz</dc:creator><comments>https://news.ycombinator.com/item?id=40075326</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40075326</guid></item></channel></rss>