Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
brainburns-dev
7 лет назад

Я неправильно учу английский и базовая модель BrainBurns


Здравствуйте, с этой статьи я начну описание архитектуры моего веб-приложения BrainBurns. Как я уже говорил, BrainBurns - это система интервальных повторений. Чтобы дальше понятнее было, нужно рассказать что вообще такое система интервальных повторений, или по-английски Spaced Repetiton System (SRS).

Системы интервальных повторений

Итак, SRS - это, в первую очередь, методология запоминания. Запоминать можно что угодно, но обычно запоминают пару вопрос-ответ. Например, если мы хотим запомнить названия столиц всех стран, то нам нужно запоминать пары (Страна - Название столицы). Если же нам нужно выучить иностранные слова, то запоминать будем пары (Слово - Перевод).

Я хорошо помню, когда я учил английский в школе, я читал разные простенькие книжки и все незнакомые слова записывал в тетрадку. Страницы тетради были разделены на 3 колонки. В первую колонку записывалось само слово, во вторую - транскрипцию, а в третью - перевод. Каждую страницу я зубрил 3 дня и разумеется ни хрена не запоминал.

Как бы я учил слова, если бы в те времена знал о системе интервальных повторений? А вот так: вырезал бы из картона карточки и использовал бы их вместо тетради - на одной стороне писал бы новое слово, а на другой - перевод. Такую карточки еще называют флэш-картой.

Итак, что такое карточки понятно, но как же мне их использовать? А использовать их просто. Например, сегодня я узнал десять новых слов. Эти слова я записываю на карточках, складываю их в стопку и называют эту стопку “невыученные слова” (карточки первого уровня). Все слова первого уровня нужно проверять на запоминание (делать ревью) раз в сутки. Если мы вспомнили перевод слова первого уровня через сутки, это слово переходит на следующий (второй) уровень. Эти уровни показывают, насколько хорошо мы выучили конкретное слово. Если слово через сутки мы не вспомнили, оно остается на первом уровне и опять будет проверено через сутки. А вот слова второго уровня будут проверены уже через трое суток. Как только будет допущена ошибка при проверки карточки, эта карточка переносится на первый уровень и будет проходить через все уровни снова. Таким образом, чтобы повышать “уровень запомненности” слова, его нужно вспоминать через все более длительные временные интервалы.

Тут возникает резонный вопрос: зачем вообще заморачиваться с уровнями и увеличивающимися интервалами? Дело в том, человеческий мозг работает так, что лучше всего мы запоминаем то, что повторим перед самым забыванием. Объясню на примере. Представьте, что мы запомнили, что столица Мадагаскара - это город Антананариву. Если через день нас спросят что за столица у Мадагаскара - мы с уверенностью дадим правильный ответ. А вот если нас спросят не через день а только через три дня, ответ мы вспомним, но уже с трудом. Через неделю правильно ответить мы уже не сможем, так как это знание выветрится у нас из памяти. Таким образом, чем больше времени прошло с последнего повторения, тем больше шанс на то что мы не вспомним то что выучили. Это называется “кривая забывания”.


Так вот, посредством эмпирических экспериментов было выяснено, что если повторить то, что мы начали забывать, незадолго до момент полного забывания, это знание хорошо отложится у нас в памяти и следующий момент забывания будет уже через гораздо больший промежуток времени.

Используя методологию интервальных повторений при изучении слов иностранного языка, у нас появляется возможность исключить легко запоминающиеся слова из ежедневного повторения и, таким образом, сфокусироваться на трудных. Такая система позволяет учить слова (и не только слова) очень эффективно, однако одной ее недостаточно.

Базовая модель BrainBurns

Как вы уже могли догадаться, ключевой элемент SR системы - это карточка.

В доменной модели BrainBurns карточка - это сущность (entity), обладающая следующими атрибутами: слово, перевод слова, уровень выученности, время следующего повторения. Хороший пример, когда объект реального мира идеально ложится на программную модель.

Помимо карточки в доменной модели BrainBurns еще есть сущность колода (desk). Колода - это просто контейнер для карточек. Для чего колода вообще нужна? Главным образом, для того чтобы дать пользователю возможность организовать изучаемые карточки. Например, в одной колоде будут находиться слова английского языка, в другой - испанского и тому подобно. Можно разделять карточки по тематике. Чтобы хранить информацию о том, какая карточка какой колоде принадлежит, нужно добавить в класс карточки еще один атрибут - ID колоды (deskId).

Осталось добавить еще один недостающий элемент в систему - пользователя (user). Именно пользователь владеет колодами, в которых и содержатся карты.
Для того чтобы связать колоду с пользователем, в колоду добавим атрибут имя пользователя (username).

Как видите, модель классов в BrainBurns очень простая. В следующей статье я расскажу о самой архитектуре этого веб-приложения.

0
0.486 GOLOS
На Golos с February 2017
Комментарии (2)
Сортировать по:
Сначала старые