<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Aptos;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        font-size:12.0pt;
        font-family:"Aptos",sans-serif;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Aptos",sans-serif;
        color:windowtext;}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:"Aptos",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:11.0pt;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-CA" link="#467886" vlink="#96607D" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US">For me, as a retired educator, Implicitly Declared Classes and Instance Main Methods along with Module Import Declarations simplifies teaching and learning Java. As someone who has
 taught Java to beginners for almost 25 years (BASIC, Pascal, C, & C++ previously) I can say without hesitation that Java has been hard to learn. My opinions on teaching Java to students at any age, turns out I’m old, has changed significantly over the past
 few years. <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US">When I started teaching my focus in the classroom was to train my students to thoroughly understand the syntax of the language and then apply that syntax to problem solving. I have
 come to the realization that this was likely the wrong approach, far too late in my career.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US">What is important is problem solving and the organization of the solution. Syntax is secondary. In my Intro to Java course I found that the decorations of Java OOP programming got
 in the way of problem solving. If I am working on the very simple problem of writing a program that can make change (x pennies, y quarters, z dollars, etc), I do not want to also tell my students to include the decorations. Just solve the problem and fall
 in love with the mod operator. From my limited perspective the evilest expression in Java is System.out.println (confusingly this does not require an import).<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US">This is not to say that the proper construction of classes and employing access control will be ignored but it should not be a large part of the first few classes in an intro course.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US">The capability of Java is, in my opinion, unparalleled due to the bureaucracy (in this case a good thing) that ensures that every JSR and JEP enhances the language. The JEPs (I am
 confused by the numbering so I used the titles in my first sentence above)) have been well thought out (well maybe it could use a readNum
</span><span style="font-size:11.0pt;font-family:"Segoe UI Emoji",sans-serif;mso-fareast-language:EN-US">😊</span><span style="font-size:11.0pt;mso-fareast-language:EN-US">). I look forward to starting my upcoming online Intro to Java course, I am allowed to
 teach one course a year at Concordia University even though I am retired, where I can teach problem solving and basic data structures with minimal overhead, hence my love of module java.base implicit import. By the end of my 30-hour online course my students
 will have learned how to create classes and understand what public, private, and protected mean and the role of static elements, just not on day one anymore.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US">One last point, with these JEPs plus Launch Multi-File Source-Code Programs I believe I can also start teaching with just a text editor and a terminal/console and leave the IDE for
 later in the course.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US">Ken<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
</div>
</body>
</html>