Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Getting Started

by Shivam1807 (Initiate)
on Apr 01, 2013 at 00:48 UTC ( #1026397=perlquestion: print w/replies, xml ) Need Help??
Shivam1807 has asked for the wisdom of the Perl Monks concerning the following question:

Hello Perl Monkers,

I am totally new to perl and fairly new to programming, though I have have kept trying prog. all my life but never done it seriously. The reason and motivation to learn Perl is being a Network engineer I want to use Perl as a tool to include in my skill set so that I can automate some stuff. Also develop some cool stuff to enhance my perl skills.

Now I have been through this website and I have started reading but I wanted some good advise/suggestion on how to practice what I learn in terms of real scenarios. Like developing something easy which will be useful also related to networking.


Replies are listed 'Best First'.
Re: Getting Started
by 7stud (Deacon) on Apr 01, 2013 at 04:13 UTC
    1. "Learning Perl", do all the exercises
    2. "Intermediate Perl", do all the exercises
    3. Lincoln Stein's "Network Programming with Perl" (which is one of the best written books in any programming language)
Re: Getting Started (practice, survey)
by Anonymous Monk on Apr 01, 2013 at 02:20 UTC
Re: Getting Started
by jmlynesjr (Hermit) on Apr 01, 2013 at 01:47 UTC

    Try a Super Search for "cisco" and get yourself a copy of "Learning Perl" and the "Perl Cookbook".


    There's never enough time to do it right, but always enough time to do it over...

Re: Getting Started
by rnewsham (Deacon) on Apr 01, 2013 at 07:01 UTC

    As everyone has said working through the books and example exercises is the best place to start. As you work through the examples try to relate them to something you are familiar with. If you can try to relate them to how you could use them in your own area of interest, you will find them much more enjoyable and easier to grasp.

    When you have the basics try creating your own simple networking scripts. You could try creating a simple ping script, open a connection and communicate with a remote server, try SNMP to one of your switches. This may seem daunting at first, but use cpan modules and look at the examples in their documentation, you will see its not that scary. Don't worry at this stage about creating something new, re-inventing the wheel is a great way to learn as you can compare your solution to others. As you create these simple scripts you should gain a better understanding of how perl handles networking tasks. This should help you start to form ideas of how to solve problems you encounter and automate simple tasks.

Re: Getting Started
by Shivam1807 (Initiate) on Apr 01, 2013 at 04:51 UTC
    Thank You for suggestion's everybody. Surely, I'll start with reading the books and practice the exercise...
Re: Getting Started
by jbodoni (Monk) on Apr 01, 2013 at 16:18 UTC
    I wound up writing combinations of batch files and scripts to add new users, move users around the tree, delete users (and move their home directory into their boss' home directory), etc. Any time I found myself having to go through a list of steps for a task, I set about writing a script to do it for me.
Re: Getting Started
by perl514 (Pilgrim) on Apr 02, 2013 at 15:56 UTC

    Hi Shivam,


    I wholehearted second the suggestion of buying "Learning Perl" (6th Edition is the latest one). I would also suggest that you buy "Beginning Perl" By Ovid. I too started off without any prior programming knowledge and by the time I was halfway through these two books, I already did small automation. Most important is "Do The Exercises At The End Of Chapter". It very very important.There is a reason why I included these two books in my signature...Because these books are simply awesome. :)

    If you are on Windows, please try DWIM Perl. I suggest this primarily for two reasons. There is a chance that some application would already have some version of Activestate Perl already installed on your Windows System. I found this to be true in my case. So I downloaded and installed DWIM Perl, which installs in a complete separate directory.

    It also comes pre loaded with a lot of useful Modules. To quote some, the Net::SSH2 Module (which is one of the many awesome Perl Modules used to login to other systems to run commands and capture output), The MIME::Lite Module which is perfect for automating the E-mail Alerts, The Config::Tiny Module which allows you to have a separate "config" file where you can store the username/Password, commands, and such stuff which your script will be using.

    What you will also need is a good Perl Editor. If you use DWIM Perl, you'll get PADRE Editor. Or you can also try the Komodo Edit (Free Version).

    Hope this helps you to get started

    Perlpetually Indebted To PerlMonks

    use Learning::Perl; use Beginning::Perl::Ovid; print "Awesome Books"; is a boon for Windows.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://1026397]
Approved by tobyink
Front-paged by 2teez
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (9)
As of 2018-07-17 18:04 GMT
Find Nodes?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?

    Results (374 votes). Check out past polls.