<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.atp-fivt.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%D0%90%D1%85%D1%82%D1%8F%D0%BC%D0%BE%D0%B2+%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB</id>
	<title>Public ATP Wiki - Вклад [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.atp-fivt.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=%D0%90%D1%85%D1%82%D1%8F%D0%BC%D0%BE%D0%B2+%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB"/>
	<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/%D0%90%D1%85%D1%82%D1%8F%D0%BC%D0%BE%D0%B2_%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB"/>
	<updated>2026-10-16T13:20:16Z</updated>
	<subtitle>Вклад</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0&amp;diff=5213</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0&amp;diff=5213"/>
		<updated>2026-08-29T10:34:26Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: нет ограничений&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/6a8e9d836d2d7354e26e4666&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-канале: https://t.me/+X2zKWmmr7gg2Nzgy&lt;br /&gt;
&lt;br /&gt;
Телеграм-чат: https://t.me/+ywvmwhtUG-syMTUy&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0&amp;diff=5212</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0&amp;diff=5212"/>
		<updated>2026-08-29T10:34:17Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: нет ограничений&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/6a8e9d836d2d7354e26e4666&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-канале: https://t.me/+X2zKWmmr7gg2Nzgy&lt;br /&gt;
Телеграм-чат: https://t.me/+ywvmwhtUG-syMTUy&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5198</id>
		<title>Современные технологии разработки сервисов анализа данных осень 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5198"/>
		<updated>2026-08-28T12:16:20Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Вехи по ходу семестра */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 1 (шестой курс)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: понедельник, 9:00-12:00 (две пары подряд)&lt;br /&gt;
* Первое занятие: 7 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
* Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Приглашённые практики&#039;&#039;&#039;&lt;br /&gt;
* Недели 9-11 ведёт приглашённый архитектор промышленных систем: ландшафт из сотен систем, работа под пиковой нагрузкой и разбор инцидентов, архитектурные компромиссы&lt;br /&gt;
&lt;br /&gt;
==Важная информация==&lt;br /&gt;
* Ссылка на чат: t.me || +T7rNR2iJblY1NjAy&lt;br /&gt;
* Задания сдаются на платформе https://akhcheck.ru, там же ведомость. Оценки не публикуются в вики по закону о персональных данных&lt;br /&gt;
* Дедлайны мягкие: за каждые три дня просрочки снимается 20% от баллов задания&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
Модель, которая хорошо работает в ноутбуке, и модель, которая держит нагрузку в продукте, различаются не качеством, а всем остальным: способом упаковки, воспроизводимостью данных, порядком выкатки, поведением под нагрузкой и тем, что происходит в момент отказа. Курс посвящён этому остальному.&lt;br /&gt;
&lt;br /&gt;
Мы берём одну модель и доводим её от кода на машине разработчика до сервиса, который переживает перезапуск, обновление и наплыв запросов. По дороге разбираем инструменты, которыми это делается в промышленности, и на каждом шаге отвечаем на вопрос, что именно ломается без этого инструмента.&lt;br /&gt;
&lt;br /&gt;
Курс посвящён &#039;&#039;&#039;эксплуатации моделей&#039;&#039;&#039;, а не их обучению. Мы не занимаемся распределённым обучением, не разбираем алгоритмы синхронизации градиентов и не соревнуемся в качестве моделей. Курс начинается с уже обученной модели и заканчивается сервисом, которым пользуются люди.&lt;br /&gt;
&lt;br /&gt;
Такое сужение сделано намеренно. Обучению моделей посвящены другие курсы программы, а вот доведению до работающего сервиса не посвящён почти никакой, хотя именно на этом участке теряется большинство проектов.&lt;br /&gt;
&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Занятия идут парами по понедельникам утром: первая пара разбирает тему, вторая отводится под работу руками.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NewsPulse&#039;&#039;&#039; мы собираем вместе в аудитории, шаг за шагом: он служит образцом, на котором видно целевое состояние каждого слоя.&lt;br /&gt;
&lt;br /&gt;
Собственный проект каждый ведёт сам, и &#039;&#039;&#039;брать его желательно из своей выпускной работы&#039;&#039;&#039;. Курс занимается ровно тем, чего у выпускных работ по машинному обучению обычно нет: модель обучена и показывает метрики, но запустить её у себя не может никто, кроме автора. Пройдя курс на своей теме, мы получаем не учебное задание в стол, а работающую часть выпускной работы, которую можно показать на защите.&lt;br /&gt;
&lt;br /&gt;
Тем, у кого подходящей темы нет, мы предлагаем готовую: &#039;&#039;&#039;CEREBRO&#039;&#039;&#039;, сервис анализа звучащей речи. Модель в нём та же, что и в аудиторном проекте, поэтому внимание уходит на инженерию, а не на возню с предметной областью.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на тех, кто уже уверенно пишет на Python с asyncio и Pydantic, работает с Git и SQL и запускал контейнеры. Вводных занятий по этим темам нет, мы начинаем сразу с нагруженного сервиса.&lt;br /&gt;
&lt;br /&gt;
Остальные темы разбираются с нуля в связке с изученными инструментами. Основное время уходит на связку, вокруг которой построен курс: MLOps, Kubernetes и serving моделей.&lt;br /&gt;
&lt;br /&gt;
Требуется готовность каждую неделю приносить растущий проект и разбираться с тем, что сломалось. Курс инженерный, и большая часть понимания приходит в момент, когда сервис не поднялся.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
Курс идёт пятнадцать недель. Каждая неделя состоит из лекции на 80 минут и семинара на 80 минут, семинар всегда про работу руками.&lt;br /&gt;
&lt;br /&gt;
Три недели в середине семестра ведёт приглашённый архитектор промышленных систем. Блок стоит после Triton намеренно: к нему мы уже собрали сервис, развернули его в кластере и увидели разницу между задержкой и пропускной способностью, поэтому разговор про ландшафт и инциденты ложится на собственный опыт, а не на воображение.&lt;br /&gt;
&lt;br /&gt;
=== Недели 1-5. Фундамент, взаимодействие и MLOps ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Высоконагруженные ML-системы: продакшн как 80 процентов работы, задержка против пропускной способности, физические ограничения сети, три паттерна инференса, блокировка цикла событий, контракты, структурное логирование || Проект на poetry, сервис с намеренной ошибкой, первый нагрузочный тест и починка&lt;br /&gt;
|-&lt;br /&gt;
| 2 || Продвинутая контейнеризация и конвейер сборки: multi-stage, distroless, образы с CUDA, тестирование внутри конвейера || Уменьшение образа, конвейер в GitLab CI, тесты сервиса&lt;br /&gt;
|-&lt;br /&gt;
| 3 || Асинхронные паттерны и высокая нагрузка: очереди сообщений, семантика доставки, отложенный инференс, обратное давление || Сервис, который читает задачи из очереди и пишет результат в другую&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Данные и модели: DVC, удалённые хранилища, реестр моделей, рассинхрон признаков между обучением и выводом || Связка DVC с MinIO и MLflow&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Оркестрация: Airflow 3, идемпотентность шага, изоляция ML-задач, непрерывное переобучение || DAG регулярного переобучения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Очереди стоят третьей неделей не случайно. На первом занятии задана рамка из трёх паттернов инференса, и потоковая обработка в ней только названа. Очереди её раскрывают, а без них дальше не собирается ни оркестрация, ни разговор про реальный ландшафт систем.&lt;br /&gt;
&lt;br /&gt;
=== Недели 6-8. Инфраструктура и инференс ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Инференс на сервере: Triton, репозиторий моделей, динамическое батчирование, бэкенды || Запуск Triton, конфигурация модели, сравнение с обычным сервисом&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Kubernetes: управляющий слой, поды, контроллеры, сервисы и внешний доступ, конфигурация и секреты || Развёртывание сервиса в локальном кластере, написание манифестов&lt;br /&gt;
|-&lt;br /&gt;
| 8 || Kubernetes для ML: запросы и лимиты ресурсов, классы обслуживания, планирование GPU, выделение узлов, Helm || Упаковка сервиса в чарт, разбор падения по памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Kubernetes занимает две недели: одну на устройство самого кластера, вторую на то, что в нём меняется для ML-нагрузки. Связка Kubernetes с serving и MLOps и есть стержень курса.&lt;br /&gt;
&lt;br /&gt;
=== Недели 9-11. Блок приглашённого архитектора ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 9 || Анатомия ландшафта из сотен систем, интеграционные шаблоны, работа с унаследованным кодом || Студенты размещают свой сервис в схеме ландшафта и находят зависимости&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Пиковая нагрузка, SLA и SLO, плавная деградация, стратегии выкатки || Разбор настоящего инцидента в группах по его фактуре&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Компромиссы и нефункциональные требования, как архитектурные решения принимаются вместе с заказчиком || Проектирование архитектуры своего проекта в формате разбора решения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Недели 12-15. Производительность, языковые модели и финал ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 12 || Оптимизация инференса: ONNX и TensorRT, квантование, профилирование || Конвертация модели и подключение к Triton, замер роста пропускной способности&lt;br /&gt;
|-&lt;br /&gt;
| 13 || Serving больших языковых моделей и поиск с дополнением генерации: KV-кэш, непрерывное батчирование || Развёртывание модели через vLLM, сравнение скорости&lt;br /&gt;
|-&lt;br /&gt;
| 14 || Наблюдаемость: метрики системы против метрик модели, дрейф данных, трассировка и OpenTelemetry || Панель с задержкой и утилизацией GPU, сквозной трейс запроса&lt;br /&gt;
|-&lt;br /&gt;
| 15 || Итоги курса и тренды || Защита проектов&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Облачная инфраструктура с Terraform в программу не входит. Отказ осознанный: растягивать курс ещё на одну тему в ущерб связке Kubernetes и serving мы не стали.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Оценка складывается из баллов за домашние задания и за выпускной проект. Задания сдаются запросом на слияние в репозиторий курса, проверка автоматическая на https://akhcheck.ru, разбор ошибок ручной.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Для получения зачёта необходимо, чтобы проект удовлетворял всем условиям ниже. Предметная область значения не имеет: требования одинаковы и для темы выпускной работы, и для предложенной нами.&lt;br /&gt;
&lt;br /&gt;
* Сервис поднимается одной командой на чистой машине по написанной инструкции.&lt;br /&gt;
* Сборка образа и прогон проверок выполняются автоматическим конвейером, а не руками.&lt;br /&gt;
* Данные и веса модели версионированы, состояние эксперимента восстанавливается.&lt;br /&gt;
* Сервис переживает перезапуск без потери принятых, но не обработанных запросов.&lt;br /&gt;
* Есть набор проверок, который краснеет при поломке, и он запускается конвейером.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Защита проходит на живом сервисе. Мы запускаем его по инструкции автора, подаём нагрузку, смотрим на метрики и обсуждаем, где он сломается раньше всего. Отдельно проверяется откат: автор выкатывает заведомо испорченную версию и возвращает рабочую.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
&lt;br /&gt;
Дополнительные баллы даются за то, что выходит за рамки минимальных требований: замеры ускорения вывода с воспроизводимой методикой, автоматическое масштабирование под реальную нагрузку, оповещения, которые срабатывают до того, как отказ заметит пользователь.&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Вехи привязаны к темам занятий: каждая проверяется тем, что разбиралось на предыдущей неделе.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| Сервис держит нагрузку || 2 || Сервис отвечает под нагрузочным тестом || Прогон нагрузки и замер задержки&lt;br /&gt;
|-&lt;br /&gt;
| Сборка автоматическая || 3 || Образ собирается конвейером, тесты проходят || Зелёный pipeline в GitLab CI&lt;br /&gt;
|-&lt;br /&gt;
| Обработка вынесена в очередь || 4 || Тяжёлая задача уходит из обработчика запроса || Наплыв запросов без отказов&lt;br /&gt;
|-&lt;br /&gt;
| Данные версионированы || 6 || Восстановление состояния эксперимента || Откат к предыдущей версии данных и весов&lt;br /&gt;
|-&lt;br /&gt;
| Инференс через Triton || 7 || Модель отдаётся сервером инференса || Сравнение задержки с обычным сервисом&lt;br /&gt;
|-&lt;br /&gt;
| Развёрнуто в кластере || 9 || Сервис работает в Kubernetes, упакован в чарт || Обновление без простоя и откат&lt;br /&gt;
|-&lt;br /&gt;
| Оптимизация замерена || 13 || Модель конвертирована, прирост измерен || Замер до и после с воспроизводимой методикой&lt;br /&gt;
|-&lt;br /&gt;
| Наблюдаемость собрана || 15 || Панель с метриками и оповещения || Разбор отказа по журналам и метрикам&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5197</id>
		<title>Современные технологии разработки сервисов анализа данных осень 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5197"/>
		<updated>2026-08-28T12:14:02Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Недели 6-8. Инфраструктура и инференс */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 1 (шестой курс)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: понедельник, 9:00-12:00 (две пары подряд)&lt;br /&gt;
* Первое занятие: 7 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
* Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Приглашённые практики&#039;&#039;&#039;&lt;br /&gt;
* Недели 9-11 ведёт приглашённый архитектор промышленных систем: ландшафт из сотен систем, работа под пиковой нагрузкой и разбор инцидентов, архитектурные компромиссы&lt;br /&gt;
&lt;br /&gt;
==Важная информация==&lt;br /&gt;
* Ссылка на чат: t.me || +T7rNR2iJblY1NjAy&lt;br /&gt;
* Задания сдаются на платформе https://akhcheck.ru, там же ведомость. Оценки не публикуются в вики по закону о персональных данных&lt;br /&gt;
* Дедлайны мягкие: за каждые три дня просрочки снимается 20% от баллов задания&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
Модель, которая хорошо работает в ноутбуке, и модель, которая держит нагрузку в продукте, различаются не качеством, а всем остальным: способом упаковки, воспроизводимостью данных, порядком выкатки, поведением под нагрузкой и тем, что происходит в момент отказа. Курс посвящён этому остальному.&lt;br /&gt;
&lt;br /&gt;
Мы берём одну модель и доводим её от кода на машине разработчика до сервиса, который переживает перезапуск, обновление и наплыв запросов. По дороге разбираем инструменты, которыми это делается в промышленности, и на каждом шаге отвечаем на вопрос, что именно ломается без этого инструмента.&lt;br /&gt;
&lt;br /&gt;
Курс посвящён &#039;&#039;&#039;эксплуатации моделей&#039;&#039;&#039;, а не их обучению. Мы не занимаемся распределённым обучением, не разбираем алгоритмы синхронизации градиентов и не соревнуемся в качестве моделей. Курс начинается с уже обученной модели и заканчивается сервисом, которым пользуются люди.&lt;br /&gt;
&lt;br /&gt;
Такое сужение сделано намеренно. Обучению моделей посвящены другие курсы программы, а вот доведению до работающего сервиса не посвящён почти никакой, хотя именно на этом участке теряется большинство проектов.&lt;br /&gt;
&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Занятия идут парами по понедельникам утром: первая пара разбирает тему, вторая отводится под работу руками.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NewsPulse&#039;&#039;&#039; мы собираем вместе в аудитории, шаг за шагом: он служит образцом, на котором видно целевое состояние каждого слоя.&lt;br /&gt;
&lt;br /&gt;
Собственный проект каждый ведёт сам, и &#039;&#039;&#039;брать его желательно из своей выпускной работы&#039;&#039;&#039;. Курс занимается ровно тем, чего у выпускных работ по машинному обучению обычно нет: модель обучена и показывает метрики, но запустить её у себя не может никто, кроме автора. Пройдя курс на своей теме, мы получаем не учебное задание в стол, а работающую часть выпускной работы, которую можно показать на защите.&lt;br /&gt;
&lt;br /&gt;
Тем, у кого подходящей темы нет, мы предлагаем готовую: &#039;&#039;&#039;CEREBRO&#039;&#039;&#039;, сервис анализа звучащей речи. Модель в нём та же, что и в аудиторном проекте, поэтому внимание уходит на инженерию, а не на возню с предметной областью.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на тех, кто уже уверенно пишет на Python с asyncio и Pydantic, работает с Git и SQL и запускал контейнеры. Вводных занятий по этим темам нет, мы начинаем сразу с нагруженного сервиса.&lt;br /&gt;
&lt;br /&gt;
Остальные темы разбираются с нуля в связке с изученными инструментами. Основное время уходит на связку, вокруг которой построен курс: MLOps, Kubernetes и serving моделей.&lt;br /&gt;
&lt;br /&gt;
Требуется готовность каждую неделю приносить растущий проект и разбираться с тем, что сломалось. Курс инженерный, и большая часть понимания приходит в момент, когда сервис не поднялся.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
Курс идёт пятнадцать недель. Каждая неделя состоит из лекции на 80 минут и семинара на 80 минут, семинар всегда про работу руками.&lt;br /&gt;
&lt;br /&gt;
Три недели в середине семестра ведёт приглашённый архитектор промышленных систем. Блок стоит после Triton намеренно: к нему мы уже собрали сервис, развернули его в кластере и увидели разницу между задержкой и пропускной способностью, поэтому разговор про ландшафт и инциденты ложится на собственный опыт, а не на воображение.&lt;br /&gt;
&lt;br /&gt;
=== Недели 1-5. Фундамент, взаимодействие и MLOps ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Высоконагруженные ML-системы: продакшн как 80 процентов работы, задержка против пропускной способности, физические ограничения сети, три паттерна инференса, блокировка цикла событий, контракты, структурное логирование || Проект на poetry, сервис с намеренной ошибкой, первый нагрузочный тест и починка&lt;br /&gt;
|-&lt;br /&gt;
| 2 || Продвинутая контейнеризация и конвейер сборки: multi-stage, distroless, образы с CUDA, тестирование внутри конвейера || Уменьшение образа, конвейер в GitLab CI, тесты сервиса&lt;br /&gt;
|-&lt;br /&gt;
| 3 || Асинхронные паттерны и высокая нагрузка: очереди сообщений, семантика доставки, отложенный инференс, обратное давление || Сервис, который читает задачи из очереди и пишет результат в другую&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Данные и модели: DVC, удалённые хранилища, реестр моделей, рассинхрон признаков между обучением и выводом || Связка DVC с MinIO и MLflow&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Оркестрация: Airflow 3, идемпотентность шага, изоляция ML-задач, непрерывное переобучение || DAG регулярного переобучения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Очереди стоят третьей неделей не случайно. На первом занятии задана рамка из трёх паттернов инференса, и потоковая обработка в ней только названа. Очереди её раскрывают, а без них дальше не собирается ни оркестрация, ни разговор про реальный ландшафт систем.&lt;br /&gt;
&lt;br /&gt;
=== Недели 6-8. Инфраструктура и инференс ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Инференс на сервере: Triton, репозиторий моделей, динамическое батчирование, бэкенды || Запуск Triton, конфигурация модели, сравнение с обычным сервисом&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Kubernetes: управляющий слой, поды, контроллеры, сервисы и внешний доступ, конфигурация и секреты || Развёртывание сервиса в локальном кластере, написание манифестов&lt;br /&gt;
|-&lt;br /&gt;
| 8 || Kubernetes для ML: запросы и лимиты ресурсов, классы обслуживания, планирование GPU, выделение узлов, Helm || Упаковка сервиса в чарт, разбор падения по памяти&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Kubernetes занимает две недели: одну на устройство самого кластера, вторую на то, что в нём меняется для ML-нагрузки. Связка Kubernetes с serving и MLOps и есть стержень курса.&lt;br /&gt;
&lt;br /&gt;
=== Недели 9-11. Блок приглашённого архитектора ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 9 || Анатомия ландшафта из сотен систем, интеграционные шаблоны, работа с унаследованным кодом || Студенты размещают свой сервис в схеме ландшафта и находят зависимости&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Пиковая нагрузка, SLA и SLO, плавная деградация, стратегии выкатки || Разбор настоящего инцидента в группах по его фактуре&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Компромиссы и нефункциональные требования, как архитектурные решения принимаются вместе с заказчиком || Проектирование архитектуры своего проекта в формате разбора решения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Недели 12-15. Производительность, языковые модели и финал ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 12 || Оптимизация инференса: ONNX и TensorRT, квантование, профилирование || Конвертация модели и подключение к Triton, замер роста пропускной способности&lt;br /&gt;
|-&lt;br /&gt;
| 13 || Serving больших языковых моделей и поиск с дополнением генерации: KV-кэш, непрерывное батчирование || Развёртывание модели через vLLM, сравнение скорости&lt;br /&gt;
|-&lt;br /&gt;
| 14 || Наблюдаемость: метрики системы против метрик модели, дрейф данных, трассировка и OpenTelemetry || Панель с задержкой и утилизацией GPU, сквозной трейс запроса&lt;br /&gt;
|-&lt;br /&gt;
| 15 || Итоги курса и тренды || Защита проектов&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Облачная инфраструктура с Terraform в программу не входит. Отказ осознанный: растягивать курс ещё на одну тему в ущерб связке Kubernetes и serving мы не стали.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Оценка складывается из баллов за домашние задания и за выпускной проект. Задания сдаются запросом на слияние в репозиторий курса, проверка автоматическая на https://akhcheck.ru, разбор ошибок ручной.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Для получения зачёта необходимо, чтобы проект удовлетворял всем условиям ниже. Предметная область значения не имеет: требования одинаковы и для темы выпускной работы, и для предложенной нами.&lt;br /&gt;
&lt;br /&gt;
* Сервис поднимается одной командой на чистой машине по написанной инструкции.&lt;br /&gt;
* Сборка образа и прогон проверок выполняются автоматическим конвейером, а не руками.&lt;br /&gt;
* Данные и веса модели версионированы, состояние эксперимента восстанавливается.&lt;br /&gt;
* Сервис переживает перезапуск без потери принятых, но не обработанных запросов.&lt;br /&gt;
* Есть набор проверок, который краснеет при поломке, и он запускается конвейером.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Защита проходит на живом сервисе. Мы запускаем его по инструкции автора, подаём нагрузку, смотрим на метрики и обсуждаем, где он сломается раньше всего. Отдельно проверяется откат: автор выкатывает заведомо испорченную версию и возвращает рабочую.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
&lt;br /&gt;
Дополнительные баллы даются за то, что выходит за рамки минимальных требований: замеры ускорения вывода с воспроизводимой методикой, автоматическое масштабирование под реальную нагрузку, оповещения, которые срабатывают до того, как отказ заметит пользователь.&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Вехи привязаны к темам занятий: каждая проверяется тем, что разбиралось на предыдущей неделе.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| Сервис держит нагрузку || 2 || Сервис отвечает под нагрузочным тестом || Прогон нагрузки и замер задержки&lt;br /&gt;
|-&lt;br /&gt;
| Сборка автоматическая || 3 || Образ собирается конвейером, тесты проходят || Зелёный pipeline в GitLab CI&lt;br /&gt;
|-&lt;br /&gt;
| Обработка вынесена в очередь || 4 || Тяжёлая задача уходит из обработчика запроса || Наплыв запросов без отказов&lt;br /&gt;
|-&lt;br /&gt;
| Данные версионированы || 6 || Восстановление состояния эксперимента || Откат к предыдущей версии данных и весов&lt;br /&gt;
|-&lt;br /&gt;
| Развёрнуто в кластере || 8 || Сервис работает в Kubernetes, упакован в чарт || Обновление без простоя и откат&lt;br /&gt;
|-&lt;br /&gt;
| Инференс через Triton || 9 || Модель отдаётся сервером инференса || Сравнение задержки с обычным сервисом&lt;br /&gt;
|-&lt;br /&gt;
| Оптимизация замерена || 13 || Модель конвертирована, прирост измерен || Замер до и после с воспроизводимой методикой&lt;br /&gt;
|-&lt;br /&gt;
| Наблюдаемость собрана || 15 || Панель с метриками и оповещения || Разбор отказа по журналам и метрикам&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5195</id>
		<title>Современные технологии разработки сервисов анализа данных осень 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5195"/>
		<updated>2026-08-28T11:06:29Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Важная информация */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 1 (шестой курс)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: понедельник, 9:00-12:00 (две пары подряд)&lt;br /&gt;
* Первое занятие: 7 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
* Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Приглашённые практики&#039;&#039;&#039;&lt;br /&gt;
* Недели 9-11 ведёт приглашённый архитектор промышленных систем: ландшафт из сотен систем, работа под пиковой нагрузкой и разбор инцидентов, архитектурные компромиссы&lt;br /&gt;
&lt;br /&gt;
==Важная информация==&lt;br /&gt;
* Ссылка на чат: t.me || +T7rNR2iJblY1NjAy&lt;br /&gt;
* Задания сдаются на платформе https://akhcheck.ru, там же ведомость. Оценки не публикуются в вики по закону о персональных данных&lt;br /&gt;
* Дедлайны мягкие: за каждые три дня просрочки снимается 20% от баллов задания&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
Модель, которая хорошо работает в ноутбуке, и модель, которая держит нагрузку в продукте, различаются не качеством, а всем остальным: способом упаковки, воспроизводимостью данных, порядком выкатки, поведением под нагрузкой и тем, что происходит в момент отказа. Курс посвящён этому остальному.&lt;br /&gt;
&lt;br /&gt;
Мы берём одну модель и доводим её от кода на машине разработчика до сервиса, который переживает перезапуск, обновление и наплыв запросов. По дороге разбираем инструменты, которыми это делается в промышленности, и на каждом шаге отвечаем на вопрос, что именно ломается без этого инструмента.&lt;br /&gt;
&lt;br /&gt;
Курс посвящён &#039;&#039;&#039;эксплуатации моделей&#039;&#039;&#039;, а не их обучению. Мы не занимаемся распределённым обучением, не разбираем алгоритмы синхронизации градиентов и не соревнуемся в качестве моделей. Курс начинается с уже обученной модели и заканчивается сервисом, которым пользуются люди.&lt;br /&gt;
&lt;br /&gt;
Такое сужение сделано намеренно. Обучению моделей посвящены другие курсы программы, а вот доведению до работающего сервиса не посвящён почти никакой, хотя именно на этом участке теряется большинство проектов.&lt;br /&gt;
&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Занятия идут парами по понедельникам утром: первая пара разбирает тему, вторая отводится под работу руками.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NewsPulse&#039;&#039;&#039; мы собираем вместе в аудитории, шаг за шагом: он служит образцом, на котором видно целевое состояние каждого слоя.&lt;br /&gt;
&lt;br /&gt;
Собственный проект каждый ведёт сам, и &#039;&#039;&#039;брать его желательно из своей выпускной работы&#039;&#039;&#039;. Курс занимается ровно тем, чего у выпускных работ по машинному обучению обычно нет: модель обучена и показывает метрики, но запустить её у себя не может никто, кроме автора. Пройдя курс на своей теме, мы получаем не учебное задание в стол, а работающую часть выпускной работы, которую можно показать на защите.&lt;br /&gt;
&lt;br /&gt;
Тем, у кого подходящей темы нет, мы предлагаем готовую: &#039;&#039;&#039;CEREBRO&#039;&#039;&#039;, сервис анализа звучащей речи. Модель в нём та же, что и в аудиторном проекте, поэтому внимание уходит на инженерию, а не на возню с предметной областью.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на тех, кто уже уверенно пишет на Python с asyncio и Pydantic, работает с Git и SQL и запускал контейнеры. Вводных занятий по этим темам нет, мы начинаем сразу с нагруженного сервиса.&lt;br /&gt;
&lt;br /&gt;
Остальные темы разбираются с нуля в связке с изученными инструментами. Основное время уходит на связку, вокруг которой построен курс: MLOps, Kubernetes и serving моделей.&lt;br /&gt;
&lt;br /&gt;
Требуется готовность каждую неделю приносить растущий проект и разбираться с тем, что сломалось. Курс инженерный, и большая часть понимания приходит в момент, когда сервис не поднялся.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
Курс идёт пятнадцать недель. Каждая неделя состоит из лекции на 80 минут и семинара на 80 минут, семинар всегда про работу руками.&lt;br /&gt;
&lt;br /&gt;
Три недели в середине семестра ведёт приглашённый архитектор промышленных систем. Блок стоит после Triton намеренно: к нему мы уже собрали сервис, развернули его в кластере и увидели разницу между задержкой и пропускной способностью, поэтому разговор про ландшафт и инциденты ложится на собственный опыт, а не на воображение.&lt;br /&gt;
&lt;br /&gt;
=== Недели 1-5. Фундамент, взаимодействие и MLOps ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Высоконагруженные ML-системы: продакшн как 80 процентов работы, задержка против пропускной способности, физические ограничения сети, три паттерна инференса, блокировка цикла событий, контракты, структурное логирование || Проект на poetry, сервис с намеренной ошибкой, первый нагрузочный тест и починка&lt;br /&gt;
|-&lt;br /&gt;
| 2 || Продвинутая контейнеризация и конвейер сборки: multi-stage, distroless, образы с CUDA, тестирование внутри конвейера || Уменьшение образа, конвейер в GitLab CI, тесты сервиса&lt;br /&gt;
|-&lt;br /&gt;
| 3 || Асинхронные паттерны и высокая нагрузка: очереди сообщений, семантика доставки, отложенный инференс, обратное давление || Сервис, который читает задачи из очереди и пишет результат в другую&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Данные и модели: DVC, удалённые хранилища, реестр моделей, рассинхрон признаков между обучением и выводом || Связка DVC с MinIO и MLflow&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Оркестрация: Airflow 3, идемпотентность шага, изоляция ML-задач, непрерывное переобучение || DAG регулярного переобучения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Очереди стоят третьей неделей не случайно. На первом занятии задана рамка из трёх паттернов инференса, и потоковая обработка в ней только названа. Очереди её раскрывают, а без них дальше не собирается ни оркестрация, ни разговор про реальный ландшафт систем.&lt;br /&gt;
&lt;br /&gt;
=== Недели 6-8. Инфраструктура и инференс ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Kubernetes: управляющий слой, поды, контроллеры, сервисы и внешний доступ, конфигурация и секреты || Развёртывание сервиса в локальном кластере, написание манифестов&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Kubernetes для ML: запросы и лимиты ресурсов, классы обслуживания, планирование GPU, выделение узлов, Helm || Упаковка сервиса в чарт, разбор падения по памяти&lt;br /&gt;
|-&lt;br /&gt;
| 8 || Инференс на сервере: Triton, репозиторий моделей, динамическое батчирование, бэкенды || Запуск Triton, конфигурация модели, сравнение с обычным сервисом&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Kubernetes занимает две недели: одну на устройство самого кластера, вторую на то, что в нём меняется для ML-нагрузки. Связка Kubernetes с serving и MLOps и есть стержень курса.&lt;br /&gt;
&lt;br /&gt;
=== Недели 9-11. Блок приглашённого архитектора ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 9 || Анатомия ландшафта из сотен систем, интеграционные шаблоны, работа с унаследованным кодом || Студенты размещают свой сервис в схеме ландшафта и находят зависимости&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Пиковая нагрузка, SLA и SLO, плавная деградация, стратегии выкатки || Разбор настоящего инцидента в группах по его фактуре&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Компромиссы и нефункциональные требования, как архитектурные решения принимаются вместе с заказчиком || Проектирование архитектуры своего проекта в формате разбора решения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Недели 12-15. Производительность, языковые модели и финал ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 12 || Оптимизация инференса: ONNX и TensorRT, квантование, профилирование || Конвертация модели и подключение к Triton, замер роста пропускной способности&lt;br /&gt;
|-&lt;br /&gt;
| 13 || Serving больших языковых моделей и поиск с дополнением генерации: KV-кэш, непрерывное батчирование || Развёртывание модели через vLLM, сравнение скорости&lt;br /&gt;
|-&lt;br /&gt;
| 14 || Наблюдаемость: метрики системы против метрик модели, дрейф данных, трассировка и OpenTelemetry || Панель с задержкой и утилизацией GPU, сквозной трейс запроса&lt;br /&gt;
|-&lt;br /&gt;
| 15 || Итоги курса и тренды || Защита проектов&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Облачная инфраструктура с Terraform в программу не входит. Отказ осознанный: растягивать курс ещё на одну тему в ущерб связке Kubernetes и serving мы не стали.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Оценка складывается из баллов за домашние задания и за выпускной проект. Задания сдаются запросом на слияние в репозиторий курса, проверка автоматическая на https://akhcheck.ru, разбор ошибок ручной.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Для получения зачёта необходимо, чтобы проект удовлетворял всем условиям ниже. Предметная область значения не имеет: требования одинаковы и для темы выпускной работы, и для предложенной нами.&lt;br /&gt;
&lt;br /&gt;
* Сервис поднимается одной командой на чистой машине по написанной инструкции.&lt;br /&gt;
* Сборка образа и прогон проверок выполняются автоматическим конвейером, а не руками.&lt;br /&gt;
* Данные и веса модели версионированы, состояние эксперимента восстанавливается.&lt;br /&gt;
* Сервис переживает перезапуск без потери принятых, но не обработанных запросов.&lt;br /&gt;
* Есть набор проверок, который краснеет при поломке, и он запускается конвейером.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Защита проходит на живом сервисе. Мы запускаем его по инструкции автора, подаём нагрузку, смотрим на метрики и обсуждаем, где он сломается раньше всего. Отдельно проверяется откат: автор выкатывает заведомо испорченную версию и возвращает рабочую.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
&lt;br /&gt;
Дополнительные баллы даются за то, что выходит за рамки минимальных требований: замеры ускорения вывода с воспроизводимой методикой, автоматическое масштабирование под реальную нагрузку, оповещения, которые срабатывают до того, как отказ заметит пользователь.&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Вехи привязаны к темам занятий: каждая проверяется тем, что разбиралось на предыдущей неделе.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| Сервис держит нагрузку || 2 || Сервис отвечает под нагрузочным тестом || Прогон нагрузки и замер задержки&lt;br /&gt;
|-&lt;br /&gt;
| Сборка автоматическая || 3 || Образ собирается конвейером, тесты проходят || Зелёный pipeline в GitLab CI&lt;br /&gt;
|-&lt;br /&gt;
| Обработка вынесена в очередь || 4 || Тяжёлая задача уходит из обработчика запроса || Наплыв запросов без отказов&lt;br /&gt;
|-&lt;br /&gt;
| Данные версионированы || 6 || Восстановление состояния эксперимента || Откат к предыдущей версии данных и весов&lt;br /&gt;
|-&lt;br /&gt;
| Развёрнуто в кластере || 8 || Сервис работает в Kubernetes, упакован в чарт || Обновление без простоя и откат&lt;br /&gt;
|-&lt;br /&gt;
| Инференс через Triton || 9 || Модель отдаётся сервером инференса || Сравнение задержки с обычным сервисом&lt;br /&gt;
|-&lt;br /&gt;
| Оптимизация замерена || 13 || Модель конвертирована, прирост измерен || Замер до и после с воспроизводимой методикой&lt;br /&gt;
|-&lt;br /&gt;
| Наблюдаемость собрана || 15 || Панель с метриками и оповещения || Разбор отказа по журналам и метрикам&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5194</id>
		<title>Современные технологии разработки сервисов анализа данных осень 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%BE%D1%81%D0%B5%D0%BD%D1%8C_2026&amp;diff=5194"/>
		<updated>2026-08-28T11:04:36Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Новая страница: «==Общие сведения== * Семестр: 1 (шестой курс) * Форма контроля: дифференцированный зачет * Дни и время занятий: понедельник, 9:00-12:00 (две пары подряд) * Первое занятие: 7 сентября 2026 года  &amp;#039;&amp;#039;&amp;#039;Преподаватель&amp;#039;&amp;#039;&amp;#039; * Ахтямов Павел  &amp;#039;&amp;#039;&amp;#039;Приглашённые практики&amp;#039;&amp;#039;&amp;#039; * Недели 9-11 вед...»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 1 (шестой курс)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: понедельник, 9:00-12:00 (две пары подряд)&lt;br /&gt;
* Первое занятие: 7 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
* Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Приглашённые практики&#039;&#039;&#039;&lt;br /&gt;
* Недели 9-11 ведёт приглашённый архитектор промышленных систем: ландшафт из сотен систем, работа под пиковой нагрузкой и разбор инцидентов, архитектурные компромиссы&lt;br /&gt;
&lt;br /&gt;
==Важная информация==&lt;br /&gt;
* Ссылка на чат: [ссылка]&lt;br /&gt;
* Задания сдаются на платформе https://akhcheck.ru, там же ведомость. Оценки не публикуются в вики по закону о персональных данных&lt;br /&gt;
* Дедлайны мягкие: за каждые три дня просрочки снимается 20% от баллов задания&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
Модель, которая хорошо работает в ноутбуке, и модель, которая держит нагрузку в продукте, различаются не качеством, а всем остальным: способом упаковки, воспроизводимостью данных, порядком выкатки, поведением под нагрузкой и тем, что происходит в момент отказа. Курс посвящён этому остальному.&lt;br /&gt;
&lt;br /&gt;
Мы берём одну модель и доводим её от кода на машине разработчика до сервиса, который переживает перезапуск, обновление и наплыв запросов. По дороге разбираем инструменты, которыми это делается в промышленности, и на каждом шаге отвечаем на вопрос, что именно ломается без этого инструмента.&lt;br /&gt;
&lt;br /&gt;
Курс посвящён &#039;&#039;&#039;эксплуатации моделей&#039;&#039;&#039;, а не их обучению. Мы не занимаемся распределённым обучением, не разбираем алгоритмы синхронизации градиентов и не соревнуемся в качестве моделей. Курс начинается с уже обученной модели и заканчивается сервисом, которым пользуются люди.&lt;br /&gt;
&lt;br /&gt;
Такое сужение сделано намеренно. Обучению моделей посвящены другие курсы программы, а вот доведению до работающего сервиса не посвящён почти никакой, хотя именно на этом участке теряется большинство проектов.&lt;br /&gt;
&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Занятия идут парами по понедельникам утром: первая пара разбирает тему, вторая отводится под работу руками.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NewsPulse&#039;&#039;&#039; мы собираем вместе в аудитории, шаг за шагом: он служит образцом, на котором видно целевое состояние каждого слоя.&lt;br /&gt;
&lt;br /&gt;
Собственный проект каждый ведёт сам, и &#039;&#039;&#039;брать его желательно из своей выпускной работы&#039;&#039;&#039;. Курс занимается ровно тем, чего у выпускных работ по машинному обучению обычно нет: модель обучена и показывает метрики, но запустить её у себя не может никто, кроме автора. Пройдя курс на своей теме, мы получаем не учебное задание в стол, а работающую часть выпускной работы, которую можно показать на защите.&lt;br /&gt;
&lt;br /&gt;
Тем, у кого подходящей темы нет, мы предлагаем готовую: &#039;&#039;&#039;CEREBRO&#039;&#039;&#039;, сервис анализа звучащей речи. Модель в нём та же, что и в аудиторном проекте, поэтому внимание уходит на инженерию, а не на возню с предметной областью.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на тех, кто уже уверенно пишет на Python с asyncio и Pydantic, работает с Git и SQL и запускал контейнеры. Вводных занятий по этим темам нет, мы начинаем сразу с нагруженного сервиса.&lt;br /&gt;
&lt;br /&gt;
Остальные темы разбираются с нуля в связке с изученными инструментами. Основное время уходит на связку, вокруг которой построен курс: MLOps, Kubernetes и serving моделей.&lt;br /&gt;
&lt;br /&gt;
Требуется готовность каждую неделю приносить растущий проект и разбираться с тем, что сломалось. Курс инженерный, и большая часть понимания приходит в момент, когда сервис не поднялся.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
Курс идёт пятнадцать недель. Каждая неделя состоит из лекции на 80 минут и семинара на 80 минут, семинар всегда про работу руками.&lt;br /&gt;
&lt;br /&gt;
Три недели в середине семестра ведёт приглашённый архитектор промышленных систем. Блок стоит после Triton намеренно: к нему мы уже собрали сервис, развернули его в кластере и увидели разницу между задержкой и пропускной способностью, поэтому разговор про ландшафт и инциденты ложится на собственный опыт, а не на воображение.&lt;br /&gt;
&lt;br /&gt;
=== Недели 1-5. Фундамент, взаимодействие и MLOps ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 1 || Высоконагруженные ML-системы: продакшн как 80 процентов работы, задержка против пропускной способности, физические ограничения сети, три паттерна инференса, блокировка цикла событий, контракты, структурное логирование || Проект на poetry, сервис с намеренной ошибкой, первый нагрузочный тест и починка&lt;br /&gt;
|-&lt;br /&gt;
| 2 || Продвинутая контейнеризация и конвейер сборки: multi-stage, distroless, образы с CUDA, тестирование внутри конвейера || Уменьшение образа, конвейер в GitLab CI, тесты сервиса&lt;br /&gt;
|-&lt;br /&gt;
| 3 || Асинхронные паттерны и высокая нагрузка: очереди сообщений, семантика доставки, отложенный инференс, обратное давление || Сервис, который читает задачи из очереди и пишет результат в другую&lt;br /&gt;
|-&lt;br /&gt;
| 4 || Данные и модели: DVC, удалённые хранилища, реестр моделей, рассинхрон признаков между обучением и выводом || Связка DVC с MinIO и MLflow&lt;br /&gt;
|-&lt;br /&gt;
| 5 || Оркестрация: Airflow 3, идемпотентность шага, изоляция ML-задач, непрерывное переобучение || DAG регулярного переобучения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Очереди стоят третьей неделей не случайно. На первом занятии задана рамка из трёх паттернов инференса, и потоковая обработка в ней только названа. Очереди её раскрывают, а без них дальше не собирается ни оркестрация, ни разговор про реальный ландшафт систем.&lt;br /&gt;
&lt;br /&gt;
=== Недели 6-8. Инфраструктура и инференс ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 6 || Kubernetes: управляющий слой, поды, контроллеры, сервисы и внешний доступ, конфигурация и секреты || Развёртывание сервиса в локальном кластере, написание манифестов&lt;br /&gt;
|-&lt;br /&gt;
| 7 || Kubernetes для ML: запросы и лимиты ресурсов, классы обслуживания, планирование GPU, выделение узлов, Helm || Упаковка сервиса в чарт, разбор падения по памяти&lt;br /&gt;
|-&lt;br /&gt;
| 8 || Инференс на сервере: Triton, репозиторий моделей, динамическое батчирование, бэкенды || Запуск Triton, конфигурация модели, сравнение с обычным сервисом&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Kubernetes занимает две недели: одну на устройство самого кластера, вторую на то, что в нём меняется для ML-нагрузки. Связка Kubernetes с serving и MLOps и есть стержень курса.&lt;br /&gt;
&lt;br /&gt;
=== Недели 9-11. Блок приглашённого архитектора ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 9 || Анатомия ландшафта из сотен систем, интеграционные шаблоны, работа с унаследованным кодом || Студенты размещают свой сервис в схеме ландшафта и находят зависимости&lt;br /&gt;
|-&lt;br /&gt;
| 10 || Пиковая нагрузка, SLA и SLO, плавная деградация, стратегии выкатки || Разбор настоящего инцидента в группах по его фактуре&lt;br /&gt;
|-&lt;br /&gt;
| 11 || Компромиссы и нефункциональные требования, как архитектурные решения принимаются вместе с заказчиком || Проектирование архитектуры своего проекта в формате разбора решения&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Недели 12-15. Производительность, языковые модели и финал ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! № !! Лекция !! Семинар&lt;br /&gt;
|-&lt;br /&gt;
| 12 || Оптимизация инференса: ONNX и TensorRT, квантование, профилирование || Конвертация модели и подключение к Triton, замер роста пропускной способности&lt;br /&gt;
|-&lt;br /&gt;
| 13 || Serving больших языковых моделей и поиск с дополнением генерации: KV-кэш, непрерывное батчирование || Развёртывание модели через vLLM, сравнение скорости&lt;br /&gt;
|-&lt;br /&gt;
| 14 || Наблюдаемость: метрики системы против метрик модели, дрейф данных, трассировка и OpenTelemetry || Панель с задержкой и утилизацией GPU, сквозной трейс запроса&lt;br /&gt;
|-&lt;br /&gt;
| 15 || Итоги курса и тренды || Защита проектов&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Облачная инфраструктура с Terraform в программу не входит. Отказ осознанный: растягивать курс ещё на одну тему в ущерб связке Kubernetes и serving мы не стали.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Оценка складывается из баллов за домашние задания и за выпускной проект. Задания сдаются запросом на слияние в репозиторий курса, проверка автоматическая на https://akhcheck.ru, разбор ошибок ручной.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Для получения зачёта необходимо, чтобы проект удовлетворял всем условиям ниже. Предметная область значения не имеет: требования одинаковы и для темы выпускной работы, и для предложенной нами.&lt;br /&gt;
&lt;br /&gt;
* Сервис поднимается одной командой на чистой машине по написанной инструкции.&lt;br /&gt;
* Сборка образа и прогон проверок выполняются автоматическим конвейером, а не руками.&lt;br /&gt;
* Данные и веса модели версионированы, состояние эксперимента восстанавливается.&lt;br /&gt;
* Сервис переживает перезапуск без потери принятых, но не обработанных запросов.&lt;br /&gt;
* Есть набор проверок, который краснеет при поломке, и он запускается конвейером.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Защита проходит на живом сервисе. Мы запускаем его по инструкции автора, подаём нагрузку, смотрим на метрики и обсуждаем, где он сломается раньше всего. Отдельно проверяется откат: автор выкатывает заведомо испорченную версию и возвращает рабочую.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
&lt;br /&gt;
Дополнительные баллы даются за то, что выходит за рамки минимальных требований: замеры ускорения вывода с воспроизводимой методикой, автоматическое масштабирование под реальную нагрузку, оповещения, которые срабатывают до того, как отказ заметит пользователь.&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Вехи привязаны к темам занятий: каждая проверяется тем, что разбиралось на предыдущей неделе.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| Сервис держит нагрузку || 2 || Сервис отвечает под нагрузочным тестом || Прогон нагрузки и замер задержки&lt;br /&gt;
|-&lt;br /&gt;
| Сборка автоматическая || 3 || Образ собирается конвейером, тесты проходят || Зелёный pipeline в GitLab CI&lt;br /&gt;
|-&lt;br /&gt;
| Обработка вынесена в очередь || 4 || Тяжёлая задача уходит из обработчика запроса || Наплыв запросов без отказов&lt;br /&gt;
|-&lt;br /&gt;
| Данные версионированы || 6 || Восстановление состояния эксперимента || Откат к предыдущей версии данных и весов&lt;br /&gt;
|-&lt;br /&gt;
| Развёрнуто в кластере || 8 || Сервис работает в Kubernetes, упакован в чарт || Обновление без простоя и откат&lt;br /&gt;
|-&lt;br /&gt;
| Инференс через Triton || 9 || Модель отдаётся сервером инференса || Сравнение задержки с обычным сервисом&lt;br /&gt;
|-&lt;br /&gt;
| Оптимизация замерена || 13 || Модель конвертирована, прирост измерен || Замер до и после с воспроизводимой методикой&lt;br /&gt;
|-&lt;br /&gt;
| Наблюдаемость собрана || 15 || Панель с метриками и оповещения || Разбор отказа по журналам и метрикам&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5130</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5130"/>
		<updated>2026-08-26T08:03:45Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Кому подойдёт */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: нет ограничений&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/6a8e9d836d2d7354e26e4666&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: https://t.me/+ywvmwhtUG-syMTUy&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5129</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5129"/>
		<updated>2026-08-26T08:03:33Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: нет ограничений&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/6a8e9d836d2d7354e26e4666&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: https://t.me/+ywvmwhtUG-syMTUy&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5128</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5128"/>
		<updated>2026-08-26T08:03:19Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Регистрация на курс */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: нет ограничений&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/6a8e9d836d2d7354e26e4666&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: https://t.me/+ywvmwhtUG-syMTUy&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5127</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5127"/>
		<updated>2026-08-26T08:00:59Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: нет ограничений&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: [ссылка на форму]&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: https://t.me/+ywvmwhtUG-syMTUy&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5126</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5126"/>
		<updated>2026-08-26T08:00:09Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Актуальные новости */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: [ссылка на форму]&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: https://t.me/+ywvmwhtUG-syMTUy&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5125</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5125"/>
		<updated>2026-08-26T07:59:39Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Кому подойдёт */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на две группы сразу, и обе одинаково уместны на факультативе.&lt;br /&gt;
&lt;br /&gt;
1. Те, кто уже пишет код и хочет научиться доводить его до работающего продукта за кратчайшие сроки.&lt;br /&gt;
2. Вторая - те, кто чувствует, что отрасль ушла вперёд, и хочет догнать: инструменты сменились за два года, и разрыв набирается быстро.&lt;br /&gt;
&lt;br /&gt;
Опыт работы с языковыми моделями не требуется, инструменты разбираются с нуля. Требуется: &#039;&#039;&#039;готовность каждую неделю приносить на пару свой растущий проект&#039;&#039;&#039;. Курс построен на нём, и без проекта смотреть будет не на что.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: [ссылка на форму]&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: [ссылка на чат]&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5124</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5124"/>
		<updated>2026-08-26T07:57:55Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Кому подойдёт */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на тех, кто уже писал код (или догнать уходящий поезд) и хочет научиться доводить его до работающего продукта. Опыт работы с языковыми моделями не требуется: инструменты разбираются с нуля. Требуется готовность каждую неделю приносить на пару свой растущий проект.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: [ссылка на форму]&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: [ссылка на чат]&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5123</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5123"/>
		<updated>2026-08-26T07:56:43Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* План курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на тех, кто уже писал код и хочет научиться доводить его до работающего продукта. Опыт работы с языковыми моделями не требуется: инструменты разбираются с нуля. Требуется готовность каждую неделю приносить на пару свой растущий проект.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: [ссылка на форму]&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: [ссылка на чат]&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5122</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2026&amp;diff=5122"/>
		<updated>2026-08-26T07:56:14Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Инициация агентов&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30&lt;br /&gt;
* Первое занятие: 1 сентября 2026 года&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==О курсе==&lt;br /&gt;
&lt;br /&gt;
За два года генерация кода перестала быть фокусом и стала рабочим инструментом. Вместе с этим сменился и дефицит: писать код научились все, а вот доводить написанное до продукта, который работает у других людей, по-прежнему умеют немногие.&lt;br /&gt;
&lt;br /&gt;
Курс отвечает именно на такой запрос. Мы не учимся просить у модели функции - мы строим вокруг агента инженерную обвязку: намерение, спецификацию, проверки, права, цену запуска, выкатку. Профессия, которая из этого складывается, называется &#039;&#039;&#039;agentic engineering&#039;&#039;&#039;, и на рынке она уже оплачивается отдельно от разработки.&lt;br /&gt;
&lt;br /&gt;
=== Чем курс отличается от прошлого года ===&lt;br /&gt;
&lt;br /&gt;
Курс 2025 года отвечал на вопрос «что умеют языковые модели». Курс 2026 отвечает на другой: &#039;&#039;&#039;почему решение, собранное за вечер, не доживает до production и не масштабируется, и что с этим делать&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Поэтому курс развивается в 3 направлениях.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Первое: проверяемость.&#039;&#039;&#039; Можно ли доверять тому, что сделано, не перечитывая код глазами. Сюда входит спецификация, по которой работу принимает машина, детерминированный набор проверок и независимый проверяющий, который ищет расхождения вместо автора. Работа считается сделанной, когда это подтвердил прогон, а не автор.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Второе: границы.&#039;&#039;&#039; Что произойдёт, когда что-то пойдёт не так. Права агента и матрица разрешений, цена запуска и лимиты, модель угроз, векторы атак на собственный продукт, откат и учения по отказу. Решение доживает до production не потому, что в нём нет ошибок, а потому, что известно, где оно остановится.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Третье: передаваемость.&#039;&#039;&#039; Может ли с продуктом работать кто-то кроме автора: агент, другой человек, сам автор через полгода. Отсюда репозиторий, готовый для агента, собственные скиллы и серверы MCP, цикл без участия человека, комплект передачи и запуск руками постороннего. Именно здесь решается, масштабируется решение или упирается в своего создателя.&lt;br /&gt;
=== Формат ===&lt;br /&gt;
&lt;br /&gt;
Каждая пара устроена одинаково: короткая витрина работ, разбор темы, практика на своём проекте. С третьей недели пара открывается тремя минутами показа - два-три студента выводят свой продукт на экран и запускают его. Не рассказывают, а запускают.&lt;br /&gt;
&lt;br /&gt;
Сквозной пример курса - &#039;&#039;&#039;«Дежурный по дедлайнам»&#039;&#039;&#039;: сервис личных сроков, который преподаватель ведёт параллельно с группой. Студент видит целевое состояние каждого слоя, а тему своего проекта выбирает сам.&lt;br /&gt;
&lt;br /&gt;
=== Кому подойдёт ===&lt;br /&gt;
&lt;br /&gt;
Курс рассчитан на тех, кто уже писал код и хочет научиться доводить его до работающего продукта. Опыт работы с языковыми моделями не требуется: инструменты разбираются с нуля. Требуется готовность каждую неделю приносить на пару свой растущий проект.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: [ссылка на форму]&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: [ссылка на чат]&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
Четыре пары в ноябре ведут приглашённые практики. Порядок тем сложился по их датам, поэтому цикл без человека стоит после гостевого блока, а не до него.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Agentic engineering как профессия.&#039;&#039;&#039; Что изменилось за два года, где проходит граница между генерацией кода и инженерией агентов. Проверка фактов и работа с источниками. Замер на отдельной задаче.&lt;br /&gt;
&lt;br /&gt;
2. &#039;&#039;&#039;Рабочая среда агента и инженерный минимум.&#039;&#039;&#039; Настройка среды, репозиторий, первый коммит, набор проверок. Продукт поднимается локально.&lt;br /&gt;
&lt;br /&gt;
3. &#039;&#039;&#039;Intent engineering.&#039;&#039;&#039; Как превратить расплывчатое желание в намерение, по которому агент способен работать. Бриф и каркас продукта по нему.&lt;br /&gt;
&lt;br /&gt;
4. &#039;&#039;&#039;Spec-Driven Development.&#039;&#039;&#039; Спецификация, разбиение на задачи, реализация под тесты. Работа принимается зелёным прогоном, а не мнением автора.&lt;br /&gt;
&lt;br /&gt;
5. &#039;&#039;&#039;Skills Engineering и Model Context Protocol.&#039;&#039;&#039; Свой скилл под задачу проекта, подключение серверов MCP, вызов инструмента в журнале агента.&lt;br /&gt;
&lt;br /&gt;
6. &#039;&#039;&#039;Архитектура, ADR и репозиторий, готовый для агента.&#039;&#039;&#039; Схема решения, записи о принятых решениях, правила репозитория, работа через ветки и pull request.&lt;br /&gt;
&lt;br /&gt;
7. &#039;&#039;&#039;Детерминированная проверка.&#039;&#039;&#039; Набор проверок, запускаемый одной командой. Что проверяется машиной, а что остаётся человеку. Видимость решения для поисковых роботов и агентов: что достаётся тому, кто не выполняет JavaScript, и как это проверить машиной.&lt;br /&gt;
&lt;br /&gt;
8. &#039;&#039;&#039;Независимый проверяющий.&#039;&#039;&#039; Проверяет не тот, кто делал: инструкция проверяющего, отчёт о расхождениях со спецификацией.&lt;br /&gt;
&lt;br /&gt;
9. &#039;&#039;&#039;Harness: права, данные и цена.&#039;&#039;&#039; Модель угроз, матрица разрешений, лимиты и стоимость запуска. Проверка прав в конвейере сборки.&lt;br /&gt;
&lt;br /&gt;
10. &#039;&#039;&#039;ИИ в автотестировании, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Внутреннее устройство агента: цикл вокруг модели, набор инструментов, память, перехват фактических вызовов. Разработка собственного конвейера.&lt;br /&gt;
&lt;br /&gt;
11. &#039;&#039;&#039;Свои агенты и свой сервер MCP, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Написание собственного сервера Model Context Protocol и собственных агентов под свою задачу. Не субагенты, а самостоятельные программы.&lt;br /&gt;
&lt;br /&gt;
12. &#039;&#039;&#039;Безопасность агентной разработки, часть первая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Как ломаются агентные решения: векторы атак, найденные на своём проекте.&lt;br /&gt;
&lt;br /&gt;
13. &#039;&#039;&#039;Безопасность агентной разработки, часть вторая.&#039;&#039;&#039; &#039;&#039;Приглашённый практик.&#039;&#039; Защита: проверка безопасности в конвейере, падающая на подложенной проблеме.&lt;br /&gt;
&lt;br /&gt;
14. &#039;&#039;&#039;Loop Engineering.&#039;&#039;&#039; Цикл, который работает без человека: выбирает задачу, вносит изменение, открывает pull request. Где ставить границы такому циклу.&lt;br /&gt;
&lt;br /&gt;
15. &#039;&#039;&#039;Выкатка и эксплуатация.&#039;&#039;&#039; Развёрнутая версия, откат, учения по отказу. Продукт становится доступен в сети. Состязательная приёмка.&lt;br /&gt;
&lt;br /&gt;
Защита проектов проходит в зачётную сессию.&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс проверяет одно: способность довести решение до состояния, когда оно запускается и работает у человека, который видит его впервые.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект, включающий:&lt;br /&gt;
* Frontend, Backend и хранилище данных&lt;br /&gt;
* Набор проверок, запускаемый одной командой&lt;br /&gt;
* Развёрнутую версию, доступную по сети&lt;br /&gt;
* Спецификацию, по которой проект можно проверить независимо&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся ссылкой на репозиторий и отчётом на почту akhtyamov@phystech.edu. Отчёт содержит:&lt;br /&gt;
* спецификацию и разбиение на задачи;&lt;br /&gt;
* что пришлось доработать руками и почему;&lt;br /&gt;
* какие серверы MCP и скиллы использовались;&lt;br /&gt;
* какие модели применялись и на каких задачах;&lt;br /&gt;
* отчёт независимого проверяющего с найденными расхождениями.&lt;br /&gt;
&lt;br /&gt;
=== Проверка на защите ===&lt;br /&gt;
&lt;br /&gt;
Проект разворачивает и запускает другой человек по инструкции из репозитория. Если запуск требует вопросов автору, комплект передачи неполный.&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* Работающий цикл без участия человека с заданными границами&lt;br /&gt;
* Своя проверка безопасности, падающая на подложенной проблеме&lt;br /&gt;
* Настройка агентов через инструменты с низким порогом входа (n8n, SourceCraft)&lt;br /&gt;
* Собственные серверы MCP под задачи проекта&lt;br /&gt;
&lt;br /&gt;
=== Вехи по ходу семестра ===&lt;br /&gt;
&lt;br /&gt;
Проект сдаётся не одним куском в декабре. Пять раз за семестр он проходит короткую проверку, и каждая привязана к теме, которая только что разбиралась.&lt;br /&gt;
&lt;br /&gt;
Веха занимает пять минут и проверяется запуском, а не рассказом. Пропущенная веха не закрывает дорогу дальше, но к защите все пять должны быть пройдены.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Веха !! Неделя !! Что показываем !! Чем проверяется&lt;br /&gt;
|-&lt;br /&gt;
| В1. Продукт поднимается || 2 || репозиторий, первый коммит, набор проверок || сервис запускается на машине преподавателя&lt;br /&gt;
|-&lt;br /&gt;
| В2. Намерение и спецификация || 4 || бриф, спецификация, разбиение на задачи, одна задача сделана || прогон проверок зелёный&lt;br /&gt;
|-&lt;br /&gt;
| В3. Репозиторий готов для агента || 6 || схема решения, записи о решениях, правила репозитория, работа через ветки || pull request с зелёной сборкой&lt;br /&gt;
|-&lt;br /&gt;
| В4. Проверяемость || 8 || полный набор проверок, отчёт независимого проверяющего || отчёт содержит найденные расхождения со спецификацией&lt;br /&gt;
|-&lt;br /&gt;
| В5. Границы и цена || 9 || модель угроз, матрица прав, лимиты || конвейер падает на попытке опасного действия&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Логика вех простая. Первые две отвечают на вопрос «есть ли вообще продукт», третья и четвёртая - «можно ли ему доверять», пятая - «что будет, когда что-то пойдёт не так».&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать один из предложенных проектов или предложить свой по согласованию с преподавателем. Для согласования нестандартной темы необходимо написать на почту akhtyamov@phystech.edu с описанием и мотивацией выбора.&lt;br /&gt;
&lt;br /&gt;
Описание проекта даётся в минимальном виде намеренно: задача студента - развить его самому, ограничивая при этом фантазию модели.&lt;br /&gt;
&lt;br /&gt;
Уровни различаются не размером, а числом тем курса, которые задача поднимает. Простая задача проверяет, что человек довёл дело до конца. Задача на десять требует доказать правильность решения машиной, а не показать её на примере.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня не содержат сложных правил. Проверяется одно: продукт работает, разворачивается и запускается человеком со стороны.&lt;br /&gt;
&lt;br /&gt;
1. Трекер личных дедлайнов:&lt;br /&gt;
* срок с датой и напоминанием&lt;br /&gt;
* список того, что горит сегодня&lt;br /&gt;
* отметка выполненного&lt;br /&gt;
* фильтр по проектам&lt;br /&gt;
2. Kanban-доска (упрощённый Trello):&lt;br /&gt;
* создание задач и досок&lt;br /&gt;
* назначение задач пользователям&lt;br /&gt;
* статусы задач&lt;br /&gt;
* ограничение числа задач в одном статусе&lt;br /&gt;
3. Дашборд успеваемости:&lt;br /&gt;
* студенты, предметы, оценки&lt;br /&gt;
* средний балл по предмету&lt;br /&gt;
* график успеваемости&lt;br /&gt;
* топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
&lt;br /&gt;
Здесь появляется первое правило, которое легко описать неточно. Спецификация перестаёт быть формальностью.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Обменник дежурствами.&#039;&#039;&#039; Участники меняются сменами по правилам: не больше двух смен подряд, нельзя ставить смену в свой выходной, замена требует согласия обеих сторон.&lt;br /&gt;
* заявка на замену и ответ на неё&lt;br /&gt;
* проверка правил при подтверждении&lt;br /&gt;
* история изменений графика&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, детерминированная проверка&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Мини-маркетплейс объявлений.&#039;&#039;&#039; Классическая витрина, усложнённая модерацией: объявление публикуется не сразу, а после проверки по списку правил.&lt;br /&gt;
* объявления с фотографиями, категории, поиск&lt;br /&gt;
* очередь модерации с причинами отказа&lt;br /&gt;
* повторная подача после исправления&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
&lt;br /&gt;
На этом уровне у задачи есть проверяемый инвариант и опасное действие. Модель угроз и матрица прав перестают быть бумажными.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Учёт общих расходов с делением счёта.&#039;&#039;&#039; Кто за кого заплатил, кто кому должен, взаимозачёт долгов внутри группы.&lt;br /&gt;
* внесение траты с произвольным делением между участниками&lt;br /&gt;
* пересчёт взаимных долгов после каждой траты&lt;br /&gt;
* закрытие долга переводом&lt;br /&gt;
* &#039;&#039;инвариант: сумма всех долгов равна нулю в любой момент&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, права на опасное действие&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик встреч по календарям участников.&#039;&#039;&#039; Сервис находит общее окно, учитывая занятость, часовые пояса и приоритет участников.&lt;br /&gt;
* занятость каждого участника&lt;br /&gt;
* поиск ближайшего подходящего окна&lt;br /&gt;
* учёт часовых поясов и перехода через полночь&lt;br /&gt;
* &#039;&#039;инвариант: предложенное окно свободно у всех приглашённых&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, краевые случаи&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Помощник по базе знаний с бюджетом.&#039;&#039;&#039; Отвечает на вопросы по загруженным документам и тратит на это деньги, поэтому знает свои лимиты.&lt;br /&gt;
* загрузка документов и поиск по ним&lt;br /&gt;
* лимит трат в день и на один запрос&lt;br /&gt;
* понятный отказ при исчерпании лимита вместо превышения&lt;br /&gt;
* &#039;&#039;темы курса: harness, цена запуска, деградация&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Очередь задач с приоритетами.&#039;&#039;&#039; Задачи разбираются исполнителями по правилам, и правила меняются на ходу.&lt;br /&gt;
* добавление задачи с приоритетом и сроком&lt;br /&gt;
* выдача следующей задачи исполнителю&lt;br /&gt;
* повышение приоритета у долго ждущих&lt;br /&gt;
* &#039;&#039;инвариант: ни одна задача не ждёт дольше заданного срока&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, цикл без человека&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
Задачи этого уровня отличаются одним: правильность решения неочевидна, и её нужно доказать машиной, а не показать на примере.&lt;br /&gt;
&lt;br /&gt;
1. &#039;&#039;&#039;Зачёт взаимных долгов.&#039;&#039;&#039; Развитие задачи про общие расходы: сервис не просто считает долги, а сводит их к минимальному числу переводов.&lt;br /&gt;
* сведение долгов в группе любого размера&lt;br /&gt;
* &#039;&#039;доказать: число переводов минимально, а итоговые балансы совпадают с исходными&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: спецификация, независимый проверяющий, проверка на сгенерированных данных&#039;&#039;&lt;br /&gt;
2. &#039;&#039;&#039;Планировщик с гарантией отсутствия голодания.&#039;&#039;&#039; Развитие очереди задач: система распределяет работу так, что ни один исполнитель и ни одна задача не остаются без внимания.&lt;br /&gt;
* распределение задач по исполнителям с учётом загрузки&lt;br /&gt;
* &#039;&#039;доказать: при непрерывном потоке ни одна задача не ждёт дольше границы&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: цикл без человека, проверка инварианта под нагрузкой&#039;&#039;&lt;br /&gt;
3. &#039;&#039;&#039;Платформа A/B-тестирования.&#039;&#039;&#039; Эксперименты над собственным продуктом с честной статистикой.&lt;br /&gt;
* создание эксперимента и разделение пользователей&lt;br /&gt;
* библиотека для получения варианта&lt;br /&gt;
* сбор метрик и проверка статистической значимости&lt;br /&gt;
* &#039;&#039;доказать: разделение устойчиво, пользователь не меняет вариант между заходами&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: проверяемость, работа с данными&#039;&#039;&lt;br /&gt;
4. &#039;&#039;&#039;Доска для ретроспектив в реальном времени.&#039;&#039;&#039; Несколько человек работают одновременно, и результат не зависит от порядка действий.&lt;br /&gt;
* стикеры, перемещение, голосование&lt;br /&gt;
* синхронизация между участниками&lt;br /&gt;
* &#039;&#039;доказать: одновременные правки не теряются и приводят к одинаковому состоянию у всех&#039;&#039;&lt;br /&gt;
* &#039;&#039;темы курса: краевые случаи, состязательная приёмка&#039;&#039;&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2026&amp;diff=4469</id>
		<title>Современные технологии разработки сервисов анализа данных весна 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2026&amp;diff=4469"/>
		<updated>2026-02-01T18:29:19Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Общие сведения =&lt;br /&gt;
* Семестр: 2 (пятый курс)&lt;br /&gt;
* Формат: онлайн&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
== Важная информация ==&lt;br /&gt;
* Ссылка на чат: t.me || +cY72YwYHMP4xZGQy&lt;br /&gt;
* &#039;&#039;&#039;[Текущие оценки]&#039;&#039;&#039; (По закону о хранении персональных данных ведомости будут доступны на сайте https://akhcheck.ru)&lt;br /&gt;
* Дедлайны будут мягкими: с просрочкой на 20% каждые три дня&lt;br /&gt;
&lt;br /&gt;
= Преподаватели =&lt;br /&gt;
** [[ Участник:Ахтямов_Павел | Павел Ахтямов ]] (akhtyamovpavel at akhpl.ru, t.me - akhtyamovpavel)&lt;br /&gt;
&lt;br /&gt;
= План курса =&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Дата&lt;br /&gt;
! Тема&lt;br /&gt;
|-&lt;br /&gt;
| 02.02.2026 || Анонс. Повторяем Workflow в Git&lt;br /&gt;
|-&lt;br /&gt;
| 09.02.2026 || Bash-скрипты для Agentic LLM&lt;br /&gt;
|-&lt;br /&gt;
| 16.02.2026 || API и прототипирование сервисов. Сетевой стек. Паттерны DAO/DTO/Service/Repository&lt;br /&gt;
|-&lt;br /&gt;
| 02.03.2026 || Масштабирование асинхронных сервисов - очереди сообщений и шины данных&lt;br /&gt;
|-&lt;br /&gt;
| 16.03.2026 || Работа с объектными хранилищами. Масштабирование нагрузки для сервисов анализа данных&lt;br /&gt;
|-&lt;br /&gt;
| 23.03.2026 || Тестирование ML-сервисов. TDD как основной принцип сдерживания LLM-моделей&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Оценивание =&lt;br /&gt;
&lt;br /&gt;
Оценивание производиться по сумме баллов за курсы.&lt;br /&gt;
&lt;br /&gt;
Задания будут сдаваться на платформе https://akhcheck.ru. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Дедлайн&lt;br /&gt;
|-&lt;br /&gt;
| Тестовое задание (для знакомства с системой) || 15.03.2026 ||&lt;br /&gt;
|-&lt;br /&gt;
| Git Flow || 23.02.2026 ||&lt;br /&gt;
|-&lt;br /&gt;
| Bash-скрипты в LLM || 01.03.2026 || &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:%D0%90%D1%85%D1%82%D1%8F%D0%BC%D0%BE%D0%B2_%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB&amp;diff=4468</id>
		<title>Участник:Ахтямов Павел</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:%D0%90%D1%85%D1%82%D1%8F%D0%BC%D0%BE%D0%B2_%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB&amp;diff=4468"/>
		<updated>2026-02-01T18:21:04Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Обновлено расписание на весну 2026&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Контактные данные==&lt;br /&gt;
&lt;br /&gt;
* Почтовый адрес: akhtyamovpavel at akhpl.ru&lt;br /&gt;
* TG: akhtyamovpavel&lt;br /&gt;
* Github: https://github.com/akhtyamovpavel&lt;br /&gt;
&lt;br /&gt;
== Преподаваемые дисциплины, весна 2026 ==&lt;br /&gt;
&lt;br /&gt;
* [[ТП весна 2026 | Технологии программирования, весна 2026]]:&lt;br /&gt;
  * Лекции: среда, 10:45, Б. Физ&lt;br /&gt;
  * Семинары: вторник, 9:00, 801 КПМ&lt;br /&gt;
&lt;br /&gt;
* [[Языки программирования и теория компиляции весна 2026]]:&lt;br /&gt;
  * Лекции: пятница, 12:20, 113 ГК&lt;br /&gt;
&lt;br /&gt;
* [[Параллельные и распределенные вычисления весна 2026 | Параллельные и распределенные вычисления 2026]]:&lt;br /&gt;
  * Лекции по CUDA: понедельник, 10:45, 239 НК&lt;br /&gt;
&lt;br /&gt;
== Преподаваемые дисциплины, весна 2025 ==&lt;br /&gt;
&lt;br /&gt;
* [[ТП весна 2025 | Технологии программирования, весна 2025]]:&lt;br /&gt;
   * Лекции: среда, 10:45, Б. Хим&lt;br /&gt;
   * Семинары: среда, 9:00, 702 КПМ&lt;br /&gt;
* [[Языки программирования и теория компиляции весна 2025 | Языки программирования и теория компиляции, весна 2025]] - пятница, 12:20, 113 ГК&lt;br /&gt;
* [[Теория языков программирования весна 2025 | Теория языков программирования]] - пятница, 12:20, 113 ГК&lt;br /&gt;
* [[Параллельные и распределенные вычисления весна 2025 | Параллельные и распределенные вычисления 2025]]:&lt;br /&gt;
  * Лекции по CUDA: понедельник, 12:20, 239 НК&lt;br /&gt;
  * Семинары: вторник, 9:00, 807 КПМ&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B8_%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D0%B8_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2026&amp;diff=4467</id>
		<title>Языки программирования и теория компиляции весна 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B8_%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D0%B8_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2026&amp;diff=4467"/>
		<updated>2026-02-01T18:18:17Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Драфт, скопированный с прошлого кода&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 4/6&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* [https://docs.google.com/forms/d/e/1FAIpQLSdypmAZxaUhxxj1gc5B-ggIl5oumFpup2SP1xGb5hHdAdtRXw/viewform?usp=header Регистрация на курс]&lt;br /&gt;
&#039;&#039;&#039;Критерии отбора студентов:&#039;&#039;&#039;&lt;br /&gt;
* Первый приоритет - реализация интерпретатора языка программирования в курсе &amp;quot;Формальные языки и трансляции&amp;quot;&lt;br /&gt;
* Второй приоритет - отличная оценка по предметам &amp;quot;АКОС&amp;quot; и &amp;quot;Технологии Программирования&amp;quot;&lt;br /&gt;
*Третий приоритет - все желающие&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чат курса&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
Руководитель курса: Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
* 1. Введение в теорию компиляции  &lt;br /&gt;
* 2. Лексический анализ кода  &lt;br /&gt;
* 3. Синтаксический анализ кода. Методы нисходящего анализа токенов  &lt;br /&gt;
* 4. Синтаксический анализ кода. Методы восходящего анализа токенов  &lt;br /&gt;
* 5. Построение синтаксического дерева разбора.  &lt;br /&gt;
* 6. Семантический анализ дерева разбора  &lt;br /&gt;
* 7. Основы механизмов вызова процедур  &lt;br /&gt;
* 8. Построение промежуточного представления по синтаксическому дереву разбора  &lt;br /&gt;
* 9. Оптимизация промежуточного представления. Понятие о  каноническом дереве промежуточного представления  &lt;br /&gt;
* 10. Преобразование промежуточного представления в низкоуровневый язык. 11. Механизм выбора инструкций  &lt;br /&gt;
* 12. Методы анализа графа исполнения машинного кода  &lt;br /&gt;
* 13. Механизм распределения регистров  &lt;br /&gt;
* 14. Работа сборщиков мусора.&lt;br /&gt;
* 15. Разработка компиляторов для функциональной парадигмы программирования&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
* Плейлист с лекциями: https://www.youtube.com/playlist?list=PL4_hYwCyhAvYn6d6hwGI2uVskw6MAnBFL&lt;br /&gt;
* Материалы курса: https://drive.google.com/drive/folders/152MyqMhRSHaEeyc87lz7cp_BmvurLbVL&lt;br /&gt;
* Плейлист с семинарами: https://www.youtube.com/playlist?list=PLfibPMPn-PgyeIHNtZn73iChsB3ZyfzcT&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2026&amp;diff=4466</id>
		<title>Современные технологии разработки сервисов анализа данных весна 2026</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2026&amp;diff=4466"/>
		<updated>2026-02-01T18:12:35Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Создана страница курса&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Общие сведения =&lt;br /&gt;
* Семестр: 2 (пятый курс)&lt;br /&gt;
* Формат: онлайн&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
== Важные ссылки ==&lt;br /&gt;
* &#039;&#039;&#039;[Материалы занятий]&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[Текущие оценки]&#039;&#039;&#039; (По закону о хранении персональных данных ведомости будут доступны на сайте https://akhcheck.ru)&lt;br /&gt;
* &#039;&#039;&#039;[Продление дедлайнов]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Преподаватели =&lt;br /&gt;
** [[ Участник:Ахтямов_Павел | Павел Ахтямов ]] (akhtyamovpavel at akhpl.ru, t.me - akhtyamovpavel)&lt;br /&gt;
&lt;br /&gt;
= План курса =&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Дата&lt;br /&gt;
! Тема&lt;br /&gt;
|-&lt;br /&gt;
| 02.02.2026 || Анонс. Повторяем Workflow в Git&lt;br /&gt;
|-&lt;br /&gt;
| 09.02.2026 || Bash-скрипты для Agentic LLM&lt;br /&gt;
|-&lt;br /&gt;
| 16.02.2026 || API и прототипирование сервисов. Сетевой стек. Паттерны DAO/DTO/Service/Repository&lt;br /&gt;
|-&lt;br /&gt;
| 02.03.2026 || Масштабирование асинхронных сервисов - очереди сообщений и шины данных&lt;br /&gt;
|-&lt;br /&gt;
| 16.03.2026 || Работа с объектными хранилищами. Масштабирование нагрузки для сервисов анализа данных&lt;br /&gt;
|-&lt;br /&gt;
| 23.03.2026 || Тестирование ML-сервисов. TDD как основной принцип сдерживания LLM-моделей&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Оценивание =&lt;br /&gt;
&lt;br /&gt;
Оценивание производиться по сумме баллов за курсы.&lt;br /&gt;
&lt;br /&gt;
Задания будут сдаваться на платформе https://akhcheck.ru. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Дедлайн&lt;br /&gt;
|-&lt;br /&gt;
| Тестовое задание (для знакомства с системой) || 15.03.2026 ||&lt;br /&gt;
|-&lt;br /&gt;
| Git Flow || 23.02.2026 ||&lt;br /&gt;
|-&lt;br /&gt;
| Bash-скрипты в LLM || 01.03.2026 || &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4237</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4237"/>
		<updated>2025-12-10T21:23:33Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Минимальные требования */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30, УЛК-1 (Цифра), аудитория 2.36&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/68b5cce75056902b66dd51fb&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: https://t.me/+38FdSJ7lfYY1NTEy&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation), GraphRAG, KAG (Knowledge Augmentation Graph).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP. Популярные серверы Model Context Protocol: Context7, Supabase.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов. Графовые методы для решения задач генеративного ИИ: ComfyUI, n8n.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Универсальные платформы для разработки кода: SourceCraft, OpenAI Codex.&lt;br /&gt;
&lt;br /&gt;
12. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE. Мультиагентные системы&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс предполагает быструю разработку прототипа решений при помощи изученных инструментов в рамках курса. Необходимо подтвердить навыки эффективной работы с LLM-моделями.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект с минимальными компонентами:&lt;br /&gt;
* Frontend/Backend/DB&lt;br /&gt;
* Backlog проекта можно оценить в не менее 100 Story Points (в оценке человеческих ресурсов)&lt;br /&gt;
&lt;br /&gt;
В качестве сдачи домашнего задания необходимо отправить на почту akhtyamov@phystech.edu ссылку на приватный репозиторий с отчетом по выполненному проекту:&lt;br /&gt;
* Спроектированный Product Backlog для решения&lt;br /&gt;
* Показать, какие компоненты пришлось дорабатывать руками&lt;br /&gt;
* Использовать MCP-серверы (указать, какие компоненты были использованы)&lt;br /&gt;
* Сообщить, какие LLM-модели были использованы для реализации задач&lt;br /&gt;
&lt;br /&gt;
=== Бонусы ===&lt;br /&gt;
* + Использование MultiAgent LLM (BMAD, Claude Flow)&lt;br /&gt;
* + Настройка агентов, в том числе, через LowCode-инструменты n8n / SourceCraft.&lt;br /&gt;
* + Интеграция систем с примерами использования и реализацией Test Driven Development&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать на усмотрение один из проектов или реализовать свой собственный проект по согласованию с преподавателем.&lt;br /&gt;
&lt;br /&gt;
Для согласования выбора проекта необходимо написать письмо на почту akhtyamov@phystech.edu с выбором темы и мотивацией выбора проекта в случае нестандартного проекта.&lt;br /&gt;
&lt;br /&gt;
Описание проекта дается в минимальном формате - Вашей целью является улучшение проекта с помощью LLM. Ваша цель - использовать воображение и ограничивать галюцинации!&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
1. Kanban-доска (Упрощенный Trello):&lt;br /&gt;
* создание задач&lt;br /&gt;
* назначение задач для пользователей&lt;br /&gt;
* приглашение пользователей&lt;br /&gt;
* создание досок&lt;br /&gt;
* создание статусов задач&lt;br /&gt;
* ограничение по количеству задач с определенным статусом (основная идея Kanban)&lt;br /&gt;
2. Меню столовой с голосованием:&lt;br /&gt;
* Блюда по дням недели&lt;br /&gt;
* Голосование за блюдо&lt;br /&gt;
* Рейтинг блюд&lt;br /&gt;
* Фильтр по категориям&lt;br /&gt;
3. Dashboard успеваемость (Электронная ведомость):&lt;br /&gt;
* Студенты, предметы, оценки&lt;br /&gt;
* Средний балл по предмету&lt;br /&gt;
* График успеваемости студента&lt;br /&gt;
* Топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
1. Мини маркетплейс объявлений:&lt;br /&gt;
* Создание объявлений с фото&lt;br /&gt;
* Категории и поиск&lt;br /&gt;
* Избранное&lt;br /&gt;
* Контакт продавца&lt;br /&gt;
2. Система для проведения турниров:&lt;br /&gt;
* Регистрация участников&lt;br /&gt;
* Генерация сетки&lt;br /&gt;
* Поддержка режима Double Elimination&lt;br /&gt;
* Визуализация сетки&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
1. Календарь событий с напоминаниями&lt;br /&gt;
* События с датой/временем&lt;br /&gt;
* Повторяющиеся события&lt;br /&gt;
* Напоминания в UI&lt;br /&gt;
* Приглашение участников&lt;br /&gt;
2. Форум с ветками обсуждений&lt;br /&gt;
* Разделы → Темы → Сообщения&lt;br /&gt;
* Ответы на сообщения (дерево)&lt;br /&gt;
* Пагинация&lt;br /&gt;
* Markdown в сообщениях&lt;br /&gt;
3. Трекер тренировок с аналитикой&lt;br /&gt;
* Логирование тренировок (тип, длительность, дистанция)&lt;br /&gt;
* Графики прогресса&lt;br /&gt;
* Цели и прогресс к ним&lt;br /&gt;
* Сравнение периодов&lt;br /&gt;
4. Система опросов с условной логикой&lt;br /&gt;
* Конструктор опросов&lt;br /&gt;
* Разные типы вопросов&lt;br /&gt;
* &amp;quot;Если ответ X → показать вопрос Y&amp;quot;&lt;br /&gt;
* Аналитика ответов&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
1. Простейший видехостинг&lt;br /&gt;
* Загрузка видео&lt;br /&gt;
* Стриминг воспроизведения&lt;br /&gt;
* Превью/thumbnail&lt;br /&gt;
* Комментарии + лайки&lt;br /&gt;
2. Карта мероприятий с геолокациями:&lt;br /&gt;
* События с координатами&lt;br /&gt;
* Отображение на карте&lt;br /&gt;
* Поиск &amp;quot;рядом со мной&amp;quot;&lt;br /&gt;
* Фильтры по дате/категории&lt;br /&gt;
3. A/B тестирование (Feature Flags)&lt;br /&gt;
* Создание экспериментов&lt;br /&gt;
* SDK для получения варианта&lt;br /&gt;
* сбор метрик&lt;br /&gt;
* Поддержка критериев и статзначимости&lt;br /&gt;
4. Realtime-доска для ретроспектив (Miro-lite)&lt;br /&gt;
* Стикеры на доске&lt;br /&gt;
* Realtime синхронизация&lt;br /&gt;
* поддержка нескольких пользователей&lt;br /&gt;
* Голосование за стикеры&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4236</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4236"/>
		<updated>2025-12-10T21:23:01Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Формат курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30, УЛК-1 (Цифра), аудитория 2.36&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/68b5cce75056902b66dd51fb&lt;br /&gt;
&lt;br /&gt;
=== Актуальные новости ===&lt;br /&gt;
&lt;br /&gt;
Актуальные новости публикуются в Telegram-чате: https://t.me/+38FdSJ7lfYY1NTEy&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation), GraphRAG, KAG (Knowledge Augmentation Graph).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP. Популярные серверы Model Context Protocol: Context7, Supabase.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов. Графовые методы для решения задач генеративного ИИ: ComfyUI, n8n.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Универсальные платформы для разработки кода: SourceCraft, OpenAI Codex.&lt;br /&gt;
&lt;br /&gt;
12. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE. Мультиагентные системы&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс предполагает быструю разработку прототипа решений при помощи изученных инструментов в рамках курса. Необходимо подтвердить навыки эффективной работы с LLM-моделями.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект с минимальными компонентами:&lt;br /&gt;
* Frontend/Backend/DB&lt;br /&gt;
* Backlog проекта можно оценить в не менее 100 Story Points (в оценке человеческих ресурсов)&lt;br /&gt;
&lt;br /&gt;
В качестве сдачи домашнего задания необходимо отправить на почту akhtyamov@phystech.edu ссылку на приватный репозиторий с отчетом по выполненному проекту:&lt;br /&gt;
* Спроектированный Product Backlog для решения&lt;br /&gt;
* Показать, какие компоненты пришлось дорабатывать руками&lt;br /&gt;
* Использовать MCP-серверы (указать, какие компоненты были использованы)&lt;br /&gt;
* Сообщить, какие LLM-модели были использованы для реализации задач&lt;br /&gt;
&lt;br /&gt;
Бонусы:&lt;br /&gt;
+ Использование MultiAgent LLM (BMAD, Claude Flow)&lt;br /&gt;
+ Настройка агентов, в том числе, через LowCode-инструменты n8n / SourceCraft.&lt;br /&gt;
+ Интеграция систем с примерами использования и реализацией Test Driven Development&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать на усмотрение один из проектов или реализовать свой собственный проект по согласованию с преподавателем.&lt;br /&gt;
&lt;br /&gt;
Для согласования выбора проекта необходимо написать письмо на почту akhtyamov@phystech.edu с выбором темы и мотивацией выбора проекта в случае нестандартного проекта.&lt;br /&gt;
&lt;br /&gt;
Описание проекта дается в минимальном формате - Вашей целью является улучшение проекта с помощью LLM. Ваша цель - использовать воображение и ограничивать галюцинации!&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
1. Kanban-доска (Упрощенный Trello):&lt;br /&gt;
* создание задач&lt;br /&gt;
* назначение задач для пользователей&lt;br /&gt;
* приглашение пользователей&lt;br /&gt;
* создание досок&lt;br /&gt;
* создание статусов задач&lt;br /&gt;
* ограничение по количеству задач с определенным статусом (основная идея Kanban)&lt;br /&gt;
2. Меню столовой с голосованием:&lt;br /&gt;
* Блюда по дням недели&lt;br /&gt;
* Голосование за блюдо&lt;br /&gt;
* Рейтинг блюд&lt;br /&gt;
* Фильтр по категориям&lt;br /&gt;
3. Dashboard успеваемость (Электронная ведомость):&lt;br /&gt;
* Студенты, предметы, оценки&lt;br /&gt;
* Средний балл по предмету&lt;br /&gt;
* График успеваемости студента&lt;br /&gt;
* Топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
1. Мини маркетплейс объявлений:&lt;br /&gt;
* Создание объявлений с фото&lt;br /&gt;
* Категории и поиск&lt;br /&gt;
* Избранное&lt;br /&gt;
* Контакт продавца&lt;br /&gt;
2. Система для проведения турниров:&lt;br /&gt;
* Регистрация участников&lt;br /&gt;
* Генерация сетки&lt;br /&gt;
* Поддержка режима Double Elimination&lt;br /&gt;
* Визуализация сетки&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
1. Календарь событий с напоминаниями&lt;br /&gt;
* События с датой/временем&lt;br /&gt;
* Повторяющиеся события&lt;br /&gt;
* Напоминания в UI&lt;br /&gt;
* Приглашение участников&lt;br /&gt;
2. Форум с ветками обсуждений&lt;br /&gt;
* Разделы → Темы → Сообщения&lt;br /&gt;
* Ответы на сообщения (дерево)&lt;br /&gt;
* Пагинация&lt;br /&gt;
* Markdown в сообщениях&lt;br /&gt;
3. Трекер тренировок с аналитикой&lt;br /&gt;
* Логирование тренировок (тип, длительность, дистанция)&lt;br /&gt;
* Графики прогресса&lt;br /&gt;
* Цели и прогресс к ним&lt;br /&gt;
* Сравнение периодов&lt;br /&gt;
4. Система опросов с условной логикой&lt;br /&gt;
* Конструктор опросов&lt;br /&gt;
* Разные типы вопросов&lt;br /&gt;
* &amp;quot;Если ответ X → показать вопрос Y&amp;quot;&lt;br /&gt;
* Аналитика ответов&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
1. Простейший видехостинг&lt;br /&gt;
* Загрузка видео&lt;br /&gt;
* Стриминг воспроизведения&lt;br /&gt;
* Превью/thumbnail&lt;br /&gt;
* Комментарии + лайки&lt;br /&gt;
2. Карта мероприятий с геолокациями:&lt;br /&gt;
* События с координатами&lt;br /&gt;
* Отображение на карте&lt;br /&gt;
* Поиск &amp;quot;рядом со мной&amp;quot;&lt;br /&gt;
* Фильтры по дате/категории&lt;br /&gt;
3. A/B тестирование (Feature Flags)&lt;br /&gt;
* Создание экспериментов&lt;br /&gt;
* SDK для получения варианта&lt;br /&gt;
* сбор метрик&lt;br /&gt;
* Поддержка критериев и статзначимости&lt;br /&gt;
4. Realtime-доска для ретроспектив (Miro-lite)&lt;br /&gt;
* Стикеры на доске&lt;br /&gt;
* Realtime синхронизация&lt;br /&gt;
* поддержка нескольких пользователей&lt;br /&gt;
* Голосование за стикеры&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4235</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4235"/>
		<updated>2025-12-10T21:17:41Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Формат сдачи курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30, УЛК-1 (Цифра), аудитория 2.36&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/68b5cce75056902b66dd51fb&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation), GraphRAG, KAG (Knowledge Augmentation Graph).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP. Популярные серверы Model Context Protocol: Context7, Supabase.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов. Графовые методы для решения задач генеративного ИИ: ComfyUI, n8n.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Универсальные платформы для разработки кода: SourceCraft, OpenAI Codex.&lt;br /&gt;
&lt;br /&gt;
12. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE. Мультиагентные системы&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс предполагает быструю разработку прототипа решений при помощи изученных инструментов в рамках курса. Необходимо подтвердить навыки эффективной работы с LLM-моделями.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект с минимальными компонентами:&lt;br /&gt;
* Frontend/Backend/DB&lt;br /&gt;
* Backlog проекта можно оценить в не менее 100 Story Points (в оценке человеческих ресурсов)&lt;br /&gt;
&lt;br /&gt;
В качестве сдачи домашнего задания необходимо отправить на почту akhtyamov@phystech.edu ссылку на приватный репозиторий с отчетом по выполненному проекту:&lt;br /&gt;
* Спроектированный Product Backlog для решения&lt;br /&gt;
* Показать, какие компоненты пришлось дорабатывать руками&lt;br /&gt;
* Использовать MCP-серверы (указать, какие компоненты были использованы)&lt;br /&gt;
* Сообщить, какие LLM-модели были использованы для реализации задач&lt;br /&gt;
&lt;br /&gt;
Бонусы:&lt;br /&gt;
+ Использование MultiAgent LLM (BMAD, Claude Flow)&lt;br /&gt;
+ Настройка агентов, в том числе, через LowCode-инструменты n8n / SourceCraft.&lt;br /&gt;
+ Интеграция систем с примерами использования и реализацией Test Driven Development&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать на усмотрение один из проектов или реализовать свой собственный проект по согласованию с преподавателем.&lt;br /&gt;
&lt;br /&gt;
Для согласования выбора проекта необходимо написать письмо на почту akhtyamov@phystech.edu с выбором темы и мотивацией выбора проекта в случае нестандартного проекта.&lt;br /&gt;
&lt;br /&gt;
Описание проекта дается в минимальном формате - Вашей целью является улучшение проекта с помощью LLM. Ваша цель - использовать воображение и ограничивать галюцинации!&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
1. Kanban-доска (Упрощенный Trello):&lt;br /&gt;
* создание задач&lt;br /&gt;
* назначение задач для пользователей&lt;br /&gt;
* приглашение пользователей&lt;br /&gt;
* создание досок&lt;br /&gt;
* создание статусов задач&lt;br /&gt;
* ограничение по количеству задач с определенным статусом (основная идея Kanban)&lt;br /&gt;
2. Меню столовой с голосованием:&lt;br /&gt;
* Блюда по дням недели&lt;br /&gt;
* Голосование за блюдо&lt;br /&gt;
* Рейтинг блюд&lt;br /&gt;
* Фильтр по категориям&lt;br /&gt;
3. Dashboard успеваемость (Электронная ведомость):&lt;br /&gt;
* Студенты, предметы, оценки&lt;br /&gt;
* Средний балл по предмету&lt;br /&gt;
* График успеваемости студента&lt;br /&gt;
* Топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
1. Мини маркетплейс объявлений:&lt;br /&gt;
* Создание объявлений с фото&lt;br /&gt;
* Категории и поиск&lt;br /&gt;
* Избранное&lt;br /&gt;
* Контакт продавца&lt;br /&gt;
2. Система для проведения турниров:&lt;br /&gt;
* Регистрация участников&lt;br /&gt;
* Генерация сетки&lt;br /&gt;
* Поддержка режима Double Elimination&lt;br /&gt;
* Визуализация сетки&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
1. Календарь событий с напоминаниями&lt;br /&gt;
* События с датой/временем&lt;br /&gt;
* Повторяющиеся события&lt;br /&gt;
* Напоминания в UI&lt;br /&gt;
* Приглашение участников&lt;br /&gt;
2. Форум с ветками обсуждений&lt;br /&gt;
* Разделы → Темы → Сообщения&lt;br /&gt;
* Ответы на сообщения (дерево)&lt;br /&gt;
* Пагинация&lt;br /&gt;
* Markdown в сообщениях&lt;br /&gt;
3. Трекер тренировок с аналитикой&lt;br /&gt;
* Логирование тренировок (тип, длительность, дистанция)&lt;br /&gt;
* Графики прогресса&lt;br /&gt;
* Цели и прогресс к ним&lt;br /&gt;
* Сравнение периодов&lt;br /&gt;
4. Система опросов с условной логикой&lt;br /&gt;
* Конструктор опросов&lt;br /&gt;
* Разные типы вопросов&lt;br /&gt;
* &amp;quot;Если ответ X → показать вопрос Y&amp;quot;&lt;br /&gt;
* Аналитика ответов&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
1. Простейший видехостинг&lt;br /&gt;
* Загрузка видео&lt;br /&gt;
* Стриминг воспроизведения&lt;br /&gt;
* Превью/thumbnail&lt;br /&gt;
* Комментарии + лайки&lt;br /&gt;
2. Карта мероприятий с геолокациями:&lt;br /&gt;
* События с координатами&lt;br /&gt;
* Отображение на карте&lt;br /&gt;
* Поиск &amp;quot;рядом со мной&amp;quot;&lt;br /&gt;
* Фильтры по дате/категории&lt;br /&gt;
3. A/B тестирование (Feature Flags)&lt;br /&gt;
* Создание экспериментов&lt;br /&gt;
* SDK для получения варианта&lt;br /&gt;
* сбор метрик&lt;br /&gt;
* Поддержка критериев и статзначимости&lt;br /&gt;
4. Realtime-доска для ретроспектив (Miro-lite)&lt;br /&gt;
* Стикеры на доске&lt;br /&gt;
* Realtime синхронизация&lt;br /&gt;
* поддержка нескольких пользователей&lt;br /&gt;
* Голосование за стикеры&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4234</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4234"/>
		<updated>2025-12-10T21:15:38Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30, УЛК-1 (Цифра), аудитория 2.36&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/68b5cce75056902b66dd51fb&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation), GraphRAG, KAG (Knowledge Augmentation Graph).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP. Популярные серверы Model Context Protocol: Context7, Supabase.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов. Графовые методы для решения задач генеративного ИИ: ComfyUI, n8n.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Универсальные платформы для разработки кода: SourceCraft, OpenAI Codex.&lt;br /&gt;
