spaced repetition をやるなら、 anki が良さそう

何かを覚えるにあたっては、 spaced repetition が有効。 spaced repetition は何かというと単語帳をテストしてみて、どれぐらい覚えていたかを入力し、連続して覚えていたものは次にテストする時間を倍々に伸ばしていく手法。

長期的に使えば使うほど、また、単語帳スタックを溜めれば溜めるほど価値が高くなるタイプの手法なので、 それを利用するプラットフォームは基本的に以下の条件を見たすのが望ましい。

  1. オープンであること (互換性のあるツールが作成されるはず)
  2. 複数プラットフォームで同期できること

で、ざっくりと調べた結果、それを見たすのが anki だった。

技術仕様

anki は基本その動作デバイスのローカルデータベースにデータを保存する。 MacOS バージョンでは、その実体は sqlite3 であった。

同期は、 anki をオフィシャルに提供している ankiweb サーバーに、アップロード・ダウンロードを行って保存が行える模様。 同期ボタンを押したタイミングで、クラウドとローカルのデータベースを見比べて、なるべくよろしくデータの同期処理を行う様子。

対応するQ&A方式としては、 LaTeX を使った整形や画像など、基本的なマルチメディア対応はなされている様子。

会社運営

同期サーバーなどの維持費や、もろもろの開発費は、 anki for iOS の売上のみから賄われている様子。