Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??
I have to agree that this directly reflects my own learning experience. When I started out with Perl, I was vaguely aware of CPAN but not familiar with its contents. As a result, my first programming ventures involved (amongst other things) handrolled templating systems, DIY date conversions, XML & HTML parsing with regexes, and many still worse horrors.

I view this now as no bad thing, since the shortcomings of my own solutions have allowed me to appreciate the complexity of the issues involved in these seemingly (to a beginner) simple tasks. When faced with a problem, I will now always look first to a module, since I understand the value of a tried and tested solution.

Surely it all comes down to the issue of abstraction. The essential benefit of a module is that you don't need to understand its internal workings in order to use it. For me there is no difference between using a module, and using Perl's built in 'sort' function versus writing my own - I don't need to concern myself with the underlying alogarithm in order to benefit from it. Of course, if I wanted to, I could look at the source code of either. But the point is I don't need to.

I see no problem in using an interface without worrying about its implementation. Is this not the entire philosophy of OO programming? And taken to its extreme, is this not the reason we all use Perl (or any other language) versus telling our computers what to do by constructing the correct sequence of '1's and '0's ...?

In reply to Re^2: Modules, Frameworks, and Reinventing the Wheel by Mr_Jon
in thread Modules, Frameworks, and Reinventing the Wheel by Velaki

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (4)
As of 2024-04-25 23:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found