<story><title>Stop Making Students Use Eclipse (2020)</title><url>https://nora.codes/post/stop-making-students-use-eclipse/</url></story><parent_chain><item><author>kelnos</author><text>Completely disagree.&lt;p&gt;&amp;gt; &lt;i&gt;full teams can and have built huge java projects just by using the intellij project wizard and maybe a tiny bit of Gradle from stack overflow.&lt;/i&gt;&lt;p&gt;I would not ever want to work with anyone from those types of teams.  They are the kind of programmers who have a very narrow range of abilities, and whenever they see a problem outside those abilities, they get completely lost.&lt;p&gt;&amp;gt; &lt;i&gt;But this is stuff that should come in later classes, particularly for students who are interested in those details. Not everyone needs to know it.&lt;/i&gt;&lt;p&gt;Yes, they do.  They absolutely do.  There seems to be this mindset that&amp;#x27;s starting to infect software development that pushes the idea that people can be good at programming computers without actually knowing anything about how those computers work.  I just do not understand how anyone could seriously believe that.  My experience over the past 20+ years tells me that people who avoid learning about these topics are generally just not good at their jobs, or at best can do a decent job of things, but then completely freeze when they encounter something outside of their narrow comfort zone.&lt;p&gt;&amp;gt; &lt;i&gt;In fact my experience is that some colleges have the exact opposite problem: they teach students old tools and techniques&lt;/i&gt;&lt;p&gt;That&amp;#x27;s lame, but has nothing to do with the point you&amp;#x27;re trying to make.</text></item><item><author>armchairhacker</author><text>I don’t agree with this perspective: why do entry-level students have to understand the internals behind compiling their code, and weird edge-cases like misspelling import? In my experience this is actually the stuff that hinders learning and confuses students.&lt;p&gt;The author claims that students won’t be able to do real-world programming without learning this esoteric stuff, but actually this is the exact stuff they don’t need to know: full teams can and have built huge java projects just by using the intellij project wizard and maybe a tiny bit of Gradle from stack overflow. Actually students can solve most of the author’s problems by spending 5 seconds on Stack Overflow.&lt;p&gt;I’m not saying that these more esoteric details are completely useless. Learning e.g. the difference between char and UTF8 “character” is actually pretty important so that emoji inputs don’t crash your website. But this is stuff that should come in later classes, particularly for students who are interested in those details. Not everyone needs to know it.&lt;p&gt;In fact my experience is that some colleges have the exact opposite problem: they teach students old tools and techniques which are tedious and not actually used much later on. Like writing code by hand and deducting points for syntax errors, or using some outdated framework e.g. jQuery. When I saw the title my first thought was literally “yeah stop making students use eclipse, they should be using IntelliJ!”</text></item></parent_chain><comment><author>simonh</author><text>You only like to work with experienced engineers, who are already experienced with the specific tooling you use on your projects fine.&lt;p&gt;Students by definition are not experienced engineers. They’re in a given class to learn the topic for that class, and hopefully that class with be a challenging program of learning. In CS often the fact they’re even working in Java is incidental, they’re not even there to learn Java, but generalisable CS concepts.&lt;p&gt;I’ve got no problem teaching students practical software engineering skills, sure, that can be very valuable. It should be on a course on that topic though.</text></comment>
<story><title>Stop Making Students Use Eclipse (2020)</title><url>https://nora.codes/post/stop-making-students-use-eclipse/</url></story><parent_chain><item><author>kelnos</author><text>Completely disagree.&lt;p&gt;&amp;gt; &lt;i&gt;full teams can and have built huge java projects just by using the intellij project wizard and maybe a tiny bit of Gradle from stack overflow.&lt;/i&gt;&lt;p&gt;I would not ever want to work with anyone from those types of teams.  They are the kind of programmers who have a very narrow range of abilities, and whenever they see a problem outside those abilities, they get completely lost.&lt;p&gt;&amp;gt; &lt;i&gt;But this is stuff that should come in later classes, particularly for students who are interested in those details. Not everyone needs to know it.&lt;/i&gt;&lt;p&gt;Yes, they do.  They absolutely do.  There seems to be this mindset that&amp;#x27;s starting to infect software development that pushes the idea that people can be good at programming computers without actually knowing anything about how those computers work.  I just do not understand how anyone could seriously believe that.  My experience over the past 20+ years tells me that people who avoid learning about these topics are generally just not good at their jobs, or at best can do a decent job of things, but then completely freeze when they encounter something outside of their narrow comfort zone.&lt;p&gt;&amp;gt; &lt;i&gt;In fact my experience is that some colleges have the exact opposite problem: they teach students old tools and techniques&lt;/i&gt;&lt;p&gt;That&amp;#x27;s lame, but has nothing to do with the point you&amp;#x27;re trying to make.</text></item><item><author>armchairhacker</author><text>I don’t agree with this perspective: why do entry-level students have to understand the internals behind compiling their code, and weird edge-cases like misspelling import? In my experience this is actually the stuff that hinders learning and confuses students.&lt;p&gt;The author claims that students won’t be able to do real-world programming without learning this esoteric stuff, but actually this is the exact stuff they don’t need to know: full teams can and have built huge java projects just by using the intellij project wizard and maybe a tiny bit of Gradle from stack overflow. Actually students can solve most of the author’s problems by spending 5 seconds on Stack Overflow.&lt;p&gt;I’m not saying that these more esoteric details are completely useless. Learning e.g. the difference between char and UTF8 “character” is actually pretty important so that emoji inputs don’t crash your website. But this is stuff that should come in later classes, particularly for students who are interested in those details. Not everyone needs to know it.&lt;p&gt;In fact my experience is that some colleges have the exact opposite problem: they teach students old tools and techniques which are tedious and not actually used much later on. Like writing code by hand and deducting points for syntax errors, or using some outdated framework e.g. jQuery. When I saw the title my first thought was literally “yeah stop making students use eclipse, they should be using IntelliJ!”</text></item></parent_chain><comment><author>brtkdotse</author><text>&amp;gt; They are the kind of programmers who have a very narrow range of abilities, and whenever they see a problem outside those abilities, they get completely lost.&lt;p&gt;The vast, VAST majority of programming is of the type OP described. It ugly and has warts, but is good enough to deliver business value. I’ve seen it first hand.&lt;p&gt;The truth is that developers working on projects like that outnumber everyone else probably 10-1. See &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.hanselman.com&amp;#x2F;blog&amp;#x2F;dark-matter-developers-the-unseen-99&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.hanselman.com&amp;#x2F;blog&amp;#x2F;dark-matter-developers-the-un...&lt;/a&gt;</text></comment>