Введение
Обучающая программа «L'école» (см. мою статью: «Роль данных при изучении иностранного языка» – https://habr.com/ru/articles/930868/ ) предназначена для освоения иностранного языка по методу: «Запоминание руками + интерактивный звук + чтение по слогам + буквальный контекстный перевод». Саму программу и демо-данные к ней, на разных языках, можно непосредственно скачать из: https://disk.yandex.ru/d/5yjYP4JP1aVnIw .
И, если с обучающей программой, более-менее, всё понятно, то по данным (компьютерным урокам) остаются некоторые вопросы.
Прежде всего, подготовка обучающих данных тесно связана с концепцией изучения иностранного языка. Существует множество методик, но, универсальной, вроде бы, пока, не обнаружено. Поэтому, желая выучить язык самостоятельно (а мы исходит из этого), приходится брать на вооружение подходящую систему обучения либо разрабатывать собственную.
Как известно, изучение иностранного языка предполагает четыре навыка:
1. Понимание письменной речи.
2. Понимание устной речи.
3. Умение писать.
4. Умение говорить.
По сути, они, очень грубо, распадаются на две большие группы:
1. Звук и
2. Текст.
Собственно, наша обучающая программа вполне позволяет работать, как со звуком, так и с текстом. Вопрос только в том, что это можно делать очень разными способами. Поэтому, наша задача – выбрать подходящий вариант и следовать ему.
Экспериментируя с изучением французского языка, я пришел к выводу, что хорошо работают следующие навыки:
1. Вы должны уметь читать вслух иностранный текст, хотя бы, его транскрипцию по слогам. Для этого оригинал должен быть снабжен подстрочной транскрипцией со слогоделением и переводом для понимания прочитанного.
При этом, возникает проблема правильного произношения фонетических звуков, для чего необходимо:
2. Освоить уроки фонетики, т.е., научиться, более-менее, правильному произношению звуков фонетического алфавита (рис. 1). Их немного, поэтому, эта задача не должна быть слишком сложной.

