hexlet-basics / hexlet-basics/exercises-typescript

Union вводится в курсе трижды и после первого практического применения

Open
#346 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement ready-for-human
Dominant language
TypeScript
Stars
19
Forks
89
PR merge metrics
No merged PRs in 30d

Description

This was generated by AI during triage.

Выделено из зонтичного #219 (замечание Сергея М, 2023). Пункт остаётся актуальным: порядок уроков с тех пор не менялся.

Проблема

Объединение типов (union) вводится в курсе трижды и в неудобном порядке:

  • 10-basics/70-type-aliases — union появляется в примере как рабочий инструмент, с комментарием «union тип из трёх возможных значений», без объяснения;
  • 25-types/10-type-as-sets — union объясняется через теорию множеств;
  • 25-types/20-union-types — отдельный урок про union.

Между первым и вторым уроком лежит половина курса, и union в них используется многократно. Студент сначала много раз применяет конструкцию, а потом дважды подряд читает, что это такое.

Желаемый результат

Студент знакомится с union один раз, до того как начнёт им пользоваться, и дальше уроки на него опираются. Уроки type-as-sets и union-types не пересказывают одно и то же: за первым остаётся модель «тип как множество», за вторым — практика (или они объединяются).

Что нужно решить (поэтому не для агента)

  • Переносить ли введение union ближе к началу курса — это меняет порядок модулей и URL уроков не затрагивает, но затрагивает прогресс студентов, уже проходящих курс.
  • Оставить ли type-as-sets как отдельный урок и о чём он тогда: сейчас, по замечанию автора issue, «словно вообще не про то».
  • Сохранять ли обратную совместимость с внешними ссылками на уроки.

Решение методическое и требует владельца курса. После него сама правка контента уже делегируема.

Acceptance criteria (после принятия решения)

  • Union объясняется до первого практического применения в курсе
  • Между уроками про множества и про union нет дублирования содержания
  • Порядок уроков в модулях согласован с числовыми префиксами директорий
  • Полный make check проходит

Out of scope

  • Другие пункты #219 (они разнесены по отдельным issue или уже исправлены)
  • Ревизия модуля 25-types целиком

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing 10-basics/70-type-aliases, 25-types/10-type-as-sets, and 25-types/20-union-types to map the current explanations and lesson order. Resolve the sequencing and content-ownership decisions with the course owner, then update the affected lessons so union is introduced before use without duplicated material. Run make check when the content changes are complete.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.