Python for Networking Engineers
One of my readers sent me a simple question: “Do you plan to have a Python for Networking Engineers webinar?”
Short answer: no immediate plans.
Here are just a few reasons:
- There are several good Python for Networking Engineers offerings out there, from Kirk Byers’ online course to Urs Baumann’s week-long classroom training.
- While it doesn’t hurt to have some baseline programming knowledge, I don’t really believe in programming being mandatory for networking engineers. I would always prefer to get the job done by a specialist who has programming experience comparable to my networking experience.
- The pragmatic one: I have too many other things in the pipeline.
His next question:
Do you think there is a need for python for network automation, or the Ansible will resolve this issue, without being involved directly with a programming language?
You can get a lot of things done with Ansible or other tools. However, these tools (including Ansible) are not general-purpose programming languages, and at least Ansible sucks at data munging and manipulation.
There will always be need for more sophisticated glue, and a programming language (Python, for example) will always be needed to provide it. However, as explained above, I don't necessarily believe in writing that code myself. Well, I would probably do it as a proof-of-concept, but would try to get a programmer fluent in Python to (re)do before the code gets anywhere near a real-life project.
And beginning with release 2016.11.0 (Carbon): https://docs.saltstack.com/en/latest/topics/releases/2016.11.0.html#network-automation-napalm, SaltStack provides all the necessary tools for network engineers, without requiring any software development knowledge.