Python Network Automation Course

In-Person Training Session

San Francisco, Four days

Tuesday, Sept 11 - Friday, Sept 14

Live Training Session

Python Network

Automation Training

Four Days

San Francisco

*See Syllabus Below

This course is limited to eleven total students on a first come, first served basis. The course also requires a minimum of at least six students (see FAQ below).

"I want to take a moment to thank you for all of your work on network automation, I work in an environment of nearly 3000 network devices...with a few months practice, I have been able to make changes as simple as adding VLANs to rectifying things like telnet on devices, hitting thousands of devices at a time."

"I just wanted to say a massive thank you for your courses and other content you put out. I've done three of them now and have found them to be immensely valuable. They have changed the way I work and even the way I think."

Course Syllabus

Day1

  • Course introduction
  • Why Python? Python3 versus Python2
  • Working with Git
  • Python Fundamentals Review (brief)
  • Python Classes and Objects
  • Sending Email Notifications
  • Parsing Cisco configs with CiscoConfParse
  • Using Netmiko for SSH Network Device Management (Part1)

Day2

  • Using Netmiko for SSH Network Device Management (Part2)
  • Netmiko Tools
  • Serialization: JSON and YAML
  • Arista's eAPI
  • XML
  • Juniper, NETCONF, and PyEZ

Day3

  • NX-API
  • Requests and using a REST-API
  • Jinja2 Templating
  • Pulling data from a CSV file
  • Integrating to a Database
  • NAPALM

Day4

  • TextFSM
  • Concurrency: Threads and Processes
  • Introduction to Nornir - A Python Automation Framework
  • Unit Testing
  • Continuous Integration

Subject to change (although any changes should be minor). Additionally, the content might shift/move between days.

FAQ

What is the format of the course?

This is a four-day, in-person training session in San Francisco. The session will be run out of the WeWork coworking space located at 156 2nd Street. This location is about two blocks from the Montgomery Street BART station. The course will run from Tuesday through Friday allowing individuals to travel on Monday. The daily sessions will run from 9AM to roughly 4:45PM. On Friday, we will end by 4PM.

Is there a lab environment?

Yes, the lab environment will consist of a set of virtual and physical network devices and at least one AWS-Linux server. I will install a set of libraries in the lab environment that will enable you to start working quickly. From the lab environment, you will be able to use Netmiko, Arista's eAPI, NAPALM, NX-API, PyEZ, and Nornir.

What are the prerequisites for the course?

You should be familiar with the basics of Python. You can be slow at writing Python code, but these ideas should not be new to you. After signing-up, I will send more details on this so that you can better prepare yourself for the start of the training session.

You also need to be familiar with basic network engineering (routing, switching, Cisco CLI configuration).

Finally, since the lab environment will use Linux, you should be at least somewhat familiar with Linux. You should know the basics of how to move around the file system, execute a script, and edit a file.

Why Python?

Python facilitates writing clean, readable code and is natively present on Linux and MacOS. Python has gained widespread support in the networking community both from engineers and from vendors. Python has a large, active community and, consequently, numerous resources are available to you (libraries, documentation, books, tutorials, etc.).

What is the course's cancellation policy?

If you cancel at least seven days prior to the start of the training session, then you will receive a 100% refund. If you cancel at least 24-hours prior to the start of the training session, then you will receive a 50% refund; the remaining 50% will be non-refundable. All amounts will be non-refundable once you are within 24-hours of the training session start.

Course cancellation by us.

In very rare situations, we could cancel a scheduled class either with less than seven days advanced notice or potentially even during the middle of a training session. While we will very much try to avoid this situation, if it should become necessary, then we will refund the full course payment (if the cancellation is before the start of the training session). If the course is cancelled in the middle of a training session, then there will be a prorated refund for the days not completed.

In the event of a Twin Bridges cancellation with less then seven days advanced notice, then we will also provide a free seat for the next online Python course (this is in addition to the refund schedule stated above). Besides the above, Twin Bridges will not be responsible for reimbursing any travel or any other indirect or consequential expenses.

What is the minimum student policy?

The course requires that there be at least six students signed-up. If we don't have a minimum of six students, then we will cancel the course and refund your money. If an in-person training session is cancelled, we will notify you at least seven days prior to the start of the training session.

Kirk Byers Image

About Me:

My name is Kirk Byers.

In the fall of 2010, I started on a journey to: 1)build a product business, 2)become a programmer, and 3)be a father (probably not the best idea to try all these things at once).

I am into Python, networking, and figuring out how to combine them to automate networking tasks.

I am a CCIE (emeritus) in routing and switching and have extensive Python experience. Since early 2014, I have been teaching Python to Network Engineers. Since that time, several thousand individuals have participated in my free Learning Python course.

In addition to teaching, I also created the Netmiko open-source library and am a major contributor to the NAPALM open-source project.

Yes, yes I get it...you are great and all that, but why should I learn Python from you?

I have spent numerous hours over the last six years using Python, studying Python, and teaching Python. From this, I have gained a considerable amount of Python experience and knowledge.

I can help you apply Python to network engineering tasks too.

Python Network Automation Course

In-Person Training Session

San Francisco, Four days

Tuesday, Sept 11 - Friday, Sept 14

Live Training Session

Python Network

Automation Training

Four Days

San Francisco

This course is limited to eleven total students on a first come, first served basis.