<!DOCTYPE html><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <font size="4" face="monospace">You pass the "only respond if you
      are an instructor" test, but I was asking a very specific
      question: what can we say about the relative learnability of
      `IO.println` vs `println`?<br>
      <br>
      There's infinite room to design new APIs but we're looking for
      feedback on a specific question.<br>
    </font><br>
    <br>
    <div class="moz-cite-prefix">On 11/21/2024 7:14 PM, Matt Pavlovich
      wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:4CAD4179-48AC-4185-9FD2-26C8D4D6BB1D@gmail.com">
      
      Hello-
      <div><br>
      </div>
      <div>How about a series of classes that provide the same I/O
        methods (and behavior!) across the spectrum of I/O types? </div>
      <div><br>
      </div>
      <div>This would allow:</div>
      <div>1. New coders to learn on the console, which provides the
        benefit of immediate feedback loop</div>
      <div>2. Allow new coders to transition from Console to File to
        Socket by changing only a single word in the source code</div>
      <div><br>
      </div>
      <div>Console.readInt</div>
      <div><span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">Console.readIntln</span></div>
      <div><span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">Console.writeInt</span></div>
      <div><span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">Console.writeIntln</span></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);"><br>
          </span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">Socket.readInt</span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">Socket.writeInt</span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">..</span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);"><br>
          </span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">File.readInt</span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">File.writeInt</span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">,,,</span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);"><br>
          </span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">Properties.readInt</span></font></div>
      <div><font color="#000000"><span style="caret-color: rgb(0, 0, 0);">Properties.writeInt<br id="lineBreakAtBeginningOfMessage">
          </span></font>
        <div>,,,</div>
        <div><br>
        </div>
        <div><br>
        </div>
        <div>Thanks,</div>
        <div>Matt Pavlovich</div>
        <div><br>
        </div>
        <div>Instructor: 1,000+ hours of classroom</div>
        <div>Teacher: 8th grade robotics/engineering/programming</div>
        <div><br>
          <blockquote type="cite">
            <div>On Nov 21, 2024, at 12:45 PM, Brian Goetz
              <a class="moz-txt-link-rfc2396E" href="mailto:brian.goetz@oracle.com"><brian.goetz@oracle.com></a> wrote:</div>
            <br class="Apple-interchange-newline">
            <div>
              <div>I'd like to validate this further, but I'd like to
                seek feedback _from educators only_.  (Please include in
                your answer how long you've been teaching Java
                *formally*.)<br>
                <br>
                <blockquote type="cite">I am with Stephen here.<br>
                  <br>
                  For effective learning, the gating factor is
                  complexity, not verbosity. The regularity of
                  IO.println wins over the implicit import.<br>
                </blockquote>
                <br>
                I would like to assess how broadly this opinion is held
                _by educators_.  The three positions that have been
                espoused by various proponents are:<br>
                <br>
                 - println is simpler for learners, and so the speed
                bump of going from there to IO.println when going to
                non-simple compilation units is worth it.<br>
                 - IO.println is equally simple for learners, and has
                the benefit of uniformity, no need for static import.<br>
                 - IO.println is actually *simpler* for learners,
                because the IO provides context to what comes after the
                dot.<br>
                <br>
                It is easily imaginable for experienced developers to
                hold any of these views; consider all of those as having
                been read into the record.  I want to hear _from
                educators_ about which they would be more comfortable
                teaching, and why.<br>
                <br>
                Thanks in advance for keeping this channel clear for the
                experienced educators to speak.<br>
                <br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>