Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: Keeping sharp and fresh

by spiritway (Vicar)
on Sep 22, 2005 at 06:33 UTC ( #494028=note: print w/ replies, xml ) Need Help??


in reply to Keeping sharp and fresh

Sometimes I "reinvent the wheel" - write something that already exists. The idea isn't to make a better wheel, but simply to learn how to make one - and in so doing, learn some new tools.


Comment on Re: Keeping sharp and fresh
Re^2: Keeping sharp and fresh
by liverpole (Monsignor) on Sep 22, 2005 at 12:35 UTC
    Good answer!  I completely agree that a lot can be said for "reinventing the wheel"!

    In addition to "learning how to make one" and "learning some new tools":

    1. Often, you need a special wheel that best fits your particular needs.
    2. There's the possibility that you'll stumble onto a better/faster way to make "one"
    3. You'll learn the tradeoffs involved in making "one"
    4. There may be common mistakes associated with the particular "wheel" you're (re)inventing, so overcoming these mistakes will make you a better programmer
    5. If you've reinvented it several times (or several dozen times), it may take you only a moment to create it in a future program.
    6. You get just as much experience writing something that already exists as you do writing something new.
    7. After you write it yourself, you can go evaluate the one that already exists (probably at cpan), and see how you did!
    Think what the consequences would have been back in 1987 if Larry Wall hadn't "reinvented the wheel" when he wanted something more powerful than sed, awk and sh to program in!
      I haven't thought of focussing on this - when I have tried, I inevitably end up realising why the module author took so many lines of code to do it when I thought it was simple! In that way it can also teach respect :)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://494028]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (7)
As of 2014-08-01 02:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (256 votes), past polls