&lt;br /&gt;
12. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE. Мультиагентные системы&lt;br /&gt;
&lt;br /&gt;
== Формат сдачи курса ==&lt;br /&gt;
&lt;br /&gt;
Курс предполагает быструю разработку прототипа решений при помощи изученных инструментов в рамках курса. Необходимо подтвердить навыки эффективной работы с LLM-моделями.&lt;br /&gt;
&lt;br /&gt;
=== Минимальные требования ===&lt;br /&gt;
&lt;br /&gt;
Необходимо реализовать проект с минимальными компонентами:&lt;br /&gt;
* Frontend/Backend/DB&lt;br /&gt;
* Backlog проекта можно оценить в не менее 100 Story Points (в оценке человеческих ресурсов)&lt;br /&gt;
&lt;br /&gt;
В качестве сдачи домашнего задания необходимо отправить ссылку на приватный репозиторий с отчетом по выполненному проекту:&lt;br /&gt;
* Спроектированный Product Backlog для решения&lt;br /&gt;
* Показать, какие компоненты пришлось дорабатывать руками&lt;br /&gt;
* Использовать MCP-серверы (указать, какие компоненты были использованы)&lt;br /&gt;
* Сообщить, какие LLM-модели были использованы для реализации задач&lt;br /&gt;
&lt;br /&gt;
Бонусы:&lt;br /&gt;
+ Использование MultiAgent LLM (BMAD, Claude Flow)&lt;br /&gt;
+ Настройка агентов, в том числе, через LowCode-инструменты n8n / SourceCraft.&lt;br /&gt;
+ Интеграция систем с примерами использования и реализацией Test Driven Development&lt;br /&gt;
&lt;br /&gt;
=== Примеры проектов ===&lt;br /&gt;
&lt;br /&gt;
Можно выбрать на усмотрение один из проектов или реализовать свой собственный проект по согласованию с преподавателем.&lt;br /&gt;
&lt;br /&gt;
Описание проекта дается в минимальном формате - Вашей целью является улучшение проекта с помощью LLM. Ваша цель - использовать и ограничивать воображение.&lt;br /&gt;
&lt;br /&gt;
==== Простые проекты (удовлетворительно 3-4) ====&lt;br /&gt;
1. Kanban-доска (Упрощенный Trello):&lt;br /&gt;
* создание задач&lt;br /&gt;
* назначение задач для пользователей&lt;br /&gt;
* приглашение пользователей&lt;br /&gt;
* создание досок&lt;br /&gt;
* создание статусов задач&lt;br /&gt;
* ограничение по количеству задач с определенным статусом (основная идея Kanban)&lt;br /&gt;
2. Меню столовой с голосованием:&lt;br /&gt;
* Блюда по дням недели&lt;br /&gt;
* Голосование за блюдо&lt;br /&gt;
* Рейтинг блюд&lt;br /&gt;
* Фильтр по категориям&lt;br /&gt;
3. Dashboard успеваемость (Электронная ведомость):&lt;br /&gt;
* Студенты, предметы, оценки&lt;br /&gt;
* Средний балл по предмету&lt;br /&gt;
* График успеваемости студента&lt;br /&gt;
* Топ студентов&lt;br /&gt;
&lt;br /&gt;
==== Задачи невысокой сложности (хорошо 5) ====&lt;br /&gt;
1. Мини маркетплейс объявлений:&lt;br /&gt;
* Создание объявлений с фото&lt;br /&gt;
* Категории и поиск&lt;br /&gt;
* Избранное&lt;br /&gt;
* Контакт продавца&lt;br /&gt;
2. Система для проведения турниров:&lt;br /&gt;
* Регистрация участников&lt;br /&gt;
* Генерация сетки&lt;br /&gt;
* Поддержка режима Double Elimination&lt;br /&gt;
* Визуализация сетки&lt;br /&gt;
&lt;br /&gt;
==== Задачи с усложнениями (оценки 7-8) ====&lt;br /&gt;
1. Календарь событий с напоминаниями&lt;br /&gt;
* События с датой/временем&lt;br /&gt;
* Повторяющиеся события&lt;br /&gt;
* Напоминания в UI&lt;br /&gt;
* Приглашение участников&lt;br /&gt;
2. Форум с ветками обсуждений&lt;br /&gt;
* Разделы → Темы → Сообщения&lt;br /&gt;
* Ответы на сообщения (дерево)&lt;br /&gt;
* Пагинация&lt;br /&gt;
* Markdown в сообщениях&lt;br /&gt;
3. Трекер тренировок с аналитикой&lt;br /&gt;
* Логирование тренировок (тип, длительность, дистанция)&lt;br /&gt;
* Графики прогресса&lt;br /&gt;
* Цели и прогресс к ним&lt;br /&gt;
* Сравнение периодов&lt;br /&gt;
4. Система опросов с условной логикой&lt;br /&gt;
* Конструктор опросов&lt;br /&gt;
* Разные типы вопросов&lt;br /&gt;
* &amp;quot;Если ответ X → показать вопрос Y&amp;quot;&lt;br /&gt;
* Аналитика ответов&lt;br /&gt;
&lt;br /&gt;
==== Задание на оценку 10 ====&lt;br /&gt;
&lt;br /&gt;
1. Простейший видехостинг&lt;br /&gt;
* Загрузка видео&lt;br /&gt;
* Стриминг воспроизведения&lt;br /&gt;
* Превью/thumbnail&lt;br /&gt;
* Комментарии + лайки&lt;br /&gt;
2. Карта мероприятий с геолокациями:&lt;br /&gt;
* События с координатами&lt;br /&gt;
* Отображение на карте&lt;br /&gt;
* Поиск &amp;quot;рядом со мной&amp;quot;&lt;br /&gt;
* Фильтры по дате/категории&lt;br /&gt;
3. A/B тестирование (Feature Flags)&lt;br /&gt;
* Создание экспериментов&lt;br /&gt;
* SDK для получения варианта&lt;br /&gt;
* сбор метрик&lt;br /&gt;
* Поддержка критериев и статзначимости&lt;br /&gt;
4. Realtime-доска для ретроспектив (Miro-lite)&lt;br /&gt;
* Стикеры на доске&lt;br /&gt;
* Realtime синхронизация&lt;br /&gt;
* поддержка нескольких пользователей&lt;br /&gt;
* Голосование за стикеры&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4233</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4233"/>
		<updated>2025-12-10T21:05:42Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Формат курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30, УЛК-1 (Цифра), аудитория 2.36&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
