conrad@wucs.UUCP (03/07/86)
There has been a considerable discussion about the "value of a computer science degree" in recent weeks. Now that I have a few minutes I'll throw in a few comments that I have. I'm not sure that the terms "field" or "discipline" should be applied to the "computer science" programs taught by many colleges in the U.S. The programs of study are often a mishmash of topics drawn from the "proto-fields" that I list below. 1) _computing science_, the study of the principles underlying computation, is really a branch of applied mathematics (or perhaps the various subfields of mathematics could be viewed as branches of computing science :-) ). Teaching computing science should primarily involve guiding students to learn to THINK clearly and formally about problems and to devise desirable, correct, and efficient solutions. The computing science program should present intellectual tools that (are/may be) helpful in this THOUGHT process. 2) _computation engineering_ (i.e., "software engineering"), on the other hand, is the engineering discipline build upon the "computing science" foundation. To the intellectual techniques of computing science it should add a methodological framework and professional culture. It emphasizes building computations to a greater extent than computing science and also has to take into account more of the "real-world" environment of the computation, e.g., economic, legal, and social issues. 3) _computer engineering_ is probably better defined than the above "proto-fields". This term seems to be applied to the subfield of electrical engineering that deals with the engineering of computational devices. (Perhaps in a more general setting this should be viewed as a subfield of computation engineering. For example, design of computational devices based on biological/organic technology rather than electronic technologies would still be computer engineering.) 4) _computer technology and applications_ is study of "current" technologies and how to apply them to particular application areas. I believe that categories 1 thru 3 are valid foci for programs of study at the college level. I'm not sure that category 4 is a valid basis for a "four-year" college program. If so, then perhaps at a "engineering technology" level. It would probably be a valid focus for junior-college programs or an applied minors. Unfortunately many "computer science" programs indiscriminantly mix topics from the areas and end up focusing excessively on computer technology. Don't get me wrong here, I am not opposed to the study of current technology and applications at the college level. Computing scientists can benefit from the concreteness of "real-world" applications. To completely ignore the "job training" aspects of college degrees would be unrealistic and unnecessarily elitist. However, I do believe that the best career or life (if not job) training is to to concentrate on broad and long-lived principles instead of specific job training. Our computer science programs probably concentrate too much on the PRODUCTS and not enough on the PROCESSES. For example, teaching a programming language instead of the analysis, reasoning, and specification techniques needed to solve problems--or building courses around topics such as operating systems and compilers instead of around general concepts such as concurrent/distributed computation and language processing. Conrad Cunningham Washington University in St. Louis
ladkin@kestrel.ARPA (Peter Ladkin) (03/11/86)
In article <1487@wucs.UUCP>, conrad@wucs.UUCP writes: > 1) _computing science_, the study of the principles underlying computation, > > 2) _computation engineering_ [..] is the engineering discipline > built upon the "computing science" foundation. > > 3) _computer engineering_ [..] the subfield of > electrical engineering that deals with the engineering of > computational devices. > > 4) _computer technology and applications_ is study of "current" > technologies and how to apply them to particular application areas. > Where does AI fit here? Peter Ladkin
fine@nmtvax.UUCP (Andrew J Fine) (03/13/86)
In article <> ladkin@kestrel.ARPA (Peter Ladkin) writes: >In article <1487@wucs.UUCP>, conrad@wucs.UUCP writes: >> 1) _computing science_, the study of the principles underlying computation, >> >> 2) _computation engineering_ [..] is the engineering discipline >> built upon the "computing science" foundation. >> >> 3) _computer engineering_ [..] the subfield of >> electrical engineering that deals with the engineering of >> computational devices. >> >> 4) _computer technology and applications_ is study of "current" >> technologies and how to apply them to particular application areas. >> >Where does AI fit here? > >Peter Ladkin > > 5) knowledge engineering : the study of programming based on the operation of production rules on a data-base.
conrad@wucs.UUCP (03/14/86)
In article <5665@kestrel.ARPA> ladkin@kestrel.ARPA (Peter Ladkin) writes: >In article <1487@wucs.UUCP>, conrad@wucs.UUCP writes: >> 1) _computing science_, the study of the principles underlying computation, >> >> 2) _computation engineering_ [..] is the engineering discipline >> built upon the "computing science" foundation. >> >> 3) _computer engineering_ [..] the subfield of >> electrical engineering that deals with the engineering of >> computational devices. >> >> 4) _computer technology and applications_ is study of "current" >> technologies and how to apply them to particular application areas. >> >Where does AI fit here? If you are talking about AI "research", then it probably doesn't fit in any of the categories. AI "applications" would perhaps fit in either 2 or 4, or perhaps a new "knowledge engineering" category. From my limited understanding and appreciation for AI, I don't see it as a "science". AI is exploring some areas that aren't well enough understood yet to be dealt with scientifically. As a better understanding of an area evolves, then it moves out toward the mainstream of computer science/applications--it is no longer AI. Perhaps it's role is somewhat analogous to the role that the field of Philosophy has played with the traditional sciences. New areas of investigation are often explored first by "philosophers" and then, based on the conceptual frameworks that evolve, the "scientists" can explore the area scientifically--in an existing field or in a new field. (How can you form a scientific hypothesis when you don't know how to begin to think about the problem? --I don't mean to imply that the "philosopher" and the "scientist" can't be the same person.) To me, the "field" of AI as it exists in 1986, is part computing science, part psychology, part "art", part theology (some of the issues AI deals with have a theological component), part public relations hype, part con game, and part mysticism. :-) Conrad Cunningham "Does AI stand for _Ain't Intellegence_?"