Archives for: January 2008, 22

Java in CS Programs in Universities Not The Problem

01/22/08 | by admin [mail] | Categories: Nerd Thoughts, Politics

In a recent article and clarification Professor Robert Dewar issues a criticism of the use of Java as an introductory program in universities. He calls this the “dumbing down” of Computer Science. I can see his point but I have issue with the partitioning of this problem.

The root of the complaint is that for much of its history, Computer Science has been the primary course of study for aspiring programmers. The problem today is that thanks to the “shoulders of giants” phenomena the majority of programming is no longer done from the machine up. Many programmers operate in the high level areas and never have any cause to work on the hardware/software interface at all.

Could it be that Professor Dewar is not aware that Universities are already adapting to this problem? By adding new more career-oriented degree programs like “Software Engineering” and “Computer Engineering” which are supposed to address the ever more layered world of software they’re partitioning the problem in a reasonable way.

Someone who learns Java as a first language is quickly indoctrinated into a particular object model and way of organizing code structures which to me seems just fine for an introductory course. It makes more sense than using a dead language like Pascal when you think of marketability particularly. Since students will use this as a basis for decisions as to which path they want to go down in their education maybe the fear is that fewer will take interest in bits and bytes. Perhaps that means less need for CS professors, but it will also increase the salary potential for those who are willing to do the math, just like every other scientific field.

I think the universities are moving in the right direction by further partitioning up the software career paths. Computer Science should be math, plain and simple. It should be the study of how these fascinating machines really work and how the hardware and software interact. Computer Engineering should be a branch-off from Electrical Engineering and study the machine more than the software. Software Engineering should be above the machine/software interface and concentrate mainly on architecture of code with only a little introductory work in the hardware/software interface in case the SE graduate ever needs to do optimization work.

I think Professor Dewar’s response is an overreaction to increasing complexity. He should just go along with what we’re all taught in the first year of Computer Science and divide the problem up into more manageable pieces, which is what the university systems are already working on.

Matthew Steven's Thought Box

Matthew Steven is a lifelong technology enthusiast. He has been in the business of creating ecommerce web applications, solving problems on UNIX platforms, and hosting servers since the earliest days of the internet. He is active in community service, plays classical guitar, and has a number of furry children.

January 2008
Sun Mon Tue Wed Thu Fri Sat
 << < Current> >>
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Linkblog

b2evolution

  • Matt's Org

    Dig the dirt on Matthew Steven at his homepage.

    Permalink

Misc

XML Feeds

What is RSS?

powered by b2evolution free blog software