=== Регистрация на курс ===&lt;br /&gt;
&lt;br /&gt;
Регистрация на курс проходит по ссылке: https://forms.yandex.ru/u/68b5cce75056902b66dd51fb&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation), GraphRAG, KAG (Knowledge Augmentation Graph).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP. Популярные серверы Model Context Protocol: Context7, Supabase.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов. Графовые методы для решения задач генеративного ИИ: ComfyUI, n8n.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Универсальные платформы для разработки кода: SourceCraft, OpenAI Codex.&lt;br /&gt;
&lt;br /&gt;
12. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE. Мультиагентные системы&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4232</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4232"/>
		<updated>2025-12-10T21:04:43Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Дни и время занятий: вторник, 17:05-18:30, УЛК-1 (Цифра), аудитория 2.36&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation), GraphRAG, KAG (Knowledge Augmentation Graph).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP. Популярные серверы Model Context Protocol: Context7, Supabase.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов. Графовые методы для решения задач генеративного ИИ: ComfyUI, n8n.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Универсальные платформы для разработки кода: SourceCraft, OpenAI Codex.&lt;br /&gt;
&lt;br /&gt;
12. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE. Мультиагентные системы&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4231</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4231"/>
		<updated>2025-12-10T21:01:20Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* План курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation), GraphRAG, KAG (Knowledge Augmentation Graph).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP. Популярные серверы Model Context Protocol: Context7, Supabase.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов. Графовые методы для решения задач генеративного ИИ: ComfyUI, n8n.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Универсальные платформы для разработки кода: SourceCraft, OpenAI Codex.&lt;br /&gt;