3. Чтобы чтение имело больший смысл, вы должны видеть подстрочный перевод изучаемого текста, разбитого, на относительно короткие смысловые фразы и переведенные, максимально близко к тексту, что составляет основу метода БКП («буквального контекстного перевода»). Пример, подобного перевода вы можете посмотреть в моей статье: «Использование «ленты данных» для пред- и пост-обучения иностранным языкам» – https://habr.com/ru/articles/964284/ .
Этот метод, в какой-то степени похож на «метод Ильи Франка», но, только, отчасти.
Как это не прискорбно говорить, но выучить, в достаточной мере, иностранный язык без освоения его грамматики – невозможно.
Грамматика – это «камень преткновения» для многих. Чтение учебников и учебных пособий по грамматике даётся с большим трудом и материал оттуда довольно плохо запоминается. В своей статье: «Почему так тяжело учить грамматику иностранного языка?» ( https://habr.com/ru/articles/944616/ ) я говорю об этом более подробно. Поэтому, нередко можно встретить разного рода утверждения, что язык можно выучить без грамматики, мол, как это делают дети. К сожалению, для взрослых, эта «метода», практически, не работает.
Однако выход из этой ситуации существует. И он, довольно, неожиданный. Нужно просто:
4. Читать грамматику иностранного языка, на языке оригинала, причем, вслух, с транскрипцией и слогоделением предложений, разбитых на короткие логические фразы и переведенные по методу БКП.
При этом мы выигрываем дважды, осваиваем язык как таковой и, заодно, изучаем его грамматику, которая, часто выглядит более естественной и простой, по сравнению с её описанием, например, на русском языке, где, иногда, «за деревьями не видно леса».
Это можно делать, как в используемой обучающей программе (ориентированной на звук), так и автономно (с ориентацией на текст), в виде двуязычных книг, например, в html-формате, о чём говориться в моём комментарии, к вышеуказанной статье, где приведен скриншот французского учебника грамматики на английском языке (рис. 2).

Таким образом, суть нашей обучающей концепции следующая:
1. Основа изучения языка – чтение вслух подходящего учебника грамматики, на языке оригинала, с транскрипцией, слогоделением, короткими смысловыми фразами и буквальным, контекстным переводом.
2. Для получения навыков произношения звуков фонетического алфавита, предварительно осваиваются фонетические уроки.
3. Для освоения навыков распознавания речи на слух, используется интерактивная озвучка, например, в обучающей программе «L'école».
4. Для чтения вслух, на языке оригинала, удобно использовать двуязычные тексты (с транскрипцией со слогоделением либо без), например, в html-формате.
5. Мера освоения иностранного языка – количество прочитанного вслух и понятого оригинального текста подходящего учебника грамматики на иностранном языке.
С учетом вышесказанного, были подготовлены первые уроки по изучению иностранного языка, взрослыми, которые выглядят так:
1. Первый урок – алфавит, с описанием и озвучкой, на языке оригинала, с использованием перевода по методу БКП. Плюс даются объяснения по символам алфавита с диакритическими знаками и лигатурам (для французском языке). Заметим, что полного согласия, в этом вопросе, у французов – нет (см., например, мои комментарии на эту тему: https://habr.com/ru/companies/bothub/news/891934/comments/ )
2. Второй урок – произношение звуков фонетического алфавита. Во французском языке их, максимум, 39, но могут отсутствовать некоторые звуки, например, похожие на русский «х» (явный и ослабленный) и на звук, похожий на английскую ing-овую форму.
3. Третий урок – это озвучка коротких слов, с транскрипцией, где каждый фонетический звук рассматривается в составе слов, количество которых, в нашем уроке, составляет, примерно – 25 на каждый звук, за исключением редких слов, со звуком « x », которых всего три.
4-й и 5-й уроки, это начальные разделы из, в данном случае, французской грамматики, на французском языке, представленные в html-формате, в нескольких вариантах, для каждого текста.
Естественно, в одной статье невозможно дать все уроки, да еще и по разным языкам. Но, это можно делать постепенно. Однако, поскольку работа эта не профессиональная, а любительская, то там, очевидно, будет множество ляпов и ошибок.
Поэтому, чтобы пользователь мог легко исправлять эти ошибки, предлагается использовать пару скриптов, на Питоне. Первый, из которых, делает «разборку» или декомпозицию файла данных, нашей обучающей программы, формата Sqlite3, а второй, наоборот, сборку этих данных, т.е., по сути, пересоздает их заново. Его, кстати, можно использовать и для создания абсолютно новых данных, «под себя». В качестве источников используются текстовые файлы, формата TSV либо их аналоги в «Эксел» и каталог с mp3-файлами, размещаемые в blob-полях нашего db-файла данных. Заменяя эти данные собственными, вы получаете нужный вам результат.
Что касается изучения художественных текстов, на языке оригинала, то, следует иметь в виду, что там используется художественный, литературный перевод, что, для целей обучения не слишком практично. Буквального соответствия не происходит, а слова, в контексте, запоминаются неправильно. Недаром, французы говорят, что: « Traducteur, traitre. Traduire, c’est trahir. » – «Переводчик – предатель. Переводить – предавать.». Это, конечно, сказано слишком грубо, тем не менее, не на пустом же месте появилась эта поговорка.
Для учебных целей, более подходят технические тексты, тем более что, современный Гугл-переводчик стал переводить значительно лучше, чем еще несколько лет назад. При этом, явно лучше, чем художественные тексты, поэтому, у нас больше стимула использовать этот сервис для перевода иностранных технических материалов, в данном случае, грамматики на языке оригинала, к тому же, мы можем, в какой-то мере, влиять на процесс перевода. А это может быть удобней, чем использовать готовые варианты перевода, даже, если они есть.
Итак, чтобы совместить приятное с полезными (при изучении, скажем, английского или французского языка), мы ищем и загружаем из Интернета, учебники грамматики, на языке оригинала и пробуем сделать из них двуязычные книги в html-формате. Для этого, также, предлагается использовать соответствующий скрипт (см. ниже). Потом, начинам читать их и делимся своими впечатлениями от этого процесса. Озвучку, при отсутствии оригинальной, можно создавать с помощью TTS-сервисов, благо, хорошие ИИ-сервисы делают её уже практически неотличимой от «живой» речи.
Часть Первая – Результирующая
Результат работы можно загрузить из архива ReCreateDB.zip : https://disk.yandex.ru/d/3zyxUBUU6eyc2A . Этот архив содержит следующие файлы:
Файлы данных, для первых пяти уроков французского языка (в конце указано количество записей в них):
001-FrAlphabet138.db
002-PhonSounds39.db
003-PhonWords991.db
004-Preface135.db
005-ElementsOfSpeech317.db
Для «разборки» этих файлов используется скрипт DeCreateDB.py . Если запустить командный файл: DeCreateDB.cmd , то он сделает декомпозицию сразу всех эти пяти файлов. При этом, mp3-файлы разместятся в каталогах с теми же самыми именами и, кроме того, будут созданы аналогичные текстовые файлы (с расширением *.txt), формата TSV, который можно получить, просто копируя, через буфер обмена, блок ячеек «Эксел» в обычный текстовый файл (обратная операция тоже допустима).
Для «сборки» этих файлов используется скрипт ReCreateDB. py. Если запустить командный файл: ReCreateDB.cmd , то он создаст сразу все, новые, пять файлов данных (имена которых будут иметь символ подчёркивания «_», в конце).
Если эти пять файлов данных (исходных либо пересозданных) разместить в каталоге обучающей программы «L'école» : «Lecole101\DataBase\Французский\Уроки\» (имеющийся там один файл – тот же самый, поэтому, его можно удалить), то, мы получим первые, более-менее, реальные уроки, по изучению французского языка, взрослыми. При этом, работа с аналогичными двуязычными текстами – несколько более проще, но, вы уже должны будете уметь читать все французские звуки.
В каталоге «Data» находятся аналогичные файлы с расширением .xls и, соответствующие им, файлы .txt . Текстовые файлы, в этом каталоге, похожи на аналогичные файлы, в корневой папке, но имеют меньше данных и предназначены для создания двуязычных html-текстов (в т.ч., с транскрипцией). Для их получения нужно запустить скрипт TextHtmlCreater.py . Если запустить командный файл: TextHtmlCreater.cmd , то он создаст по четыре варианта представления (различающиеся постфиксами «a», «b», «c», «d») всех этих пяти файлов, т.е., всего двадцать файлов в каталоге «Html», по умолчанию. Если такого каталога не существует, то он будет создан.
При этом файлы в папке «Data» не создаются автоматически, вы должны будете редактировать их вручную, например, используя буфер обмена. Они представлены, здесь, как прототипы.
Скрипт TextHtmlCreater.py – создаёт html-файлы для двуязычных текстов, следующей структуры:
a) С горизонтальным разделением текстов (оригинала и перевода).
b) С вертикальным разделением, без транскрипции,
c) С вертикальным разделением, с транскрипцией.
d) С горизонтальным, объединенным (оригинала и перевода), разделением
При этом размер шрифта и его цвет вы может изменять внутри данного скрипта.
Часть Вторая – Техническая
Я, как обычно, не буду публиковать код в статье, его лучше смотреть, непосредственно, в архиве. Скажу только о некоторых нюансах.
Когда вы готовите данные для двуязычных html-текстов, например, для третьего урока (рис. 3), то для переводов вы используете только одно поле (рис. 4).


