ChristopherFritz's Study Log

As I’ve been meaning to do something like this for a while, I thought I’d first adapt what I wrote for joining the ABBC as some initial content, and then build from there.

After I rewrote the material for Manga Kotoba, I incorporated the changes directly back into the thread. (That’s the update I made the other day.)

While I was working on improving the content, I decided to ask Grok (AI) to outline topics for such a guide, to see if it would come up with anything worth adding. Aside from getting some good ideas, Grok also mentioned:

Little did Grok know, I ended up updating the guide that it recommended I refer people to in my guide.

5 Likes

Nice idea to leverage what you’ve already written!!

1 Like

SRS

A while back, I loaded up on Migaku cards for the rest of grade two kanji (at least those available in the Migaku kanji course), and vocabulary cards for those kanji based on words in manga I’m reading. (I was going to start the latter at grade 3, but why wait?)

After some time, I’m finally down to about 30 to 50 reviews per day. A bit more managable, as I was getting around 200 per day for a while there.

Kanji

I haven’t been keeping at daily reading from the Maruko grade 2 kanji book.

I’m planning to push to finish grade 2, then try something different before decided on starting up grade 3. I’d like to try reading a manga where one of my focuses is learning new kanji as I read each volume. (Based on kanji frequency lists.) Just to see how that goes.

One area I struggle with when learning words for a kanji is when I can’t see a clear link between the word and the meanings of the kanji. I realize there won’t always be one, but if there is one it may help me to know it. I’ll be checking meanings for kanji from Kanjipedia, and looking into how certain words relate to a specific meaning. Will I benefit from this, or will it just be a waste of time? That’s what I’ll be finding out.

Manga Kotoba

I’ve been improving the database backend, so not much new visible.

I did add links to WaniKani book clubs, tentatively in the "More Info" section.

And of course I had to give myself easy access to Kanjipedia pages from Manga Kotoba's kanji pages.

12 Likes

It’s been a while since I last posted!

In this time, I’ve forgotten to do SRS, and I learned one new kanji.

I’ve surpassed 50 volumes of manga read so far this year.

Below my prior years’ paces, but that was expected due to all my extra time spent on kanji…that I haven’t spent time on for some months now…

I’ve been getting back into Detective Conan a bit, but I may pause it again if I start falling behind on book clubs. (Well, the ones I’m not already way behind on.)


Over on the website side of things, my blindingly bright site Japanese by Example

…now has a dark mode.

No option to swap; it’s based entirely on browser/system preferences.

For fun, here’s a window into who’s visiting my little website of English language explanations of Japanese grammar with examples from Japanese manga:

And Manga Kotoba has finally seen an increase in visitors outside of Japanese people looking for free manga downloads, with Germany taking a solid second place:

Let’s see what people are looking for:

If I had any kind of actual visitor/usage states, I might consider creating a Discord server where people could recommend grammar/vocabulary for me to cover on Japanese by Example and provide their own examples from manga they’re reading, as well as suggest ideas and point out bugs for Manga Kotoba.

15 Likes

When I do a Google search for “Japanese by example” (from the US), I got Preply, Kanshudo, StoryLearning, iKnowJP, Mondly, Reddit, Tangorin, JPod101, and Tofugu…

5 Likes

Yeah, it’s not a site that one would find if they knew the name (unless putting quotes around it).

My hope for the site is that the content comes up in search results. But I also haven’t done any kind of SEO for that sort of thing. (And what I do have is apparently broken, so I have some fixing to do.)

It also looks like some pages are not on my sitemap that I thought were, so they’re not being indexed by Google. (Another thing for me to do.)

6 Likes

Yay an update!!

Any wrap-up thoughts on the kanji push and srs? Will it be worth returning to or will you try a different strategy later?

Your projects are so amazing, thanks for sharing

Recently learned SEO is getting replaced by SAO search answer optimisation… it goes by another name as well I forgot

