November 8, 2018

Dear Patrons and Users,

The 10th of November 2018 will mark the one year anniversary since I promoted Kanka to the world. A lot of things have happened during that time frame which I thought I would go over. My aim with this article is to share my thoughts with the community about what has happened, what is currently happening, and what the future holds for Kanka which hasn't already been discussed yet.

A Brief History

About five years ago, along with my wife and some friends, we played a boardgame called Legends of Andor. It offered challenging puzzles but no role playing, which we collectively decided we wanted to explore. This led me to do some research and discovering Dungeons and Dragons 5th edition. I pitched it to the group and we decided to give it a go, with me acting as the Dungeon Master.

Fast forward several years later and we were still playing D&D 5e frequently, this time in our own campaign setting. We played a year and a half a first campaign, and started a second campaign playing in the same world but roughly 30 years later. I thought I was being very clever by reusing elements and history we had been using in the past, but all the old notes were written partly in books, partly in Google Drive.

So for the second campaign, I started writing everything related to the world in a MediaWiki wiki, and keeping my plots and session prep in Google Drive. This way I could share the world to my players, and keep information private.

This worked adequately well for several years, until we went nearly 9 months without playing our main adventure. I was faced with a writing block: the story had unfolded in a very dramatic way, which brought the whole table to tears of sadness, and I wanted to continue hitting powerful emotional reactions with every session but couldn't figure out a way to so. I tried to build a complex web of narrative devices thinking it would help create something amazing for my players.

But it didn't, and none of the ideas I came up with felt satisfactory. So we didn't play, because I didn't want to disappoint my players.

A Change of Scenery

During October 2017, a new person was added to our circle. They had never played tabletop RPGs before but were eager to learn and play with us, so we figured we'd start a new campaign to let them learn at low level how to play, before transitioning to the main adventure.

I needed to start worldbuilding again, but didn't want to re-use my existing tools as they didn't help me in my processes. So I had a look around at what existed, but didn't find anything that suit my workflow or my requirements. I had also been wanting to start a side project for a few years, and decided that this would be it. I spent an evening writing up some quick plans on what I needed: Characters, Families, Locations, Journals and Items, and on Thursday the 26th of October 2017, I started working on Kanka.

First Encounter

My players started sending me ideas for the world and campaign they wanted, and I was busy building the app as fast as I could to note all of these things down. A fortnight later, version 0.0.1 was unleashed to the world.

The rest is history.

November 2018

What is a year? This is a question I often asked myself during the last 12 months, as one of the most interesting features that I've worked on in Kanka was definitively Calendars. The idea of creating your own calendar for your world and tracking things in it was a foreign concept to me at first. This led me to build the Calendar module mostly on user feedback, and still has me to this day battle with features that I built that don't quite make sense.

Calendars have also brought out some very interesting conversations over on the Discord, where we would talk about festivals, their origins and meanings, and how they could impact or be a consequence of local cultures.

One belief that Calendars have reinforced is that whatever feature I build or imagine, half of the users will think it does too little, and the other half will think it does too much. Worldbuilding and dungeon mastering are very personal skills and everyone does them differently, meaning that everyone will have a very different set of requirements that are important to them in a tool like Kanka. One area which I still struggle with is understanding why people would want feature X or Z, because I don't have a requirement for it.

A request I often get from power users is to be able to customise many aspects of the app. This goes against the core concept of the app that is to make worldbuilding and DMing easier for a majority of users. If a user needs to spend several hours configuring Kanka to their need, then Kanka has become too big and doesn't do what was intended of the app anymore.

This leads me to another part where I still have difficulty, and which is growing with the user base: learning to say no. While many people are involved in Kanka and its community, at the end of the day I am a one man operation. As for all projects, there is an abundance of feature requests but only a limited amount of time I can dedicate. It's a nice problem to have, it means I can always be working on something to make the app better, but it means that some requests will only be worked on in many months, or forgotten alltogether.

