<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    On 12/17/2010 5:14 AM, Parshwa Murdia wrote:
    <blockquote
      cite="mid:AANLkTi=y1TCHstKxHaXd90acW63E75596rqx8B_xMoR=@mail.gmail.com"
      type="cite">
      <div class="gmail_quote">On Fri, Dec 17, 2010 at 4:28 PM, Toxico
        Nimbus <span dir="ltr">&lt;<a moz-do-not-send="true"
            href="mailto:ToxN@free.fr">ToxN@free.fr</a>&gt;</span>
        wrote:<br>
        <blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
          0.8ex; border-left: 1px solid rgb(204, 204, 204);
          padding-left: 1ex;">
          - Don't use something you couldn't create yourself<br>
          &nbsp;<font color="#888888">Toxico Nimbus<br>
          </font></blockquote>
        <div><br>
          <br>
          How you imagine could a beginner create something which he is
          trying to learn? Could you do that by the time you started
          learning? <br>
        </div>
      </div>
      <br>
    </blockquote>
    I suspect Toxico is speaking about a particular challenge that has
    come up with educators teaching particularly OO languages as first
    languages.&nbsp; Specifically, because of the strong encapsulation and
    data hiding techniques present in these languages, a wide ecosystem
    of reusable class libraries has surrounded them - to the point where
    programming in these languages is often seen as an integration
    effort - trying to integrate a series of class libraries.&nbsp; As a
    result, a certain segment of the programming community has lost
    understanding of huge swaths of the practice - particularly
    foundational algorithms - such as searching and sorting algs -
    because learning programmers just use rather than implement.<br>
    <br>
    When you are reusing code (like a sorting or search algorithm, or a
    hash tree class in Java), think about whether you understand (at
    least in basic terms) how that code is likely implemented.&nbsp; If you
    were given the task of implementing a hash table (because
    java.util.HashMap was unavailable to you), would you be able to?&nbsp;
    Would you know where to start?&nbsp; Would you be able to describe the
    performance characteristics of a search, insert or delete using this
    structure?&nbsp; These are important questions that you should learn to
    answer...<br>
    <br>
    PK<br>
    <br>
  </body>
</html>