Курс “Advanced PyNEng”
Главный нюанс этого курса в том, что он углубляется в Python, а не в автоматизацию сетевого оборудования. Будет полезен тем, кто много работает с Python и хочет изучить указанные темы. Если вы хотите углубиться в автоматизацию и соответственно изучать разные модули, API и фреймворки для работы с сетевым оборудованием, посмотрите курсы в списке ресурсов.
Ближайший курс 12.01.23 - 11.05.23
Обратите внимание, что формат курса изменился с 2023 года
- лекции больше не читаются онлайн
- по каждой теме курса теория дается в виде записи видео
В остальном, курс остается таким же. Видео по теории будут новые, то есть это не будет запись лекций предыдущих курсов.
О курсе
Каждую неделю вы получаете одну или несколько тем для изучения:
- теоретическая часть в виде видео (2-4 часа) выкладывается на YouTube в закрытый плейлист
- задания
Видео по каждой теме будут разделены на три группы (пример видео из базового курса):
- основы - базовые вещи по теме
- примеры - примеры использования темы в разных ситуациях
- полезные приемы - распространенные приемы и советы
Почти по каждой теме есть задания. Этапы работы с заданиями:
- Выполнение заданий
- Самопроверка заданий тестами
- Просмотр вариант решения
- Проверка задания преподавателем с обратной связью, где нужно
Обратная связь, вопросы во время курса
В любой день во время курса можно и нужно задавать вопросы в slack (часовой пояс преподавателя EET/UTC+2).
Также по выходным (сб и вс) в freeconferencecall встречаемся онлайн.
Онлайн встречи специально выбраны в разное время, чтобы одна из них попадала в более-менее удобное время в разных часовых поясах.
Q&A сессии (вопросы и ответы) по 30 минут каждая:
- суббота: 10:00 UTC и 16:00 UTC
- воскресенье: 10:00 UTC и 16:00 UTC
На Q&A сессии могут также разбираться задания или выноситься какая-то конкретная небольшая тема, при необходимости.
Материалы курса в свободном доступе
Стоимость курса
Стоимость курса: 312$
Необходимая подготовка
Знания в объеме базового курса. Также желательно не идти на этот курс сразу после базового курса, надо сначала усвоить основы и хотя бы полгода поработать с Python.
Если эти требования выполняются, можно также почитать что нужно повторить непосредственно для подготовки к курсу за 1-2 месяца до начала: Подготовка к курсу.
Как записаться на курс
Для записи на курс, напишите мне письмо на адрес: natasha.samoylenko @ gmail.com. В письме достаточно указать имя, фамилию и сказать, что вы хотите записаться на курс.
Необходимое время
- 10-18 часов в неделю для выполнения заданий
- 3-7 часов в неделю на теорию
Расписание курса
Расписание курса главным образом служит для создания графика учебы. При этом, если придерживаться указанного графика учебы, темп будет достаточно интенсивным. Не у всех будет возможность выделять столько времени в неделю, поэтому учиться можно в своем темпе. Все материалы по курсу будут доступны и после даты завершения курса, задания проверяются и преподаватель на связи.
Дата в расписании - это день, когда выкладываются материалы по темам.
Неделя | Дата | Тема |
---|---|---|
0 | 26.11.22 | Онлайн. Вводная информация о курсе |
1 | 12.01.23 | Подготовка рабочей среды |
2 | 19.01.23 | Основы pytest |
Тестирование кода и оборудования с помощью pytest | ||
3 | 26.01.23 | Основы аннотации типов |
Автоматическое форматирование кода с Black | ||
4 | 02.02.23 | Создание интерфейса CLI с click |
5 | 09.02.23 | Модуль logging |
6 | 16.02.23 | Closure. Основы декораторов |
7 | 23.02.23 | Декораторы |
8 | 02.03.23 | - |
9 | 09.03.23 | ООП. Обзор основ |
ООП. classmethod, staticmethod, property | ||
10 | 16.03.23 | ООП. Наследование |
ООП. ABC, Mixin, descriptor | ||
11 | 23.03.23 | - |
12 | 30.03.23 | Namedtuple, dataclass |
Модуль collections | ||
13 | 06.04.23 | Итератор, генератор |
Модуль itertools | ||
14 | 13.04.23 | - |
15 | 20.04.23 | Asyncio. Основы |
Модули async | ||
16 | 27.04.23 | Использование asyncio |
17 | 04.05.23 | Использование asyncio |
18 | 11.05.23 | Завершающая лекция |
FAQ
Какие темы рассматриваются в курсе?
- Основы pytest
- Аннотация типов
- Автоформатирование кода с Black
- Создание CLI с click
- Logging
- Замыкания и декораторы
- ООП:
- Повторение основ
- Декораторы методов
- Наследование
- ABC
- Mixin
- Дескрипторы
- Dataclass
- Модуль itertools
- Asyncio:
- Основы
- Модули: asyncssh, scrapli
- Создание классов с asyncio
- Использование asyncio (декораторы, асинхронные генераторы, работа с потоками)
Какая версия Python рассматривается?
На курсе рассматривается Python 3.11.
Рекомендованная версия для выполнения заданий - Python 3.11, но для большинства тем подойдет и 3.8-3.10. Больше всего изменений от версии к версии в темах аннотация типов и asyncio.
Можно ли посмотреть пример видео по какой-то теме?
Пример видео с теорией по теме “Работа с файлами” из базового курса
Где и как можно получить обратную связь/задать вопросы?
В любой момент можно задать вопрос в slack. Плюс по субботам и воскресеньям будут Q&A сессии в режиме онлайн.
Необходимая подготовка?
Знания в объеме базового курса. Также желательно не идти на этот курс сразу после базового курса, надо сначала усвоить основы и хотя бы полгода поработать с Python.
Если эти требования выполняются, можно также почитать что нужно повторить непосредственно для подготовки к курсу за 1-2 месяца до начала: Подготовка к курсу.
Нужен ли опыт работы с сетевым оборудованием?
Важно чтобы какой-то опыт работы с сетевым оборудованием был, так как многие примеры и задания построены на использовании сетевого оборудования и модулей для подключения к оборудованию.
Все примеры на курсе рассматриваются на оборудовании Cisco, но подойдет опыт работы и с любым другим вендором.
Где выполняются задания?
Для каждого слушателя на курсе создается приватный репозиторий на github и весь курс работа идет в нем.
Как проверяются задания?
До проверки заданий преподавателем, есть несколько этапов самостоятельной работы с заданиями:
- Выполнение заданий
- Самопроверка заданий тестами
После этого задание сдается на проверку и преподаватель правит код и пишет комментарии по коду, если нужно. Плюс на любом этапе можно написать в slack и задать вопрос.
Материалы курса в свободном доступе
Материалы курса в свободном доступе
Особенности курса
- сертификат выдается только при условии, что все необходимые задания сделаны
- задания можно делать не только по расписанию курса, но и после
- если во время курса обстоятельства сложились так, что вы не можете выделить время на учебу, можно перейти на следующий курс или учиться в своем темпе
- после прохождения курса и получения сертификата, курс можно пройти второй раз бесплатно (с проверкой заданий)