Visualization in Federated Wiki

I joined the Federated Wiki community six or seven years ago with a particular interest to bring visual programming features. Two plugins I created have enabled a burst of innovation in the past couple years in particular: graphviz and frame plugins.

In early May 2021 I began studying the Observable runtime and exported notebooks with a view to informing the redesign of federated wiki's client. I became quite enchanted with the beauty of Observable's code. It's what drew my attention to the fact that they're hiring. :-)

As I often do, the experiment was a mashup to explore several problems at once. I needed a suitable problem to drive learning of Observable. I wanted to take first steps integrating wiki and observable by way of the frame plugin. And I wanted to support the work of Marc Pierson, one of the federation's recent enthusiasts.

This work-in-progress will grow into a visual collaboration tool empowering neighborhoods to self-organize improvements in their community. The example itself aims to employ the same tool to assess and organize the community supporting fedwiki. Technically, existing frame plugin experiments here incorporate an observable notebook into the framed content. We have confirmed that the parameters provided in the notebook can be thoroughly configured via wiki code items.

- [x] add link to Marc's diagram - [ ] tell a story to explain how Marc's work relates to Thompson's & Kerry's work in education

I started the graphviz plugin when I learned of Viz.js as a mashup of three different experiments: exploring the dat variant of federated wiki, hand-rolling my own es6 module and custom HTML element, and trying out this WASM compilation of graphviz.

I also knew very well that graphviz is one of Ward's favorite tools in his bag of tricks. I could not have predicted it, but I was not especially surprised when Ward extended the graphviz plugin to include a domain-specific language for traversing the graph that is federated wiki.

Everything else that has grown in the federation from the graphviz plugin has been completely surprising and delightful.

One of Ward's many collaborators is Michael Mehaffy, an architect and student of Christopher Alexander who carries on the tradition of pattern language in the built environment. Ward has been helping provide a wiki companion to a printed book. Michael is an expert in the modular writing style of pattern language. That lends itself well to both wiki and the dynamically generated diagrams.

What force unites these patterns?

Neighborhood Patterns. source

Ward has also been collaborating with Thompson Morrison in an ambitious effort to bring agile methodologies to public education. Thompson has been collecting reflections in wiki for a while in hopes of discovering patterns that might apply to other public schools. He now adds graphs to help guide his readers while offering branches for their own exploration. The layers of learning in this story are especially rich.

There are many schools that model a creative, learning environment. ... The problem is that about 90% of our students in this country are in traditional public schools. The challenge of transforming a public school from a conventional teaching institution to a dynamic learning organization is far more difficult than simply building a new one from scratch. There are many internal and external barriers to change that challenge almost every step. It is a hard road. But it is an essential one.

Challenge of Transformation. source

Last, but not least, Ward and I have been studying David Woods' Theory of Graceful Extensibility with several of our colleagues at New Relic. Ward has revisited an analysis of Extreme Programming, breaking it into separate pages and adding annotations. The result lets us compare and contrast Ward's analysis with the groupings of proto-theorems in Graceful Extensibility.

Extreme Programming (xp) prescribes a dozen practices that reinforce each other so as to allow teams to make software development decisions. We examine the distribution of responsibilities required for, and means to arrive at, good decisions within this framework.

Inquiry & Synthesis. source


Excited and inspired by this collaboration with Ward Cunningham. Here we share a branching story of branching graphs in hopes of revealing federated wiki as a surprisingly powerful medium for learning. We begin with a visual outline, of sorts. What an unexpected explosion of connected work has grown from that seed.