[Outdated] [Userscript] Burn Reviews (ver 2.2.5)


To be fair, the main credit is due to the other contributors, I just rewrote it (to use with KW) and added features/fixed some bugs.

I haven’t really made any greasy scripts, good to know!

Replaced the old version on “The New And Improved List Of API and Third Party Apps” with this version

Thanks @Kumirei though it looks like the link isn’t working?

Oops, missed a / in the link. Works now

I have the same problem with Tampermonkey, Chrome, Win7.

@ookami @Yabashiri,

It looks like there’s another bug due to Wanikani changing the location of the ‘account’ page. For a short-term fix, you can enter your API key in the javascript console:

localStorage.setItem(‘apiKey’, ‘insert_your_apikey_here’);

and insert your API key (in quotes, with no spaces inside the quotes).

The API key is now on /settings/account instead of just /account. You may also want to check if the selector for locating the API key is the same (I’m on tablet at the moment, so I can’t check)

Fun fact - this probably doesn’t affect people using the Wanikani Ultimate Timeline add-on as they use the same localStorage key as a result of me blatently copying it and not being as vigilant a maintainer as them!

I’ll give it a butchers and get a fix in.

Edit: I just realised that you’re the maintainer for that plugin @rfindley
Also unless you’ve changed coding style, maybe I didn’t just copy it. I never got my head around Promises

Yeah, I recognize my code in there :-). I may have used callbacks originally, but I don’t remember. I learned Promises in the process of writing WK scripts, and I still can’t shake the feeling that they’re sort of an over-thought solution to a language design issue, though I’m still open to the idea that I may not be truly using them as intended, like a butter knife as a screwdriver. It’s like multi-threaded programming: there are a lot of wrong ways to do it, and it takes some experience before you truly do it well. But it still boils down to a need for better programming languages… which I know can be done, because I’ve seen it. The programming world is ripe for a revolution.

Have you tried async/await? I just had Javascript this semester and we were told it’s an even better version of promises. Not that I understood how to use them :sweat_smile:

Well I spend most of my time writing C++ code and there is a future header for C++11 with a std::promise type. However despite the codebase being for complex systems with lots of asynchronicity, we hardly use it, so make of that what you will.

That said the codebase doesn’t really make use of exceptions either so perhaps this is more likely a reflection of the inherent conservative nature of C++ development rather than an indictment of language design!

2.2.4 is now on greasyfork and should fix that particular issue :slight_smile:

Maybe it should have been 2.3.1 though because there was new feature in-between??? I don’t know, I’m totally winging version numbering here.

Works great now! Thank youuuu! :smile:

If you’re lucky enough to work at a company that doesn’t require supporting older browsers. Many companies will at least support the last version of IE, which means you can use virtually none of the JavaScript features introduced in the last two years. Maybe by the time you graduate most companies will stop supporting IE, but I’m sure some will still support IE 7. :wink:

Supporting IE6 to the bitter end and IE8 is what made me learn to hate web development. Embedded and systems software is so much nicer. I promised myself to never do web development for money again and I’ve been happier for it. User scripts though are kinda fun though so I’m happy supporting this one in my spare time :slight_smile: There was something pretty cathartic about the original big refactor.

^^^ I’m an embedded developer, primarily C & C++, though many of the products I work on have a web GUI, plus a half dozen other forms of communication.

IE6-IE8 was a curse upon humanity, and my clients have finally stopped requiring support for them, thankfully… though web design was only ever a peripheral part of my work. I had to rewrite a web GUI engine, the core of which is still being reused. That was my first real Javascript experience, and I’ve learned a lot since then.

Regarding Promises / futures, I’m somewhat aware of their increasing role in C++ (and other languages), and it’s actually the whole picture that is pushing me toward feeling like we are ready for a revolution… like the language-development gurus are stuck in a mindset, and the solutions are based on thoughts from “inside the box” (even when they are innovative).

One of my favorite languages, conceptually, has the capability to do multi-threading, promises/futures, lamda functions, etc. without even realizing what you’re doing… which is a beautiful and powerful thing. It’s just a shame it’s not a general purpose language, though it could be. We just really need new languages more in tune with human thought patterns. If something like that could catch on, the software world would explode. In a good way.

I’ve looked at them briefly, but wide browser support is still lacking, so it looks like we’ll have to wait a while before they can be used comfortably.

Hey, it’s the original creator. I finally logged in again after so long. Thank you for taking this over!



Uhh, I wouldn’t be surprised if this was a bug from the original, but it won’t accept my correct answers sometimes, it does the shaky thing like when you enter the wrong reading type.

Maybe, although I did rewrite a lot of it so there’s a very good chance it’s one I’ve introduced! Can you give an example of when it happens?

I’m currently at work so I’m not able to test it at the moment but it happened on at least 2 separate occasions in the same session on meanings. I tried entering the reading to test if the meaning/reading were maybe switched but it rejected that too. If you test it for long enough, and maybe even try toggling some of the buttons, you should run into it fairly quickly.