Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!ames!ptsfa!ihnp4!cuae2!ltuxa!we53!sw013b!dj3b1!killer!elg From: elg@killer.UUCP Newsgroups: comp.edu Subject: Resources and education Message-ID: <780@killer.UUCP> Date: Mon, 20-Apr-87 04:25:01 EST Article-I.D.: killer.780 Posted: Mon Apr 20 04:25:01 1987 Date-Received: Fri, 24-Apr-87 00:07:15 EST Organization: The Unix(tm) Connection, Dallas, Texas Lines: 46 Keywords: "cheating", ACM Algorithms, Saint Knuth Barry Shein mentions that "Copying a bubblesort out of ACM algorithms is not innovation". Someone else mentions a case where a student was influenced by a partial program in another algorithms book. First, we have to figure out what we're here to do. If the person knows enough to get ACM algorithms to get a bubblesort, then when the person is on the job and needs a bubblesort, he can just pick up ACM algorithms. Most "Computer Science" majors are involved in writing programs, except for a few cloistered PhDs who do "pure research" (and usually are never heard from, except for unreadable journal articles in obscure journals). So the purpose is twofold: learn what a computer program IS (the "science"), and WRITE the silly things. Such as, perhaps, a physicist discovering how to describe a physical principle, and a mechanaical engineer creating an object taking advantage of that principle. In other words, the whole purpose of the thing is to get the program written. While copying your friend's program isn't writing and thus is cheating, looking up resources IS part of the writing process. As well as being a student, I am a part-time programmer for a small firm that produces telecommunications specialty software (e.g. a remotely-altered store display, transmitting color radar graphics & displaying them, etc.). When I need something, such as, perhaps, an Xmodem routine for transmitting the data, I'm sure the heck not going to invent Yet Another Xmodem.... I'm going to use one of the existing ones. For another example, when I needed to do some hashing, I consulted Knuth. The job needed doing. The job needed doing RIGHT. Without spending 6 months working through the math (assuming that I had the Statistics background to do it at all). The way to do it right, in the case of a well-known problem with a well-known solution, is to look it up -- there is generally no reason to re-invent the wheel. If the solution takes up a lot of time or space, THEN you look for a better solution, and do that "innovating". But when you have a job to do, you save the time-consuming innovation part of the job for the parts of the job that really need it, that are not formalized, and leave the stock-standard stuff alone. Heck, if you have the proper theoretical background, you can perhaps even write a paper about your solution and its theoretical generalization & formalization.... I suspect that this is the way that a LOT of innovation gets done in the Computer Science area. I'm curious: What do you academicians do when you recieve a program from a student that cites Saint Knuth on several important algorithms? Medal of Honor? or firing squad? -- Eric Green elg%usl.CSNET Hacker-in-training, University of SW Louisiana {cbosgd,ihnp4}!killer!elg Snail Mail P.O. Box 92191 Bayou ~~~~~~~~~~~~~~~ Lafayette, LA 70509 ~~~~~~~~~~~~~~~ Telecommunications