I feel seen :sweat_smile: and there are quite a few other wkers in Germany

7 Likes

Once I got past the kanji I know, and the kanji I kind of know, and to the kanji I didn’t know, it all kind of fell apart. I wasn’t absorbing everything, then one day I forget to do SRS and I don’t remember again until…I was writing my post earlier.

It sounds kind of like a bit of a downer, but the reality is any time I didn’t spend on SRS, I spent on reading and other activities. So no regrets on time spent, both on kanji and on other things.

After avoiding bothering with SEO on my personal websites for over a decade, it’s kind of fitting that I haven’t even heard of SAO before.

In response, my conversation with Grok asking it about SAO versus SEO, and how SAO could be applied to an example page from Japanese by Example:
https://grok.com/share/bGVnYWN5LWNvcHk%3D_84716e9d-5ed6-4066-85ec-16ce78fdaec3

6 Likes

A fine position to be in!! Glad to hear that.

Well after ignoring proving your relevance to Google for so long, why not ignore proving your trustworthiness to AI !? :face_savoring_food:

6 Likes

As it turns out, Google had indexed almost zero pages from the site. And the site’s been around for over five years!

As best I can guess, what happened was:

  1. I have a sitemap file, but it had relative links to pages, and Google needs absolute links.
  2. Because the links were “malformed”, Google ignored them (didn’t know how to use them).
  3. Since there was a sitemap, Google didn’t try crawling the site for pages to index.

I made some fixes and tweaks, and the site went from zero search engine impressions in the past year to 15 impressions (0 clicks) in the past day.

If you hadn’t said anything, the site would still be unfindable going forward!

10 Likes

YAY!!
I knew it wasn’t seeing you, but I had no clue why!
sigh You’re so awesome to be able to figure that out!

6 Likes

It didn’t hurt that I added the subdomain to Google Search Console, and it told me it was skipping nearly 500 pages, giving an “invalid URL” error for each one, showing they didn’t have the full path.

Something like this, but with red text saying “Failed” or similar rather than a green “Success”:

7 Likes

Two weeks later, I’ve done a tiny bit of adding things that may help AI, but that’s a side-effect of making it so Google and other search engines better understand the content of the sites.

After fixing the site map and making various updates so search engines better understand pages on Japanese by Example, Google has decided that…most pages on the site are just not worth indexing.

One thing I’d like to do is flesh out the explanations a bit, as well as the example pages a bit. Considering that’s 99% of the site’s content, that’s a lot of work to do.

…so I’ll probably just do a few pages here and there, now and then. My focus will be on new content being more informative.

The first step was to come up with a consistent set of sections that a page can have. For example, a grammar page may have:

  • a brief summary of the grammar
  • a usage section telling more about how it’s used
  • a formation section showing how a sentence is built using the grammar
    • Japanese by Example is geared toward reading Japanese, so the formation is more about recognizing how it may appear, not to help one learn how to use the grammar in speaking and writing.
  • a further reading section linking to websites that talk about the grammar
  • a related grammar section linking to other grammar pages on the site
  • manga examples

One thing I’ve never liked is that there’s no manga example directly on the explanation pages. They’re linked to, requiring extra steps to view them. So, I finally did something about that. Up to the first three examples now appear directly on the explanation page, with any extra examples linked to as before.

I’ve also finally added the created and updated dates to explanation pages. I’ve avoided including them as I don’t want pages to look “outdated” just because they were created 5+ years ago. But I decided to make that information available and see how I like it.

(I have attempted to learn zero new kanji since my last post, but I’ve made good progress in reading Detective Conan.)

12 Likes

I’m glad you are so smart
I would not have a clue about how to make your pages be seen by the indexing bots

応援します
頑張って

7 Likes

Google does most of the work for me.

I can see how many pages of Japanese by Example are known to Google and whether or not they are indexed:

With reasons:

Crawled: “The page was crawled by Google but not indexed. It may or may not be indexed in the future; no need to resubmit this URL for crawling.”

Discovered: “The page was found by Google, but not crawled yet. Typically, Google wanted to crawl the URL but this was expected to overload the site; therefore Google rescheduled the crawl. This is why the last crawl date is empty on the report.”

I’m assuming the ones that are crawled but not indexed are due to being low content. I can manually prompt Google to queue the pages for indexing, one by one on my part. But it’s probably better to created higher quality content first.

8 Likes

It looks like really useful changes for the users, I hope it helps people find it!

5 Likes

Why do people say not to use large language model (LLM) AI for learning Japanese?

It’s due to hallucinations and other errors that the LLM’s produce.

But LLM technology and models change and improve at a fast pace.

Recently, a translation model called YanoljaNEXT-Rosetta-12B-2510 was released. I decided to try it out. I downloaded the Q6_K model, grabbed a couple of Japanese texts, and ran them through the model and some other LLM’s.

Here are the results. I’ll include :white_check_mark: if I feel it’s a “very good” translation, :ok_button: if it’s an “okay” translation, and :cross_mark: if it’s a bad translation.

Single Line Translation

Service/Model Single Line
Japanese 忙しいからこそ、休む時間を大切にしたい
Google Translate Because I’m busy, I want to cherish my rest time :ok_button:
DeepL Precisely because I’m busy, I want to cherish my time to rest. :white_check_mark:
ChatGPT Precisely because I’m busy, I want to cherish my time to rest. :white_check_mark:
Grok Fast Because I’m busy, I want to cherish my rest time. :ok_button:
Grok 4 Fast Precisely because I’m busy, I want to cherish my time to rest. :white_check_mark:
Grok Expert Precisely because I’m busy, I want to cherish my time to rest. :white_check_mark:
YanoljaNEXT-Rosetta Precisely because I’m busy, I want to cherish my time for rest. :white_check_mark:
Gemma 3 Because I’m busy, I want to cherish my time off. :ok_button:

Short Paragraph Translation

Service/Model Single Line Paragraph
Original “Hmmm! it smells like elves!” thought Bilbo, and he looked up at the stars. They were burning bright and blue. Just then there came a burst of song like laughter in the trees.
Japanese 「ふーん、エルフたちのにおいだな。」とビルボは思いました。そして空を見あげました。星々は、あかるく青くかがやいています。その時、とつぜんに、林のなかから笑い声のように歌がふきだしてきました。
Google Translate “Hmm, that’s the smell of elves,” thought Bilbo. :white_check_mark: He looked up at the sky, :ok_button: where the stars were shining bright blue. :ok_button: Suddenly, a song like laughter erupted from the woods. :ok_button:
DeepL “Hmm, the scent of elves,” thought Bilbo. :white_check_mark: He looked up at the sky. :white_check_mark: The stars shone bright and blue. :white_check_mark: Then, suddenly, a song burst forth from the woods like laughter. :ok_button:
ChatGPT “Hmm, that’s the smell of elves,” thought Bilbo. :white_check_mark: Then he looked up at the sky. :white_check_mark: The stars were shining brightly and blue. :white_check_mark: At that moment, suddenly, a song burst out from the forest like laughter. :white_check_mark:
Grok Fast “Hmm, the smell of elves,” Bilbo thought. :white_check_mark: He looked up at the sky. :white_check_mark: The stars were shining brightly and blue. :white_check_mark: Then, suddenly, a song burst forth from the woods, like laughter. :ok_button:
Grok 4 Fast “Hmm, that’s the scent of the elves,” thought Bilbo. :white_check_mark: And he looked up at the sky. :ok_button: The stars were shining brightly and blue. :white_check_mark: At that moment, suddenly, a song like laughter burst forth from within the woods. :white_check_mark:
Grok Expert “Hmm, that’s the smell of elves,” thought Bilbo. :white_check_mark: And he looked up at the sky. :ok_button: The stars were shining brightly and blue. :white_check_mark: At that moment, suddenly, a song like laughter burst out from within the forest. :white_check_mark:
YanoljaNEXT-Rosetta “Hmm, I smell elves,” thought Bilbo. :ok_button: Then he looked up at the sky. :white_check_mark: The stars were shining brightly and blue. :white_check_mark: At that moment, suddenly, a song burst out from deep within the forest, like laughter. :white_check_mark:
Gemma 3 “Hmm, the smell of elves,” thought Bilbo. :white_check_mark: And he looked up at the sky. :white_check_mark: The stars were shining brightly and blue. :white_check_mark: Then suddenly a song like laughter came from within the forest. :white_check_mark:

