es: ресинхрон локали под текущую ru-теорию - #859
Merged
Merged
Conversation
Испанские файлы этих уроков остались от прежней версии курса: у 25-interpolation, 30-symbols, 70-slices и 90-multiline-strings вместо урока лежала заглушка из одного-двух предложений против 3–5 КБ русского текста. Переведено заново с текущего ru: теория четырёх уроков плюс условия 70-slices (не было блока с ожидаемым выводом и указания использовать slice()) и 90-multiline-strings (не было фразы про шаблонную строку). У 60-infinity расходилось одно предложение: ru заканчивается примером про границы, es — устаревшим «Este tema se analiza en detalle en Hexlet». 25-interpolation/es/EXERCISE.md не тронут: перевод там актуальный и блок ожидаемого вывода совпадает с тестом дословно.
52-data-types-immutability и 55-data-types-casting: испанская теория была заглушкой на 2–5% от русского объёма. Переведено заново с текущего ru, включая разделы про parseInt/parseFloat, String(), Boolean() и Math.trunc(). 135-calling-functions-default-params: испанская теория описывала несуществующую функцию `round()` с двумя параметрами, тогда как урок давно построен на методе `toFixed()`. Условие описывало совсем другое задание — «округли number до двух знаков» вместо расчёта поездки, который проверяет тест (`37.8\n2426.76\n607`). Переведены и теория, и условие. Валюта в условии не указана: в русском «в рублях», для испанской локали опущено, как уже сделано в php и python.
100-objects: испанский был переводом более старой версии урока — рассказывал про прототипы и Math.abs, а нынешних разделов «Методы строк» с replace(), «Метод и функция: сравнение», «Методы возвращают значения» и «Свойства и методы в выражениях» не содержал. Добавлена и заметка о том, что учебная функция length() из hexlet-basics/string больше не нужна — с этого урока используется .length. 200-methods-immutability: не было разделов «Методы не меняют оригинал» (с trim() и сохранением результата) и «Переприсвоение переменной». 500-method-chain: не было диаграммы разбора цепочки, разделов «Цепочка после среза» и «Где цепочка заканчивается». Попутно исправлен пример с забытым вызовом: было `name.toUpperCase.toLowerCase`, в ru `name.toUpperCase.toLowerCase()`.
Все четыре урока модуля были переводами других, более старых версий: - 100-define-function: испанский рассказывал про отправку письма через импорт mailer, а урок давно про определение своих функций. Условие требовало реализовать printMotto() с выводом «Winter is coming», тогда как тест сверяет `Hello, World!` из sayHello() — упражнение было непроходимо вне ru. - 150-return: испанский был про обработку почтовых адресов и стрелочные функции, а урок — про return, разницу с console.log и код после return. - 340-default-parameters: не было примеров про repeat(), склейку с разделителем и несколько параметров по умолчанию. Условие описывало задачу многословно и в другой форме, чем текущее ru. - 350-type-annotations: не было разделов про типы в аннотациях, void, параметры по умолчанию и статическую проверку. В примере describe() русское «25 лет, рост 1.7» переведено как «25 años, altura 1.7» — это теория, файл на локаль, поэтому здесь испанский, а не нейтральный английский.
15-conditions-inside-loops: не было раздела «Работа по шагам» с разбором первых итераций, вводного примера с чётными числами и предупреждения о том, что счётчик увеличивается вне if — иначе цикл зависает на первом нечётном числе. 30-syntactic-sugar: испанский был списком из пяти строк вместо урока с разделами про сокращённые присваивания, сахар в циклах, конкатенацию строк и полный список поддерживаемых операторов.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Зачем
Испанские файлы части уроков остались от прежних версий курса: где-то это заглушка в одно-два предложения против 3–7 КБ русского текста, где-то перевод другого, уже переписанного урока. Из-за этого испанский студент видел либо огрызок теории, либо задание, не совпадающее с тестом.
Самый наглядный случай —
40-define-functions/100-define-function: условие требовало реализоватьprintMotto()с выводомWinter is coming, а тест сверяетHello, World!изsayHello(). Упражнение было непроходимо внеru.Что сделано
23 файла в 8 модулях, по коммиту на модуль:
20-arithmetics60-infinityрасходилось последнее предложение31-advanced-strings25-interpolation,30-symbols,70-slices,90-multiline-strings— заглушки на 4–7% отru33-data-types52-data-types-immutabilityи55-data-types-casting— заглушки35-calling-functionsround(), урок давно проtoFixed()38-objects100-objectsбыл переводом старой версии с прототипами иMath.abs; у двух других не хватало разделов40-define-functions50-loops15-conditions-inside-loopsбез разбора по шагам,30-syntactic-sugar— список из пяти строкПравило разделения, уже применённое в
exercises-phpиexercises-python: проза — на языке локали, строки в коде, которые печатаются или проверяются — английские, потому что файлы решения и теста в CB общие на все локали. Кириллицы в js-коде не было, так что здесь только перевод текста.Проверка
ruу всех сопоставленных уроков: число код-блоков и заголовков совпадает.es/ruне ниже 1.00 у теории. Порог откалиброван на 72 php-уроках, проверенных от начала до конца: у добросовестного перевода медиана 1.09, минимум 1.02.ru-условии и отсутствует вes.es-локали не осталось ни в одном.md.Файлы решений и тестов не тронуты — правки только в
es/README.mdиes/EXERCISE.md.🤖 Generated with Claude Code