&lt;br /&gt;
12. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE. Мультиагентные системы&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4124</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4124"/>
		<updated>2025-09-01T15:10:39Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 5/7&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE.&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4123</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4123"/>
		<updated>2025-09-01T15:10:25Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* План курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 1/3/5/7/9/11&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation).&lt;br /&gt;
&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP.&lt;br /&gt;
&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов.&lt;br /&gt;
&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
&lt;br /&gt;
11. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE.&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4005</id>
		<title>Современные методы разработки программных продуктов с помощью методов искусственного интеллекта 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D1%8B_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%BD%D1%8B%D1%85_%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D0%BE%D0%B2_%D1%81_%D0%BF%D0%BE%D0%BC%D0%BE%D1%89%D1%8C%D1%8E_%D0%BC%D0%B5%D1%82%D0%BE%D0%B4%D0%BE%D0%B2_%D0%B8%D1%81%D0%BA%D1%83%D1%81%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE_%D0%B8%D0%BD%D1%82%D0%B5%D0%BB%D0%BB%D0%B5%D0%BA%D1%82%D0%B0_2025&amp;diff=4005"/>
		<updated>2025-07-17T13:08:40Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Новая страница: «==Общие сведения== * Семестр: 1/3/5/7/9/11 * Форма контроля: дифференцированный зачет  &amp;#039;&amp;#039;&amp;#039;Преподав…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
