in reply to •Re: Object oriented architecture question
in thread Object oriented architecture question

Ahh yes. Why must we all do this, once? This is certainly in the list of "things reinvented by Perl programmers as a rite of passage", just like templating systems, CGI form parsers, command-line argument decoders, generic object attribute systems, object persistence, deep-copying algorithms, and the like. ... Please Don't Reinvent The Wheel needlessly.

You're a Perl trainer and I think you should know better. Re-inventing wheels is a great way to learn a language. Besides, if no-one reinvented wheels, we would never get better modules. It's not always good to worship a module and never reconsider its entire design.

CGI form parsers are a great way of learning how split works, and how hashes work.

Building a simple templating system is a great introduction into the world of substitutions.

Parsing @ARGV manually can really improve your splice skills.

Home brew object attribute systems and object persistence creations are to many a good way of OO self-education.

Deep-copying alghorithms teach how to use recursion, and/or how to avoid it.


I think that stopping people from re-inventing the wheel stops people from learning.

U28geW91IGNhbiBhbGwgcm90MTMgY
W5kIHBhY2soKS4gQnV0IGRvIHlvdS
ByZWNvZ25pc2UgQmFzZTY0IHdoZW4
geW91IHNlZSBpdD8gIC0tIEp1ZXJk

  • Comment on Re: •Re: Object oriented architecture question

Replies are listed 'Best First'.
•Re: Re: •Re: Object oriented architecture question
by merlyn (Sage) on Mar 28, 2002 at 22:41 UTC
    You're a Perl trainer and I think you should know better. Re-inventing wheels is a great way to learn a language. Besides, if no-one reinvented wheels, we would never get better modules. It's not always good to worship a module and never reconsider its entire design.
    You misquote me. I have no problem with people reinventing wheels once they've studied prior art. It's the people that don't even take time to see what the similar solutions are that waste both their time, and ours. Both during the creation, then maintaining variants of the same crappy code, instead of collaborating to build something much better on top of the prior discoveries.

    -- Randal L. Schwartz, Perl hacker