Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!princeton!caip!topaz!ll-xn!nike!lll-crg!lll-lcc!well!ptsfa!gilbbs!mc68020 From: mc68020@gilbbs.UUCP (Thomas J Keller) Newsgroups: net.cse Subject: Re: Topics for a Computer Science degree Message-ID: <918@gilbbs.UUCP> Date: Thu, 18-Sep-86 03:31:18 EDT Article-I.D.: gilbbs.918 Posted: Thu Sep 18 03:31:18 1986 Date-Received: Sat, 27-Sep-86 18:17:34 EDT References: <13500008@uiucdcsb> <65@alberta.UUCP> <1642@mcc-pp.UUCP> <923@usl.UUCP> Organization: Gil's Place, Santa Rosa CA Lines: 83 In article <923@usl.UUCP>, elg@usl.UUCP (Eric Lee Green) writes: > In article <905@gilbbs.UUCP> mc68020@gilbbs.UUCP writes: > > > [he states my general thoughts, that a programmer should have some > idea of what hardware does, then:] > > >2) People whose goal is to become *programmers* should go to the Control > > Data Institute, or some such equivalent trade school, where they will > > Actually, I think one of the biggest problems is that people are NOT > learning how to program. At some schools, one can graduate with honors > without ever having to write a program more sophisticated than "Hello > World". And the results are sometimes ludicrous. > have no idea how to turn their neat idea into a neat hack. Whoa! I have not said that Computer Scientists should not learn to program! On the contrary, I concur most heartily with the suggestion that CS people are not being taught adequate programming skills. What I am trying to get across here is that there are people who are going to be "programmers" and there are people who are going to be computer scientists. They are headed into two very different realities, and require different training. > > >3) Probably the single most important are of computer sciences right now is > > in research. We desparately need qualified COmputer Scientists (as opposed > > to mere programmers) to conduct the research which is going to move us > > into the next few generations of computing. If we don't stop confusing > > CS curricula with FPA curricula, we are going to fall behind the Japanese > > Sounds like the above problem. Research requires abstract knowledge > and the ability to think. Computer science research, however, involves > one more thing: mapping that thought onto either real or imagined > hardware. That was the breakthrough of the Turing Machine -- Turing > took an abstract concept, counting theory, and mapped it onto a > machine. Basically, that is one of the primary differences between CS > and Math. > Ok, but as above, I haven't said that CS researchers shouldn't have a solid grounding in programming skills, which is the primary element necessary to the mapping to which you refer, and which *IS* essential in some research. Bear in mind, however, that there are areas of CS research where conventional programming methodology is not appropriate, or even applicable. CS people need to be taught to work with the abstract as well as the concrete. > I do agree with the thoughts about Freshman and Sophomore curriculums, > however. For example, asking students to recognize an expression, > without first teaching them something about finite state recognizers > and other theory of that nature, is simply ludicrous. You're teaching > the students to just sit down at the terminal and fiddle around till > something works, you're not teaching them Computer Science. > -- Indeed. I took several upper division "specialization" courses, such as Compiler Design and Construction or Operating Systems Design in which a significant number of the students, all of whom had allegedly completed the pre-requisite coursework, were unfamiliar with such concepts as pointers (in PASCAL or C). Concepts such as vertical and horizontal microcode were dismissed as "so many buzzwords" by these students. *CHOKE* I believe that CS people need some knowledge of hardware. I do not believe that they necessarily need to be able to design their own digital circuits, however. I do believe that CS people are a different breed from "programmers", and that *VERY* early on in the curriculum their paths must diverge, and radically. I cannot speak for any other campus, but at the school *I* attended, a graduate with a CS degree was a programmer, and not a highly qualified one at that. Between lack of resources, muddled curricular goals and an inability to identify students with the talent and skills form those without, the department managed to turn out a large group of marginally trained programmers. Not a single Computer Scientist has yet to come out of that school, nor is one likely to. -- Disclaimer: Disclaimer? DISCLAIMER!? I don't need no stinking DISCLAIMER!!! tom keller "She's alive, ALIVE!" {ihnp4, dual}!ptsfa!gilbbs!mc68020 (* we may not be big, but we're small! *)