08-23-2023 07:07 AM - edited 08-23-2023 01:19 PM
Regarding network automation, we have many different choices of programming languages from which to choose. Some languages have been around for decades, like Perl, and those that are relatively new, such as Go. Which one to use will most likely be determined by your organization and needs.
I always get a chuckle out of “which one is best” conversations (so this discussion is not meant to do that) as the answer to the “best” question is, quite honestly, “It depends.” What are you trying to accomplish? What language do you know? What language does your team know?
While it is easy to say that, for example, Python is an excellent choice for network automation, sometimes the situation and environment call for other solutions. Sometimes, a Bash or PowerShell script is called for. Sometimes, your team might be using Ruby for a specific task. Given the appropriate situation, even a language like JavaScript leveraging Node.js has its place in automation tasks.
If you’re beginning your network automation journey or would like a recommendation for which language to start learning, Python is a common place to start. It is relatively straightforward to learn, has a human-readable syntax, and allows for easy integration of systems. Additionally, if you want to move beyond network automation tasks, Python is a great language to start your programming journey. However, as big of a fan of Python as I am, I have been working with the Go language recently on a project and have also enjoyed that language.
Ultimately, as you work on network automation or programming, be flexible about the language you use. If there were a “perfect for every situation” language out there, we wouldn’t need all the others, right? Take some time to figure out what you want to achieve and then explore which language will do the task in a manner that you and your team find efficient.
What language are you using for network automation tasks? What language(s) would you like to learn to help improve your skills or current job functions? Let me know in the comments below.
08-23-2023 04:50 PM
Back in the days, my go to network automation (or almost any computer related tasks automation) language is Perl. Now, I use:
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide