We made Site Surveys of the Journal Forks for ten of our favorite sites. Here we share most of this data along with the procedures we used in crafting these results. >> survey graph
Fork history tells of the travels of a page from source to a site of interest and maybe beyond.
Our convention is to construct survey result in an array that parallels our automatic sitemaps. Survey reports include raw data in the formatted result pages.
Here for site $1 we retrieve this raw data and publish a sample as json files.
curl -s http://$1/journal-fork-survey.json |\ jq '.story[]|select(.type=="frame")|.survey' >\ data/$1
pages/wiki-sample-fork-graphs/data
For each site, we count the pages forked from the others and label and edge between them with this count.
digraph { rankdir=RL overlap = false; splines=true layout = dot; node [shape=box style=filled fillcolor=gold] node [fillcolor=palegreen] 0 [label="Site\nfound.ward.bay.wiki.org" tooltip="name: found.ward.bay.wiki.org"] 1 [label="Site\nward.bay.wiki.org" tooltip="name: ward.bay.wiki.org"] 2 [label="Site\ncode.fed.wiki" tooltip="name: code.fed.wiki"] 3 [label="Site\nft8.ward.asia.wiki.org" tooltip="name: ft8.ward.asia.wiki.org"] 4 [label="Site\ntrails.ward.asia.wiki.org" tooltip="name: trails.ward.asia.wiki.org"] 1->0 [label="41" labeltooltip="source: found.ward.bay.wiki.org"] 2->0 [label="6" labeltooltip="source: found.ward.bay.wiki.org"] 3->0 [label="2" labeltooltip="source: found.ward.bay.wiki.org"] 4->0 [label="1" labeltooltip="source: found.ward.bay.wiki.org"] }
We create separate graphs for each site and bundle them in a jsonl file for easy drag-drop into the super collaborator. There we can choose any combination of sites and sites mentioned in common with these graphs are shown in gold.
digraph { rankdir=BT overlap = false; splines=true layout = dot; node [shape=box style=filled fillcolor=gold] 2 node [fillcolor=palegreen] 0 [label="Site\nft8.ward.asia.wiki.org" tooltip="name: ft8.ward.asia.wiki.org"] 1 [label="Site\nfound.ward.bay.wiki.org" tooltip="name: found.ward.bay.wiki.org"] 2 [label="Site\ntrails.ward.asia.wiki.org" tooltip="name: trails.ward.asia.wiki.org"] 3 [label="Site\nround.asia.wiki.org" tooltip="name: round.asia.wiki.org"] 1->0 [label="4" labeltooltip="source: ft8.ward.asia.wiki.org"] 2->0 [label="1" labeltooltip="source: ft8.ward.asia.wiki.org"] 2->3 [label="7" labeltooltip="source: round.asia.wiki.org"] }
Here is the jumble we see when we choose all the sites at once. The super collaborator has support for teasing apart large graphs. He we can click expand for a larger view.
digraph { rankdir=BT overlap = false; splines=true layout = dot; node [shape=box style=filled fillcolor=gold] 1 0 1 5 2 1 4 3 0 2 4 1 5 5 1 3 0 2 1 6 0 2 node [fillcolor=palegreen] 0 [label="Site\nft8.ward.asia.wiki.org" tooltip="name: ft8.ward.asia.wiki.org"] 1 [label="Site\nfound.ward.bay.wiki.org" tooltip="name: found.ward.bay.wiki.org"] 2 [label="Site\ntrails.ward.asia.wiki.org" tooltip="name: trails.ward.asia.wiki.org"] 3 [label="Site\ncode.fed.wiki" tooltip="name: code.fed.wiki"] 4 [label="Site\nward.bay.wiki.org" tooltip="name: ward.bay.wiki.org"] 5 [label="Site\nvideo.fed.wiki.org" tooltip="name: video.fed.wiki.org"] 6 [label="Site\nround.asia.wiki.org" tooltip="name: round.asia.wiki.org"] 7 [label="Site\nfound.ward.fed.wiki" tooltip="name: found.ward.fed.wiki"] 1->0 [label="4" labeltooltip="source: ft8.ward.asia.wiki.org"] 2->0 [label="1" labeltooltip="source: ft8.ward.asia.wiki.org"] 1->3 [label="17" labeltooltip="source: code.fed.wiki"] 0->3 [label="4" labeltooltip="source: code.fed.wiki"] 4->3 [label="4" labeltooltip="source: code.fed.wiki"] 1->5 [label="2" labeltooltip="source: video.fed.wiki.org"] 5->5 [label="2" labeltooltip="source: video.fed.wiki.org"] 2->6 [label="7" labeltooltip="source: round.asia.wiki.org"] 4->1 [label="41" labeltooltip="source: found.ward.bay.wiki.org"] 3->1 [label="6" labeltooltip="source: found.ward.bay.wiki.org"] 0->1 [label="2" labeltooltip="source: found.ward.bay.wiki.org"] 2->1 [label="1" labeltooltip="source: found.ward.bay.wiki.org"] 1->4 [label="13" labeltooltip="source: ward.bay.wiki.org"] 5->4 [label="2" labeltooltip="source: ward.bay.wiki.org"] 5->7 [label="1" labeltooltip="source: found.ward.fed.wiki"] 1->7 [label="3" labeltooltip="source: found.ward.fed.wiki"] 3->7 [label="1" labeltooltip="source: found.ward.fed.wiki"] 0->7 [label="1" labeltooltip="source: found.ward.fed.wiki"] 1->2 [label="6" labeltooltip="source: trails.ward.asia.wiki.org"] 6->2 [label="3" labeltooltip="source: trails.ward.asia.wiki.org"] 0->2 [label="1" labeltooltip="source: trails.ward.asia.wiki.org"] 2->2 [label="1" labeltooltip="source: trails.ward.asia.wiki.org"] }
This is the rollup we used to create these diagrams. Download to upload to hsc.fed.wiki
pages/wiki-sample-fork-graphs/graphs
This work has shown that our client-side survey provision and update can be duplicated server-side. These scripts are shared online. github
- data/ — raw survey data for journal forks - update.js — deno script to update a survey - update.sh — bash script to update all surveys - launch.sh — jq script to retrieve a survey from wiki - rollup.js — deno script to create graphs from surveys