The main reason is that we loose ~10% of the undergraduate enrolment explaining why hello world is:
public class Main { public static void main(String[] args) { System.out.println("Hello World"); }}
The main reason is that we loose ~10% of the undergraduate enrolment explaining why hello world is:
public class Main { public static void main(String[] args) { System.out.println("Hello World"); }}
This isn't a call to "dumb down" Computer Science - the curriculum should still be challenging, but Java is the wrong kind of challenging. Students are spending more time learning how Java works than learning how to program.
We're losing a lot of students who might otherwise love programming if they could see the beauty of it earlier on. Having students learn using a Lisp would be better (hooray for minimal syntax!), but Python is a nice compromise.
(I just got back from helping a bunch of freshmen try to test a number for primality. It was brutal. And we're using a language without all that "public static void main" stuff, so that's not even an issue.)