The original wiki was collaboration software that knew little about collaboration. This left lots of room for its users to invent new ways to work. Federated wiki extends this tradition with pluggable algorithms that need not be complex to be valuable.
The tradition in automation has been to make the computer work better than the people it replaced. We hope to save a place for ourselves among the artificial super-intelligences by relegating them to assistive technology. I suggest we have the opportunity now by making our programs too stupid to be wrong.
# Markup
Wiki offered the opportunity to share hypertext through the same interface one used to read, the browser. The hypertext markup language, html, was already too complex for casual writing so wiki used its own conventions specific to every site.
Within the federation we promote interchangeability by offering a suite of simple markups each with their own strengths. We extend this further with pluggable interpreters for work specific markups which have only to be useful enough to be used.
# Talk
We consider first how we talk about the work we will do. What words do we use in a given task? If a plugin knew only a couple of these could it be useful? Yes, probably.
A plugin need address only a given task and then only the parts that aren't yet served well by the existing plugins. What new need for words does the task bring?
A telegraph operator brings dots and dashes.
A chess player brings kings and queens.
We will look at these two examples though there are many more among the catalog of plugins.
Notice that all of these plugins are more interesting that a similarly limited desktop application because of the persistence, revision history and sharing provided by wiki.
# Morse
Radio telegraphers talk with the sounds of dots and dashes. To learn, one must hear these sounds over and over until they are perceived as letters or even words. Our MorseTeacher plugin knows that "." means a short sound and "-" means a longer one. From this we explain an alphabet.
a .- b -... c -.-. d -..
Telegraphers use abbreviations that are easily heard as words. They would send cq as short for I "seek you". If you learn the sounds of c and q then you will recognize this in most every radio conversation. Here is a plugin configured to teach you this.
c -.-. q --.-
c -.-. 50 q --.- 50
# Chess
Chess is played six kinds of pieces a checkerboard with rows numbered 1 to 8 and columns a to f. Different speakers use different languages to name the pieces but unicode offers universal glyphs for all in two colors.
♛ ♚ ♝ ♞ ♜ ♟ black
♕ ♔ ♗ ♘ ♖ ♙ white
Here we markup the starting board positions using the "algebraic" notation of piece-column-row. Our markup gets positions from the letters, not the placement in text.
♙a2 ♙b2 ♙c2 ♙d2 ♙e2 ♙f2 ♙g2 ♙h2 ♖a1 ♘b1 ♗c1 ♕d1 ♔e1 ♗f1 ♘g1 ♖h1
We could as easily put checkers on the board or hearts and spades or any other element unicode offers. Here we use only white queens to solve the eight queens puzzle.
♕a5 ♕b3 ♕c1 ♕d7 ♕e2 ♕f8 ♕g6 ♕h4
♕a5 ♕b3 ♕c1 ♕d7 ♕e2 ♕f8 ♕g6 ♕h4
# Initialization
We've shown examples of two programs that could have been made more complete by adding, say, knowledge of the Morse alphabet, or, enforcing the movement rules of chess. We've stopped short leaving that to be captured in markup or in how real collaborators choose to use it. This leaves us free to express the nonconforming examples we've shown here.
One may be surprised when calling up MorseTeacher or a Chess board that they don't automatically come initialized. Instead we provide ready-to-use examples on the About pages accessible from the editor with cmd/alt-i.
See About MorseTeacher Plugin for a good order to learn.
See About Chess Plugin for starting positions.
We've also suggested that a search of morse or chess should find these pages but they don't but might soon.