Чему вы научитесь
- Устанавливать и запускать Ruff в разных окружениях и понимать его вывод.
- Настраивать Ruff в pyproject.toml: базовые параметры, выбор правил, исключения.
- Осмысленно включать автофиксы и контролировать изменения через diff/commit.
- Использовать Ruff как форматтер и понимать нюансы миграции со связки Black/isort.
- Встраивать Ruff в pre-commit и делать линтинг до коммита быстрым и удобным.
- Подключать Ruff в GitHub Actions и GitLab CI как строгий quality gate.
- Настраивать Ruff для монорепо и больших проектов, не теряя скорость.
- Планировать миграцию на Ruff без лавины ошибок и конфликтов в истории.
- Собирать минимальный quality stack: Ruff + тесты + типы + coverage.
О курсе
Соберёте единый стандарт качества Python‑кода на Ruff: от первых запусков до pre-commit и CI, без зоопарка из flake8/isort/black.
Для кого этот курс
Python-разработчики junior/middle, backend и data/ML инженеры, а также тимлиды/техлиды, которым нужен единый стандарт качества кода в команде. Подойдёт тем, кто уже пишет Python в проектах и хочет, чтобы линтинг был быстрым, предсказуемым и одинаковым локально и в CI.
Начальные требования
Базовые навыки Python и работы с проектом (virtualenv/uv/pip), умение запускать команды в терминале. Желательно понимать Git и иметь репозиторий (можно учебный) на GitHub/GitLab для практики CI, но курс можно пройти и без публикации в интернет.
Преподаватели курса
Как проходит обучение
Каждый урок устроен как короткая итерация: разбираем один принцип, применяем его на реальном сценарии и проверяем понимание квизом. Двигаемся от локального запуска Ruff к командному стандарту и CI/CD, постепенно усиливая quality gate без ломки разработки.
Формат курса
Текстовые уроки с практическими примерами, интерактивные квизы Stepik и мини-настройки: pyproject.toml, pre-commit, CI jobs.
Что вы получите
- Шаблон конфигурации Ruff в pyproject.toml для командного проекта.
- Пример .pre-commit-config.yaml с ruff check и ruff format.
- Готовый пример workflow GitHub Actions для Ruff с кэшированием.
- Пример job для GitLab CI с понятным quality gate.
- Чеклист миграции с flake8/isort/black на Ruff без остановки разработки.
Нагрузка
12–20 часов суммарно (2–4 часа в неделю)