Note: I rated the translations harshly based on the Japanese text. I only included the source text for comparison.

Overall, on this extremely small comparison, ChatGPT (free account) did the best, but I can’t really complain about any of these.

The “weakness” (and strength) of YanoljaNEXT-Rosetta is that it’s only a translation model, so I can’t ask it to break down and explain the grammar, something ChatGPT and Grok are decent at.

Edit: I didn’t include any Google LLM’s in the test, but it’s worth noting that YanoljaNEXT-Rosetta is based on Google’s gemma-3-12b-pt model.

Edit 2: I downloaded gemma-3-12b-pt-qat and added it to the results.

9 Likes

Useful and very interesting - thank you.

Considering your ratings of:

  1. Because I’m busy, I want to cherish my rest time
  2. Precisely because I’m busy, I want to cherish my time to rest.

isn’t #2 more accurate but #1 more natural English?

Related comment - I chatted with ChatGPT on a Japanese grammar point: about
bakari vs. ta tokoro

ChatGPT made a basic mistake: “急いが” instead of “ 急いだ “
and admitted / clarified it when I pointed it out =>

you’re absolutely right to notice that the “が” in 急(いそ)が___ looks suspicious, and that the correct verb form should indeed be 急いだところで (isoida tokoro de), not isoiga tokoro de.

It seems very good at explaining and giving examples, especially at my level (high N4, very low N3), but I still feel it’s necessary to consider that it could be mistaken.

3 Likes

Yes, I would say so.

A translation model should aim for more natural English. But if I’m using one as a learner, I want something more literal. I wonder how the models would respond to asking for more literal versus natural-sounding translations.

Let’s find out!

Source text:

お日さまがすこし西へかたむきかけたころから、キキは、コキリさんのつくってくれた新しい黒い服を着て、鏡の前で前をむいたりうしろをむいたり、大さわぎです。足もとでは黒猫のジジも負けてはいられないというように、横から鏡をのぞきこんでは、体をのばしたり、ちぢめたりしています。かと思うと、ふたりしてコキリさんのほうきに乗りこんで、ちょっと横をむいて気どってみたりしています。

Prompt 1: Please provide a very literal English translation of this text.
Prompt 2: Please provide a natural-sounding English translation of this text.

