- PVSM.RU - https://www.pvsm.ru -
Статья о программе (iOS) для запоминания английских слов методом интервальных повторений, которая учитывает ваш распорядок дня.
На хабрахабре уже несколько раз освещался вопрос о методе интервальных повторений для запоминания информации: habrahabr.ru/post/246459/ [1], habrahabr.ru/post/196448/ [2], habrahabr.ru/post/240451/ [3]. Если вкратце, то интервальные повторения — это подход к запоминанию информации, заключающийся в повторении изучаемого материала через определенные, постоянно возрастающие интервалы времени (например, через 5 минут, потом через 25 минут, потом через 2 часа и т.д.).
Примерно год назад я решил применить эту технику (интервальные повторения) к запоминанию английский слов, т.к. при чтении документации, статей на английском часто ощущаю нехватку словарного запаса. Сперва начал искать полностью готовые решения. Мне нужна была программа для мобильного телефона, т.к. он всегда со мной и я могу повторить слова в любой момент времени. Мой поиск не увенчался успехом. Программы, которые я находил, либо требовали создание базы со словами самостоятельно, либо слишком много стоили (Anki), либо имели на мой взгляд недостаточную функциональность именно в плане реализации повторений.
Не найдя готовой программы, было решено написать собственную, которая будет полностью отвечать моим требованиям:
И я приступил к написанию заветной программы. Небольшой опыт программирования под iOS уже имелся, так что с выбором целевой платформы колебаний не было. На разработку программы ушло 8 месяцев, в основном по вечерам после работы. И сейчас я, наконец-то, готов поделиться результатами с вами.
Главное отличие моей программы от аналогов — это учет вашего распорядка дня. Вы можете указать программе интервалы времени, когда не можете изучать слова: сон, обед на работе, занятие спортом и т.д. В заданные промежутки времени программа не побеспокоит вас напоминанием о необходимости повторения слов. Более того, на основе ограничений времени будет вычислено время, когда вы сможете учить новые слова. Данную особенность лучше пояснить на следующем примере. Предположим, вы задали ограничение времени для сна: 23:00-06:30 на каждый день недели. Предположим также, что интервалы повторений такие: 30 минут, 2 часа… Вы начинаете учить новое слово в 22:59, время первого повторения наступит в 23:29, второго — в 01:29. В это время вы уже скорее всего заснете, повторение будет считаться просроченным. Для предотвращения подобной ситуации программа ограничивает время для изучения новых слов (повторять слова можно в любой момент времени). Для вышеприведенного примера программа запретит изучать новые слова после 20:30.
В программе на выбор представлены несколько разных методов интервальных повторений: по Пимслеру, по Эббингаузу и др. Я не решусь судить, какой из них наиболее эффективный, но по умолчанию выбрал метод Пимслера, т.к. он использовал интервальные повторения применительно к изучению иностранных языков.
Взаимодействие с программой достаточно простое: вы видите слово, его транскрипцию и перевод. Каждое слово может быть озвучено (я использую встроенный в iOS синтезатор речи, что позволило существенно сократить размер приложения). Когда вы изучаете новое слово, вам доступны два действия: либо вы будете в дальнейшем повторять это слово, либо оно вам уже известно (не будете его повторять).
В случае, когда вы повторяете ранее изученное слово, вы сообщаете программе, помните ли вы его или нет. В соответствии с этой информацией, программа примет решение о времени следующего повторения.
Для автовладельцев предусмотрен специальный режим. Достаточно положить телефон под лобовое стекло автомобиля и включить режим проецирования (HUD): слова будут видны перед вами на лобовом стекле — вы видите как дорогу, так и слова.
Когда подойдет время для повторения слова, программа вас об этом уведомит (создаются локальные уведомления):
Для отслеживания падений приложения я встроил Crashlytics (регистрация на сайте занимает несколько недель, сервис бесплатный). Также этот сервис позволяет организовать beta-тестирование приложения. Реализовано все крайне удобно. Для себя я создал небольшую шпаргалку по добавлению устройства в список для AD HOC распространения:
Помимо Crashlytics с января этого года стал пользоваться сервисом TestFlight для бета-тестирования. Его несомненный плюс в количестве тестеров: 1000 внешних тестировщиков и отсутствие необходимости собирать udid устройств (соответственно, при добавлении нового тестировщика не нужно перекомпилировать приложение). Вот хорошая статья как пользоваться этим сервисом: iOS 8: Beta Testing with TestFlight [4]
Для сбора статистики использовал Flurry (сервис бесплатный). На данный момент меня интересует эффективность каждого метода интервальных повторений, попробую оценить ее по отношению количества нажатий на кнопки ”Помню”, “Не помню“.
Для записи возникающих мыслей по улучшению приложения, текстов справки, TODO списка я использовал сервис Google Docs: с мобильного телефона — чтобы не потерять мысль, на компьютере вечерами — просто удобно.
На иконке я хотел показать, что для запоминания слов задействуются “механизмы” памяти — нашел удачную на мой взгяд идею — человеческая голова с шестеренкой вместо
В Xcode-проекте приложения создано три цели: альфа (компилируется сразу на устройство), бета (не компилируется на устройство, приложение собирается через product — > archive и далее распространяется через сервис бета-тестирования Crashlytics) и финальная версия для магазина (во многом повторяет бета-версию, также используется для бета-тестирования через сервис TestFlight). Соответственно на устройстве могут быть установлены сразу все три версии приложения:
Чтобы эти версии можно было легко отличить друг от друга, были созданы маски Alfa и Beta для иконок (делюсь ими [7] с вами).
Система контроля версий Xcode не воспринимает пути на русском с буквой “й”. Решение: заменить “й” на “и” в названиях папок. После этого файлы успешно добавляются в систему контроля версий.
Если у вас есть не просто идея, а решение какой-либо вашей проблемы, и это решение лично для вас удобнее уже созданных — возможно ваш продукт имеет шанс на успех. Надеюсь, что мое приложение окажется для кого-нибудь полезным.
Промо-коды для приложения «Повторяй и запоминай английский слова со SpacedRepetitionApp»:
964H7HWJJKET
NL3MNNMJR3EJ
KFJPKT3NPFXY
EXJEAWL44XXJ
KTLAEF3363N3
EHPKEERT44FT
WYPKF7EE7PXW
T9JPPXYY4YWR
64T6HXLKFNHR
KMYKP7RNATYP
F4XJLT77PM9E
43T3HAXTN7L3
7KW6FWT3FJTN
PAFKMYM3XL4A
LTPWYNNE64EY
PAPM3PNTM3HW
4ATX4F6ELHA7
EAJFK39XJHTM
3PKJYLHRX7HN
6J977N49PKR6
Автор: Watchman142
Источник [8]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/ios/88016
Ссылки в тексте:
[1] habrahabr.ru/post/246459/: http://habrahabr.ru/post/246459/
[2] habrahabr.ru/post/196448/: http://habrahabr.ru/post/196448/
[3] habrahabr.ru/post/240451/: http://habrahabr.ru/post/240451/
[4] iOS 8: Beta Testing with TestFlight: http://code.tutsplus.com/tutorials/ios-8-beta-testing-with-testflight--cms-22224
[5] мозга: http://www.braintools.ru
[6] IconFinder: https://www.iconfinder.com/
[7] ими: https://yadi.sk/d/AkbEK5wXeqocK
[8] Источник: http://habrahabr.ru/post/250031/
Нажмите здесь для печати.