Anki

Anki
Скріншот Anki 2.0.8 на Mac OS X
ТипРозподілені повторення
АвторДеміен Елмсd
РозробникиДемієн Елмс та інші
Операційна системапідтримуванні Python (частково, ankiqt підтримує: Microsoft Windows, Mac OS X, Linux, FreeBSD); є спеціальні версії для мобільних пристроїв.
GNU фреймворкQt
Мова програмуванняPython з PyQt
Ліцензія
  • 2.0:
    • GNU AGPL 3+;
    • платна пропрієтарна (автору дається 3-пунктова ліцензія BSD на зміни в офіційний код).[1]
  • 1.2.x: GNU GPL 3+;
Онлайн-документаціяdocs.ankiweb.net/#/(англ.)
Репозиторійgithub.com/ankitects/anki
Вебсайтapps.ankiweb.net

Anki (яп. 暗記 — запам'ятовування) — безкоштовна програма з відкритим кодом для полегшення запам'ятовування слів, виразів і будь-якої іншої інформації за допомогою розподілених повторень. Алгоритм SM2, створений для SuperMemo наприкінці 1980-х років, є основою розподілених методів повторення і покладений в основу роботи програми. Пізніше алгоритм було модифіковано, що дозволило визначати пріоритети в картах та показувати картки в порядку їх терміновості. У версії 23.10 було додано новий алгоритм FSRS, який користувачі можуть ввімкнути у налаштуваннях.[2] Картки представляються за допомогою HTML та можуть включати текст, зображення, звуки, відео, та математичні вирази в LaTeX. Картки разом із статистикою користувача зберігаються у відкритому форматі SQLite.

Функції

Основу бази даних Anki (колекції), що зберігаються в форматі SQLite, складає список записів (notes; до версії 2.0 — «фактів»). Кожний запис є набором полів зі словами, визначеннями, вимовами і т. д., з яких за замовчуванням в базі шаблонам автоматично створюються карточки. Поля можуть складатися з HTML зі стилями, зображеннями, звуками (з версії 0.9.9.6 підтримується запис), відео (з версії 0.9.9.8.2) і LaTeX.

Anki може працювати так, щоб різні карточки, згенеровані з одного запису (наприклад, «картинка → слово» і «слово → картинка»), не з'являлися підряд (у версії 1.x час налаштовується; з версії 2.0.21 вони за замовчуванням відкладаються на завтра, відкладання можна повернути на раніше). Доступне для користувача налаштування і багато інших змінних[3].

Якщо при оцінці відповіді допущена помилка, оцінку можна скасувати[3].

Доступна деяка кількість статистики у вигляді цифр і графіків[3].

Були спеціальні функції для вивчення японської мови — наприклад, при введенні в полі «питання» кандзі в полі «відповідь» може автоматично вводитися відповідна фуріґана. З версії 0.9.9.8.2 функції для японської і китайської мов винесені в плагіни.

Anki підтримує синхронізацію із сервером, реєстрація на якому безкоштовна. Розміщуючи «колоду» карток на сервері, її можна синхронізувати з декількома пристроями або заучувати, використовуючи сайт (AnkiWeb).[4] З версії 2.1.57 можна синхронізувати картки на власному сервері.[5]

Алгоритм

Перші версії Anki використовували алгоритм SM5. Однак, зі слів авторів, виявилося, що алгоритми SM3 і новіші, в яких, на відміну від SM2, відповідь на одну картку впливає на час появи інших, схожих на неї, насправді мають значні недоліки в порівнянні з SM2, в якому при відповіді встановлюється проміжок тільки для даної картки. Це особливо помітно при нерегулярному зверненні до програми[3]. Тепер Anki використовує алгоритм, що ґрунтується на SM2[6].

У версії 23.10 було додано новий алгоритм FSRS, який користувачі можуть ввімкнути у налаштуваннях.[2] Станом на січень 2024 року він перебуває у фазі активного тестування через що користувачі повинні вмикати його самостійно у налаштуваннях. У майбутньому планується змінити стандартний алгоритм Anki на FSRS.

Версії для різних пристроїв[7]

Офіційні версії, що підтримуються автором:

  • Anki (на основі PyQt; також називається «AnkiDesktop») — основна версія, для настільного комп'ютера (Windows, Mac OS X, Linux, FreeBSD; можна запустити на Maemo)
  • AnkiMobile — мобільні додатки тільки для iOS із закритим вихідним кодом. Додаток платний (фінансує розробку Anki)
  • AnkiWeb — вебдодаток для повторень і хостинг колод і додатків (плагінів)

сумісні:

  • AnkiDroid — безкоштовне мобільний додаток з відкритим вихідними кодом для Android-пристроїв, від інших авторів.[8] Дозволяє редагувати картки, а також використовувати інший сервер синхронізації.
  • AnkiUniversal — універсальний додаток Windows (Універсальна платформа Windows|UWP) для пристроїв на базі Windows 10[9]. Його можна встановити на ПК, приставки Xbox, смартфони на Windows 10 Mobile, окуляри.

Історія

5 жовтня 2011 року автор програми оголосив днем п'ятиріччя Anki, так як найстаріше зі знайдених їм згадок про неї відносилося до 5 жовтня 2006 року[10] (це також дата першого запису у файлі ChangeLog програми для інтервальних повторень на основі Emacs, Flashcard).

6 жовтня 2012 року вийшла версія 2.0.0.

  • Замість окремих колод (файл + каталог з медіа) тепер використовується одна колекція (файл БД + каталог з медіа) з деревоподібною структурою колод, між котрими легко переміщувати картки.
  • Питання і відповіді генеруються програмою за шаблоном.

Примітки

  1. LICENSE з 2 RC2
  2. а б Deck Options - Anki Manual. docs.ankiweb.net. Процитовано 12 січня 2024.
  3. а б в г Review of Mnemosyne vs. Anki vs. SuperMemo. Nihongo Pera Pera (Fluent Japanese) (англ.). Архів оригіналу за 10 березня 2012. Процитовано 25 жовтня 2015.
  4. Syncing with AnkiWeb - Anki Manual. docs.ankiweb.net. Процитовано 12 січня 2024.
  5. Sync Server - Anki Manual. docs.ankiweb.net. Процитовано 12 січня 2024.
  6. Damien Elmes. What spaced repetition algorithm does Anki use?. Anki 2.0 User Manual (англ.). Архів оригіналу за 2 лютого 2013. Процитовано 25 жовтня 2015.
  7. Damien Elmes. Mobiles and other devices. Anki - powerful, intelligent flashcards (англ.). Архів оригіналу за 26 квітня 2011. Процитовано 25 жовтня 2015.
  8. AnkiDroid на Google Play. Архів оригіналу за 22 жовтня 2018. Процитовано 25 жовтня 2015.
  9. Anki Universal (20.10.16). Anki Universal в Магазині Майкрософт. Anki Universal.
  10. Damien Elmes. Happy birthday, Anki!. Група Anki Help на Google Groups (англ.). Архів оригіналу за 20 жовтня 2011. Процитовано 28 жовтня 2018. {{cite web}}: Недійсний |deadurl=yes посилання не працює: немає групи з назвою "ankisrs" (довідка)

Посилання