<!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>