* Семестр: 1/3/5/7/9/11&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
==Формат курса==&lt;br /&gt;
&lt;br /&gt;
В рамках курса студенты ознакомятся с основными принципами LLM-моделей и научатся использовать их в свою пользу. Студентам будет предложено разработать проект с использованием LLM и оценить все преимущества использования нового поколения генерации кода.&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
1. История развития ИИ. Базовые принципы работы больших языковых моделей.&lt;br /&gt;
2. Основные виды и параметры Больших Языковых Моделей. Каким образом выбирать LLM для решения задач?&lt;br /&gt;
3. Составные части приложений: Frontend, Backend, Веб-серверы. Применимость LLM для каждого из видов решения задач.&lt;br /&gt;
4. Проектирование стартовых шаблонов решений на основе LLM.&lt;br /&gt;
5. Инструменты для решения LLM-задач: IDE (Cursor/Copilot), CLI (Claude Code), чат-боты.&lt;br /&gt;
6. Генерация знаний для LLM: RAG-модели (Retrieval Augmentation).&lt;br /&gt;
7. Model Context Protocol как универсальная база для создания решения. Популярные назначения MCP.&lt;br /&gt;
8. Оптимизация кодовой базы при помощи LLM.&lt;br /&gt;
9. NoCode и LowCode-решения для создания фронтендов.&lt;br /&gt;
10. Этика и безопасность использования LLM: служебные данные, ключи авторизации. Инструменты выявления уязвимостей.&lt;br /&gt;
11. Направления развития IT-отрасли: Bug Driven Development, Prompt Storytelling. Принципы написания системных промптов для IDE.&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3847</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3847"/>
		<updated>2025-02-17T21:44:22Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
