UX Case Study - WaniKani (part 1)

WaniKani is Japanese radicals, kanji, and vocabulary learning web app that uses mnemonics and a spaced repetition system to make kanji learning simple.

WaniKani has a very passionate community that I was an active participant of around 2015-2017. It was there that I was introduced to the concept of 'user scripts', a way to execute Javascript files in the browser in order to change the look or functionality of a website.

This is a retrospective of some interesting UX improvements I created for the community with some insights into what I wanted to achieve.

Goals

Looking back, it's clear my most impactful UX improvements can be summarised into two categories. Firstly, I wanted to provide better tools for power users. Language learning is a time intensive undertaking, so I tried to develop solutions that would streamline certain workflows in the application. Secondly, I wanted to provide additional information for a more informed learning process.

Part 1: Provide better tools for power users

Wrap-up button customisation

(Improve customisation, effective learning)

The workload you had on any given day would vary depending on how many new lessons you followed that day and how many older lessons needed to be reviewed.

By default, the wrap-up button would conclude the review session after 10 correct answers. To give users more control over their time, I added a number input field so that users could decide the number for themselves.

There was also a synergy with the user script described in the next section that allowed you to sort your review queue according to item type and SRS level. With both of these improvements, users with limited time could still focus on reviewing new material in an effective manner without feeling overwhelmed in their studies.

Review sorting according to SRS level

(Improve customisation, effective learning)

A key underpinning of the spaced repetition philosophy is that new lessons should be frequently reviewed in the beginning and increasingly less frequently over time as you commit the learning material to long-term memory. The random sorting of your review queue is, in theory, a sensible default option if you can go through the whole queue, but it can be a real hindrance to the learning progress of people with limited time.

This script allowed users to sort the review queue according to the SRS level of the items in ascending or descending order. With these added sorting options, users could focus on newer material that they were more likely to forget if not reviewed soon.

Anki Mode

(Improve accessibility)

Another very popular language learning tool is the flashcard program Anki. Many community members wanted to use WaniKani in a similar way as Anki. The normal way to review the material you've learned was to type out the answers. Due to the spaced repetition system, this could mean the review queue on certain days was extremely big and took up a lot of time and energy.

To make these large review queues easier to manage and to make the entire review workflow more accessible to users with limited hand dexterity, I added the following shortcuts:

  • "Space" - Reveal answer

  • "1" - I knew the answer

  • "2" - I didn't know the answer

Anki Mode could be activated with a button in the top left corner. When the user typed either "1" or "2", the system would move onto the next question. The exact shortcut key for every action could be customised as well.

More by Jasper D'haene

View profile