Как запомнить что-нибудь навсегда?

Привет, это история о разработке самого удобного приложения для зубрежки английских слов инди-разработчиком. Еще одно?!
– Да, но с GenAI особенностями и алгоритмами!

TLDR: Внизу ссылки и видео

Меня зовут Саша Ершов
я мобильный разработчик с 2012, в базе Android, Lead

Часть 1.
Предыстория, теория
и исследования

В ноябре прошлого года я пробую жить в Дубае и решаю подтянуть свои свой словарный запас. Тогда я начинаю перебирать приложения для изучения английских слов и остановился на Анкиэто легендарный комбайн для зубрежки всего: слов, иероглифов, названий мышц и костей – всего того, где есть зубрежка. Ссылка на Вики.

Принципы Анки

Это приложение с карточками, где вам показывается слово, а вы, в свою очередь, пытаетесь вспомнить его перевод или определение. Если вспомнить не получается – нажимаете на кнопку, и перевод появляется.

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

Первые программы с таким принципом стали появляться
в конце 80-х годов

Другими словами, вам показывается изучаемое слово, а вы пробуете вспомнить его перевод. Если вспомнить удается, то слово будет вновь показано для проверки уже через три дня, потом через восемь, двадцать два и так далее. Но если вы забыли – цепочка сбрасывается и начинает строиться заново с первого дня.

Как запомнить что-нибудь навсегда?

Слово проходит такую цепочку, постепенно увеличивая интервал для следующего повторения. При таких повторениях вы запоминаете слово на 100%. Правда, со временем удержать его в памяти становится сложнее. Но если вовремя напоминать слово, то постепенно оно запомнится навсегда. Если же повторение пропустить - слово снова забывается.

Алгоритм, заложенный в Анки, называется SuperMemo2. Интересно, что сейчас существует уже 18-ая версия этого алгоритма. В настоящее время идут споры Anki vs. SuperМemo об эффективности подходов в зубрежке. Я на стороне практического применения. Люди оказались не готовы тренировать слова чаще раза в день. Поэтому Анки и многие другие приложения продолжают использовать именно вторую, более старую, версию.

В любом случае постоянство важнее алгоритма.

Для великих дел необходимо
неутомимое постоянство

Вольтер, французский философ-просветитель XVIII века,

Как учить понятно,
но что учить?
Слова, но какие?

Я решил поискать и пройти тесты на знание количества слов. Мой уровень на старте показывал 4500 слов. Далее, раз в месяц, я заново проходил эти тесты. Моя личная практика показала, что подобные тесты работают с погрешностью ±500-1000 слов.

Слова важнее грамматики, ими можно говорить как тегами, и все-равно будет ипонятно: "Я ходить гулять девушка завтра", "Я документ терять" – звучит неправильно, но понятно, о чем речь.

Частоты слов и эффективность

Я нашел список слов распределенных по частоте использования англичанами в речи.

  • Начинать учить следует с ежедневных «he» и «she».
  • Далее перейти к словам посложнее «respect» и «ticket».
  • А потом еще более редким «refusal» и «pave» для эффективности.

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

График частоты употребления к словам
График частоты употребления к словам

Так вышло, что я не знал слово «vast», а в упомянутом выше списке оно было в первой 1000 слов.

И было достаточно много неизвестных мне, но частых слов до начальной точки. Я пробежался и тоже добавил их в обучение.

Обожаю экономить время: )

Позже я руками пролистал все 16.000 слов и исключил из изучения все уже известные мне слова, чтобы не учить их и не тратить на них время. Делал я это со скоростью 1000 слов в час.

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

У всех изучающих разные начальные точки: кто-то останавливается на «he», кто-то на «disturb». После этой точки изучающий знает уже мало слов. Они ему встречались редко, и он их не смог запомнить.

Как запомнить что-нибудь навсегда?

