Copy Ward's Dynamic Diagram

Ward has a cool diagram. Here I experiment with a copy of his diagram to better understand his program. See the original in its own context: wiki

The program allowed Ward to curate a small collection of links and let the program draw a graph from those links. That became a tool for Ward to asynchronously point Thompson to his newest contributions to their weekly conversation.

Here is a copy of the code, for reference.

DOT strict digraph rankdir=LR node [shape=box style=filled] HERE WHERE FOLD new LINKS node [fillcolor=bisque] HERE NODE LINKS node [fillcolor=white] HERE LINKS HERE -> NODE HERE LINKS HERE -> NODE

The first HERE starts the program looking at this page.

WHERE FOLD tells the program to find a pagefold named "new". In my own experiment on this page, I have created a pagefold by that name below.

There are two blocks about LINKS.

The first LINKS block draws a node for each of the links below the pagefold. The lowercase "node" declarations are combined by graphviz to draw the nodes as boxes which are filled with the color bisque.

The second LINKS block does many things. First, it draws an arrow and a white box for each page. Second, it visits each white page and extends the drawing with information from that page. It finds all the links on the white page, and draws an arrow and another white box for each of those links.

new

DOT strict digraph rankdir=LR node [shape=box style=filled] HERE WHERE FOLD new LINKS node [fillcolor=bisque] HERE NODE LINKS node [fillcolor=white] HERE LINKS HERE -> NODE HERE LINKS HERE -> NODE STATIC strict digraph {rankdir=LR node [shape=diamond style=filled] node [fillcolor=bisque] "Link to Nowhere" node [fillcolor=bisque] "Practice Journal" node [fillcolor=white] "Link to Nowhere" -> "Eric Dobbs" "Eric Dobbs" -> "About Graphviz Plugin" "Eric Dobbs" -> "About Frame Plugin" "Eric Dobbs" -> "About Video Plugin" "Eric Dobbs" -> "About Calendar Plugin" "Eric Dobbs" -> "About Method Plugin" node [fillcolor=white] "Practice Journal" -> "2020-07-12" "Practice Journal" -> "2020-07-19" "Practice Journal" -> "2020-07-26" "Practice Journal" -> "2020-08-02" "Practice Journal" -> "2020-08-09" "2020-07-12" -> "About Map Keywords" "2020-07-12" -> "About Flagmatic Plugin" "2020-07-26" -> "Forsyth Criteria" "2020-08-02" -> "About Present Plugin" "2020-08-02" -> "About Plugmatic Plugin" "2020-08-02" -> "More about Plugmatic Plugin" "2020-08-02" -> "Forsyth Criteria" "2020-08-09" -> "More About Graphviz Plugin" "2020-08-09" -> "Natural Genetic Infrastructure"}