I think it should be too (and I'm the author of
the statement you quoted).
I remember complaining to a friend of mine (who worked as an admin in the
Comp Sci department of my college) about the direction the courses were
going (among other things, handing in source code in MS-WORD format). She
(and yes, it was a she 8-) said that it was a regular occurence for students
to visit the Dean and complain about classes either being too hard or not
relevent to their future employment prospects.
I am not convinced at all that univesity courses should necessarily teach
the skills needed for today's computing (or anything else for that matter
-- and noticed I didn't say they they should not teach said skills, only
that they may not). Rather they should teach the fundamentals, so that
the latest-n-greatest can be understood, etc. What's currently used in
the real world changes with time. The fundamentals rarely do. They
increase, more stuff gets added, and yes, sometimes accepted stuff gets
shown to be wrong, but I would argue that, say, recursion is the same in
any language, and it doesn't really matter which language you used to
learn it.
Alas amployers don't seem to understand this. They'd rather have somebody
who's been on a 2 week course to learn <foo> (where <foo> is the latest
language/OS/FPGA/...) than somebody who'd had 30 years in the game but
who's never actually seen <foo>. Of course the latter could learn <foo>
in a couple of days given the manuals/databooks, and would then probably
be able to do more with it.
So of course the courses got easier and drifted more
towards a
Microsoft-centered view on things. Glad I was no longer there for this.
But most "universities" are but self-important trade schools.
Alas they have to get funding, and at least in the UK that's the only way
they'll get it. I am not happy about this either.
In fact what do you think should be taught in
schools.
Comp Sci seems to be the one subject that is tought backwards---that is,
with the latest and greatest instead of having the student work their way
through simpler concepts first (which follow historical progress, oddly
enough 8-) So yes, students should be first introduced to simple computers
that can be easily understood and only programmed in machine language, then
assembly and then slightly higher level languages.
I would agree. While there is probably little point in teaching how to
make logic gates using valves (although, actually, the Eccles-Jordan
flip-flop is much the same whether you use valves, transistors, FETs,
relays, whatever..), there is a lot of point in seeing at least one
complete (and simple) processor at gate level. There's probably equal
point (although I'll admit I've never done this) in seeing how a compiler
or interpretter for a simple programming language is constructed.
-spc (Quick question: what was first? Lisp or
FORTRAN?)
Fortran I believe.
-tony