* &#039;&#039;&#039;ДЛЯ ТЕХ, У КОГО КУРС ПО ВЫБОРУ&#039;&#039;&#039; [https://docs.google.com/forms/d/e/1FAIpQLSdAFWmCtm2LwtNzALUViW3CbnYG4AIvwRy-jaZhM_UC07tLlg/viewform?usp=header Регистрация на электив от кафедры АТП]&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
&#039;&#039;&#039;Руководитель курса:&#039;&#039;&#039; [[Участник:Ахтямов_Павел | Ахтямов Павел]] (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Кураторы&#039;&#039;&#039;:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
== Система оценивания ==&lt;br /&gt;
* Домашние задания - 70%&lt;br /&gt;
* Активность на семинарах - 15%&lt;br /&gt;
* Контрольные мероприятия - 15%&lt;br /&gt;
* Активность на лекциях - 10%&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 907 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3799</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3799"/>
		<updated>2025-02-04T20:54:01Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Семинаристы */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
&#039;&#039;&#039;Руководитель курса:&#039;&#039;&#039; [[Участник:Ахтямов_Павел | Ахтямов Павел]] (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Кураторы&#039;&#039;&#039;:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
== Система оценивания ==&lt;br /&gt;
* Домашние задания - 70%&lt;br /&gt;
* Активность на семинарах - 15%&lt;br /&gt;
* Контрольные мероприятия - 15%&lt;br /&gt;
* Активность на лекциях - 10%&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 907 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3794</id>
		<title>Современные технологии разработки сервисов анализа данных весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3794"/>
		<updated>2025-02-03T22:44:38Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Общие сведения =&lt;br /&gt;
