Script idea: leech-o-meter?

Update: I’ve since created the userscript ( It looks like this:

I’ve been wondering what I could best do to prevent myself (and others) from falling into leech traps.

One idea I’ve been noodling on is if it would be possible to warn me at the time I’m first learning something that it’s a common leech. I’m been thinking something like this on the lesson page:


What do folks think?

1 Like

Not a script, but

EDIT: Oh, you want to know other people’s leeches? I don’t think there’s any good way to know or collect that information.

I think different people have different leaches. Sure, some may be more common than others, but I think you would be better off just focusing on your critical items list.

I think this would only work if the script was purely to advise people of common leeches. Saying that an item is not a common leech is the fastest way to make it into one.


The critical items list isn’t good for showing you your leeches. I very rarely have critical items, but I have quite a few items that I routinely get up to enlightened and fail on the burn review repeatedly.

Ah, I see.

What happened to that “Japanese classroom” project where people were supposed to share their API key?

Thing is, eventually you have reviewed the item so much the percentage of wrong answers is not high enough to make it into the critical list…

I don’t think there’s any good way to know or collect that information.

From recent leech calculations via my site at (admittedly a small sample size), I’m able to put together some basic categorizations:

Mild (leech for 10% to 20% of people)

Yellow (leech for 20% to 30% of people)

Red (leech for 30%+ of people)

Do these seem to fit the scale more or less?

1 Like

I went ahead and created it :smiley: (with a hardcoded list of leeches and their levels). Feedback welcome!

Speaking as a web developer (mostly server-side, but still full-stack), it looks pretty good. I do have a couple of suggestions:

Line 26 (Style gripe): operators and operands should be spaced out, as it makes things easier to read.

var key = type + ' | ' + characters;

Lines 33-39: I’d swap out the if/else if/else block at with a switch block (switches are slightly more efficient for this kind of thing)

switch(leech_indicator[key]) {
    case "mild":
        $('#leech-o-meter').show().css('background-color', 'yellow').attr('title', 'A leech for 10-20% of people.');
    case "yellow":
        $('#leech-o-meter').show().css('background-color', 'orange').attr('title', 'A leech for 20-30% of people.');
    case "red":
        $('#leech-o-meter').show().css('background-color', 'red').attr('title', 'A leech for 30%+ of people!');
        $('#leech-o-meter').show().css('background-color', 'red').attr('title', "You shouldn't see me, since I'm not on the list of levels");
1 Like

I’m working on an extension to the script to record my wrong answers. The idea being that it’s possible to infer what my confusion is and that that can be shared as a warning to others. Here’s the kind of data I’m collecting to being with:


You’re making a script for allowing other people to see what you got wrong? It’s going to be a sample size of one?

Yes. Step one I want to prove to myself that the information is useful.

I love the idea, but I know it will be hard to implement. Gonna keep an eye on this!

I’m sure it’s useful. To you. Leeches are a personal thing.

1 Like

Hmm. This is an interesting problem. Even just limiting myself to this type of confusion:

Leech-tachi: That group of very similar items that you constantly confuse

I entered shi for rest (instead of doing):


There are 66 other items with the reading shi. How can a program tell what looks similar? Perhaps by the radicals??

  2 子 -- 子
  2 四 -- 儿 口
  3 止 -- 止
  3 市 -- 巾 亠
  3 矢 -- 矢
  4 糸 -- 糸
  4 仕 -- 士 イ
  5 自 -- 自
  6 死 -- 歹 匕
  6 姉 -- 巾 女 亠
  6 知 -- 矢 口
  6 思 -- 心 田
  7 氏 -- 氏
  7 紙 -- 氏 糸
  8 支 -- 支
  9 使 -- 史 イ 一
  9 始 -- 台 女
 11 指 -- 扌 匕 日
 12 歯 -- 凵 米 止
 13 詩 -- 寺 言
 13 士 -- 士
 14 私 -- ム 禾
 15 司 -- Creeper Cloak
 18 試 -- 言 弋 工
 19 詞 -- 司 言
 19 史 -- 史
 21 資 -- 次 貝
 22 示 -- 示
 22 姿 -- 次 女
 23 師 -- Bear 巾 丶 一
 23 施 -- 也 方 Gun
 24 視 -- 見 ネ
 25 絞 -- 交 糸
 26 刺 -- 刂 冂 木
 26 占 -- 占
 27 締 -- 巾 糸 立
 28 清 -- 青 氵
 32 志 -- 士 心
 32 飼 -- 司 食
 32 染 -- 氵 木 九
 33 閉 -- 才 門
 33 誌 -- 言 士 心
 34 枝 -- 支 木
 39 祉 -- ネ 止
 40 敷 -- 方 夂 田 十
 41 伺 -- 司 イ
 41 至 -- 至
 42 芝 -- Hills 艹
 43 旨 -- 匕 日
 49 紫 -- 糸 匕 止
 50 諮 -- 次 言 口
 51 脂 -- 匕 月 日
 52 茨 -- 次 艹
 54 痴 -- 疒 矢 口
 55 之 -- Hills 丶
 56 柴 -- 匕 止 木
 57 漬 -- 生 氵 貝
 59 雌 -- 隹 匕 止
 59 梓 -- 辛 木

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.