Learning With Wiki Code

An experience report from several years of living and learning with wiki. Before I learned of the federation, I was experimenting with turtle geometry in web browsers. I discovered a need for turtle authors to share drawings (which are also programs) & primitives (which are a lot like functions). Although, I have yet to bring my geometry experiments to wiki, the meandering journey of learning and exploring has been deeply rewarding.

This page is a Personal 🌳 Evergreen Essay.

Chronological experiments with code

I modified an existing plugin to compute allowance for my children. This was a toy problem to drive learning. It was small enough to be in easy reach. It was something I wanted for myself which provided some motivation for when the problem got challenging. It was just outside of what the existing plugins could offer which would drive deeper learning of wiki's plugin support. It might also be a useful improvement to contribute to the wiki community. It was also touching on real software concerns: maintaining the privacy of my children's allowance and spending in the context of a public commons.

Was working professionally pressing a software organization towards docker adoption and devops practices. Used wiki as a toy problem for practicing deploy automation and docker exploration. I thought it might serve as a simple enough example for tutorial material, while still being real enough to drive meaningful learning... not just toy learning. I hoped it might also make it easier for authors to administer their own wiki.

Figured out how to host my own apparatus server in a container so I could share my own models.

Created the wiki-frame-plugin

Added HTML5 video support to wiki-video-plugin

Experimented with dat variant of wiki and es6 web components. Created a <wiki-roster> and related components as a proof of concept for modernizing the wiki client. This was another interesting intersection of problems. I could drive deeper learning of dat and support Paul's work on peer-to-peer-serverless wiki hosting. I could also test plugin development without javascript pipelines while learning es6 web components and how the wiki client might be improved with modern css (flexbox in particular).

Extended a project in glitch.com to enable authors another avenue for free and, more importantly, low-maintenance hosting of wiki.

Ported my es6 wiki components from dat to glitch.

Started the wiki-graphviz-plugin using dat variant of wiki. Also ported that plugin from dat to glitch. This let me test wiki plugin development in glitch and also explore more deeply how wiki plugins might be published if NPM should disappear from the Net.

Professional side project to import message history from slack into wiki to analyze, annotate and learn from incidents.