Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re: Learning methods (valid use for reinventing the wheel?)

by Abigail-II (Bishop)
on Oct 10, 2003 at 10:10 UTC ( [id://298201]=note: print w/replies, xml ) Need Help??


in reply to Learning methods (valid use for reinventing the wheel?)

Speaking for myself i grasb new concepts quickest when trying to implement them on my own.
Could you make your implementation of Perl from when you were grasping the language available?

Abigail

  • Comment on Re: Learning methods (valid use for reinventing the wheel?)

Replies are listed 'Best First'.
Re: Re: Learning methods (valid use for reinventing the wheel?)
by liz (Monsignor) on Oct 10, 2003 at 10:47 UTC
    Different people pick up things differently. Educational research has shown that.
    • Some people learn by doing.
    • Some people learn by reading about it once.
    • Some people learn by reading it over and over again.
    • Some people learn by example.

    Most people use a combination of the above in different situations, depending on how "at home" they are in the material they're trying to grasp. Obviously most people wouldn't even think of re-implementing Perl when they're trying to get to grips with the language in the first place.

    But I guess sometimes, just sometimes a bright person comes along and does just that. Then it's up to the rest of the world to judge whether it is any good or not.

    Liz

      My point is that learning to use something by implementing it yourself only works in a limited amount of cases. Only if reimplementation takes about the same effort as learning it in another way, it's efficient enough to do. So, it works for simple, small things, like most of the CPAN modules. But it's rather inefficient for things like Tk, perl, relational databases, operating systems, driving a car, learning a language or operating a television. And sometimes, it's even impossible. Surgeons don't learn their trade by reinventing the human heart.

      I'd say that when it's efficient to learn something by implementing it yourself is relatively rare.

      Abigail

        I'd say that when it's efficient to learn something by implementing it yourself is relatively rare.

        Many big things you mention (language implementations, GUI toolkits, RDBM systems, etc.), IMHO, make up a small precentage of the number of libraries or applications out there. For every RDBM, there are a few dozen SQL-related modules that could be implemented by any competent coder. You also mentioned Operating Systems, which actually is something that many people have learned by creating their own (maybe not a sophisticated system that would find a real-world use, but enough to get a basic shell up).

        Perhaps in other areas of life (such as heart surgeons and drivers) what you can learn-by-implementation is limited, but there are quite a lot of problems in programming that can be learned that way.

        ----
        I wanted to explore how Perl's closures can be manipulated, and ended up creating an object system by accident.
        -- Schemer

        Note: All code is untested, unless otherwise stated

Re: Re: Learning methods (valid use for reinventing the wheel?)
by Fengor (Pilgrim) on Oct 10, 2003 at 10:20 UTC
    You mean trying to write an own version of perl as part of trying to learn it? No i guess not.

    I dont think that the wheel approach is something that worky everywhere and everytime, but it worked for me on several occasions and helped me to understand things more quickly and clearly. It has his limitations as has each learning technique and i guess it mostly depends on the personal learning style of a person.

    --
    "WHAT CAN THE HARVEST HOPE FOR IF NOT THE CARE OF THE REAPER MAN"
    -- Terry Pratchett, "Reaper Man"

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (2)
As of 2024-04-26 06:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found