Followup On Java As "Damaging" To Students
hedley writes "A prior article on the damage Java does to CS education was discussed here recently. There was substantial feedback and the mailbox of one of the authors, Prof Dewar, also has been filled with mainly positive responses. In this followup to the article, Prof. Dewar clarifies his position on Java. In his view the core of the problem is universities 'dumbing down programs, hoping to make them more accessible and popular. Aspects of curriculum that are too demanding, or perceived as tedious, are downplayed in favor of simplified material that attracts a larger enrollment.'"
I started with Java and I turned out just fine.
When I entered college I was started on C/C++. I learned a lot about memory management, pointers, low level system calls, using system libraries, etc. Two years into college they changed everything over to Java.
God damn, what a difference.
To this day I am happy that I was able to have those two years of C, letting me get close to the guts of the OS, forcing me to think about what I was doing every step of the way. There is no question in my mind that it made me a better programmer in general, regardless of the language.
I feel sorry for the people that start - then never leave - a much higher level language such as Java.
Love sees no species.
At the University of Washington, where I am a student, the introduction programming courses teach Java. These courses seem to serve two purposes. A number of majors outside of computer science require them for the general background knowledge of how computer languages work. They also are prerequisites to entering a CS major, so they serve to weed out people who really don't belong in a technical major. Although I don't care much for Java itself, there are a number of benefits to using it in these introductory classes. First of all, when you're working with a bunch of noobs, it is really nice to have the platform independence that Java offers. Secondly, all of the libraries, at least from my experience, are extremely well documented. But most of all, most of the people that take an introductory programming course won't ever reach the level of sophistication that C requires, so teaching C would be kind of overkill. And those of us who really will continue on to work requiring C, really shouldn't have a problem learning it.