Model Literal Natural
Gemma 3 The sun was a little west of the time, and Kiki was wearing a new black suit made by Kokiri in front of the mirror. The cat Gigi is also looking at the mirror from the side and stretching or shrinking his body. Then they both ride on Kokili’s broomstick and look sideways to see if it looks good. As the sun began to set a little bit west, Kiki was wearing her new black dress made by Kokiri and posing in front of the mirror. She turned around or looked at herself from behind with great excitement. On the ground, the black cat Gigi also couldn’t be outdone, looking into the mirror sideways and stretching or shrinking his body. Then suddenly, they both jumped onto Kokiri’s broomstick and posed a little bit to one side.
Note: This one completely lost the turning-around portion.
ChatGPT From around the time when the sun began to lean a little toward the west, Kiki, wearing the new black clothes that Kokiri-san had made for her, was facing forward and backward in front of the mirror, making a big commotion. At her feet, the black cat Jiji, as if to say he couldn’t be outdone, was peeking into the mirror from the side, stretching and shrinking his body. Then, before you knew it, the two of them together got onto Kokiri-san’s broom, and tried posing a little to the side, striking a stylish attitude. As the sun began to lean a little toward the west, Kiki put on the new black outfit that Kokiri had made for her. She stood in front of the mirror, turning this way and that, making quite a commotion. At her feet, Jiji the black cat seemed determined not to be outdone—peeking into the mirror from the side, stretching and shrinking his body. Then, before long, the two of them climbed onto Kokiri’s broom, striking poses and tilting their heads just so, pretending to be stylish.
Grok Fast From the time when the sun began to tilt slightly toward the west, Kiki puts on the new black clothes that Kokiri-san made, standing in front of the mirror, turning to the front, turning to the back, making a big fuss. At her feet, the black cat Jiji, as if not wanting to lose, peeks into the mirror from the side, stretching its body or shrinking it. Then, thinking so, the two of them ride on Kokiri-san’s broom, turning slightly to the side and striking a pose. As the sun began to tilt slightly toward the west, Kiki put on the new black dress that Kokiri-san had made for her and made a big fuss in front of the mirror, turning this way and that to admire herself. At her feet, Jiji, the black cat, wasn’t about to be outdone, peeking into the mirror from the side, stretching his body long or curling up tight. Then, in a flash, the two of them hopped onto Kokiri-san’s broom, striking a pose with a slight turn to the side, acting all cool and composed.
Grok Expert From around the time when the sun began to tilt a little toward the west, Kiki, wearing the new black dress that Kokiri-san had made for her, is making a big fuss in front of the mirror, turning to the front or turning to the back. At her feet, the black cat Jiji, as if saying he cannot be outdone, is peeking into the mirror from the side, stretching his body or contracting it. And then, the two of them get onto Kokiri-san’s broom together, turn a little to the side, and try striking a pose or something. From around the time the sun started dipping a little toward the west, Kiki put on the new black dress that Kokiri had made for her and was making a huge fuss in front of the mirror, turning to check the front and then the back. At her feet, her black cat Jiji—determined not to be outdone—peeked into the mirror from the side, stretching out his body and then scrunching it up. The next thing you knew, the two of them would hop onto Kokiri’s broom and strike a pose, tilting their heads slightly to the side.
YanoljaNEXT-Rosetta As the sun began to tilt slightly westward, Kiki, dressed in her new black clothes made by Kokiri-san, was making a great fuss, turning back and forth before the mirror. Below her feet, Jiji, the black cat, didn’t want to be left out either, peeking over the side of the mirror and stretching or shrinking his body as if to say, “I can’t be outdone.” Then, both of them would climb onto Kokiri-san’s broomstick and pose slightly turned sideways. As the sun began to dip slightly towards the west, Kiki was making quite a fuss in front of the mirror, wearing her new black dress made by Kokiri-san, turning around and looking back at herself. At her feet, Jiji the black cat didn’t want to be outdone either, peeking into the mirror from the side, stretching and shrinking his body. Then, both of them would climb onto Kokiri-san’s broomstick and pose a little by turning their heads to one side.

I feel like none of them really landed the “literal” aspect. But it’s interesting to see the attempts.

It’s also worth noting that Gemma 3 and YanoljaNEXT-Rosetta are running locally on my computer (16 GB of RAM + 16 GB of VRAM), so they are vastly more limited than ChatGPT and Grok.


One way to help reduce (not eliminate) basic mistakes is to include something like this in your prompt:

“Utilize Japanese websites that explain this grammar as a source of information.”

Again, not perfect, but it can help.

But this is the most important part:

I still feel it’s necessary to consider that it could be mistaken.

Keep in mind also that plenty of humans make mistakes in explaining things, so learners will always pick up incorrect information that they’ll (hopefully) discover later on down the line.

