Anki's Worst Problems And How To Avoid Them

Date: 2019-03-24

Hello. I taught myself Japanese to a decent degree of competency** on my own time.

Almost all of the improvements I saw in my Japanese ability came from consuming more and more Japanese, of various kinds, about various topics. However, I did use Anki when I started out.

Before I reached the point where I could comfortably consume all sorts of Japanese, I was trying (and mostly failing) to memorize common Japanese vocabulary with an electronic flashcard program called Anki.

The biggest problem with Anki for me was the fact that I have a "non-24-hour sleep cycle", meaning that the times I fall asleep and wake up every day drift over time, even if I try to use an alarm clock. Anki is strictly designed around having a daily routine. Trying to work around it either causes problems with having more reviews some days, or adjusting your system clock whenever you use Anki. This is the primary reason why I stopped using Anki.

This is a relatively personal problem, but it bears value in explaining, because some other people (people who have to work strange, random hours, working days sometimes and nights other times) will have similar issues with Anki even if they aren't "non-24".

At the end of the day, even if you can't or don't want to use Anki, you will learn Japanese just fine as long as you read and listen enough. The time when Anki is most useful is when you're just starting out, and reading or listening for ten minutes is enough to make you feel like you're completely done for the day.

(Continued within post...)


Date: 2019-03-15

I just added something very cursed to my mecab clone.

So mecab has to store a 2d matrix of connection costs between types of tokens (because connection costs and token costs are how it finds the lowest-cost path and token types are how it handles connection costs) but the connection matrix for the only truly good mecab dictionary is 800MB now so loading it all into memory was taking up a lot of memory and that's not gonna fly on a VPS with 1GB of RAM.

So at first I just made a hashmap of matrix edge pairs to connection costs that falls back to reading directly from disk if it's not in the hashmap and that worked fine and it took up like 5~10% as much memory since it only uses 1~2% of all the total available possible connection types (there's a lot of memory overhead for hashmaps in rust apparently) and it was sorta fast but it was still noticably slower.

So I manually took lists of the most common 2000 edge locations on both axises of the matrix and load the corresponding 2000x2000 matrix into memory first with lookup tables for which edges exist in it and where and oh my god it's so horrible but it's ALMOST as fast as just using a 800MB vector in memory and it uses the least memory out of anything but slowly accessing the disk every time anything reads a connection weight (which is literally tens of billions of times).

Incredibly cursed.

Text Editors Suck

Date: 2018-03-05

Here's a list of editors I've used and why they're bad. This list includes every single widely-used text editor that's actively maintained, available on Windows, not based on "web technology" (Atom, VS Code, etc), and finally, not emacs.

Why are text editors, of all things, so incredibly bad? It makes no sense. Seriously.

  1. Notepad++ - Breaks horribly with large files. Clunky interface. Highlighter is broken.
  2. Geany - Breaks when using regex search/replace on large files.
  3. Kate - Buggy regex search/replace integration (e.g. replacing newlines). Does not support autodetection of indentation tabbing style at all.
  4. Sublime Text - Slow with large files, but doesn't break like geany and notepad++ do. Does not support actually disabling smart indentation (after opening a block or a condition) without disabling automatic indentation entirely.
  5. Vi/Vim - Modal. Does not use common/standard keystrokes (ctrl+c for copying, ctrl+arrows to navigate over words, etc). Bad mouse support.
  6. Akelpad - Not usable for extensive programming. Broken unicode support. Allows saving files with illegal filenames, corrupting their representation in the filesystem.
  7. Visual Studio - It's an IDE, not a text editor. I have not used it enough to unearth its other problems, aside from being very clunky.

Note: aside from Akelpad, I'm excluding "notepad clones" not meant for extensive programming.

On a side note, most text editors get artificial emboldening completely wrong, changing the gauge of each character, breaking monospace fonts. This prevents me from using bold in syntax highlighting in most editors.

Just writing this made my blood boil. How is it possible for text editors to be so bad? I need to go do something else.

This post was written in Kate.


Date: 2017-10-10

Woah is not a misspelling. Woah is an alternative spelling. What makes it an alternative spelling, not a misspelling, is the fact that people do not write woah because they don't know how to spell whoa. People write woah because it's how they spell the word.

When you correct people that use "woah", you're not being helpful in any way. You're wasting your time, forcing them to read nonsense, and overall being a language nazi that doesn't even know what the rules of the language are. You didn't post a valid correction. You posted pseudo-intellectual garbage. Your correction is not correct. You are hostile. Stop posting.

There's no argument to be made for refusing new spelling forms because the old ones are fine. English spelling is a fucking disaster. If people want to start using a more phonetic spelling, fucking let them.

Translation Is Literally Impossible

Date: 2017-10-05

Translation is literally impossible. No matter what you do, you can't translate from one language into another. All you can do is give a general approximation, and as a translator, your job is to get as close as you can.

Experiential similarity

It's said that the baseline for translation is for readers to receive "the same experience as readers of the original, as if the original creators had written it natively in both languages". It's easy to argue that this isn't possible, no matter what, because a translation will never have exactly the same patterns of words as the original work. But if you give up on exactness, and treat this baseline as an ideal instead of a target, you can start using it.

It's important to think about translation this way. Translation isn't the activity of replacing words, sentences, or conversations in one language with ones in another language. It's about replicating the original work, for people who can't consume the "original" untranslated work.

By changing it at all, it's no longer exactly the same. But consider this. Everyone experiences media differently in the first place. A native English speaker will see a song with engrish in it much differently than a native Japanese speaker would. Someone who grew up as a devout Christian will see Christian symbolism much differently than someone from an agnostic hippie family.

When you adapt a work to a new language, the target audience is inherently different, and would have taken different things out of the work even if it was originally meant for them.

In a sense, you just have to make the differences caused by translation be lesser than the differences between different readers.

(Continued within post...)

What is reading?

Date: 2017-07-23

This isn't a rhetorical question. To language learners, there's all sorts of reactions they can have when they see the word "reading". This is especially true in the Japanese self-teaching "scene", where "reading" is basically at the center of a mimetic war.

They might get flashbacks to dreadfully boring "See spot. See spot jump." style grammar exercises. They might think about comics. They might think about literature. They might think about text-heavy games. They might or might not think about dictionaries.

They might think about dictionaries that add glossing to everything and don't need any interaction. They might think about dictionaries that tell you what something means when you mouse over or click a word. They might think about dictionaries that you hold in your hands, that you have to flip around to the right page, if you know where it is, to look up a word. They might think of grammar pattern dictionaries.

They might associate dictionaries with a cruel form of self-torture where the reader gets anxious about how well they understand what they're reading, and look up every single word and grammar pattern.

They might not think about dictionaries at all, envisioning reading as something that comes natural because they already know the language.

They might not think about dictionaries at all, but this time, because they feel like they don't need one, even though they don't know all the words.

(Continued within post...)

Shirokuma Bell Stars hacking tools

Date: 2017-07-13

I just wanted to play the game, but Microsoft changed something in Windows 7 and it crashes now. At the end of a week worth of debugging and REing, I ended up with a full set of hacking tools, which can even be used for translation, not just commenting out the backgrounds that are so big they break Win7 directdraw.