1. What we shipped
This week has been all over the place. On Monday I made multiple changes to the servers so that they would more gracefully slow down during heavy load instead of crashing (effectively queuing requests rather than try and process everything and failing). I also added more server logs to see which requests took over 5 seconds, and improved the caching layer to take advantage of the servers’ extra available ram. During the same investigation I found out I was under-provisioning one of our cache layers, causing it to full up and restart about once a day.
On Tuesday I worked on most of those slow pages to speed them up. This was mostly just not loading a bunch of entry descriptions on subpages where that info was never needed, but always loaded. This should be noticeable on worlds with big wordy descriptions.
The rest of the week was focused on fixing edge cases with the new maps engine, mostly adding features I forgot existed in the old one.
2. What we’re working on next
You know how organisations can have multiple locations, but families are still stuck to a single one? And that doesn’t make sense? I agree! So I’m working on making families have multiple locations. And while I’m at it, applying the same patch to journals and quests. This leaves just maps and articles as having a singular location field, which I am rummaging over if I should also update.
I’m also tweaking an entry’s relation map to make it load faster when changing the option of what should be displayed, and making those filters available on articles set to render the map.
A bigger task I’m exploring is reworking family trees. Quite a few popular feature requests simply aren’t possible with how I built the schema, so the first step is figuring out something better. More on that maybe in a few weeks.
3. Behind the scenes
I am thrilled by all the amazing feedback we’ve received about the new maps engine. I’ve been wanting to explore this for years due to personally being annoyed each time I needed to set up a map in Kanka, and seeing that resonate with people is what keeps fuel the fire. Making interfaces get out of the way is one of my favourite parts of building software and look forward to applying the same logic to other areas of Kanka and worldbuilding.


Leave a comment