I wouldn’t rely on ChatGPT or Grok to teach me Japanese, but having it source English and Japanese websites about the grammar does increase my confidence.

ChatGPT on ばかり vs 〜たところ

(At one point, ChatGPT stopped giving English translations of sample sentences, so there’s room to improve the prompt there.)

Grok Expert on ばかり vs 〜たところ

Between these two links, I like Grok Expert’s output better, but both can be improved further with a better prompt.

10 Likes

Recent Coding Expeditions


Mokuro

I’ve been toying with running Mokuro with an LLM that can OCR text.

So far, none of the models I can run locally (16 GB VRAM) can produce usable results.


Manga Kotoba

Build Processs

My build process for my website Manga Kotoba was terrible.

When I first started the site, I was new to Node.js and the AdonisJS framework.

As I was learning as I go (and wasn’t using an LLM for getting information on how to do things right), my process was:

  1. Sync code files to server.
  2. Build files on server.
  3. Restart server, causing downtime.
  4. Hope something didn’t break on the server that’s working locally.

The recently updated process is:

  1. Build files locally.
  2. Sync build to server.
  3. Start new build server.
  4. Switch from old build server to new build server, without downtime.
  5. Stop old build server.
  6. Hope something didn’t break that I missed locally.

Steps 1-5 are now a single script to run.

I have been working on creating more automated tests to help reduce the chances of things breaking. I just need to ensure I run them before doing a sync to live…

Query Optimizations

A few weeks ago, I finally found what was causing some really bad query performance that would sometimes take the site down for a while.

As it turns out, the way I was using views for filtering vocabulary lists was causing a lot of unnecessary work when users marked words as known, then viewed a lot of series (such as navigating through the browse pages).

E-mails to Users

I recently implemented the “password reset” option that I’ve had on my to-do list for a year and a half.

I originally intended to also implement a “e-mail user on sign-up and make them confirm their account”, but I found an easy method to determine with extremely high confidence whether an account is a legit account or a bot. If I’m 100% certain it’s a bot, I can now easily delete it.

Why is it important to delete bot-created accounts when they don’t do anything?

Having an accurate count of users gives me a bigger feeling of responsibility for making sure the site is up and I’m not breaking things.

BookWalker Screenshot Automation

The main source of content for Manga Kotoba is from time-limited free volumes.

I normally source these from Kobo, but sometimes Kobo doesn’t have a volume free that BookWalker does.

I have a script for automating downloads from BookWalker, but it’s a bit of effort to use.

Solution? Replace it with a minimal interface:

(I made good use of Claude Sonnet 4.5 for helping write the code.)

Streamlined Processing

Adding new volumes to Manga Kotoba used to mean running multiple scripts, navigating through folders for content check, and seeing if there’s furigana, and so on.

I had Claude Sonnet 4.5 convert my Python scripts to TypeScript and integrate them directly into my admin interface, then I handled the cleanup from there.

Discord

I’ve slipped a Disord link onto Manga Kotoba’s navigation menu (which some users will have hidden).

I don’t really advertise things much, but this will be an alternate place where people can point out bugs, suggest features, and contribute content, for both Manga Kotoba and my other Japanese language website Japanese By Example.


BookWalker Volume Downloader

Streamlining downloading from BookWalker for my own personal use is nice and all, but I’d love for people to be able to download their purchases in a more streamlined manner in hope that I’ll get more Mokuro output contributions for Manga Kotoba.

Granted, Manga Kotoba’s contribution page is currently not linked to on the site and it only supports importing from Kobo at the moment. That should be one of my upcoming updates, to make it more accessible and usable.

So I asked Claude Sonnet 4.5 to help out a bit.

It chose some inferior methods of implementing things, so I made sure to review everything it wrote and prompted it to make specific improvements.

The code can now be run as a UserScript:

The interface is fairly simple:

Once you have the correct settings in the viewer and are on page 1, all you need to do is click a button and wait for it to finish.

11 Likes