Поэтому, в этом случае, удобно объединить все колонки, с переводами, в одну, как показано на этом рисунке.
Заметим, что в текстовый формат данных не нужно копировать последнюю колонку с номерами (выделенную желтым цветом). При этом, заголовок с данными копировать нужно, поскольку, он будет просто пропущен, при обработке, скриптом. Дело в том, что без этой колонки, копирование через буфер обмена остальных данных будет содержать ошибки, с точки зрения используемого скрипта.
Если вы желаете выделить строки в html-тексте (рис. 5), то, на втором листе *.xls файла данных (в каталоге «Data») вы может проставить «звёздочку» в конце русского перевода (рис. 6).


Затем, копируя эту страницу в соответствующий текстовый файл, в каталоге «Data», мы получим возможность выделения заголовков в html-текстах, как на рис. 5.
Выводы
Как показывает практика, данный метод достаточно хорош для освоения языка взрослыми, любого возраста. При этом, его «лайт-версия», т.е., использование, только оригинальных книг, в двуязычном формате, с транскрипцией, не требуют даже наличия обучающей программы, достаточно, как говорилось выше, умения читать эту транскрипцию по слогам.
Очень важно, что «проблема изучения грамматики» теряет свой статус «глубокого отторжения», поскольку можно акцентироваться не столько на зубрежке грамматических структур, сколько, на, собственно, чтении иностранного текста, как такового, попутно, осваивая его содержимое.
Также, как уже упоминалось, наличие возможности пересборки данных, позволяет редактировать имеющиеся уроки и создавать новые всеми желающими, благо, сейчас, в эпоху Интернета и ИИ-сервисов, это не представляет особой сложности.
Однако, некоторая трудность состоит в том, что многие учебники грамматики перегружены структурой, в т.ч., таблицами, делать которые я, пока, избегал, просто, эмулируя их обычным текстом, но, возможно, надо будет подумать об использовании таблиц в html-книгах, поскольку, данный формат это позволяет.
Надеюсь, что следующие статьи можно будет посвятить обучающим урокам на других языках.