Процент изучающих английский язык и количество известных им слов по уровням A1-C2 примерно варьируется так:

  • Уровень A1, Начальный: ±10-20% и знает 300-500 слов
  • Уровень A2, Базовый: около ±20-30%, 600-1000 слов
  • Уровень B1, Средний: около ±30-40%, 1000-2750 слов
  • Уровень B2, Выше среднего: около ±15-25%, 2750-4500 слов

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

  • Уровень C1, Продвинутый: около ±5-10%, 5000-7000 слов
  • Уровень C2, Свободное владение: около ±1-5%, 8000+ слов
Как запомнить что-нибудь навсегда?

Интересно,
что люди прибавляют
около 2500 слов в год
в родном языке

Результат, 10.000 слов

Или +5500 новых слов. Столько стали показывать у меня тесты после 6 месяцев изучения. Я учил 30 новых слов в день, или +900 в месяц, по 30-60 минут в день после завтрака.

Я ощутил, что после 60 минут занятия слова поддаются изучению уже тяжело. Спустя 40 мин я мог чувствовать по своему недовольству, что уже «пересидел».

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

Проблема

Анки – это фантастический комбайн с миллионом функций. Её плюс – её проблема. Чтобы начать учить слова, нужно многое сделать и во многом разобраться: пройти тесты, найти и установить базу, отыскать эту начальную точку, включать и выключать слова. Плюс ко всему этому в Анки не понятный дизайн и странная статистика.

Да, существуют и другие приложения - я их отсмотрел и попользовался. Но все они казались сложными и тоже мало понятными, или были не лучше Анки. Quizlet - хорошее приложение, но проблему, как у меня, не решало.

Marvel — чудо

Пока я учил слова, то делился своей статистикой и разными интересными встретившимися мне словами в запрещенном Инстаграм. И подписчики спрашивали, что это за приложение. Я рассказывал и давал ссылки.

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

<p>Основной скрин Анки. А еще я впервые видел такую монетизацию: Анки стоит 2000₽ для Айфона, для Андроида – 0₽</p>

Основной скрин Анки. А еще я впервые видел такую монетизацию: Анки стоит 2000₽ для Айфона, для Андроида – 0₽

Я даже расстроился, когда понял, что нет простого приложения для зубрежки слов. Мне представлялось, что рынок в этой сфере мертв, что люди хотят DuoLinguo, Лингва-Лео, но они больше про грамматику. Есть похожие и тоже хорошие reWord, но просто мне ничего не зашло, только сложный и старый Анки. Как-то так и родилась идея приложения, простого, с простым входом, для зубрежки слов.

Часть 2. Приложение

И я подумал, нужно делать свое новое приложение, с вот этим всем. И сел, технологию взял обкатанный Flutter. Знаю, пишу, пробовал Kotlin Multiplatform. Но там пока много всего в будущем.

На работе мы перешли на Flutter – он хорошо показал себя. Я год сидел на нем, отлично его знаю и быстро пишу. И как говорят фотографы: самый лучший фотоаппарат, тот который у вас есть. Плюс Flutter позволил выпускать сразу на iOS и Android.

За два месяца и 30.000 строк кода мне удалось написать первую версию. Я сразу стал обкатывать ее на пользователях и себе.

Частотный список слов

Сначала я распотрошил проверенный и неплохой список слов с Анки и попробовал с ним. Но частоты оказались не совсем правильными.

Тогда я стал искать Гугловые частоты употребления слов в книгах NGram и просто кем-то собранные индексные базы для машинного обучения на 300k слов улучшил базу частотности слов. Плюс посмотрел частоты от Corpus of Contemporary American English (COCA). COCA, кстати, пишет, берите наши частоты и указывайте нас и пугают судом своим «пауком» который по ночам сканит интернет на свои списки.

Я миллион раз пересортировал базу слов, прокачал навыки Excel вместе с chatGPT и словил первые миграции БД для пользователей. Все пока хранится локально. Я просто не мог сказать пока еще не многочисленным пользователям: «Cорян, нужно заново все начать». У них уже шло обучение, и мне было бы жаль потерять их прогресс.

