Newsgroups: comp.edu,comp.lang.fortran,comp.lang.misc
Subject: Re: Scientists as Programmers (was Re: Small Language Wanted)
From: brian@comp.vuw.ac.nz (Brian Boutel)
Date: Tue, 1 Sep 1992 21:44:18 GMT
 <1992Aug31.211256.20455@a.cs.okstate.edu> <BtvI3A.MHA@comp.vuw.ac.nz> <1992Sep1.153804.25759@linus.mitre.org>
Organization: Dept. of Comp. Sci., Victoria Uni. of Wellington, New Zealand.


In article <1992Sep1.153804.25759@linus.mitre.org>, crawford@church.mitre.org (Randy Crawford) writes:

|> 
|> A little time spent in the commercial (or government) sector could do great
|> things to make profs aware of the current needs of the market.  They should
|> design their curriculums with the needs of today's marketplace in mind.
|> Why shouldn't operating systems classes be taught as half theory/half Unix?
|> Or a compiler class which teaches LR(1) parsing and illustrates LALR(1) using
|> LEX and YACC?  I've heard of a number of schools which implement compilers
|> in scheme or ML.  For god's sake, get a sense of what's useful and what's
|> not!
|> 
|> It takes several years in the workplace for the average BSCS to acquire the
|> skills necessary to understand and then build most modern applications, 
|> because today's apps are complex collections of components combining X Windows,
|> RPCs, sockets, Unix internals, and practical software engineering.  You don't
|> learn these in college, and that's dumb.  CS is a form of engineering, and 
|> until there's employment for theorists in the market, schools must temper 
|> theory with practice.  Certainly you don't see EE programs teaching power
|> systems or non-solid state technology.  Teaching practical CS labs using
|> techniques and tools which are decades old (like VAX assemblers or IBM/VM 
|> virtual memory) is inappropriate and a waste of tuition.  It's also damned 
|> poor preparation for getting and keeping a job.
|> -- 

Two things:
1) There are a lot of straw men being set up here. CS programs I'm familiar with
include much of what you say is desirable but not covered.

2) One vital aspect of CS teaching is to provide knowledge that's going to be
useful for some years. You are insisting on stuff being taught that is of
immediate application, things that are popular in industry now. We should, and we
try to, provide suitable environments which give students that experience, but in
5 years ideas will have changed and industry will be crying out for a different
set of skills. Our graduates should have sufficient knowledge of principles to be
able to adapt easily to changing technology. My observation of industry people
without CS backgrounds suggests that many of them find this difficult, because
they have learned some surface detail, but not the fundamental ideas. Able
people, with a suitable CS education, can adapt to new products and technologies
very quickly and are therefore more useful to employers because they are
flexible. Employers who complain that CS graduates need some initial training on
specifics, and are not ready to be productive from day 1, are very short-sighted.

--brian

-- 
Internet: brian@comp.vuw.ac.nz
Postal: Brian Boutel, Computer Science Dept, Victoria University of Wellington,
        PO Box 600, Wellington, New Zealand
Phone: +64 4 471-5328   Fax: +64 4 495-5232
Newsgroups: comp.edu