← Back to all notes

LERN — how it came to be

Published:

A self-hosted learning tool. Type in a topic, get a structured unit with quiz and real sources, an automatic spaced-repetition plan included.

Why this exists

I learn a lot on the side — a new language, a tool, a concept from banking because I worked there for years. ChatGPT answers were often helpful, but: no structure, no sources, no repetition. Asked the same thing three times, got three different answers.

I wanted a tool that thinks a topic through cleanly, gives me real sources, quizzes me, and then bugs me two weeks later to revisit it.

Time invested

A weekend hack as a prototype. Then several iterations over weeks. The spaced-repetition algorithm was a small research detour — ended up on a simplified SM-2 variant because the pure form felt like overkill for a one-person app.

What worked

  • Local LLM (Ollama) for generation — no token costs, no data handed over.
  • Web search runs in the background, the LLM only cites what is actually there. Hallucinations dropped noticeably.
  • The quiz actually revealing gaps I wasn't aware of. Uncomfortable and good.

What didn't

  • Source quality varies. If web search only turns up junk, the unit will be junk too.
  • First spaced-repetition version was too aggressive — I had 30 cards in my daily backlog and just ignored it.
  • The repetition-session UI took two pivots before it stopped feeling like a chore.

Where I am now

I use it for anything I want to dig deeper than surface-level into. Last topic was Postgres internals — I can now explain how the query planner does cost estimation. Two months ago I would have said "something with B-trees".