* Семестр: 2 (пятый курс)&lt;br /&gt;
* Формат: онлайн&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
== Важные ссылки ==&lt;br /&gt;
* &#039;&#039;&#039;[Материалы занятий]&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[Текущие оценки]&#039;&#039;&#039; (По закону о хранении персональных данных ведомости будут доступны на сайте https://akhcheck.ru)&lt;br /&gt;
* &#039;&#039;&#039;[Продление дедлайнов]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Преподаватели =&lt;br /&gt;
** [[ Участник:Ахтямов_Павел | Павел Ахтямов ]] (akhtyamovpavel at akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
= План курса =&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Дата&lt;br /&gt;
! Тема&lt;br /&gt;
|-&lt;br /&gt;
| 10.02.2024 || Linux &amp;amp; Bash&lt;br /&gt;
|-&lt;br /&gt;
| 17.02.2024 || Git&lt;br /&gt;
|-&lt;br /&gt;
| 24.02.2024 || API и прототипирование сервисов. Сетевой стек&lt;br /&gt;
|-&lt;br /&gt;
| 05.03.2024 || Docker для ML-сервисов. Оптимальная сборка образов и запуск контейнеров&lt;br /&gt;
|-&lt;br /&gt;
| 12.03.2024 || Тестирование. Часть 1&lt;br /&gt;
|-&lt;br /&gt;
| 19.03.2024 || Тестирование. Часть 2&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Оценивание =&lt;br /&gt;
&lt;br /&gt;
Оценивание производиться по сумме баллов за курсы.&lt;br /&gt;
&lt;br /&gt;
Задания будут сдаваться на платформе https://akhcheck.ru. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Дедлайн&lt;br /&gt;
|-&lt;br /&gt;
| Тестовое задание (для знакомства с системой) || 15.03.2024 ||&lt;br /&gt;
|-&lt;br /&gt;
| Bash || 10.03.2024 ||&lt;br /&gt;
|-&lt;br /&gt;
| Git || 17.03.2024 || &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3793</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3793"/>
		<updated>2025-02-03T22:33:41Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Команда курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
&#039;&#039;&#039;Руководитель курса:&#039;&#039;&#039; [[Участник:Ахтямов_Павел | Ахтямов Павел]] (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Кураторы&#039;&#039;&#039;:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
== Система оценивания ==&lt;br /&gt;
* Домашние задания - 70%&lt;br /&gt;
* Активность на семинарах - 15%&lt;br /&gt;
* Контрольные мероприятия - 15%&lt;br /&gt;
* Активность на лекциях - 10%&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 702 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3792</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3792"/>
		<updated>2025-02-03T22:31:51Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
&#039;&#039;&#039;Руководитель курса:&#039;&#039;&#039; [[Участник:Ахтямов_Павел | Ахтямов Павел]] (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Кураторы&#039;&#039;&#039;:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
== Система оценивания&lt;br /&gt;
* Домашние задания - 70%&lt;br /&gt;
* Активность на семинарах - 15%&lt;br /&gt;
* Контрольные мероприятия - 15%&lt;br /&gt;
* Активность на лекциях - 10%&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 702 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3791</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3791"/>
		<updated>2025-02-03T22:27:29Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Команда курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
&#039;&#039;&#039;Руководитель курса:&#039;&#039;&#039; [[Участник:Ахтямов_Павел | Ахтямов Павел]] (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Кураторы&#039;&#039;&#039;:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 702 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3790</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3790"/>
		<updated>2025-02-03T22:27:20Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Команда курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
&#039;&#039;&#039;Руководитель курса:&#039;&#039;&#039; [[Ахтямов Павел]] (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Кураторы&#039;&#039;&#039;:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 702 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3789</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3789"/>
		<updated>2025-02-03T22:21:32Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Команда курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
&#039;&#039;&#039;Руководитель курса:&#039;&#039;&#039; Ахтямов Павел (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Кураторы&#039;&#039;&#039;:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 702 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3788</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3788"/>
		<updated>2025-02-03T22:21:01Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Команда курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
Руководитель курса: Ахтямов Павел (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
Кураторы:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Семинаристы ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;font-weight:bold;&amp;quot;&lt;br /&gt;
! Группа&lt;br /&gt;
! Семинарист&lt;br /&gt;
! День недели&lt;br /&gt;
! Расписание&lt;br /&gt;
! Аудитория&lt;br /&gt;
|-&lt;br /&gt;
| 402&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 9:00&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 403&lt;br /&gt;
| Погадаев Никита&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 806 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 404&lt;br /&gt;
| Белков Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 802 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 405&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 17:05&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 406&lt;br /&gt;
| Калмыков Андрей&lt;br /&gt;
| Четверг&lt;br /&gt;
| 15:30&lt;br /&gt;
| 317 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 407&lt;br /&gt;
| Спицын Николай&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:30&lt;br /&gt;
| 107 БК&lt;br /&gt;
|-&lt;br /&gt;
| 408&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 801 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 409&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 411&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 412&lt;br /&gt;
| Завадский Виталий&lt;br /&gt;
| Четверг&lt;br /&gt;
| 13:55&lt;br /&gt;
| 324Б ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 413&lt;br /&gt;
| Яцулевич Владимир&lt;br /&gt;
| Вторник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 516 ГК&lt;br /&gt;
|-&lt;br /&gt;
| 414&lt;br /&gt;
| Вашкевич Егор&lt;br /&gt;
| Пятница&lt;br /&gt;
| 18:35&lt;br /&gt;
| 324А ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 415&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Четверг&lt;br /&gt;
| 17:05&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 416&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 9241-9242 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 417&lt;br /&gt;
| Нам Илья&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:55&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 423&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 18:35&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 424&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 425&lt;br /&gt;
| Сазанович Михаил&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 9245-9246 ТИМКА&lt;br /&gt;
|-&lt;br /&gt;
| 426&lt;br /&gt;
| Оспанов Ален&lt;br /&gt;
| Вторник&lt;br /&gt;
| 13:35&lt;br /&gt;
| 804 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 427&lt;br /&gt;
| Ахтямов Павел&lt;br /&gt;
| Среда&lt;br /&gt;
| 9:00&lt;br /&gt;
| 702 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 431&lt;br /&gt;
| Калинин Иван&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 206 УПМ&lt;br /&gt;
|-&lt;br /&gt;
| 432&lt;br /&gt;
| Любар Пётр&lt;br /&gt;
| Среда&lt;br /&gt;
| 15:30&lt;br /&gt;
| 701 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 451&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 12:20&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|-&lt;br /&gt;
| 452&lt;br /&gt;
| Касымалиева Жанель&lt;br /&gt;
| Понедельник&lt;br /&gt;
| 17:05&lt;br /&gt;
| 206 КПМ&lt;br /&gt;
|-&lt;br /&gt;
| 453&lt;br /&gt;
| Егоров Владислав&lt;br /&gt;
| Вторник&lt;br /&gt;
| 10:45&lt;br /&gt;
| 319 ЛК&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%BB%D0%BB%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%B8_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3787</id>
		<title>Параллельные и распределенные вычисления весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%BB%D0%BB%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%B8_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3787"/>
		<updated>2025-02-03T21:51:49Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Преподаватели */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Общие сведения =&lt;br /&gt;
* Семестр: 6 (третий курс)&lt;br /&gt;
* Форма контроля: диф. зачет&lt;br /&gt;
* &#039;&#039;&#039;[https://docs.google.com/forms/d/e/1FAIpQLSdiXebJ4ddB7RybaVIPvsGiDoHmFBMNth2vIrhuXSlztsfDvg/viewform Форма регистрации на курс].&lt;br /&gt;
* [https://docs.google.com/spreadsheets/d/e/2PACX-1vRvjUbLbXkpA6LTEsUfwWZ7rAqAxcjDT0hriRaPPKqjQg8oGhePyEGZZ-4kV8-i9-s-QiXjNQYFE1gH/pubhtml?gid=397546993&amp;amp;single=true План лекций, семинаров,домашних работ, контрольных]&lt;br /&gt;
* [https://docs.google.com/spreadsheets/d/e/2PACX-1vRvjUbLbXkpA6LTEsUfwWZ7rAqAxcjDT0hriRaPPKqjQg8oGhePyEGZZ-4kV8-i9-s-QiXjNQYFE1gH/pubhtml?gid=2040051800&amp;amp;single=true Таблица с оценками]&lt;br /&gt;
* [https://docs.google.com/spreadsheets/d/e/2PACX-1vRvjUbLbXkpA6LTEsUfwWZ7rAqAxcjDT0hriRaPPKqjQg8oGhePyEGZZ-4kV8-i9-s-QiXjNQYFE1gH/pubhtml?gid=633420430&amp;amp;single=true Статус проверки домашних заданий]&lt;br /&gt;
* [https://forms.gle/B73K4MYzpVf9izP1A Продление дедлайнов и дописывание КР]&lt;br /&gt;
* [https://t.me/+3s6XjCzFlaYxMzIy Телеграм-чат курса]&lt;br /&gt;
&lt;br /&gt;
=== Материалы занятий ===&lt;br /&gt;
* [https://drive.google.com/drive/folders/132C2q7QfsV4nPJ_jjhKSqAo6ADO0gj-k?usp=sharing Записи лекций]&lt;br /&gt;
* [https://gitlab.atp-fivt.org/courses-public/pd/global/-/tree/main/materials?ref_type=heads Конспекты семинаров]&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
Планируется 6 домашних заданий. Проверка включает 2 этапа:&lt;br /&gt;
# прохождение автоматических тестов (начиная с ДЗ по CUDA).&lt;br /&gt;
# code review при условии выполненного п.1. Исправления по code review можно делать в течение &#039;&#039;&#039;1 месяца&#039;&#039;&#039; после 1-го комментария.&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Дедлайн&lt;br /&gt;
|-&lt;br /&gt;
| [https://gitlab.atp-fivt.org/courses-public/pd/global/-/blob/main/homeworks/task1_mpi.md?ref_type=heads MPI] || 03.03.2025&lt;br /&gt;
|-&lt;br /&gt;
| [https://gitlab.atp-fivt.org/courses-public/pd/global/-/blob/main/homeworks/task2_cuda.md?ref_type=heads CUDA] || 24.03.2025&lt;br /&gt;
|-&lt;br /&gt;
| [https://gitlab.atp-fivt.org/courses-public/pd/global/-/blob/main/homeworks/task3_hdfs.md?ref_type=heads HDFS] || 07.04.2025&lt;br /&gt;
|-&lt;br /&gt;
| [https://gitlab.atp-fivt.org/courses-public/pd/global/-/blob/main/homeworks/task4_mapreduce.md?ref_type=heads Map-Reduce] || 21.04.2025&lt;br /&gt;
|-&lt;br /&gt;
| [https://gitlab.atp-fivt.org/courses-public/pd/global/-/blob/main/homeworks/task5_hive.md?ref_type=heads Hive] || 05.05.2025&lt;br /&gt;
|-&lt;br /&gt;
| [https://gitlab.atp-fivt.org/courses-public/pd/global/-/blob/main/homeworks/task6_spark.md?ref_type=heads Spark] || 19.05.2025&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* Штраф за опоздание каждый день -5%, до достижения -75% (15 дней)&lt;br /&gt;
&lt;br /&gt;
Сдавать и исправлять домашки можно до 28.05.2025&lt;br /&gt;
&lt;br /&gt;
==== Сервера ====&lt;br /&gt;
* MPI &amp;amp; OpenMP: &amp;lt;pre&amp;gt;ssh &amp;lt;user&amp;gt;@185.81.248.52 -p 2222&amp;lt;/pre&amp;gt;&lt;br /&gt;
* CUDA: &amp;lt;pre&amp;gt;ssh &amp;lt;user&amp;gt;@lorien.atp-fivt.org&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Hadoop cluster: &amp;lt;pre&amp;gt;ssh &amp;lt;user&amp;gt;@mipt-client.atp-fivt.org&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* В случае проблем с кластерами пишите на &#039;&#039;&#039;servers@atp-fivt.org&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Преподаватели =&lt;br /&gt;
* &#039;&#039;&#039;Руководитель курса&#039;&#039;&#039;&lt;br /&gt;
** Чернецкий Аркадий&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Лекторы&#039;&#039;&#039;&lt;br /&gt;
** Ивченко Олег&lt;br /&gt;
** Долуденко Алексей&lt;br /&gt;
** [[Участник:Ахтямов_Павел | Ахтямов Павел ]]&lt;br /&gt;
** Изабелла Затикян&lt;br /&gt;
** Леонид Меркин&lt;br /&gt;
** Вадим Опольский&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Семинаристы&#039;&#039;&#039;&lt;br /&gt;
** Чернецкий Аркадий&lt;br /&gt;
** Ахтямов Павел&lt;br /&gt;
** Дмитрий Павлов&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Учебные ассистенты&#039;&#039;&#039;&lt;br /&gt;
** Ховар Абдухоликзода&lt;br /&gt;
** Кочурова Ирина&lt;br /&gt;
** Дмитрий Николотов&lt;br /&gt;
** Лыгина Оксана&lt;br /&gt;
** Хабибулло Боймуродов&lt;br /&gt;
&lt;br /&gt;
==== Контакт для организационных вопросов ====&lt;br /&gt;
Куратор курса [https://t.me/atpfpmi_curators @atpfpmi_curators]&lt;br /&gt;
&lt;br /&gt;
= Критерии получения оценки =&lt;br /&gt;
Зачет выставляется на основании баллов, полученных в течение семестра.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Мини-контрольные ==&lt;br /&gt;
Состоятся 3 теста. На контрольных нельзя пользоваться ничем и никем, кроме разрешённых смотрящими вещей. Код писать не потребуется.&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Дата&lt;br /&gt;
! Длительность&lt;br /&gt;
|-&lt;br /&gt;
| HDFS &amp;amp; MapReduce  || 15 мин.&lt;br /&gt;
|-&lt;br /&gt;
| Hive &amp;amp; Spark || 20 мин.&lt;br /&gt;
|-&lt;br /&gt;
| Zookeeper, Kafka, Cassandra || 15 мин.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Литература =&lt;br /&gt;
=== MPI &amp;amp; OpenMP ===&lt;br /&gt;
# Антонов А.С. Технологии параллельного программирования MPI и OpenMP: Учеб. пособие. Предисл.: В.А.Садовничий. - М.: Издательство Московского университета, 2012.&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
# Дж. Сандерс, Э. Кэррот. Технология CUDA в примерах и задачах, 2013 (рус).&lt;br /&gt;
# [http://courses.cms.caltech.edu/cs179/ Курс &amp;quot;GPU programming&amp;quot; в Caltech].&lt;br /&gt;
# [https://www.cs.bgu.ac.il/~graph161/wiki.files/09f-GPU%20-%20Scans.pdf Лекция по Scan курсе по комп. графике, Ben-Gurion university]&lt;br /&gt;
# [http://developer.download.nvidia.com/compute/cuda/1.1-Beta/x86_website/projects/scan/doc/scan.pdf Parallel Prefix Sum (Scan) with CUDA, Mark Harris, NVidia]&lt;br /&gt;
# Книги от Nvidia: [https://developer.nvidia.com/gpugems/gpugems/contributors GPU gems], [https://developer.nvidia.com/gpugems/gpugems2/inside-front-cover GPU gems 2], [https://developer.nvidia.com/gpugems/gpugems3/foreword GPU gems 3]. Особенно интересна глава 39 из [https://developer.nvidia.com/gpugems/gpugems3/part-vi-gpu-computing/chapter-39-parallel-prefix-sum-scan-cuda GPU Gems] про Scan.&lt;br /&gt;
&lt;br /&gt;
=== HDFS ===&lt;br /&gt;
# [https://www.oreilly.com/library/view/hadoop-the-definitive/9781491901687/ T. White. &amp;quot;Hadoop. The definitive guide&amp;quot;], гл. 3 &amp;quot;Hadoop distributed filesystem&amp;quot;. (есть русский перевод). 4е издание&lt;br /&gt;
# [https://storageconference.us/2010/Papers/MSST/Shvachko.pdf Статья про архитектуру HDFS от Константина Швачко (Yahoo!)]&lt;br /&gt;
# [http://www.blogjava.net/DLevin/archive/2015/01/25/422428.html Статья про архитектуру HDFS в блоге HortonWorks (Китайская копия :))]&lt;br /&gt;
# [http://blog.madhukaraphatak.com/secondary-namenode---what-it-really-do/ Что в действительности делает SNN]&lt;br /&gt;
# [https://nancyyanyu.github.io/posts/49a14c15/ Выдержка из курсов Яндекс про HDFS]&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:%D0%90%D1%85%D1%82%D1%8F%D0%BC%D0%BE%D0%B2_%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB&amp;diff=3786</id>
		<title>Участник:Ахтямов Павел</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A3%D1%87%D0%B0%D1%81%D1%82%D0%BD%D0%B8%D0%BA:%D0%90%D1%85%D1%82%D1%8F%D0%BC%D0%BE%D0%B2_%D0%9F%D0%B0%D0%B2%D0%B5%D0%BB&amp;diff=3786"/>
		<updated>2025-02-03T21:50:17Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Новая страница: «==Контактные данные==  * Почтовый адрес: akhtyamovpavel at akhpl.ru * TG: akhtyamovpavel * Github: https://github.com/akhtyamovpavel…»&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Контактные данные==&lt;br /&gt;
&lt;br /&gt;
* Почтовый адрес: akhtyamovpavel at akhpl.ru&lt;br /&gt;
* TG: akhtyamovpavel&lt;br /&gt;
* Github: https://github.com/akhtyamovpavel&lt;br /&gt;
&lt;br /&gt;
== Преподаваемые дисциплины, весна 2025 ==&lt;br /&gt;
&lt;br /&gt;
* [[ТП весна 2025 | Технологии программирования, весна 2025]]:&lt;br /&gt;
   * Лекции: среда, 10:45, Б. Хим&lt;br /&gt;
   * Семинары: среда, 9:00, 702 КПМ&lt;br /&gt;
* [[Языки программирования и теория компиляции весна 2025 | Языки программирования и теория компиляции, весна 2025]] - пятница, 12:20, 113 ГК&lt;br /&gt;
* [[Теория языков программирования весна 2025 | Теория языков программирования]] - пятница, 12:20, 113 ГК&lt;br /&gt;
* [[Параллельные и распределенные вычисления весна 2025 | Параллельные и распределенные вычисления 2025]]:&lt;br /&gt;
  * Лекции по CUDA: понедельник, 12:20, 239 НК&lt;br /&gt;
  * Семинары: вторник, 9:00, 807 КПМ&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3785</id>
		<title>Теория языков программирования весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3785"/>
		<updated>2025-02-03T21:43:03Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
Семинарист:&lt;br /&gt;
* Петр Любар&lt;br /&gt;
&lt;br /&gt;
Ассистент:&lt;br /&gt;
* Валерий Зайнуллин&lt;br /&gt;
==Расписание занятий==&lt;br /&gt;
* Лекция: пятница, 12:20, 113 ГК&lt;br /&gt;
* Семинар: пятница, 13:55, 113 ГК&lt;br /&gt;
&lt;br /&gt;
==Cписок тем==&lt;br /&gt;
1. Введение в теорию компиляции  &lt;br /&gt;
&lt;br /&gt;
2. Лексический анализ кода  &lt;br /&gt;
&lt;br /&gt;
3. Синтаксический анализ кода. Методы нисходящего анализа токенов  &lt;br /&gt;
&lt;br /&gt;
4. Синтаксический анализ кода. Методы восходящего анализа токенов  &lt;br /&gt;
&lt;br /&gt;
5. Построение синтаксического дерева разбора.  &lt;br /&gt;
&lt;br /&gt;
6. Семантический анализ дерева разбора  &lt;br /&gt;
&lt;br /&gt;
7. Основы механизмов вызова процедур  &lt;br /&gt;
&lt;br /&gt;
8. Построение промежуточного представления по синтаксическому дереву разбора &lt;br /&gt;
 &lt;br /&gt;
9. Оптимизация промежуточного представления. Понятие о  каноническом дереве промежуточного представления  &lt;br /&gt;
&lt;br /&gt;
10. Преобразование промежуточного представления в низкоуровневый язык. &lt;br /&gt;
&lt;br /&gt;
11. Механизм выбора инструкций  &lt;br /&gt;
&lt;br /&gt;
12. Методы анализа графа исполнения машинного кода  &lt;br /&gt;
&lt;br /&gt;
13. Механизм распределения регистров  &lt;br /&gt;
&lt;br /&gt;
14. Работа сборщиков мусора.&lt;br /&gt;
&lt;br /&gt;
15. Разработка компиляторов для функциональной парадигмы программирования&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Полезные ссылки==&lt;br /&gt;
[https://docs.google.com/forms/d/e/1FAIpQLSf8Z8vserrlOK_8P-F0ChNDSclGAxrNTqh8jagR8PLM_2Tx6g/viewform?usp=header Регистрация на курс]&lt;br /&gt;
Ограничения по регистрации: максимум 35-40 студентов.&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3784</id>
		<title>Теория языков программирования весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3784"/>
		<updated>2025-02-03T21:42:56Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
Семинарист:&lt;br /&gt;
* Петр Любар&lt;br /&gt;
&lt;br /&gt;
Ассистент:&lt;br /&gt;
* Валерий Зайнуллин&lt;br /&gt;
==Расписание занятий&lt;br /&gt;
* Лекция: пятница, 12:20, 113 ГК&lt;br /&gt;
* Семинар: пятница, 13:55, 113 ГК&lt;br /&gt;
&lt;br /&gt;
==Cписок тем==&lt;br /&gt;
1. Введение в теорию компиляции  &lt;br /&gt;
&lt;br /&gt;
2. Лексический анализ кода  &lt;br /&gt;
&lt;br /&gt;
3. Синтаксический анализ кода. Методы нисходящего анализа токенов  &lt;br /&gt;
&lt;br /&gt;
4. Синтаксический анализ кода. Методы восходящего анализа токенов  &lt;br /&gt;
&lt;br /&gt;
5. Построение синтаксического дерева разбора.  &lt;br /&gt;
&lt;br /&gt;
6. Семантический анализ дерева разбора  &lt;br /&gt;
&lt;br /&gt;
7. Основы механизмов вызова процедур  &lt;br /&gt;
&lt;br /&gt;
8. Построение промежуточного представления по синтаксическому дереву разбора &lt;br /&gt;
 &lt;br /&gt;
9. Оптимизация промежуточного представления. Понятие о  каноническом дереве промежуточного представления  &lt;br /&gt;
&lt;br /&gt;
10. Преобразование промежуточного представления в низкоуровневый язык. &lt;br /&gt;
&lt;br /&gt;
11. Механизм выбора инструкций  &lt;br /&gt;
&lt;br /&gt;
12. Методы анализа графа исполнения машинного кода  &lt;br /&gt;
&lt;br /&gt;
13. Механизм распределения регистров  &lt;br /&gt;
&lt;br /&gt;
14. Работа сборщиков мусора.&lt;br /&gt;
&lt;br /&gt;
15. Разработка компиляторов для функциональной парадигмы программирования&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Полезные ссылки==&lt;br /&gt;
[https://docs.google.com/forms/d/e/1FAIpQLSf8Z8vserrlOK_8P-F0ChNDSclGAxrNTqh8jagR8PLM_2Tx6g/viewform?usp=header Регистрация на курс]&lt;br /&gt;
Ограничения по регистрации: максимум 35-40 студентов.&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3783</id>
		<title>Теория языков программирования весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3783"/>
		<updated>2025-02-03T21:40:36Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
Семинарист:&lt;br /&gt;
* Петр Любар&lt;br /&gt;
&lt;br /&gt;
Ассистент:&lt;br /&gt;
* Валерий Зайнуллин&lt;br /&gt;
&lt;br /&gt;
==Cписок тем==&lt;br /&gt;
1. Введение в теорию компиляции  &lt;br /&gt;
2. Лексический анализ кода  &lt;br /&gt;
3. Синтаксический анализ кода. Методы нисходящего анализа токенов  &lt;br /&gt;
4. Синтаксический анализ кода. Методы восходящего анализа токенов  &lt;br /&gt;
5. Построение синтаксического дерева разбора.  &lt;br /&gt;
6. Семантический анализ дерева разбора  &lt;br /&gt;
7. Основы механизмов вызова процедур  &lt;br /&gt;
8. Построение промежуточного представления по синтаксическому дереву разбора  &lt;br /&gt;
9. Оптимизация промежуточного представления. Понятие о  каноническом дереве промежуточного представления  &lt;br /&gt;
10. Преобразование промежуточного представления в низкоуровневый язык. &lt;br /&gt;
11. Механизм выбора инструкций  &lt;br /&gt;
12. Методы анализа графа исполнения машинного кода  &lt;br /&gt;
13. Механизм распределения регистров  &lt;br /&gt;
14. Работа сборщиков мусора.&lt;br /&gt;
15. Разработка компиляторов для функциональной парадигмы программирования&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Полезные ссылки==&lt;br /&gt;
[https://docs.google.com/forms/d/e/1FAIpQLSf8Z8vserrlOK_8P-F0ChNDSclGAxrNTqh8jagR8PLM_2Tx6g/viewform?usp=header Регистрация на курс]&lt;br /&gt;
Ограничения по регистрации: максимум 35-40 студентов.&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B8_%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D0%B8_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3782</id>
		<title>Языки программирования и теория компиляции весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B8_%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D0%B8_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3782"/>
		<updated>2025-02-03T21:39:41Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* План курса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 4/6&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* [https://docs.google.com/forms/d/e/1FAIpQLSdypmAZxaUhxxj1gc5B-ggIl5oumFpup2SP1xGb5hHdAdtRXw/viewform?usp=header Регистрация на курс]&lt;br /&gt;
&#039;&#039;&#039;Критерии отбора студентов:&#039;&#039;&#039;&lt;br /&gt;
* Первый приоритет - реализация интерпретатора языка программирования в курсе &amp;quot;Формальные языки и трансляции&amp;quot;&lt;br /&gt;
* Второй приоритет - отличная оценка по предметам &amp;quot;АКОС&amp;quot; и &amp;quot;Технологии Программирования&amp;quot;&lt;br /&gt;
*Третий приоритет - все желающие&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чат курса&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
Руководитель курса: Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
* 1. Введение в теорию компиляции  &lt;br /&gt;
* 2. Лексический анализ кода  &lt;br /&gt;
* 3. Синтаксический анализ кода. Методы нисходящего анализа токенов  &lt;br /&gt;
* 4. Синтаксический анализ кода. Методы восходящего анализа токенов  &lt;br /&gt;
* 5. Построение синтаксического дерева разбора.  &lt;br /&gt;
* 6. Семантический анализ дерева разбора  &lt;br /&gt;
* 7. Основы механизмов вызова процедур  &lt;br /&gt;
* 8. Построение промежуточного представления по синтаксическому дереву разбора  &lt;br /&gt;
* 9. Оптимизация промежуточного представления. Понятие о  каноническом дереве промежуточного представления  &lt;br /&gt;
* 10. Преобразование промежуточного представления в низкоуровневый язык. 11. Механизм выбора инструкций  &lt;br /&gt;
* 12. Методы анализа графа исполнения машинного кода  &lt;br /&gt;
* 13. Механизм распределения регистров  &lt;br /&gt;
* 14. Работа сборщиков мусора.&lt;br /&gt;
* 15. Разработка компиляторов для функциональной парадигмы программирования&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
* Плейлист с лекциями: https://www.youtube.com/playlist?list=PL4_hYwCyhAvYn6d6hwGI2uVskw6MAnBFL&lt;br /&gt;
* Материалы курса: https://drive.google.com/drive/folders/152MyqMhRSHaEeyc87lz7cp_BmvurLbVL&lt;br /&gt;
* Плейлист с семинарами: https://www.youtube.com/playlist?list=PLfibPMPn-PgyeIHNtZn73iChsB3ZyfzcT&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B8_%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D0%B8_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3781</id>
		<title>Языки программирования и теория компиляции весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%AF%D0%B7%D1%8B%D0%BA%D0%B8_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B8_%D1%82%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D0%B8_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3781"/>
		<updated>2025-02-03T21:39:35Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 4/6&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* [https://docs.google.com/forms/d/e/1FAIpQLSdypmAZxaUhxxj1gc5B-ggIl5oumFpup2SP1xGb5hHdAdtRXw/viewform?usp=header Регистрация на курс]&lt;br /&gt;
&#039;&#039;&#039;Критерии отбора студентов:&#039;&#039;&#039;&lt;br /&gt;
* Первый приоритет - реализация интерпретатора языка программирования в курсе &amp;quot;Формальные языки и трансляции&amp;quot;&lt;br /&gt;
* Второй приоритет - отличная оценка по предметам &amp;quot;АКОС&amp;quot; и &amp;quot;Технологии Программирования&amp;quot;&lt;br /&gt;
*Третий приоритет - все желающие&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Чат курса&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
Руководитель курса: Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
&lt;br /&gt;
* 1. Введение в теорию компиляции  &lt;br /&gt;
* 2. Лексический анализ кода  &lt;br /&gt;
* 3. Синтаксический анализ кода. Методы нисходящего анализа токенов  &lt;br /&gt;
* 4. Синтаксический анализ кода. Методы восходящего анализа токенов  &lt;br /&gt;
* 5. Построение синтаксического дерева разбора.  &lt;br /&gt;
* 6. Семантический анализ дерева разбора  &lt;br /&gt;
* 7. Основы механизмов вызова процедур  &lt;br /&gt;
* 8. Построение промежуточного представления по синтаксическому дереву разбора  &lt;br /&gt;
* 9. Оптимизация промежуточного представления. Понятие о  каноническом дереве промежуточного представления  &lt;br /&gt;
* 10. Преобразование промежуточного представления в низкоуровневый язык. 11. Механизм выбора инструкций  &lt;br /&gt;
* 12. Методы анализа графа исполнения машинного кода  &lt;br /&gt;
* 13. Механизм распределения регистров  &lt;br /&gt;
* 14. Работа сборщиков мусора.&lt;br /&gt;
* 15. Разработка компиляторов для функциональной парадигмы программирования&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
* Плейлист с лекциями: https://www.youtube.com/playlist?list=PL4_hYwCyhAvYn6d6hwGI2uVskw6MAnBFL&lt;br /&gt;
* Материалы курса: https://drive.google.com/drive/folders/152MyqMhRSHaEeyc87lz7cp_BmvurLbVL&lt;br /&gt;
* Плейлист с семинарами: https://www.youtube.com/playlist?list=PLfibPMPn-PgyeIHNtZn73iChsB3ZyfzcT&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3780</id>
		<title>Теория языков программирования весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%B5%D0%BE%D1%80%D0%B8%D1%8F_%D1%8F%D0%B7%D1%8B%D0%BA%D0%BE%D0%B2_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3780"/>
		<updated>2025-02-03T21:34:45Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: /* Общие сведения */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Общие сведения==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Преподаватель&#039;&#039;&#039;&lt;br /&gt;
*Ахтямов Павел&lt;br /&gt;
&lt;br /&gt;
Семинарист:&lt;br /&gt;
* Петр Любар&lt;br /&gt;
&lt;br /&gt;
Ассистент:&lt;br /&gt;
* Валерий Зайнуллин&lt;br /&gt;
&lt;br /&gt;
==Полезные ссылки==&lt;br /&gt;
[https://docs.google.com/forms/d/e/1FAIpQLSf8Z8vserrlOK_8P-F0ChNDSclGAxrNTqh8jagR8PLM_2Tx6g/viewform?usp=header Регистрация на курс]&lt;br /&gt;
Ограничения по регистрации: максимум 35-40 студентов.&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3757</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3757"/>
		<updated>2025-02-01T09:57:19Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
Руководитель курса: Ахтямов Павел (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
Кураторы:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3756</id>
		<title>ТП весна 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A2%D0%9F_%D0%B2%D0%B5%D1%81%D0%BD%D0%B0_2025&amp;diff=3756"/>
		<updated>2025-02-01T09:55:50Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Изменена структура страницы&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Общие сведения ==&lt;br /&gt;
* Семестр: 2 (первый курс, весенний семестр)&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
* Запись вводного занятия&lt;br /&gt;
* Регистрация на курс происходит через сайт https://akhcheck.ru&lt;br /&gt;
&lt;br /&gt;
== Команда курса ==&lt;br /&gt;
Руководитель курса: Ахтямов Павел (akhtyamovpavel@akhpl.ru)&lt;br /&gt;
Кураторы:&lt;br /&gt;
* Иван Калинин&lt;br /&gt;
* Николай Спицын&lt;br /&gt;
&lt;br /&gt;
== План курса ==&lt;br /&gt;
* 1. Основные понятия об операционных системах. Различие Windows, Linux, Mac OS.&lt;br /&gt;
* 2. Системы контроля версий - часть 1. Виды систем контроля версий. Базовые команды в Git. Работа с удаленным репозиторием.&lt;br /&gt;
* 3. Bash-скриптинг и реализация скриптов.&lt;br /&gt;
* 4. Система контроля версий - часть 2. Работа с ветвлениями. Merge vs Rebase. Контроль за процессами.&lt;br /&gt;
* 5. Системы контроля версий - часть 3. Работа в Github, Gitlab - приглашение в репозитории, организация контроля, Protected ветки.&lt;br /&gt;
* 6. Системы сборки проектов. Скриптовые системы сборки.&lt;br /&gt;
* 7. Системы сборки проектов на C++/Java (Make/CMake/Conan для C++, Maven/Gradle для Java).&lt;br /&gt;
* 8. Тестирование ПО. Принципы тестирования ПО. Психология тестирования ПО. Тестирование vs QC vs QA. Пирамида тестирования.&lt;br /&gt;
* 9. Тестирование ПО. Unit тестирование, Mock тестирование.&lt;br /&gt;
* 10. Сетевой стек - работа веб-сервисов, стек ISO/OSI - TCP/IP.&lt;br /&gt;
* 11. Сетевок стек - виды API: REST API/GraphQL/XML. Тестирование API: Selenium, Playwright, Requests Mock.&lt;br /&gt;
* 12. Инструменты виртуализации и контейнеризации. Docker как основной инструмент контейнеризации. Понятия образ и контейнеров - их отличия. Запуск контейнеров.&lt;br /&gt;
* 13. Docker. Сборка образов. Различные конфигурации сборки образов.&lt;br /&gt;
* 14. Docker Compose как инструмент развертывания инфраструктуры.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Полезные ссылки ==&lt;br /&gt;
&lt;br /&gt;
1. Сайт международной сертификации ISTQB: https://www.istqb.org/&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_2024&amp;diff=2821</id>
		<title>Современные технологии разработки сервисов анализа данных 2024</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%A1%D0%BE%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D1%82%D0%B5%D1%85%D0%BD%D0%BE%D0%BB%D0%BE%D0%B3%D0%B8%D0%B8_%D1%80%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B8_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_2024&amp;diff=2821"/>
		<updated>2024-02-19T10:36:11Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Общие сведения =&lt;br /&gt;
* Семестр: 2 (пятый курс)&lt;br /&gt;
* Формат: онлайн&lt;br /&gt;
* Форма контроля: дифференцированный зачет&lt;br /&gt;
&lt;br /&gt;
== Важные ссылки ==&lt;br /&gt;
* &#039;&#039;&#039;[Материалы занятий]&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;[Текущие оценки]&#039;&#039;&#039; (По закону о хранении персональных данных ведомости будут доступны на сайте https://akhcheck.ru)&lt;br /&gt;
* &#039;&#039;&#039;[Продление дедлайнов]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Преподаватели =&lt;br /&gt;
** Павел Ахтямов (akhtyamovpavel at akhpl.ru)&lt;br /&gt;
&lt;br /&gt;
= План курса =&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Дата&lt;br /&gt;
! Тема&lt;br /&gt;
|-&lt;br /&gt;
| 05.02.2024 || Linux &amp;amp; Bash&lt;br /&gt;
|-&lt;br /&gt;
| 19.02.2024 || Git&lt;br /&gt;
|-&lt;br /&gt;
| 26.02.2024 || API и прототипирование сервисов. Сетевой стек&lt;br /&gt;
|-&lt;br /&gt;
| 03.03.2024 || Docker для ML-сервисов. Оптимальная сборка образов и запуск контейнеров&lt;br /&gt;
|-&lt;br /&gt;
| 10.03.2024 || Тестирование. Часть 1&lt;br /&gt;
|-&lt;br /&gt;
| 17.03.2024 || Тестирование. Часть 2&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Оценивание =&lt;br /&gt;
&lt;br /&gt;
Оценивание производиться по сумме баллов за курсы.&lt;br /&gt;
&lt;br /&gt;
Задания будут сдаваться на платформе https://akhcheck.ru. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Дедлайн&lt;br /&gt;
|-&lt;br /&gt;
| Тестовое задание (для знакомства с системой) || 15.03.2024 ||&lt;br /&gt;
|-&lt;br /&gt;
| Bash || 10.03.2024 ||&lt;br /&gt;
|-&lt;br /&gt;
| Git || 17.03.2024 || &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
	<entry>
		<id>https://wiki.atp-fivt.org/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%BB%D0%BB%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%B8_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_2023s&amp;diff=1814</id>
		<title>Параллельные и распределенные вычисления 2023s</title>
		<link rel="alternate" type="text/html" href="https://wiki.atp-fivt.org/index.php?title=%D0%9F%D0%B0%D1%80%D0%B0%D0%BB%D0%BB%D0%B5%D0%BB%D1%8C%D0%BD%D1%8B%D0%B5_%D0%B8_%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%B2%D1%8B%D1%87%D0%B8%D1%81%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_2023s&amp;diff=1814"/>
		<updated>2023-03-19T15:04:44Z</updated>

		<summary type="html">&lt;p&gt;Ахтямов Павел: Сдвинут дедлайн по заданию CUDA&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Общие сведения =&lt;br /&gt;
* Семестр: 6 (третий курс)&lt;br /&gt;
* Форма контроля: диф. зачет&lt;br /&gt;
* &#039;&#039;&#039;[https://forms.gle/ZvHCCKLpML14ue1TA Форма регистрации на курс].&lt;br /&gt;
* [https://docs.google.com/spreadsheets/d/1qaaB9S6nbZ-773MWlGjxo7D2cKOrFnelopH0BQeTRCo/edit?usp=sharing План лекций, семинаров,домашних работ, контрольных]&lt;br /&gt;
* [https://docs.google.com/spreadsheets/d/1qaaB9S6nbZ-773MWlGjxo7D2cKOrFnelopH0BQeTRCo/edit#gid=77548513 Расписание семинаров]&lt;br /&gt;
* [https://docs.google.com/spreadsheets/d/1qEcaMjCSkp1GsQQONe_GBlU3gD-4l1KoBa3HS7smY0s/edit?usp=share_link Таблица с оценками]&lt;br /&gt;
* [https://t.me/+5QH5IIWrErJhZmRi Телеграм-чат курса]&lt;br /&gt;
&lt;br /&gt;
=== Материалы занятий ===&lt;br /&gt;
Доступ открыт для всех аккаунтов @phystech.edu.&lt;br /&gt;
&lt;br /&gt;
===== Лекции =====&lt;br /&gt;
* [https://disk.yandex.ru/d/xDKoz2o-0x_NhA Видео лекций].&lt;br /&gt;
* [https://youtube.com/playlist?list=PLfibPMPn-PgyfrdrfmxvEAXtcjw7yfZmL Скринкасты лекций по CUDA] &lt;br /&gt;
* [https://drive.google.com/drive/folders/1eH2pePnbu3KqiRYtcBpDFffZXMXGA6-H?usp=share_link Слайды презентаций]&lt;br /&gt;
* 2020 г.&lt;br /&gt;
** [https://drive.google.com/drive/folders/0B2n4K2J_6IZdfk1jdUQ4YnZtRWNCbl9YVHlvSHZjRERrOVlNVlU5dDZYWU0tN2dCRjgxVzA?resourcekey=0-cn9bfvH8nBixE3aiWvTfgA&amp;amp;usp=sharing Лекции]&lt;br /&gt;
** [https://drive.google.com/drive/folders/0B2n4K2J_6IZdfm54OF8zMmd6aVQ0U0Y0MjFsdWdudFkxODJRVWFUcUt6bmdHUkNsYmMxRHM?resourcekey=0-wyYPEDg_OIF6mj1-4o8bLw&amp;amp;usp=sharing Семинары]&lt;br /&gt;
* 2021 г. &lt;br /&gt;
** [https://drive.google.com/drive/folders/0B2n4K2J_6IZdfnNPS3JFdEdpTHM5aVFZR3dmdnlrdFNKcjlfa0dLY0lFb2l3cmtsM2VXT2s?resourcekey=0-rE3AAeTCn3pf0dgfGS86Qg&amp;amp;usp=sharing Лекции]&lt;br /&gt;
** [https://drive.google.com/drive/folders/0B2n4K2J_6IZdfjBkRmhxc2o3d3NEdzN0RUhFeGtNSmJ6RFl3bzhOSEgzX0ViV2tXNFljbHc?resourcekey=0-t0UekU9AD2iQO6vKFmLUcg&amp;amp;usp=sharing Семинары]&lt;br /&gt;
* 2022 г. весна&lt;br /&gt;
** [https://drive.google.com/drive/folders/0B2n4K2J_6IZdflFRaUJveTdvR2REdDVxTkp1cm1VRnRNWmdsSGcxWlI4Y1kyVTJmZWtBWE0?resourcekey=0-sk8F-iNm8_2O8g7SDG24IA&amp;amp;usp=sharing Лекции]&lt;br /&gt;
** [https://drive.google.com/drive/folders/0B2n4K2J_6IZdfllmTmtMbk44V0ZkT2xtc0dXbWoweGlDQmRSTE5lT0o5dk1yd3FaOTFZOEE?resourcekey=0-P5pBLFMpgXuVvFn8dB4nXA&amp;amp;usp=sharing Семинары]&lt;br /&gt;
&lt;br /&gt;
===== Семинары =====&lt;br /&gt;
* [https://disk.yandex.ru/d/MP6j3LdmHlUhOQ Видео семинаров]&lt;br /&gt;
* [https://gitlab.com/fpmi-atp/pd2022a-supplementary Коды и презентации семинаров]&lt;br /&gt;
&lt;br /&gt;
*[https://gitlab.com/fpmi-atp/pd2022a-supplementary/global/-/tree/main/homeworks &#039;&#039;&#039;Домашние задания&#039;&#039;&#039;]&lt;br /&gt;
*[https://docs.google.com/spreadsheets/d/1rxr465J4VtRxXnRtID1aRy0RzhpBltpjJYKximAQMB8/edit#gid=0 Интересные ссылки]&lt;br /&gt;
&lt;br /&gt;
== Технические ссылки ==&lt;br /&gt;
* [https://forms.gle/PWhsFdPR9iVrsXbs9 Форма для проблем с инфраструктурой АТП]&lt;br /&gt;
* В случае проблем с кластером MPI, пишите на &#039;&#039;&#039;parallel-cluster-atp@googlegroups.com&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Сервера ====&lt;br /&gt;
* MPI &amp;amp; OpenMP: &amp;lt;pre&amp;gt;ssh &amp;lt;user&amp;gt;@calc.cod.phystech.edu&amp;lt;/pre&amp;gt;&lt;br /&gt;
* CUDA: &amp;lt;pre&amp;gt;ssh &amp;lt;user&amp;gt;@lorien.atp-fivt.org&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Hadoop ecosystem: &amp;lt;pre&amp;gt;ssh &amp;lt;user&amp;gt;@mipt-client.atp-fivt.org&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Преподаватели =&lt;br /&gt;
* &#039;&#039;&#039;Лекторы&#039;&#039;&#039;&lt;br /&gt;
** Ивченко Олег&lt;br /&gt;
** Долуденко Алексей&lt;br /&gt;
** Ахтямов Павел&lt;br /&gt;
** Липовский Роман&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Семинаристы&#039;&#039;&#039;&lt;br /&gt;
** Пономаренко Роман&lt;br /&gt;
** Фирсов Андрей&lt;br /&gt;
** Ахтямов Павел&lt;br /&gt;
** Чернецкий Аркадий&lt;br /&gt;
** Ирина&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Учебные ассистенты&#039;&#039;&#039;&lt;br /&gt;
** Манаков Данила&lt;br /&gt;
** Тугунчинов Максим&lt;br /&gt;
** Копец Максим&lt;br /&gt;
** Эвелина&lt;br /&gt;
&lt;br /&gt;
= Критерии получения оценки =&lt;br /&gt;
Зачет выставляется на основании баллов, полученных в течение семестра.&lt;br /&gt;
&lt;br /&gt;
== Домашние задания ==&lt;br /&gt;
Планируется 6 домашних заданий. Проверка включает 2 этапа:&lt;br /&gt;
# прохождение автоматических тестов (начиная с ДЗ по CUDA).&lt;br /&gt;
# code review при условии выполненного п.1. Исправления по code review можно делать в течение &#039;&#039;&#039;1 месяца&#039;&#039;&#039; после 1-го комментария.&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Мягкий дедлайн&lt;br /&gt;
! Жёсткий дедлайн&lt;br /&gt;
|-&lt;br /&gt;
| PD-2022. MPI || 13.03.2023 || 20.03.2023&lt;br /&gt;
|-&lt;br /&gt;
| PD-2022. CUDA || 27.03.2023 || 03.04.2023&lt;br /&gt;
|-&lt;br /&gt;
| PD-2022. HDFS || 10.04.2023 || 17.04.2023&lt;br /&gt;
|-&lt;br /&gt;
| PD-2022. Map-Reduce || 24.04.2023 || 01.05.2023&lt;br /&gt;
|-&lt;br /&gt;
| PD-2022. Hive || 01.05.2023 || 08.05.2023&lt;br /&gt;
|-&lt;br /&gt;
| PD-2022. Spark || 16.05.2023 || 23.05.2023&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[https://gitlab.com/fpmi-atp/pd2022a-supplementary/global/-/tree/main/homeworks Репозиторий с домашками]&lt;br /&gt;
&lt;br /&gt;
* Штраф за опоздание по soft deadline: -50%&lt;br /&gt;
* Штраф за опоздание по hard deadline: -75%&lt;br /&gt;
&lt;br /&gt;
Сдавать и исправлять домашки можно за 1 неделю до начала сессии.&lt;br /&gt;
&lt;br /&gt;
== Мини-контрольные ==&lt;br /&gt;
Состоятся 3 теста. На контрольных нельзя пользоваться IDE и интернетом. Код писать не потребуется.&lt;br /&gt;
&lt;br /&gt;
{|  class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
! Название&lt;br /&gt;
! Дата&lt;br /&gt;
! Длительность&lt;br /&gt;
|-&lt;br /&gt;
| PD-2023s. HDFS &amp;amp; MapReduce ||  || 15 мин.&lt;br /&gt;
|-&lt;br /&gt;
| PD-2023s. Hive &amp;amp; Spark ||  || 20 мин.&lt;br /&gt;
|-&lt;br /&gt;
| PD-2023s. Zookeeper, Kafka, Cassandra ||  || 15 мин.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
В случае если вы не сможете написать КР в указанную дату по технической или другой уважительной причине, просьба заполнить [https://forms.gle/LjN9694Z6H5Xh1Xr7 &#039;&#039;&#039;форму на дописывание&#039;&#039;&#039;]. &lt;br /&gt;
* PD-2023s. Дописывание. HDFS &amp;amp; MAPREDUCE&lt;br /&gt;
* PD-2023s. Дописывание. Hive &amp;amp; Spark&lt;br /&gt;
&lt;br /&gt;
= Литература =&lt;br /&gt;
=== MPI &amp;amp; OpenMP ===&lt;br /&gt;
# Антонов А.С. Технологии параллельного программирования MPI и OpenMP: Учеб. пособие. Предисл.: В.А.Садовничий. - М.: Издательство Московского университета, 2012.&lt;br /&gt;
&lt;br /&gt;
=== CUDA ===&lt;br /&gt;
# Дж. Сандерс, Э. Кэррот. Технология CUDA в примерах и задачах, 2013 (рус).&lt;br /&gt;
# [http://courses.cms.caltech.edu/cs179/ Курс &amp;quot;GPU programming&amp;quot; в Caltech].&lt;br /&gt;
# [https://www.cs.bgu.ac.il/~graph161/wiki.files/09f-GPU%20-%20Scans.pdf Лекция по Scan курсе по комп. графике, Ben-Gurion university]&lt;br /&gt;
# [http://developer.download.nvidia.com/compute/cuda/1.1-Beta/x86_website/projects/scan/doc/scan.pdf Parallel Prefix Sum (Scan) with CUDA, Mark Harris, NVidia]&lt;br /&gt;
# Книги от Nvidia: [https://developer.nvidia.com/gpugems/gpugems/contributors GPU gems], [https://developer.nvidia.com/gpugems/gpugems2/inside-front-cover GPU gems 2], [https://developer.nvidia.com/gpugems/gpugems3/foreword GPU gems 3]. Особенно интересна глава 39 из [https://developer.nvidia.com/gpugems/gpugems3/part-vi-gpu-computing/chapter-39-parallel-prefix-sum-scan-cuda GPU Gems] про Scan.&lt;br /&gt;
&lt;br /&gt;
=== HDFS ===&lt;br /&gt;
# [https://www.oreilly.com/library/view/hadoop-the-definitive/9781491901687/ T. White. &amp;quot;Hadoop. The definitive guide&amp;quot;], гл. 3 &amp;quot;Hadoop distributed filesystem&amp;quot;. (есть русский перевод). 4е издание&lt;br /&gt;
# [https://storageconference.us/2010/Papers/MSST/Shvachko.pdf Статья про архитектуру HDFS от Константина Швачко (Yahoo!)]&lt;br /&gt;
# [http://www.blogjava.net/DLevin/archive/2015/01/25/422428.html Статья про архитектуру HDFS в блоге HortonWorks (Китайская копия :))]&lt;br /&gt;
# [http://blog.madhukaraphatak.com/secondary-namenode---what-it-really-do/ Что в действительности делает SNN]&lt;br /&gt;
# [https://nancyyanyu.github.io/posts/49a14c15/ Выдержка из курсов Яндекс про HDFS]&lt;/div&gt;</summary>
		<author><name>Ахтямов Павел</name></author>
	</entry>
</feed>