cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
9560
Views
12
Helpful
6
Replies

Programming language for network engineer ?

from88
Level 4
Level 4

Hello,

As a network engineer i want to expand my knowledge and start learning some programming language. For scripts, to manage lot of network devices and etc... but i don't know with which programming language to start learning? i heard that Perl is good, also Python... i need your help, thanks..;)

1 Accepted Solution

Accepted Solutions

sean_evershed
Level 7
Level 7

My tip is Python. See this link from the latest CiscoLive as one example. It compares the benefits of learning Python and studying for the CCIE.

https://www.ciscolive.com/online/connect/sessionDetail.ww?SESSION_ID=84165&backBtn=true

If you do a search across all CiscoLive sessions from San Diego this year you get 15 sessions so it is growing in popularity. The same search reveals no references to Perl.

Learning Python will put you in a good position if you also want to move into SDN in the future.

I would also like to add that there is no link between Python and TCL.

Perl was first released in 1987 and Python in 1989 and so they are fairly similar in age.

View solution in original post

6 Replies 6

Mark Malone
VIP Alumni
VIP Alumni

EEM is based on TCL programming and is very useful on Cisco devices , eem is not a full language but a good one to know 

http://www.cisco.com/c/en/us/td/docs/ios/netmgmt/configuration/guide/12_2sx/nm_12_2sx_book/nm_eem_overview.html

http://www.cisco.com/c/en/us/td/docs/ios-xml/ios/ios_tcl/configuration/12-4t/ios-tcl-12-4t-book/nm-script-tcl.html

Thanks but in bigger picture, what about Python, Perl ?

from what i know but im not a programmer is python is an extension of TCL programming and i have seen it used quite a bit in networking in network management centers, i have not come across perl much but its around a lot longer than python and is supposed to be very versatile , python is supposed to be easier to learn

Disclaimer

The Author of this posting offers the information contained within this posting without consideration and with the reader's understanding that there's no implied or expressed suitability or fitness for any purpose. Information provided is for informational purposes only and should not be construed as rendering professional advice of any kind. Usage of this posting's information is solely at reader's own risk.

Liability Disclaimer

In no event shall Author be liable for any damages whatsoever (including, without limitation, damages for loss of use, data or profit) arising out of the use or inability to use the posting's information even if Author has been advised of the possibility of such damage.

Posting

The "bigger picture" is both Python and Perl are popular, so learning either would be a plus; knowing both an even bigger plus.  Python might be just a little better to learn first, for the reasons Peter has mentioned, and that Perl's many ways of doing the same thing is both good and bad.

Learning your first programming (or scripting) language is often more difficult then learning subsequent languages.

Peter Paluch
Cisco Employee
Cisco Employee

Hello,

This is a flamewar topic ;) Anyway, the first and foremost rule is this: As long as you master any language that you feel comfortable with and can achieve whatever you need then that's the best language for you. There is no such thing as a perfect programming language.

That being said, I would personally suggest looking into these:

Bash. I consider scripting in bash a must whenever you work under Linux or UNIX-based operating systems. Bash is the most straightforward command interpreter to use whenever working in a Linux command line - after all, it is the command line in most Linux distributions.

Python. Although I do not code much in Python, I like its discipline, so to say. The code is generally easy to read, lots of modules are already available, some of the supported data structures come in very handy, and overall, working with Python is comfortable.

Tcl. I have to say that I am not a fan of Tcl - I find the language and its syntax awkward - but the fact that it is supported in many IOS versions as the only scripting language (why didn't they implement bash instead?!) is reason enough to get at least a cursory overview of how to code the most simple things like loops.

My two cents... :)

Best regards,
Peter

sean_evershed
Level 7
Level 7

My tip is Python. See this link from the latest CiscoLive as one example. It compares the benefits of learning Python and studying for the CCIE.

https://www.ciscolive.com/online/connect/sessionDetail.ww?SESSION_ID=84165&backBtn=true

If you do a search across all CiscoLive sessions from San Diego this year you get 15 sessions so it is growing in popularity. The same search reveals no references to Perl.

Learning Python will put you in a good position if you also want to move into SDN in the future.

I would also like to add that there is no link between Python and TCL.

Perl was first released in 1987 and Python in 1989 and so they are fairly similar in age.

Review Cisco Networking products for a $25 gift card