Основы промышленной разработки-МОиВС-2021-2022 — различия между версиями
Материал из Wiki - Факультет компьютерных наук
Chopik (обсуждение | вклад) (→О курсе) |
Chopik (обсуждение | вклад) (→О курсе) |
||
(не показано 18 промежуточных версии этого же участника) | |||
Строка 5: | Строка 5: | ||
[https://www.hse.ru/staff/akhtyamovpavel#teaching Ахтямов Павел Ибрагимович] | [https://www.hse.ru/staff/akhtyamovpavel#teaching Ахтямов Павел Ибрагимович] | ||
− | ''' | + | '''Учебный ассистент:''' |
− | Лущ Иван | + | Лущ Иван Сергеевич |
− | ''' Лекции/Семинары ''' | + | ''' Лекции/Семинары: ''' |
− | Занятия проводятся в [https://akht.pl/hse-promprog-spring-2022-zoom Zoom] по субботам. [https://drive.google.com/drive/folders/1gnrbqHmNKODeL08z76RVf2nF-UKc-IGn Ссылка на Google Drive с материалами] | + | Занятия проводятся в [https://akht.pl/hse-promprog-spring-2022-zoom Zoom] по субботам. [https://drive.google.com/drive/folders/1gnrbqHmNKODeL08z76RVf2nF-UKc-IGn Ссылка на Google Drive с материалами.] |
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | ''' 01 Системы контроля версий. git ''' | + | [https://docs.google.com/presentation/d/13oIVvH_9uNR3KSaHZHBGvxgZFMJ2D5TYIa0AOdhIQ-Y/edit?usp=sharing ''' 01 Системы контроля версий. git. '''] |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
Строка 21: | Строка 21: | ||
::01.2 [https://www.youtube.com/watch?v=a0VSe7x3CZ8&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=2 Первые коммиты в Git-е.] | ::01.2 [https://www.youtube.com/watch?v=a0VSe7x3CZ8&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=2 Первые коммиты в Git-е.] | ||
− | ::01.3 [https://www.youtube.com/watch?v=jaZ8Xt27P0c&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=3 Работа с ветвями в Git. Simple Workflow] | + | ::01.3 [https://www.youtube.com/watch?v=jaZ8Xt27P0c&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=3 Работа с ветвями в Git. Simple Workflow.] |
− | ::01.4(Advanced) [https://www.youtube.com/watch?v=4_CHp7lNEqE&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=4 Внутреннее устройство Git] | + | ::01.4(Advanced) [https://www.youtube.com/watch?v=4_CHp7lNEqE&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=4 Внутреннее устройство Git.] |
</div></div> | </div></div> | ||
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | ''' 02 Linux + Bash ''' | + | [https://docs.google.com/presentation/d/1OdhFYb9nML6dqL_qbR8D1Y5gvo0D1iXHnZZxYK2xPJU/edit?usp=sharing ''' 02 Linux + Bash. '''] |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
− | ::02.1 [https://www.youtube.com/watch?v=WJpQTmy5BLU&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=5 Linux FileSystem. Базовые команды] | + | ::02.1 [https://www.youtube.com/watch?v=WJpQTmy5BLU&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=5 Linux FileSystem. Базовые команды.] |
::02.2 [https://www.youtube.com/watch?v=GS9tTY4OksQ&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=6 Права пользователей. Базовые скрипты.] | ::02.2 [https://www.youtube.com/watch?v=GS9tTY4OksQ&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=6 Права пользователей. Базовые скрипты.] | ||
− | ::02.3 [https://www.youtube.com/watch?v=_QpXDva11_o&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=7 Чтение переменных. Условные операторы] | + | ::02.3 [https://www.youtube.com/watch?v=_QpXDva11_o&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=7 Чтение переменных. Условные операторы.] |
− | ::02.4 [https://www.youtube.com/watch?v=IPStF_tKJj0&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=8 Цикл for, функции и обработка аргументов командной строки] | + | ::02.4 [https://www.youtube.com/watch?v=IPStF_tKJj0&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=8 Цикл for, функции и обработка аргументов командной строки.] |
</div></div> | </div></div> | ||
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | ''' 03 За код ''' | + | [https://docs.google.com/presentation/d/1OwNVC4_ESLuBxq5tzZuwAOlL3W2f-MMeRdXXlKxwUMY/edit?usp=sharing ''' 03 За код. '''] |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
− | ::03.1 [https://www.youtube.com/watch?v=rRV_11X59d8&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=9 Практики написания хорошего кода] | + | ::03.1 [https://www.youtube.com/watch?v=rRV_11X59d8&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=9 Практики написания хорошего кода.] |
− | ::03.2 [https://www.youtube.com/watch?v=qQ-0z8G2kqI&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=10 Паттерны и антипаттерны проектирования] | + | ::03.2 [https://www.youtube.com/watch?v=qQ-0z8G2kqI&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=10 Паттерны и антипаттерны проектирования.] |
::03.3 [https://www.youtube.com/watch?v=62QxrLkp0DE&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=11 Awk, xargs. 1-строчные скрипты вместо 10 строк в Python.] | ::03.3 [https://www.youtube.com/watch?v=62QxrLkp0DE&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=11 Awk, xargs. 1-строчные скрипты вместо 10 строк в Python.] | ||
− | ::03.4 [https://www.youtube.com/watch?v=iMDhrf0rA3M&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=12 Git workflows и стратегии слияния] | + | ::03.4 [https://www.youtube.com/watch?v=iMDhrf0rA3M&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=12 Git workflows и стратегии слияния.] |
</div></div> | </div></div> | ||
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | ''' 04 Сервер на Amazon. Про красивое оформление кода в Python. Системы сборки. ''' | + | [https://docs.google.com/presentation/d/13EzgrU121YveySpYa1Buqn2Onlf4T4KmyGZhhdCgzcc/edit?usp=sharing ''' 04 Сервер на Amazon. Про красивое оформление кода в Python. Системы сборки. '''] |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
− | ::04.1 [https://www.youtube.com/watch?v=ORMSyRvcR1c&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=13 Как арендовать сервер на Amazon. SSH. Установка pip] | + | ::04.1 [https://www.youtube.com/watch?v=ORMSyRvcR1c&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=13 Как арендовать сервер на Amazon. SSH. Установка pip.] |
− | ::04.2 [https://www.youtube.com/watch?v=s5cGyJjBfZA&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=14 Виртуальные окружения в Python. Красивое оформление main-файлов в Python] | + | ::04.2 [https://www.youtube.com/watch?v=s5cGyJjBfZA&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=14 Виртуальные окружения в Python. Красивое оформление main-файлов в Python.] |
− | ::04.3 [https://www.youtube.com/watch?v=Gt0-aaCgMwM&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=15 Сборочные скрипты, Make] | + | ::04.3 [https://www.youtube.com/watch?v=Gt0-aaCgMwM&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=15 Сборочные скрипты, Make.] |
− | ::04.4 [https://www.youtube.com/watch?v=v9T6iAYiGhM&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=16 CMake] | + | ::04.4 [https://www.youtube.com/watch?v=v9T6iAYiGhM&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=16 CMake.] |
</div></div> | </div></div> | ||
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | ''' 05 Тестирование ''' | + | [https://docs.google.com/presentation/d/1iZCIYYn_Lm52vqCCOKaqLmZNRTVVeFLNsqVT2tEpZHc/edit?usp=sharing ''' 05 Тестирование. '''] |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
− | ::05.1 [https://www.youtube.com/watch?v=EGN9y95hGb8&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=17 Тестирование. Задачи тестирования] | + | ::05.1 [https://www.youtube.com/watch?v=EGN9y95hGb8&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=17 Тестирование. Задачи тестирования.] |
::05.2 [https://www.youtube.com/watch?v=NWrOTgGoCIo&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=18 Как тестировать код?] | ::05.2 [https://www.youtube.com/watch?v=NWrOTgGoCIo&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=18 Как тестировать код?] | ||
Строка 82: | Строка 82: | ||
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | ''' 06 Базы данных. Описание проекта ''' | + | [https://docs.google.com/presentation/d/1cn_Dsf02rzBWp2OUpAnMZgnevzhshm7lOMeuYLgsaV0/edit?usp=sharing ''' 06 Базы данных. Описание проекта. '''] |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
− | ::06.1 [https://www.youtube.com/watch?v=J9PXdV1L3RI&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=20 Описание проекта: ML + ПромПрог] | + | ::06.1 [https://www.youtube.com/watch?v=J9PXdV1L3RI&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=20 Описание проекта: ML + ПромПрог.] |
::06.2 [https://www.youtube.com/watch?v=ytxfsJ_h6ig&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=21 Что такое БД?] | ::06.2 [https://www.youtube.com/watch?v=ytxfsJ_h6ig&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=21 Что такое БД?] | ||
− | ::06.3 [https://www.youtube.com/watch?v=yEycP4dN0go&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=22 Базы данных. SELECT. Primary Key, Foreign Key] | + | ::06.3 [https://www.youtube.com/watch?v=yEycP4dN0go&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=22 Базы данных. SELECT. Primary Key, Foreign Key.] |
− | ::06.4 [https://www.youtube.com/watch?v=7g4ehZKgvqI&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=23 Базы данных: CRUD, DDL] | + | ::06.4 [https://www.youtube.com/watch?v=7g4ehZKgvqI&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=23 Базы данных: CRUD, DDL.] |
− | ::06.5 [https://www.youtube.com/watch?v=JipEUNJQkPk&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=24 Базы данных: связи между сущностями, ORM. Транзакции. Модель хранения данных в почте] | + | ::06.5 [https://www.youtube.com/watch?v=JipEUNJQkPk&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=24 Базы данных: связи между сущностями, ORM. Транзакции. Модель хранения данных в почте.] |
+ | |||
+ | </div></div> | ||
+ | |||
+ | <div class="mw-collapsible mw-collapsed"> | ||
+ | ''' 07 Docker. ''' | ||
+ | <div class="mw-collapsible-content" style="display: none;"> | ||
+ | |||
+ | ::07.1 [https://www.youtube.com/watch?v=0BO55uQar_w&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=25 Docker: в чем отличие образа и контейнера. Запускаем контейнер.] | ||
+ | |||
+ | ::07.2 [https://www.youtube.com/watch?v=yCyKs-iqBxA&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=26 Dockerfile: как писать. Проброс портов, монтирование папок.] | ||
+ | |||
+ | ::07.3 [https://www.youtube.com/watch?v=JPQgcPkWnTY&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=27 Продвинутые команды в Dockerfile: пользователи, директории, аргументы сборки.] | ||
+ | |||
+ | </div></div> | ||
+ | |||
+ | <div class="mw-collapsible mw-collapsed"> | ||
+ | ''' [https://docs.google.com/presentation/d/1oEnGeTapoLb0CvYHDscPwyPY_3FlIqNYvtccUQIBzrE/edit 08 MLOps.] ''' | ||
+ | <div class="mw-collapsible-content" style="display: none;"> | ||
+ | |||
+ | ::08.1 [https://www.youtube.com/watch?v=AevHWjyOUbM&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=28 MLOps: основы.] | ||
+ | |||
+ | ::08.2 [https://www.youtube.com/watch?v=NsFatjmUzFo&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=29 DVC.] | ||
+ | |||
+ | </div></div> | ||
+ | |||
+ | <div class="mw-collapsible mw-collapsed"> | ||
+ | ''' [https://docs.google.com/presentation/d/1AQkpV4G-948myEeWmMDAyRbR9ggrfbUTBSgc8p0f7Lc/edit 09 CI/CD] ''' | ||
+ | <div class="mw-collapsible-content" style="display: none;"> | ||
+ | |||
+ | ::09.1 [https://www.youtube.com/watch?v=FPNW2aJ1Qi4&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=30 CI: базовый CI ] | ||
+ | |||
+ | ::09.2 [https://www.youtube.com/watch?v=YtrWeTg3WFk&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=31 CI: матрица сборки, загрузка артефактов, нотификация в Slack] | ||
+ | |||
+ | ::09.3 [https://www.youtube.com/watch?v=zyuXYriRAgI&list=PLmA-1xX7IuzBZ2l55gxcAVXTqNJt4OwSY&index=32 Flask] | ||
</div></div> | </div></div> | ||
Строка 99: | Строка 133: | ||
== Домашние задания == | == Домашние задания == | ||
− | [https://gitexercises.fracz.com/exercise/master ДЗ1] | + | <div class="mw-collapsible mw-collapsed"> |
+ | [https://gitexercises.fracz.com/exercise/master ДЗ1(Git)] | ||
+ | <div class="mw-collapsible-content" style="display: none;"> | ||
+ | Необходимо решить все задачи. | ||
+ | </div></div> | ||
− | [https://docs.google.com/document/d/1WRZqbes2-uTRJeNaXpbLnJ8Z-jhBJQNqTDFEMsGTo6s/edit?usp=sharing ДЗ1.5] | + | [https://docs.google.com/document/d/1WRZqbes2-uTRJeNaXpbLnJ8Z-jhBJQNqTDFEMsGTo6s/edit?usp=sharing ДЗ1.5(Знакомимся с полуавтоматической системой)] |
− | [https://docs.google.com/document/d/1XrUwetB1dAQWrJ8ApCkLmJ2ihIsH6ZsNKBZQIKWnD34/edit?usp=sharing ДЗ2] | + | [https://docs.google.com/document/d/1XrUwetB1dAQWrJ8ApCkLmJ2ihIsH6ZsNKBZQIKWnD34/edit?usp=sharing ДЗ2(Backup директории)] |
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | ДЗ3 | + | ДЗ3(Code-review) |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
Это код-ревью. Необходимо прислать код. | Это код-ревью. Необходимо прислать код. | ||
</div></div> | </div></div> | ||
− | [https://docs.google.com/document/d/1FuKuhVlYNcVDKRhq4uUHl8eKJtrW9LyAVFVPP1Pxlkg/edit?usp=sharing ДЗ4*] | + | [https://docs.google.com/document/d/1FuKuhVlYNcVDKRhq4uUHl8eKJtrW9LyAVFVPP1Pxlkg/edit?usp=sharing ДЗ4*(CMake)] |
− | [https://docs.google.com/document/d/1RX42H4oDsGSkf95HySeQamR8kWER7CfqMjeTsyY9vo4/edit?usp=sharing ДЗ5] | + | [https://docs.google.com/document/d/1RX42H4oDsGSkf95HySeQamR8kWER7CfqMjeTsyY9vo4/edit?usp=sharing ДЗ5(Тестирование)] |
<div class="mw-collapsible mw-collapsed"> | <div class="mw-collapsible mw-collapsed"> | ||
− | [http://sql-ex.ru/ ДЗ6] | + | [http://sql-ex.ru/ ДЗ6(SQL)] |
<div class="mw-collapsible-content" style="display: none;"> | <div class="mw-collapsible-content" style="display: none;"> | ||
Надо выполнить задачи: | Надо выполнить задачи: | ||
Строка 122: | Строка 160: | ||
* DML: 1-10 | * DML: 1-10 | ||
</div></div> | </div></div> | ||
+ | |||
+ | [https://docs.google.com/document/d/1N0QTMyhHSoVKswXJisZhdRZ1OP0QRwq5xdVSVIT703A/edit ДЗ7(Docker)] | ||
+ | |||
+ | [https://docs.google.com/document/d/1pchH7su3zTDWjHN86ueSqUR7C4Lo7wPtrRf4pSyAWq8/edit ДЗ8(CI)] | ||
+ | |||
+ | [https://docs.google.com/document/d/1NjW9q2i6K2Kjy1uKwKRHnpW3tLgNIROuWpRMGIi1cic/edit Проект ML + ПромПрог] | ||
== Табличка с оценками == | == Табличка с оценками == | ||
[https://docs.google.com/spreadsheets/d/1PIf0LsROt7Nns3PVZArNNiMRutk8Ba09Fx7yAPsf-Zg/edit?ouid=114073326988779094522&usp=sheets_home&ths=true Google sheets] | [https://docs.google.com/spreadsheets/d/1PIf0LsROt7Nns3PVZArNNiMRutk8Ba09Fx7yAPsf-Zg/edit?ouid=114073326988779094522&usp=sheets_home&ths=true Google sheets] |
Текущая версия на 11:51, 23 марта 2022
О курсе
Преподаватель:
Учебный ассистент:
Лущ Иван Сергеевич
Лекции/Семинары:
Занятия проводятся в Zoom по субботам. Ссылка на Google Drive с материалами.
07 Docker.
Домашние задания
ДЗ1.5(Знакомимся с полуавтоматической системой)
ДЗ3(Code-review)