Как запомнить что-нибудь навсегда?

Это изменения по коду на гите, почти книга. Но 200k строк можно выкинуть, это 12 полных перезаливов базы данных из 14.000 строк.

Как запомнить что-нибудь навсегда?

Генерация изображений

В процессе пришла идея «нагенерить» картинок нейросетью. Я попробовал запустить Stable Diffusion на Mac. Для меня стало открытием, что кто угодно может запустить ее у себя.

Заработало, но на моем M1 один запрос генерировался по 2-4 минуты, не хватало оперативки и архитектуры.

А нужно было минимум 4000 слов и запросов – это достаточное языковое ядро для комфортных разговоров с другими людьми.

Я даже думал купить или арендовать игровой ПК на Винде с мощной видео-картой за 6000₽ в месяц.

Но помогли парни, бывшие коллеги, они подняли свою Stable Diffusion и уже дообучили её. Дали мне пару раз бесплатно API-доступ на пару дней к своему серверу. И я скриптами за пару ночей я сгенерил 4500 картинок.

Сначала я пробовал генерировать по слову, но есть проблема с абстрактными словами, типа «расстроенный» или «мудрость». Нейронка не цепляется за то, что нельзя изобразить. Поэтому я перешел на примеры и на само слово в запросе.

Художественные стили и раскраска брались случайно из сета и подставлялись в запрос. Но позже все равно пришлось отбирать их руками со скоростью 1000 картинок в день.

Примеры генераций. Было 2 стадии и первую сразу видно: )

Как запомнить что-нибудь навсегда?

Иногда эти картинки получались очень странные. Сначала я думал, что для слова конь обязательно нужен конь. Но попробовав, я даже кайфанул с того что они такие.

Для запоминания нужна необычность, так мозгу проще связывать новые абстрактные слова.

Плюс в таком подходе задействовано больше каналов восприятия и визуальный и аудиальный.

Тестирование и продакт-девелопмент

Параллельно с разработкой я продолжал тестировать и рассказывал в запрещенном Инстаграм о продвижении разработки. Сейчас есть около десяти активных пользователей. Эти люди – моё золото и мои консультанты! Десять это не ноль и это означает, что идея рабочая. Они подсказывали, что неудобно и что не работает, а что выходит классно.

Как запомнить что-нибудь навсегда?

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

Я залил его в Рилс, чтобы проверить досматриваемость и интересность. По статистике на вообще не "прогретых" людей он получился хорошим. Необходимо было сократить его до 45 секунд и перенести самое важное в первые 15 секунд.

Так почему еще одно приложение про английский?

Считается, что первые стартапы лучше делать не в «голубом» инновационном и бесконкурентном рынке: людям сложно объяснять новые идеи. Советуют идти в понятные «алые» и высококонкурентные рынки, типа психологии, эзотерики, похудения и английского. В этих сферах всегда есть спрос. И вы можете откусить свою долю от пирога. К тому же явных лидеров именно в изучении слов нет.

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

Например, я выкинул первоначальный тест. Он оказался не рабочим: люди не знали слов «chair» и «blue», а тест выдавал уровень B2. Они думали, что знают и самообманывались. Тест врал на начальной точке, но тем не менее неплохо показывал количество известных слов.

Планы

Сейчас в планах собрать 1000 активных бесплатных пользователей и обратную связь от них. И уже далее приходить к экспериментам с платными подписками. Хотя функционал готов.

Нужно заказать редизайн UI. Мой если показываешь про-дизайнерам раз***ывают. Но вкусовщина, сейчас UX главнее: )

И хочется сделать активности с друзьями. Обсуждения слов, соревнования и челенджи, как круги в часах Apple. Моя жена когда-то так увлеклась этим, что мы с ней в 23:30 ходили и закрывали активности, чтобы она смогла обыграть своих друзей. Это будет интересно, делится и смотреть статистику друзей.

Хочется сделать необычные примеры, генерировать их chatGPT. И перерисовать их.

Хочется понять статистику изучения сложных слов и давать лучшие способы запоминания на анализе этой статистики.

Инвестиции

  • Месяц назад получил предложение об инвестициях из Дубая на 10М₽ за 20% компании. Ребята классные. Но им нужен ретеншн и больше пользователей.
  • В июне я подался на грант на 4М₽, жду решения.
  • И сейчас готовлю кампанию на Бумстартере на 2М₽.

Выводы

  • Я пробовал несколько раз запускаться с другими проектами. И это мой первый проект в который я абсолютно верю и вижу, что может взлететь. Я сам пользуюсь и классно видеть как пользуются.
  • Да, могут закончиться деньги, но довести до ума и успеха хочется.
  • Есть сложности с РФ рекламой и отключенными платежами в наших сторах. Кстати последнее решилось, спасибо коллеге из Черногории.
  • Есть сложности с оплатами в РФ, возвратами пользователей в приложение, багами, переводами. Но все выглядит решаемым.
  • Главное что есть необычная идея и мне стало понятно как выглядит уникальность. Есть уверенность делаю нужное, есть первые пользователи. И понятно как в будущем искать такие идеи.
  • К первым негативным оценкам привыкаешь, это золото, потому что понятно что улучшать. Хоть внутри и злишься по началу.
  • Работа над стартапом это правда не легко. Но пока это самое интересное, что я делал.
Icicle
Изучи английские слова по нейро-картинкам

Скачивайте, учите, пробуйте
Бесплатно!

Попробовать приложение:

Приложение реализует все принципы эффективности из предыстории:

  • Работающие алгоритмы
  • Необычные GenAI-картинки
  • Эффективный частотный список слов
    с третьими формами и фразовыми глаголами
  • Супер-простой Тиндер-подобный интерфейс
  • Определение уровня на входе, начальной точки
    и моментальные исключения известных слов
  • Уведомления, темы, звуки и озвучка
  • Мотивирующая статистика
  • Менеджер слов, поиск, фильтрация
  • и перерывы на цитаты Джобса и Рокки 4.

PS

  • Полная история в виде подборки из сторис в Google Фото.
  • Есть вопросы? Про разработку, сторы, инвестиции или еще какие-нибудь пишите в запрещенный Инстаграм, подписывайтесь или Телегу.
  • Есть предложения о работе и сотрудничестве, можем обсудить: )

Спасибо за внимание
Лайк если понравилось :)

UPDATE: были сложности с установкой, поправлено :)

1717
10 комментариев

Спасибо, буду продолжать задротить :)

2
Ответить

Браво!
Тот момент, когда уровень задротства на максимуме.
Интересно читать, интересный опыт.

1
Ответить

Для таких склеротиков как я)

1
Ответить

Кайфово 👍

1
Ответить

какие данные собираешь?
Почему не релизнул? чтобы все тестеры не могли его потом бесплатно использовать, когда релизная версия выйдет?

Ответить

Я тестировщикам наоборот бы бесплатно и пожизненно отдал доступ, они дают понимание что и как делать.

Не релизнул потому что пока побаиваюсь плохих отзывов и комментариев, потом просто придется пересоздавать аккаунт. А в тестовый iOS влезает 10.000 пользователей. Я хочу подотточить приложение на баги и саму ценность как продукта. Чтобы пользователи возвращались.

Сейчас все лежит в РФ сторах, туда не положить платные. Я писал в Эпл и они официально ответили, что нельзя. Я договорился с бывшим коллегой с Черногории, все оплачено, все работает, ждет своего часа :)

Выйдет думаю в ближайший месяц-полтора.

Данные об активности, возвраты в приложение, сейчас нужно добится двух заходов за неделю и завершение сессии обучения.

Плюс продумываю и облегчаю первую сессию как простую. Если пользователей сразу напрягать сильно они могут не зайти второй раз.

Ответить

nice one!

Ответить