Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!ccplumb From: ccplumb@watmath.UUCP Newsgroups: comp.edu Subject: Re: Computer Science: where it belongs Message-ID: <15484@watmath.waterloo.edu> Date: Wed, 11-Nov-87 02:19:37 EST Article-I.D.: watmath.15484 Posted: Wed Nov 11 02:19:37 1987 Date-Received: Fri, 13-Nov-87 05:57:13 EST References: <469@ndsuvax.UUCP> <16118@clyde.ATT.COM> <180@spock.UUCP> <4422@pyr.gatech.EDU> <3355@ames.arpa> <21402@cca.CCA.COM> Reply-To: ccplumb@watmath.waterloo.edu (Colin Plumb) Organization: U. of Waterloo, Ontario Lines: 48 Summary: This discussion would interest RMS In article <21402@cca.CCA.COM> g-rh@CCA.CCA.COM.UUCP (Richard Harter) writes: >[SE's should spend more time learning from other programs. Two points:] > >One is having a bank of pre-existing program plans to draw on. Doesn't this >make sense? Architects don't sit down and design bridges and buildings as >though no one had ever built a bridge or a building before. Suppose you have >to design a system. Wouldn't it be sensible if, for each requirement, you >could go to the design catalog and get a list of system features that would >be needed. Wouldn't it be sensible if you had a suite of major architectures >to select from instead of designing one de novo? Yes, it would. But where do you get it? Richard Stallman has flamed many times about the needless duplication of effort engendered by the common impossibility or illegality of using another program's source as the basis for some product. The GNU project should improve the situation considerably. >The other point is that SE people should spend some time studying large >programs. What is the principal decomposition? It's all very well to be >able to write small programs that implement neat algorithms, but a lot of >people are going to have to work with large systems. Shouldn't an SE graduate >have some experience in finding her way around a large system? Again, most large systems are developed by people who wish to make money licencing their use. They would tend to object to having several hundred SE students per year investigate the innards of their proprietary code. There are, of course, notable exceptions. GNU Emacs, the netnews software, TeX, and X-windows come to mind. Testing several hundred bug-ridden modified versions of the news handling software would require the investment of considerable effort in the construction of a realistic playpen if live testing, and the resultant chaos, is to be avoided. The others, however, would work nicely. The only problem would be providing the resources to handle a copy of the sources per student, and many, many compiles per student. Of course, one could aim a little lower with Mush or MH, or Nethack (sure to receive extremely thorough testing). If anyone has a course based on something similar to this, I'm sure the net would be interested. -- -Colin (watmath!ccplumb) Take *everything* with a grain of salt dept.: "America could gain much from Russia's long experience with Mars." - The Economist, Oct. 3.