Class1: Why Python, the Shell, and Strings
- Why Python?
- Characteristics of Python
- The Python Interpreter Shell
- Printing to stdout and reading from stdin
- Dir, Help, and Variables
- Python Strings
- Python String Formatting
Class2: Numbers, Files, Lists, and Linters
- List Slices
Class3: Conditionals and Loops
- Boolean Logic
- For Loops
- Break and Continue
- While Loops
- Loops Miscellaneous
Class4: Dictionaries, Exceptions, and Regular Expressions
- Dictionary Methods
- Regular Expressions
- Regular Expressions—Other Methods
Class5: Functions and the Python Debugger
- Misc Topics
- Python Debugger (pdb)
- Netmiko Introduction and Basics
- Netmiko Show Commands
- Netmiko and Prompting
- Netmiko and TextFSM
- Netmiko Config Changes
- Netmiko Troubleshooting
Class7: Jinja2, YAML and JSON
- Jinja2 Basics
- Jinja2 For-Loops and Conditionals
- Jinja2 Dictionaries and Nested Loops
- Using Python to Write YAML
- Managing Data Structures
Class8: Libraries, PIP, and Virtual Environments
- Importing Libraries
- sys.path and PYTHONPATHv
- Virtual Environments
- Creating a Simple Python Module
I decided to take Kirk's courses on Ansible and Nornir during the stay-at-home-orders in 2020 when COVID-19 hit the world. After the first few lessons I was able to write my first script to check for and add VLANs to our NX-OS environment.Stian LiebenbergSenior Wireless Engineer
I have taken several paid and non-paid Python courses. I can say that by far your course is the best one I have taken. The way you explained stuff just makes sense to me.Joli MartinezAutomation Engineer
I am on the material for the 3rd week and I just wanted to compliment you on the way that you explained how to unwrap the data structures. Best step by step explanation I have seen so far to help me understand and work with the data. Thank you very much!Ray deGuzmanSenior Network Engineer
What is the format of the course?
This course is an eight week email-course. Each week you will receive a lesson that contains a set of videos, some additional content, and some exercises. I will post solutions to the exercises online. The course is largely self-paced except for the weekly email cadence.
Is there a lab environment?
No, since this is a free course, there is no lab environment. For all of the lessons except for Class6 (Netmiko), you should be able to accomplish the lessons without having any access to network devices.
What are the prerequisites for the course?
This course is intended for network engineers that have some basic familiarity with programming (for example, Perl, shell scripting, other language) and who would like to learn Python. The course covers Python fundamentals, but using examples and exercises that are more relevant to network engineers.
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 if I am unsatisfied with the course after I sign-up?
The course is free so unsubscribe from the email-list if you aren't happy with the lessons or our other content.
Kirk Byers is the founder of Twin Bridges Technology–a business specializing in network automation training. He is the creator of the Netmiko Python library and also one of the maintainers of the NAPALM project. He teaches Python, Ansible, and Nornir courses for Network Engineers and writes about network automation. He is a long-time network engineer (CCIE #6243 emeritus), has extensive experience with *nix system administration, and is a Python programmer. He is interested in programming and networking and how to improve network engineering practices through automation.
Zack is a programmer extraordinaire. His language of choice is Python. He loves programming and is very big into games including: Magic the Gathering, Roblox, Dungeons & Dragons, and Terraforming Mars.
Jupiter is all dog. She loves to be near her people and loves her food (not necessarily in that order). She likes the water, the beach, chasing birds, and meeting new people. She is categorized as "an aggressive chew breed" and is living up to that category.