Rethinking the Java Curriculum: Goodbye, HelloWorld!
Subject:   Look at BlueJ, and also other languages
Date:   2002-08-21 13:18:47
From:   tpherndon
This problem with Java has been thoroughly addressed by the good folks at, who created the BlueJ IDE for Java specifically to enable them to teach proper OOP in Java at a CS101 level. They are a group of CS teachers and researchers from (IIRC) Monash University in Australia.

On the other hand, perhaps this kind of problem is a really good reason not to use Java as a CS101-level language. Maybe the difficulties involved in teaching proper programming using Java simply show that Java might be better used as a second or third language, rather than the first language to which a budding programmer is exposed. After all, MIT teaches programming using LISP, right? "Structure and Interpretation of Computer Programs". And Python is also being pushed as a great introductory language, as well.

Java's wide-spread popularity in the business world for server-side programming does not automatically make it the best choice for all purposes. I think we should remember this principle when contemplating CS curriculum, something that affects the future of, well, darn near every aspect of life (at the risk of sounding somewhat melodramatic ;).

Main Topics Oldest First

Showing messages 1 through 2 of 2.

  • Disadvantages of teaching an IDE to intro
    2002-08-22 21:51:08  trajano [View]

    I have to admit that BlueJ is a very user friendly tool to learn about OO concepts. But as an intro to CS course, this may be hiding too much of how the systems work from the student.

    I am all for making things easier for people, but I would rather have my students taking time to learn about the environment, perhaps using a simple text editor that is installed in the system and command line tools to compile their code.

    The concepts they would learn would pass on to future years to come.

    However, I think BlueJ would be useful to teach in the 102 class or a class that specifically teaches OO at a higher level.
  • Look at BlueJ, and also other languages
    2002-08-22 20:28:49  maggiel [View]

    I have to agree, BlueJ is a really fine teaching tool. Probably not ideal for someone learning on their own, though; it needs considerable explanation by someone who knows what they're doing.