Продолжение обучения

Как правило, информацию тяжело усвоить с первого раза. Особенно, новую информацию.

Если делать практические задания и пометки, в ходе изучения, то усвоится намного больше информации, чем, если просто читать книгу. Но, скорее всего, в каком-то виде, надо будет читать о той же информации несколько раз.

Книга дает лишь основы Python и поэтому надо обязательно продолжать учиться и повторять уже пройденные темы и изучать новое. И тут есть множество вариантов:

  • автоматизировать что-то в работе

  • изучать дальше Python для автоматизации работы с сетью

  • изучать Python без привязки к сетевому оборудованию

    Тут ресурсы перечислены выборочно, с учетом того, что вы уже прочитали книгу. Но, кроме этого, я сделала подборку ресурсов в которой можно найти и другие материалы.

Написание скриптов для автоматизации рабочих процессов

Скорее всего, после прочтения книги, появятся идеи, что можно автоматизировать на работе. Это отличный вариант, так как на реальной задаче всегда проще учиться и изучать новое. Но лучше не ограничиваться только рабочими задачами и изучать Python дальше.

Python позволяет делать достаточно многое обладая только базовыми знаниями. Поэтому не всегда рабочие задачи позволят принципиально повысить уровень знаний или подтолкнуть к этому, но зная Python лучше, те же задачи можно решать, как правило, намного проще. Поэтому лучше не останавливаться и учиться дальше.

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

Python для автоматизации работы с сетевым оборудованием

Книги:

Блоги - позволят быть в курсе новостей в этой сфере:

У Packet Pushers достаточно часто выходят подкасты об автоматизации:

Проекты:

  • CiscoConfParse - библиотека, которая парсит конфигурации типа Cisco IOS. С ее помощью можно: проверять существующие конфигурации маршрутизаторов/коммутаторов, получать определенную часть конфигурации, изменять конфигурацию
  • NAPALM - NAPALM (Network Automation and Programmability Abstraction Layer with Multivendor support) это библиотека, которая позволяет работать с сетевым оборудованием разных вендоров, используя унифицированный API
  • NOC Project - NOC is the scalable, high-performance and open-source OSS system for ISP, service and content providers
  • Requests - библиотека для работы с HTTP
  • SaltStack - аналог Ansible
  • Scapy - сетевая утилита, которая позволяет манипулировать сетевыми пакетами
  • StackStorm - StackStorm is event-driven automation commonly used for auto-remediation, security responses, facilitated troubleshooting, complex deployments, and more
  • netdev
  • Nornir
  • eNMS

Python без привязки к сетевому оборудованию

Книги

Основы:

  • [Think Python](https://greenteapress.com/wp/think-python-2e/) - хорошая книга по основам Python. В книге есть задания.
  • [Python Crash Course: A Hands-On, Project-Based Introduction to Programming](https://www.amazon.com/Python-Crash-Course-Hands-Project-Based-ebook/dp/B018UXJ9RI/) - книга по основам Python. Половина книги посвящена «стандартному» описанию основ Python, а во второй половине эти основы используются для проектов. В книге есть задания.
  • [Automate the Boring Stuff with Python](https://automatetheboringstuff.com/). [На русском](https://www.ozon.ru/context/detail/id/137673590/) - в этой книге можно найти много идей по автоматизации ежедневной работы. Тут рассматриваются такие темы: работа с файлами PDF, Excel, Word, отправка писем, работа с картинками, работа в веб

Среднего/продвинутого уровня:

Курсы

  • MITx - 6.00.1x Introduction to Computer Science and Programming Using Python - очень хороший курс по Python. Отличный вариант для продолжения обучения после книги. В нём вы и повторите пройденный материал по основам Python, но под другим углом и узнаете много нового. В курсе много практических заданий и он достаточно интенсивный.
  • Python от Computer Science Center - отличные видеолекции по Python. Тут есть и немного основ и более продвинутые темы
  • Курсы от Talk Python

Сайты с задачами

Подкасты

Подкасты позволят в целом расширить кругозор и получить представление о разных проектах, модулях и библиотеках Python:

Документация