On Wed, 23 Jun 2004, Tony Duell wrote:
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.
There needs to be a balance. The students want "practical"
training. They want stuff that they can apply immediately,
and they want employability.
Meanwhile, we want to teach them "fundamentals".
Therefore, the best way to walk that narrow line, is to
teach theory, principles, and fundamentals USING real
world practical tools.
For example,
We DO NOT "teach Visual C++". We DO NOT have a "Visual C++ course".
We teach C++; we do it using Visual C++.
I'm sure glad that I teach C, not C++! I make them do at least
one program using a command line compiler (DeSmet "Personal C"),
one program using a simple integrated development environment
(Turbo C), and then I let them use ANY compiler or platform
that they want to use, even Visual C++.
I intend to try to teach the fundamentals, principles, and theory
of assembly language. But I am going to do it using 80x86, as
a concession to what the students want.
Yes, it would be "better", but not what the students want,
to teach it with a better processor, whether real or imaginary,
but I am there to help the students learn what they want to learn.
(and try to sneak in a bit of more general knowledge)
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.
That's right.
We have a periodic advisory committee, that is made up mostly
of community employers. We had one guy who wanted us to drop
all of our programming classes, and replace them with four
semesters of "Power-Builder".
My response to him was "inappropriate".
> -spc (Quick question: what was first? Lisp or
FORTRAN?)
FORTRAN.
Q: Current C compilers are written in C.
What was the FIRST C compiler written in?
--
Grumpy Ol' Fred cisin(a)xenosoft.com