OrangeCrumbs

How I hijacked my Hacker News habit to learn Spanish

I have been learning Spanish intermittently for several years, using a bunch of different methods. Eventually I settled on reviewing flashcards, mostly in Anki. The problem was that I would often forget to open the app. The cards would pile up, which made it even harder to open, and the usual cycle of procrastination would set in.

So I started experimenting with ways to fight this sad state of affairs.

Experiment one: force myself to review

I set up a phone block that would only unlock after I reviewed some cards. I soon realized that it was too annoying and disruptive, especially when I needed to use the phone quickly. I would dismiss the card window or do a superficial review just to get the required clicks.

Experiment two: put cards in the feed

Next I tried something less disruptive. My idea was to inject cards into my X feed and show them in the normal flow of posts. Both are mostly text, so I was already in reading mode.

But after playing with a few prototypes, I could not get the flow right. I would swipe past the cards without really reviewing them. They still felt like obstacles between me and the next post, and they were too easy to ignore. X also changes often, so keeping the integration working was taking too much time.

Experiment three: use the pause between Hacker News stories

Hacker News turned out to be a better fit for three reasons:

  1. I already had an HN reader that I built for myself, so I controlled the interface.
  2. HN is primarily text, with a reading mode that suits flashcards.
  3. Most importantly, the way I read HN contains a natural break.

In my reader, opening a story shows its comments first. I browse the discussion for a while, then return to the story list to choose something else. That moment between leaving one discussion and selecting the next story is where I decided to show a flashcard.

It worked surprisingly well. The card does not interrupt a story I am reading, and it is not a toll blocking something urgent. It appears during a pause that was already there. I genuinely started reviewing several cards at a time, without blocks or reminders.

Leaving a discussion creates the transition. The flashcard appears before the next story is selected.

The result

It has been surprisingly effective for light review and for staying in the learning flow. I now review cards almost every day. I have not noticed any new resistance to opening Hacker News, so the procrastination cycle does not kick in. Showing a card at a natural break feels very different from forcing one into the middle of another task.

How it works

HN Reader is a web-based Hacker News client that I originally built for myself. It runs as a regular website on desktop and mobile, but because I control the interface, I can change the reading flow. For example, it opens comments first and can show a flashcard when the reader returns to the story list.

A card is not shown after every click. A story or discussion has to remain open for at least 20 seconds, and at least one minute has to have passed since the previous flashcard. Even then, the card appears only when you start returning to the story list, and no more than once during the same story visit. If no card is due, nothing is shown. On mobile, the first eligible return can show a card; after that, a card appears on every second eligible return.

Decks are imported locally rather than uploaded to a server. You select an Anki .apkg file, and HN Reader unpacks it inside the browser, reads its cards and bundled media, and converts them into a simpler internal format. Before a card is stored or displayed, its HTML and styling are sanitized. Scripts and potentially unsafe elements are removed, remote media is blocked, and only supported images and audio included in the deck are retained. The original .apkg file is not kept.

The imported cards, media, and review history are stored locally in the browser. Reviewing is similar to Anki: see the prompt, reveal the answer, and grade your recall. However, HN Reader does not reproduce Anki's scheduler exactly. There are no accounts or synchronization yet, reviews do not flow back into Anki, and each browser maintains its own deck and review history.