home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.edu
- Path: sparky!uunet!usc!sdd.hp.com!spool.mu.edu!agate!linus!linus.mitre.org!church.mitre.org!crawford
- From: crawford@church.mitre.org (Randy Crawford)
- Subject: Re: Programmers
- Message-ID: <1992Sep12.043133.6177@linus.mitre.org>
- Sender: news@linus.mitre.org (News Service)
- Nntp-Posting-Host: church.mitre.org
- Organization: The MITRE Corporation, McLean, VA
- References: <1992Sep10.142205.16217@merlin.dev.cdx.mot.com> <BuDHvA.226@mentor.cc.purdue.edu> <PSU.92Sep11102557@ptero.cs.duke.edu>
- Date: Sat, 12 Sep 1992 04:31:33 GMT
- Lines: 77
-
- (Maybe rrn will manage to post less than 4 copies of _this_ article. :-{ )
-
- In article <PSU.92Sep11102557@ptero.cs.duke.edu> psu@cs.duke.edu (Peter Su) writes:
- >
- >> Indeed! I have found that the biggest problem, here at college, is
- >> that Computer Programmer is NOT a major. It's not even a minor!
- >> Instead, I get to be a Computer Scientist! I don't want to be a
- >> Scientist! I want to be a Computer Programmer, [...]
- >
- >As a budding academic (heh heh) I, of course, must come to the defense
- >of those people who work in 'math theory bullshit.'
- >
- >This alleged 'bullshit' forms the basis for much of what is available
- >on a modern computer system. Let's look at UNIX:
- >
- >- The libraries have a routine called qsort, [...]
-
- This is an algorithm, not math theory. To see the difference, pick up and
- compare any algorithm book with Knuth et al's Concrete Math or a text on
- computability. I agree with the earlier poster, just about no one (even in
- academia) will have use for such an extensive treatment of numerical theory
- -- as opposed to a solid understanding of algorithms and computational costs,
- which everyone should have.
-
- >- There is a program called Lex that parses regular expressions, which
- >were made up by a math theory bullshit guy named Kleene. [...]
-
- Another specific algorithm. I suspect your appreciation for lex is as a
- useful program which illustrates some algorithm, not as a wonderful example
- of abstract algebra. And BTW, lex doesn't do much with regular expressions.
- It's sole responsibility is identification of lexical tokens. Look to YACC
- for regexps and more.
-
- [mixture of references to algorithms and OS/PL theory deleted]
-
- >What's my point? My point is this: Any programmer worth his salt must
- >have at least some idea why quicksort is good, how lex works and how
- >yacc works in order to make himself or herself better at what he/she
- >does. It is inexcusable to say 'I want to be a good programmer' and
- >NOT pay attention to the more important parts of the large body of
- >'math theory bullshit.'
-
- I think you and we differ on what is math theory. I agree with you that there
- is a real need for a working programmer to appreciate the big O complexity of
- algorithms, and maybe even whether a certain task is computable. But I sus-
- pect we differ when it comes to expecting most CS grads to be able to analyze
- algorithms and derive their complexity, or decide whether a task in NP or
- *P-complete, or compare partial or mu-recursive functions.
-
- >If, after taking algorithms classes, OS classes, programming
- >lanaguages, compilers, etc, you *can't* figure out how a UNIX server
- >works on your own, or at least in Perl, then either YOU are clueless,
- >or those who taught you are clueless. This doesn't mean that the
- >material is irrelevant to what you are interested in.
-
- Learning a lot in your theory courses which is applicable to sockets and
- TCP/IP, are you?
-
- >Go back and read Programming Pearls and More Programming
- >Pearls...twice.
-
- Nothing there about Unix internals -- and you won't find your employer-to-be
- asking you as a BS or MS to do much algorithmic analysis (much less appli-
- cation of number theory). However, you likely will be expected to get your
- head around interprocess communication mechanisms, costs and tradeoffs, as
- well as a host of other OS and programming language and software engineering
- issues which are skipped in the undergrad CS curriculum pretty much entirely.
-
- The original assertion still stands -- number theory and computability has
- little business being part of an undergrad CS curriculum, unless the bulk
- of the undergrads can be expected to go on for CS PhDs, where they may find
- use for such things.
- --
-
- | Randy Crawford crawford@mitre.org The MITRE Corporation
- | 7525 Colshire Dr., MS Z421
- | N=1 -> P=NP 703 883-7940 McLean, VA 22102
-