Hi,

I think the main point is that teaching with a REPL has some benefits not 
easily simulated by an IDE:

   - It works like math in the sense that later lines of definitions are 
   based on earlier ones. That's exactly what people still know from school 
   and it gives them a familiar feeling.
   - It gives them a feedback at every step, for every single line and 
   enforces them to solve a problem before moving on to the next. No "There 
   are red squiggles, but let's ignore them, right?" This is a MASSIVE issue.
   - Earlier definitions and solutions are implicitly available and solve 
   the problem of "should I define a new class for task A?"/"how can I use 
   method B in both C and D"/...
   
Compared to working in an IDE,

   - where even the installation can be painful and 
   - doing basically anything requires them to first configure IDE specific 
   stuff they neither understand nor care about at that moment
   - which encourages copy-and-paste behavior along the line, especially in 
   less than modern languages like Java
   - which does way too much for an beginner

Imho everything depends on the goals.

*Do you want to teach concepts?* Stay away from IDEs until the concepts are 
understood. 

*Do you want to teach Eclipse?* Sure, go on, but please be honest about it. 
I have seen to many "text processing courses" which more or less were 
instructions on how to find some menu entry in Microsoft Office 2003, while 
95% of the participants lacked _any_ idea of concepts like "where to use 
headings/bold/italic/different fonts"/"how to use quotation marks"/"what's 
the purpose of footnotes"/"how to decide on consistent style guidelines"/...

Teaching with an IDE feels a bit like those office courses, because people 
are basically bound to spend most of their time fighting with IDE-related 
problems and issues.

In the end I think languages without a stand-alone REPL/interpreter/... 
lack some important tooling. Some languages are not that REPL-friendly, but 
even C# has one. So I think there aren't much excuses except laziness.

In the end I think JavaScript has some nice properties as a first language, 
but also suffers from the issues as PHP does: Most of the existing code out 
there is just horribly outdated, wrong, or often both and as a teacher you 
don't want your students to look at it. Teaching JavaScript without 
internet access though, sounds very weird.

Bye,


Simon

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/javaposse/-/A0r_I-0Hc8YJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to