The hunt for knowledge

The month of March was dedicated to the preservation of knowledge and lore organization. I started working on Ylliora in 2017, and at the time. I mostly worked in Evernote. It allowed me to make quick notes if inspiration hit me and work on it from any location. As the years passed, I have stored data on different platforms. The data I had collected over the years became too large to be primarily stored in Evernote. And at times, Evernote just wasn’t the right tool for the task at hand — when working with big tables for cleric domain powers for the roleplaying game, for example. The goal for March was to bring the data from all five locations together into one repository. This would save me a lot of searching when I wanted to fact-check something while working on the next novel.

The search began…

When I started to look for a solution, the two key factors were privacy and backups. Additionally, I work out of two locations within my house, each with its own computers, and accessibility from both of these locations was also pretty important. This meant I couldn’t run something locally on a specific system. However, I could run something within my local network, and I no longer had to worry about the privacy aspect. I started my search for candidates and gave several new tools a try. I went with a self-hosted version of MediaWiki, and while I was at it, I also gave DokuWiki a spin. 

For those unfamiliar, MediaWiki is the framework that Wikipedia uses, and sites like Fandom are also running on. Each site might have added or removed some functionalities, but it helps paint a picture. DokuWiki is a lot more lightweight and doesn’t require a whole database structure to work, but it’s a wiki nonetheless. 

Reinventing the wheel

I fiddled around with some code and went over the installation process several times. I had made my decision, I would run MediaWiki on my local server. But apparently, the universe wanted me to reconsider my options. Unexpectedly after one-and-a-half weeks of work, I had the oddest and unseen local network issues. Nothing that couldn’t easily be fixed, but it still took me half a day to untangle the situation that took place. I am a hobbyist computer/network guy, so I can do the basics required of me, so it didn’t take long to notice the issue and get to work. 

However, this reliability issue did spark up the backup topic again. I wanted to have a solid knowledge platform that allowed me to write faster, not a system that could add the “IT Guy” title to my job description. I started to look at where I was on the project, the amount of work I did and still had to do, and every pro and con of running the Mediawiki option. 

While going over the project, I caught myself using MediaWiki for the wrong reasons. I was more into it due to the overall challenges and learning experience it brought to the table. I won’t deny I enjoy doing some front-end programming from time to time and fiddle around with all kinds of tech, applications, and code. In these situations, I tend to dig my teeth in it until I beat the knowledge into submission. However, the primary goal of this month wasn’t to learn new tech. It was to find a solution to centralize my data that didn’t require too much work to set up.

The sooner it was set up, the sooner I could start working on my second novel. I had to redirect my attention to something else. It might not be the solution I wanted, but it was a lot closer to what I needed — an existing platform.

I tend to reinvent the wheel. It adds to my collection of reinvented wheels… and I only need four identical ones to get a vehicle up and running.

The Alternatives

In the past, I had used Kanka.io. It’s a nifty database tool for tabletop roleplaying games, but it’s exactly that… A database tool. Any roleplay statistics can easily find a home within that platform, and character information to some degree are supported. However, the structuring for any story elements would require that all bespoke story data be filed under a single category. This wasn’t the right solution for me. 

So, I turned to the platform where I still had an ongoing subscription that I didn’t use for two years—World Anvil. In the past, I had used World Anvil to set up a wiki for my gaming group that played in the world of Ylliora. It was an online version of a player handbook with statistics on creatures, maps, and anything else a player requires. During an update spree of World Anvil, a service still in (beta) development, I had lost several of my game session notes. These things happen, but as a gamemaster, this was rather painful. So, I stopped using it altogether for preparing any of my game sessions. Plus total transparency, I hated the UI changes and how clunky the system became. Your screen is plastered with options. Multiple menus are open, and half of the time, I am searching if I am in the right spot. 

The requirements — Privacy & backups

What does speak for World Anvil is that they always took the privacy of a creator’s content very seriously. As long as you had a subscription, you were able to put your wiki on private. At that point, your data wouldn’t be visible for anyone — including the World Anvil team, according to their marketing speech. Considering I still had an ongoing subscription I forgot about, I had unintentionally tackled my privacy requirement.

The backup requirement was an easy one when working with a platform like World Anvil. Although I must add that this is probably the case for Kanka.io or any other RPG apps like Legend Keeper. World Anvil creates multiple backups during the day and spreads these over several server parks. In the unfortunate event a server park goes up in flames, like the one recently in Strasbourg, you at least know the backup data is stored in several other locations. That type of redundancy helped make the decision for World Anvil easier. 

Settling in

I created a new world, which is their way of creating a new wiki, and reintroduced myself to the system. I am still not a fan of that clunky and messy UI. The counterargument is that I don’t have to try and emulate the same functionalities myself in a self-hosted wiki, which saves me a lot of time.

In the end, I am surprisingly content with it. I did spend a day or two on CSS changes to conceive a wiki that didn’t look like the parchment paper-themed default. I couldn’t help myself, as I just want it to look a bit nicer. However, I didn’t allow myself to go all out and design new icons and the like — perhaps in the future. I’d set up several taxonomies for my data on paper and implemented the one I considered the best to navigate. At the time of writing this blog post, I have transferred most of the data over, even though some data still requires an adaptation to the new format. The goal was to have all my data centralized, or as they say in the biz, we created a single source of truth. Now, I only need to keep it up-to-date!

Why put all this work into it?

Throughout my life, I have worked in quite some different fields. One of the most important things that were often overlooked, no matter the company, was the overall preservation of knowledge.
Your brain can only remember so much until it has to archive or filter out something else to not overflow. The same goes for your colleagues. 
Think about it and be honest. Have you ever worked at a place where a colleague left the company, and they took a huge chunk of knowledge with them out the door? 
Documentation can prevent that from happening. Documentation is often the side gig people like to leave at the edge of their desk for times when things slow down. Reality often shows the amount of work rarely slows down enough for you to deep dive into the documentation. If you wait too long, some of the knowledge might have already faded, making it even harder to write that documentation. 
I have done this myself because a project implementation or the next big thing took priority. I also know it always came around to bite me in the bee-hind after at least 6 months had passed.
That is why I dedicated the month of March to the preservation of knowledge. It’s quite the task if you have 3 years of work you need to load into a wiki, but that’s only a one-time task. Afterward, I should be able to develop products quicker. I have documented workflows and have all my lore information organized to protect me from any inconsistencies several books down the line.
And between you and me, I also felt like diving into some new tools this month and do some design and programming… I just got to keep challenging myself to maintain or improve my skill set.

I’ll go back to implementing the remaining data. The sooner this data has been processed, the sooner I can start working on the second book with the work-title Project Spellbinder. 

 // Marc