Курс “Advanced PyNEng”

Главный нюанс этого курса в том, что он углубляется в Python, а не в автоматизацию сетевого оборудования. Будет полезен тем, кто много работает с Python и хочет изучить указанные темы. Если вы хотите углубиться в автоматизацию и соответственно изучать разные модули, API и фреймворки для работы с сетевым оборудованием, посмотрите курсы в списке ресурсов.

О курсе

Формат курса изменился:

  • лекции больше не читаются онлайн
  • по каждой теме курса теория дается в виде записи видео

На каждую неделю курса подготовлена одна или несколько тем для изучения:

  • теоретическая часть в виде видео (2-4 часа) выкладывается на YouTube в закрытый плейлист
  • задания

Видео по каждой теме будут разделены на три группы (пример видео из базового курса):

  • основы - базовые вещи по теме
  • примеры - примеры использования темы в разных ситуациях
  • полезные приемы - распространенные приемы и советы

Почти по каждой теме есть задания. Этапы работы с заданиями:

  • Выполнение заданий
  • Самопроверка заданий тестами
  • Просмотр вариант решения
  • Проверка задания преподавателем с обратной связью, где нужно

Обратная связь, вопросы во время курса

В любой день во время курса можно и нужно задавать вопросы в slack (часовой пояс преподавателя EET/UTC+2).

Стоимость курса

Стоимость курса: 312$

Необходимая подготовка

Знания в объеме базового курса/книги. Также желательно не идти на этот курс сразу после базового курса, надо сначала усвоить основы и хотя бы полгода поработать с Python.

Необходимое время

  • 10-18 часов в неделю для выполнения заданий
  • 3-7 часов в неделю на теорию

Темы курса

  • Основы pytest
  • Аннотация типов
  • Автоформатирование кода с Black
  • Создание CLI с click
  • Logging
  • Замыкания и декораторы
  • ООП:
    • Повторение основ
    • Декораторы методов
    • Наследование
    • ABC
    • Mixin
    • Дескрипторы
    • Dataclass
  • Генераторы
  • Asyncio:
    • Основы
    • Модули: asyncssh, scrapli
    • Создание классов с asyncio
    • Использование asyncio (декораторы, асинхронные генераторы, работа с потоками)

FAQ

Какая версия Python рассматривается?

На курсе рассматривается Python 3.11.

Рекомендованная версия для выполнения заданий - Python 3.11, но для большинства тем подойдет и 3.8-3.10. Больше всего изменений от версии к версии в темах аннотация типов и asyncio.

Где и как можно получить обратную связь/задать вопросы?

В любой момент можно задать вопрос в slack.

Необходимая подготовка?

Знания в объеме базового курса/книги. Также желательно не идти на этот курс сразу после базового курса, надо сначала усвоить основы и хотя бы полгода поработать с Python.

Нужен ли опыт работы с сетевым оборудованием?

Важно чтобы какой-то опыт работы с сетевым оборудованием был, так как многие примеры и задания построены на использовании сетевого оборудования и модулей для подключения к оборудованию.

Все примеры на курсе рассматриваются на оборудовании Cisco, но подойдет опыт работы и с любым другим вендором.

Где выполняются задания?

Для каждого слушателя на курсе создается приватный репозиторий на github и весь курс работа идет в нем.

Как проверяются задания?

До проверки заданий преподавателем, есть несколько этапов самостоятельной работы с заданиями:

  • Выполнение заданий
  • Самопроверка заданий тестами

После этого задание сдается на проверку и преподаватель правит код и пишет комментарии по коду, если нужно. Плюс на любом этапе можно написать в slack и задать вопрос.