- Зачем:
- порядок секций противоречил анонсу раздела (Streaming объявлен первым);
- Kafka из Streaming-блока — прямой вход в clickstream-стенд ClickHouse;
- Lakehouse был помечен «в разработке», хотя стенд mini-lakehouse-lab
уже содержит полноценный курс
- Что:
- секция Streaming (NiFi + Kafka) перенесена перед ClickHouse,
добавлена связка «Kafka пригодится на стенде ClickHouse»;
- ClickHouse: уточнено, что упражнения курса Яндекса можно делать
в их облаке (платно) или бесплатно на clickhouse-learning-cluster;
clickstream-стенд обозначен как следующий шаг со своими уроками;
- Lakehouse: убрана заглушка «Секция в разработке», секция переписана
вокруг курса «Lakehouse без магии» (8 модулей, ~12–15 часов,
raw → bronze → silver на NYC Taxi, Spark + Trino, checkpoint'ы);
- оглавление: порядок «Streaming, ClickHouse, Lakehouse, dbt»
- Проверка:
- mkdocs build --strict (без ошибок);
- порядок h3-заголовков в site/index.html соответствует новому
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- отдельный раздел «Понятие сложности алгоритмов» избыточен для DE-роадмапа;
- SQL-часть (JOIN, индексы, объём сканирования) уже покрыта курсом QPT
- Что:
- раздел удалён из блока практики;
- в «продвинутые» темы Python добавлена статья «Сложность алгоритмов.
Разбор Big O» (habr.com/ru/articles/782608)
- Проверка:
- mkdocs build --strict (без ошибок);
- в оглавлении ссылок на удалённый раздел не было
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- относительные ссылки на каталоги sql/ и data/ давали 404 на GitHub Pages;
- em-dash в заголовках нарушает правило AGENTS.md (расходятся слаги GitHub/MkDocs);
- 2-пробельная вложенность и списки без пустой строки ломали рендер в MkDocs
- Что:
- ссылки на папки заменены на GitHub-tree-ссылки (работают на обеих платформах);
- в 26 заголовках « — » заменено на «: » или убрано (README, SCD, DataVault, домашка);
- пустая строка перед списком «Главные правила» в DataVault;
- вложенные списки DataVault переведены на 4-пробельный отступ
- Проверка:
- mkdocs build --strict (без ошибок);
- grep по репо — якорных ссылок на старые слаги заголовков нет;
- grep по site/dwh-modeling/*.html — списки рендерятся <ul>/<li>, вложенность сохранена
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- расширить роадмап практическим разделом о работе с ИИ-ассистентами.
- Что:
- добавлена вводная страница ai-dev/README.md.
- добавлен перевод «Лучшие практики работы с coding agents» (ai-dev/best-practice.md).
- добавлен перевод «Механизм памяти coding agents» (ai-dev/memory-mechanism.md).
- добавлен раздел «Разработка с ИИ» в навигацию mkdocs.yml.
- Проверка:
- mkdocs build --strict проходит без ошибок.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Зачем:
- менти и посетителям сайта нужен быстрый способ связаться с ментором.
- Что:
- добавлена floating-кнопка Telegram (левый нижний угол, всегда видна при скролле).
- добавлены иконки Telegram и GitHub в футер через extra.social.
- создан template override (overrides/main.html) с inline-стилями.
- Проверка:
- mkdocs build --strict проходит без ошибок.
- кнопка видна на всех страницах, ведёт на t.me/dementev_dev.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Зачем:
- роадмап нуждается в презентабельном виде с навигацией и поиском, а не только GitHub README.
- Что:
- создан mkdocs.yml (Material, docs_dir: ., поиск на русском, тёмная/светлая тема).
- создан .github/workflows/deploy-site.yml (push в main → сборка → GitHub Pages).
- адаптирован Markdown для dual compatibility (GitHub + MkDocs): пустые строки перед списками, отступы 2sp→4sp, заголовки README #→## для корректного TOC.
- заменены em-dash на запятые в 4 заголовках dwh-modeling/README.md (фикс расхождения якорей).
- добавлены правила Markdown Style и команды MkDocs/Playwright в AGENTS.md.
- Проверка:
- uv run --with 'mkdocs-material==9.6.14' --with 'mkdocs-same-dir==0.1.3' mkdocs build --strict
- Зачем:
- плейсхолдеры и внутренние заметки ментора были видны студентам.
- Что:
- заменён плейсхолдер про резюме на описание совместной практики с ментором.
- секция «Навыки поиска работы с HH и Habr карьера» переименована в «Поиск работы и собеседования».
- убран дубль ссылки на видео про испытательный срок.
- плейсхолдеры про собесы заменены на пункт «мок-собеседования с ментором» и отметку «в подготовке».
- Проверка:
- визуальная проверка рендеринга README.md.
- Зачем:
- упрощение роадмапа: курсовая и практика Greenplum теперь используют один стенд.
- Что:
- курс Yandex по Greenplum выделен как основной.
- практика по Greenplum привязана к стенду airflow-dwh-gp-lab.
- курсовая работа переписана под использование того же стенда.
- добавлено описание эталонного DWH и автоматической проверки.
- удалена секция "Стенд в Docker Compose" из оглавления.
- Проверка:
- git diff HEAD~1 README.md.
- Зачем:
- объединить улучшенные учебные материалы по DWH-моделированию в основную ветку.
- Что:
- добавлен COMMIT_RULES.md с правилами оформления коммитов.
- добавлено решение домашнего задания (09_dml_hw_customer_status_solution.sql).
- улучшена документация: расширены разделы 3NF и Звезда, добавлены пояснения по ODS.
- исправлены опечатки и SQL-скрипты по результатам ревью.
- обновлены CSV-данные для корректной работы примеров.
- Проверка:
- git log --oneline -5.
- просмотр изменённых файлов в dwh-modeling/.
- customer_segment: убрана несуществующая колонка dim_customer, заменена
на CASE по сумме (как в 06_dml_dm.sql)
- MATERIALIZED VIEW заменён на TRUNCATE + INSERT INTO (как в скриптах),
упоминание MV оставлено в ремарке
- добавлен комментарий о недетерминированности CURRENT_DATE в bounds
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- в статье и скриптах обнаружены фактические ошибки и несостыковки
- Что:
- README: f.order_date -> d.date_actual в примере витрины (колонки order_date нет в fact_sales)
- README: «календарь на 10 лет» -> «5 лет» (соответствует генерации 2023-2027 в скрипте)
- 09_solution: bounds CTE теперь использует CURRENT_DATE для открытых интервалов (valid_to IS NULL)
- 09_solution: комментарий про дубли в STG при повторном запуске блока 3
- 05_ddl_dm: выравнивание total_line_items
- AGENTS.md: обновлён диапазон скриптов 01-09
- Проверка:
- визуальная проверка diff
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- менти видит два разных паттерна ODS (снимок vs event log) и не понимает почему
- Что:
- в решении домашки (блок 1 ODS): комментарий, почему customer_status хранит все события
- в домашке (раздел 3.2): пометка о сознательном выборе модели ODS
- Проверка:
- визуальная проверка diff
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- решение домашки должно быть самодостаточным и наглядным для самопроверки
- Что:
- добавлены контрольные SELECT после каждого блока (ODS, DDS, инкремент, DM)
- блок 3 (инкремент) стал самодостаточным: загрузка в STG + UPSERT в ODS + SCD2
- DDL витрины вынесен из решения/шаблона/домашки в 07_ddl_hw_customer_status.sql
- предусловия в домашке дополнены (05_ddl_dm.sql, пояснение про dim_date)
- в шапку решения добавлено напоминание сначала попробовать самостоятельно
- Проверка:
- визуальная проверка diff
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- разделы 3NF и Звезда были слишком краткими для учебного материала,
менти не видел разницу между моделями на практике
- Что:
- 3NF: добавлена mermaid-диаграмма с dim_city и SQL-запрос (3 JOIN)
- Звезда: добавлена явная связь с разделом 5, SQL-запрос (2 JOIN) для контраста
- оба примера отвечают на один вопрос: «сколько потратил клиент из Москвы?»
- Проверка:
- визуальная проверка diff
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- убрать путаницу, дублирование и неточности в демо-скриптах и домашке
- Что:
- CSV: заголовок load_ts → _load_ts во всех файлах (совпадает с именем в таблицах)
- домашка: убраны оговорки о расхождении load_ts/_load_ts, добавлена ссылка на эталонное решение
- 09_dml_hw_customer_status_solution.sql: эталонное решение скопировано из ветки solution/hw_customer_status в основную
- 02_dml: добавлена карта загрузки в шапку (что откуда строится)
- 05_ddl_dm + 06_dml_dm: total_orders → total_line_items (название точнее отражает содержимое)
- Проверка:
- визуальная проверка diff, скрипты не запускались (демо-стенд не поднят)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Зачем:
- нужна единая спецификация для сообщений коммитов
- облегчение code review и читаемости истории
- Что:
- создан COMMIT_RULES.md с правилами Conventional Commits
- адаптированы scopes под репозиторий: sql, modeling, bookings, docs, data
- обновлена секция в AGENTS.md с ссылкой на полные правила
- Проверка:
- git log --oneline -1
- cat COMMIT_RULES.md | head -20