Slashdot Mirror


Professors Slam Java As "Damaging" To Students

jfmiller call to our attention two professors emeritus of computer science at New York University who have penned an article titled Computer Science Education: Where Are the Software Engineers of Tomorrow? in which they berate their university, and others, for not teaching solid languages like C, C++, Lisp, and ADA. The submitter wonders whether any CS students or professors would care to respond. Quoting the article: "The resulting set of skills [from today's educational practices] is insufficient for today's software industry (in particular for safety and security purposes) and, unfortunately, matches well what the outsourcing industry can offer. We are training easily replaceable professionals... Java programming courses did not prepare our students for the first course in systems, much less for more advanced ones. Students found it hard to write programs that did not have a graphic interface, had no feeling for the relationship between the source program and what the hardware would actually do, and (most damaging) did not understand the semantics of pointers at all, which made the use of C in systems programming very challenging."

4 of 1,267 comments (clear)

  1. Pointers, References and Performance by Anonymous Coward · · Score: 0, Troll

    Java is all about pointers actually. Everything that is not an atomic type (int/long) is actually a pointer. They even call that a reference! Hah, people go use C++ for a while.

    And because it's like that, you have heap allocations for every non-atomic data type, which is really the opposite of performance. Need a simple int[2] for the pipe(2) syscall? (let's just assume it, even if Java does not have)?

    try {
            int fds[2] = new int[2];
            pipe(fd); /* still check return value */
    } catch (memoryAllocationErrorOrSo) { ...
    }

    Why does this need to be so complicated, where all C needs is:

    int fds[2];
    pipe(fds); /* still check return value */

    And what about if you wanted to create an object on the stack? Too bad Java can't do that.

    And then there is this garbage collector that professors swarm about. Does it handle circles?

    public class Foo {
            Foo other;
            public void f(void) {
                    other = new Foo();
                    other.other = this;
            }
            public static void main(String args[]) {
                    {
                            Foo bar = new Foo();
                    } /* what about the memory now - was the GC smart enough? */
            }
    }

  2. Re:software engineering != computer science by jacquesm · · Score: 0, Troll

    you're an absolute moron, if you read the above and actually grokked it then you'd realize that GP has a lot of *VERY* valid points.

  3. Re:University should be about people by GNUALMAFUERTE · · Score: 1, Troll

    Talk about narrow minds. You start complaining about elitism in science, and how engineers supposedly make fun of humanities.

    Well, We actually make fun of assholes like you. Music is hard math. Poetry would be impossible without math. All knowledge has it's hard, strict, logic and mathematic side, and a more artistic, soft side. In Computer Science, it's pure math and logic to learn assembly, but an elegant hack is nothing but art. Poetry comes from the heart, once you learn what a dactylic hexameter is.

    Smart people loves knowledge, and they respect it, so they choose one particular kind of human knowledge that they like the most, and they specialize in that field, but they understand that once philosophy covered all sciences, and that eventually a musician and an engineer are just equally valuable professionals developing in different fields, they have to complement each other.

    OTOH, small minds, like yours, that have a mother that wants their son 'to be a doctor', and doesn't have the brains or the nuts to compute an integral, but still want to go to college to somehow magically feel superior to others, get into humanities, thinking that just debating nicely about what came out of their asses is still science. The sad part is that most of you get away with it.

    At a given point, people start pointing out an obvious fact: You are an asshole, and so you post angry, off topic comments to slashdot, trying to denigrate engineers, when actually you are only denigrating yourself.

    And if throughout your post, still some reader is not sure about the obvious fact that you are a brainless asshole, you freed them of any doubt by confessing your believe that 'god' created as out of his ass.

    Your IQ varies between Mr. Not Sure and President Camacho, but overall, you behave like an amoeba.

    --
    WTF am I doing replying to an AC at 5 A.M on a Friday night?
  4. Re:Right Tools for the Job by WED+Fan · · Score: 0, Troll

    I am an English major with special emphasis on rhetoric and composition...

    Congratulations, now, stop standing there and get me that fork I asked for, and yes, I want the fries and coleslaw. Your tip is riding on how fast you get me that fork.

    --
    Politics is the art of looking for trouble, finding it everywhere, diagnosing it incorrectly and applying the wrong fix.