Dynamic adjustable curriculum for a subset of characters to be learnt

This is perhaps a wild idea but just mentioning it in case it sparks an idea.

At the moment, HH is setup so that the sounds and the components are taught in order that over a period of about 2 years (I believe) a basic level of fluency will be reached (with fluency defined by reference to what’s required for the HSK levels).

I recently ordered a set of 300-400 flashcards made by a Taiwanese YouTuber - Let's Fall In Love With Traditional Chinese Characters! | Cecilia Chen - which are organised by radicals but which (I’m told) aim to concentrate on what’s required for tourist fluency (including, in particular, how to read a menu).

This got me thinking that once I’ve learnt all the HH sounds, it would be interesting if it’s possible to replace the HH curriculum (fluency defined by reference to what’s required for the HSK levels) with a user defined curriculum (such as, for example, a list of a few hundred characters required for menus, shopping etc). Based on that, the HH website would then generate dynamically a curriculum going forward based on (i) the components which I already know and the components which I need to learn and (ii) the characters I want to end up knowing. The user would be able to change the characters they want to learn and each time the curriculum would be dynamically updated.

Based on this, for example, I could start off as I am doing now but if I suddenly wanted to concentrate on a set of particular characters, then I could change the curriculum and the website would change what I’m taught going forward. This would mean that instead of taking a couple of years, it could be a much shorter period of time before fluency for the desired characters (e.g. for a holiday) would be reached.

Separate from the above idea, it would also be great if the website could say that - based on current settings and the percentage so far of characters which are correct in reviews - it will take X time before it’s estimated that they are all learnt. I’ve just started on the HH journey (less than 2 months in) and it would be motivating / interesting if the website can tell me that I still have X months left until estimated fluency in HSK level whatever! Learning the characters is a journey which takes years and rather than an unknown time in the future, it would for me at least motivate me even more to know that if I keep up doing what I’m doing, I’m estimated to reach the journey’s end by whatever date.


This is a great thought, and I’ve been thinking something similar on and off for the past couple of months. I can share some thoughts I have on it.

Character priotiziation works this way already (roughly)

First, this technically is how character prioritization works already. When a character is prioritized, we “re-arrange” the curriculum for the user to prioritize all components/sounds for that character so they show up in the next lesson(s), which in turn leads to the character showing up in the lessons once those components/sounds are “familiar”. So if one goes through and manually prioritizes the set of characters they want to learn, it would indeed work as you mention, roughly.

Near term: better bulk prioritization interface

However, the interface for prioritization is sort of clunky. It requires one to go to each character page to prioritize the character. We plan to revamp the page(s) that list out the characters/components/etc to have some sort of bulk operation feature to make this more easy. This should be done in the coming months.

When that is done, one could list out all un-learned characters arranged by HSK level, for instance, and use that to manually scroll through and select the ones one wants to prioritize. Still not ideal, but should be a big step-up.

Far future: character lists

But beyond that, at a later date, I can see us integrating “character lists” into the application to make it yet even easier. Within the application, one could “prioritize” an entire list of characters for specific textbooks, courses, HSK levels, or whatever other character lists are already out there on sites like Pleco Forums, HackChinese, etc. These are fairly easy to add on our end. Doing that would be similar to prioritizing each character within the list, thus making HanziHero arrange the curriculum in such a way so that the characters in those lists are learned in rough order.

I’m not sure when we would get around to this, or how it would look like in the end. Most of the work here is on the UX/UI front actually, I think a lot of the back-end code we have added for character priotiization should be easily re-used here, but we will need to see how things look after we re-vamp the curriculum list pages. :+1:


I filed a ticket on our end to look into adding a simple forecast somewhere on the dashboard for e.g., time to next HSK level. We’ve had a couple of requests for something similar. :+1: