WK should work with script devs and officially implement some of them

Issue with scripts is that not everyone wants the temptation.
If WK implements a double check feature (which was mentioned as something that won’t be implemented, I believe), some users might actually dislike it. With scripts, you can of course pick your poison. This is why for mobile using something like flaming durtles is actually a good idea, as that implements a lot of the scripts people tend to use.

But also, a few more points about this:
With a userscript, you could theoretically have multiple different versions of the same thing. Don’t like how x script does it? You can use y instead. Doesn’t exist? No need to put in a feature request and wait literal months, if you have the know-how, you can code it your way.

Saying “implementing this script would be nice” sounds good on paper, but it’s another piece of code the team will need to work around from then on. The more features you have, the more ways they can interact in and the more bugs that can be caused by these interactions.

IMO, the best the wk team can do is implement new features into the api, not big features, but small ones that aid script creators in big ways. The fact that they created the “script compatibility mode” shows that this is probably more likely, than getting big new features.


That must have been painful to add all those <kbd></kbd> tags

1 Like

Just run this code in your console:

document.querySelector(".ember-text-area").value = 
    [...document.querySelector(".ember-text-area").value].map(x => `<kbd>${x}</kbd>`).join(""); 

It’s also a pain from a business standpoint because you’re now accepting liability for code that wasn’t written in-house and without a pre-existing contract.

Completely agree. A lot of people don’t realize how small the WK team is and that’s probably intentional. I would be shocked if they had more than 5 full time devs on staff.


Fair enough

Don’t really care for the tukuname or whatever the name of the app is. I meant to say that I wish wanikani had that already as part of their website.

this is mostly tangent rambling, feel free to ignore. tl;dr at the bottom

Bunpro has a built in timeline, heatmap, undo/double check, light/dark mode, bunny mode (aka lightning mode) and I feel like the experience is a lot better for it. Oh, did I mention it has the ability to mark things as known or remove them from your reviews? You can learn anything in any order you want there, or reset individual items you have trouble with, or even remove said items from your reviews (the lack of leech management on WK annoys me to no end). Also, I’ve been enjoying Satori Reader’s heatmap. It’s a stupid thing to care about especially given how out of the way it is on that site, but it makes me really happy just to have it.

In the case of WK I feel like some of the more universally nice scripts just reflect flaws in the content body or presentation of the app itself. Stuff like Niai visually similar kanji or the semantic-phonetic composition almost feel like a straight upgrade to me. It’s not like I’d want a straight port (and really, that would make no sense given how hacky scripts are by nature), but there are ideas there that could definitely bring a subtle, but greatly improved user experience to the site.

Regarding double check… Sometimes (in bunpro) I’ll do crap like undoing a correct answer and trying out different forms of a particular phrase or whatever. It’s really nice to be able to play around with multiple possible answers on top of general typo or other derpiness. It’s not like that feature has to be enabled by default either. Just shove the toggle into the danger zone or some form of advanced settings. This is what the mobile app I use does and my honorary boomer fingers really appreciate getting the touch screen assistance.

Speaking of mobile apps, the entire mobile experience being carried by third party apps is also a bit disappointing to me. When I first did WK the nice apps we have today didn’t even exist. I had to awkwardly trying to sneak review session submissions whenever my train would get out of tunnels during the daily commute (iirc, trying to submit when the connection got cut would lose the whole session). The experience was nothing short of awful and yet it’s been left to slave labor really nice community members who work in painfully inefficient ways to give the community nice things.

And for all of this, the weird thing is that the WK staff seem to be aiming for some improvement. Just at a snail’s pace (from the perspective of an end user). Some of the API changes imply that they considered fundamental changes to the site and I don’t really see the merit in the react conversions if future development isn’t on the table. However, I don’t have any expectation of seeing noteworthy improvements given how little has changed in the fiveish years I’ve known this site.

Then I look at Bunpro. Half the cost with a free mode that’s arguably too generous. It has existed for significantly less time, but has gone on a massive hiring spree that has resulting in a drastic overhaul of the site in the last half a year or so including the implementation of completely new features and it has a fairly active mod team on their forums (even the ceo lol).

There’s WK which is great, but seemingly unchanging and super focused on forcing everyone into the one true learning experience. Then there’s Bunpro, a little kid that’s rough around the edges but at least seems like it’ll grow into something… Maybe I’ll be pleasantly surprised and see Eto Eto launch Tomorrow™

tl;dr - There’s a lot of nice QoL stuff that could be implemented as optional features purely for the sake of improving user experience, but I get the impression WK would rather maintain the status quo and it’s a bloody shame.


I’m sure there are many script writers who would be delighted to work with WK on a freelance basis. The features that should be integrated to WK, however, should be selected based on whether it helps our learning or not, instead of whether it’s popular or not.

1 Like

Will this be evaluated by means of peer reviewed studies or by applying armchair insights?


The Holy Crabigator’s armchairs are very comfy


By POLLicy convention, of course. :wink:


I mean, I wouldn’t complain if WK wanted to throw me some yen. I could definitely use some. But, there was never any desire to get anything out of writing a script, other than to have some fun and (hopefully) be somewhat helpful.

The expression “be careful what you wish for” comes to mind with this thread.

WK works very well for my needs, and I’m incredibly grateful that they’ve opened and documented a useful API. I’m also grateful that there’s such a vibrant community developing useful scripts using that API. It’s wonderful being able to pick and choose the options I want, knowing they are separately maintained options that can be disabled and can’t break existing functionality.

I’ve lost count of the number of nice products and services that were ruined quite quickly after a spate of massive staffing or acquisition by a large company.

New shiny features are always fun and nice, but once added have to be supported forever, requiring more staff who want to introduce yet more things without breaking old things, and the vicious circle continues.

No good deed or upgrade goes unpunished.


That’s a good point. The API V2 rollout would have taken 5 more years if they had to ensure script compatibility.


This is the voice of experience speaking.

My day job is no longer slinging packets around the planet for a faceless corporate behemoth, rather it is now working for a STEM based non-profit that publishes an SDK written in Java for a certain sort of domain specific programming. We have a very, very large community of users who are very, very passionate. A subset of those users want to implement features for us. The biggest problem of which is their feature becomes our support burden.

Features aren’t free even if the original implementation is.

While there are a few userscripts I’d like to see rolled natively into WK, I can’t fault them for sticking to their core product and leaving other features to the community in a manner in which they have no ultimate responsibility.


The real fun is when some feature from long ago conflicts and prevents you from implementing some new whiz-bang feature you really want to add. And, of course, regression tests and release timelines never get shorter…

I agree that there are a few scripts I’d like to see become standard, but every single feature is a tough call. There are also several userscripts I’d really seriously hate to give up, but still believe are better to leave as “community supported” add-ons.

1 Like



I’m a developer myself. Yes, too many features are a burden.

That said, let’s not exaggerate the issue here. WK as a product is ridiculously simple. Yet, it is rather expensive. For comparison, I pay roughly the same amount of money for e.g. Netflix, and that is in many respects a much more complicated product.

So no, I don’t think that adding a couple more features to WK would really become unmanageable.

Of course, for a business POV, why would WK implement things that the community is doing for free? That’s a reasonable calculus, but it’s also offloading a lot of the responsibility onto third parties who might or might not stop maintaining any of this at any given moment.


That’s not really a fair comparison. Netflix has at least an order of magnitude more users than WK. Japanese language learning is a pretty niche demographic.

They’ve added the shake on reviews and allowed some leeway for answering, so there may be small features that I think they’ll add here or there.

It’s actually a negative equation since they now have to spend money to implement and support the features.

The other point is that I doubt even 15% of their userbase uses any of the available scripts.

1 Like

I doubt even 15% of the userbase even makes it past level, say, 25, or so.

Of course, as a business model, you can try to mostly focus on users that you know will not complete the program. After all, gym studios make tons of money off people who never go to the gym.

I’m just saying that from a point of view of a user, the value I get out of WK without scripts makes the price a tough sell.