From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00,MSGID_SHORT autolearn=no autolearn_force=no version=3.4.5-pre1 Date: 3 Jul 91 20:32:11 GMT From: seas.gwu.edu!mfeldman@uunet.uu.net (Michael Feldman) Subject: Re: Is CM important? (was: Use pragma INLINE or not?) Message-ID: <3435@sparko.gwu.edu> List-Id: In article <15645@encore.Encore.COM> jcallen@encore.Com (Jerry Callen) writes: > >Don't drop it, but please make sure that you DO find time to teach something >about CM. How many disasters could have been avoided if: > You are certainly correct here. This is all getting away of the Ada purpose of the group, but one more $0.02: I'm a tad oversensitive these days to the current fashion to bash computer science as producing "irrelevant" industry folks, 'cause we don't teach enough "software engineering" stuff. When I ask them - in all sincerity - which undergraduate courses we should drop (to make room in a 4-year program), the answer is almost always - operating systems - compilers - algorithm theory - formal languages and automata Would you like a software engineer who had never studied: - enough (1 course) on OS resource allocation, process scheduling, and memory management to understand something of concurrency, deadlock, and garbage collection; - enough (1 course) on parser construction to be able to read/write a simple parser for a nontrivial command language? Parsers are everywhere: prettyprinters, style checkers, even editors that allow search and replace by giving an expression that needs to be analyzed; - why no amount of bit-fiddling will improve an O(N**3) algorithm (and other such considerations); - why many problems that seem easy to express in words cannot be solved at all in tractably finite time (such as "why do we need to test - why can't we just prove a program correct?") True, there are other things about the software life-cycle we may be doing less than full justice to, but arguing that we should kill off the very foundations of ALL programming, leaving the software engineer with no bedrock fundamentals, is going rather too far, dontcha think? I'd be happy to continue this by e-mail with all comers. My ears and mind are open to suggestions. Is this a "too many notes" problem? Exactly which subjects do we trade for more SE? There's no free lunch, sadly. Mike