This problem is one of the reasons which led me to want to pursue the changes mentioned in Patreon and the Future of Kanka. During the summer, I was asked if I could imagine working full time on Kanka, for it to become my job. At the time, I had a loose target of $200 per month on Patreon by the end of 2018 and was plateauing at $30-40, so I didn't think about it too seriously. The initial goal was never to make money with Kanka, only to cover hosting costs. I had imagined that as the user base grows, so will the server costs. But once the question was asked, the seed was planted.

Fast forward to October 2018 and my mind was changed. I talked about the changes with various people whose opinion I highly value for several weeks, and when the announcement was ready, it was released. The community's response was amazing and far more supportive and excited that I could have ever dreamed of. The sheer amount of positivity send my way will be lifelong cherished memory.

The end of October 2018 however brought the first signs of growing pains: Kanka was being noticed, and is currently being targeted by a DDos attack. I was fully unprepared for it, not imagining that someone would bother, but I was proven wrong. Infrastructure was put in place, the servers were upgraded, and hopefully things will continue smoothly for the time being. One interesting fact that make me ponder is that Kanka wasn't the only target, our good friends over at World Anvil were also targeted at the same time. The plot thickens!

If Only

It wouldn't be a year in review without a section dedicated to the power of hindsight. As with all things in life, I often ponder "what if", and decisions taken in Kanka are no different.

I must admit that there aren't many things I regret when thinking about Kanka and its evolution so far. The obvious ones are regarding working on features without understanding what their usage would be (calendars), or spending too much time working on features that end up not being used (conversations). Had I had calendars in mind from the start, Events would be a very different entity than they are today. I also regret some naming conventions that make it confusing when talking about features (Entities? Entity Notes? Notes?). Mostly I regret not promoting the app more during the first half of the year to get more users which bring in turn more exposure, which brings more ideas on how to improve the app.

The only thing that really slightly bothers me, and probably always will, is regarding the name. It was chosen after randomly using Google Translate, finding a word that sounds nice, changing it a bit, and checking the domain's availability. But a product is more than just its name, so I'll probably stick with Kanka for the foreseeable future.

2019 and Beyond

Okay okay, you've made it this far and you're wondering what's next? I have some bad news for you: I don't know! Or more precisely, I have lots of ideas, but I don't know how much I can work on those ideas.

The huge backlog of features is a good place to start, but it doesn't show everything. There are hundreds of small to big ideas I want to work on. Here are but a few, in no particular order.

Rework a lot of the UI to be more modern and remove a lot of the clutter.

Help the community build amazing tools for Kanka with the APIs.

Create lots of tutorial videos to help new users.

Redo the landing page to better promote the app and showcase what it can do.

Build live statistics for people who like statistics. (hint: I like statistics)

Build powerful moderation tools for moderators to curate public campaigns and make sure Kanka doesn't get in trouble if people want to abuse features.

Build a light Virtual Tabletop tool that plugs in directly with Kanka.

Build companion apps with offline browsing and editing support.

Work more with the community to have community themes and community content.

Now, if I am being 100% honest, all I really want to do is play more D&D with my wife and our friends ;-) But scheduling conflicts, work, life and the universe wants it another way, so I'll continue working on awesome features to make worldbuilding and dungeon mastering easier. My end goal will always be to build tools so that people can have more fun, and spend less time deciding on how to organise a world or track information.

Closing Statement

Hopefully you've found this announcement (or essay at this point) interesting. I've tried to share insight into what led to Kanka being born, some defining moments of this first year, the challenges that were thrown my way, some successes, some failures, and some plans for the future.

As always, this wouldn't be possible without the amazing Patrons who support Kanka on Patreon. If talking about calendars, worldbuilding and dungeon mastering sounds fun, or if you want to help out with translations or testing, consider joining the Discord!

Thank you for reading this until the end.

Ilestis / Jay