daemon@ucbvax.UUCP (08/09/84)
From MCGREW@RUTGERS.ARPA Wed Aug 8 19:52:29 1984 HUMAN-NETS Digest Wednesday, 8 Aug 1984 Volume 7 : Issue 45 Today's Topics: Query - Latitude and Longitude, Response to Query - Program Specification Database (2 msgs) & Hacker vs. Cracker, Chess - The Delphi Experiment ---------------------------------------------------------------------- Date: 8 Aug 84 16:07:07 PDT (Wednesday) From: Hodges.pa@XEROX.ARPA Subject: Latitude and Longitude encoding question... To: Astronomy^.PA@XEROX.ARPA, cc: Kluger.pa@XEROX.ARPA Hi, I need to keep latitude and longitude information in a record containing information about a network. The initial values will be in ascii text contained in a string (e.g. "109 26 33" ). I expect the units of the initial values will always be degrees, minutes, and seconds. I want to find out if anyone is aware of standard latitude and longitude encoding (packing?) schemes. Are there reasons other than economy of storage to encode latitude and longitude? Why? (comparison operations, etc?) Thanks for your help, Jeff Hodges ------------------------------ Date: Mon 6 Aug 84 11:05:13-PDT From: WYLAND@SRI-KL.ARPA Subject: Program Specification Database I think the following interchange talks about a good idea but just manages to miss it: <Date: Sat 28 Jul 84 21:37:46-PDT <From: Kenneth Brooks <BROOKS@SU-SCORE.ARPA> <Subject: database of algorithms <[Forwarded (with permission) from the Stanford bboard by <Laws@SRI-AI.] <I have just come back inspired from Siggraph. At one of the panel <sessions there, Alan Kay showed a demo film of Sketchpad, the first <interactive computer graphics editor. It has a lot of really <excellent features, not seen in many graphics editing systems now <being written and sold. He commented, we ought to be standing on the <shoulders of others. We ought to be doing AT LEAST as well as <systems of the distant past. <Why don't we? Why do we keep on reinventing the wheel, in the <process neglecting to reinvent such amenities as the rubber tire? I <can answer for my own case: I have reimplemented many a standard <textbook algorithm, and have reinvented several algorithms that might <have been learned from a textbook, because I did not know where to <look. Other such programs may exist, yes - but buried how deep? How <long might it take to dig up the program from a thesis done in '72? <I think we could do something very effective about this problem: <apply some database technology and come up with an on-line database <of algorithms. What I would like to be able to do is come up and <type in a key phrase like "balanced 2-3 tree" or "b-tree" or "command <parsing" or "hidden surface". The database should then come up with <one or more headers, each of which could be delved into at will. <Entries might be of several forms [.........] ------------------------------ <From: Ethan Bradford <BRADFORD@SU-SIERRA.ARPA> <Subject: CS: Database of algorithms. < [Forwarded from the Stanford bboard by Laws@SRI-AI.] <The ACM publishes a reference book (with periodic supplements) called <"The Collected Algorithms of the ACM", which has most of the <information you ask for, though it is on paper. [.....] I think that Ken Brooks' initial insight is that we could use a reference on program *specifications* - what has been accomplished in the form of working programs to date - as opposed to *algorithms*, or how programs are implemented. Ethan Bradford's point about ACM recording algorithms is valid: a database exists for algorithms and should serve for algorithm reference. I do not know of a corresponding database of program specifications. (If there is one, please tell me how to find it!!) If this specification database were available, we could search for what has been done in graphics and find the Sketchpad program as an example. As in many things, knowing what has been done is half or more of the battle: it shows what can be done and what has proved practical in at least one instance. A specification database would be more useful to me than the algorithm database has been. I usually have my own ideas on how my program should be written - i.e., what algorithms should be used. I will typically use my own, proven (to me) algorithms because I understand them and know that they work, and say that "I haven't time" to research the literature for the "best" algorithms because the ones I have are good enough. (This cannot really be justified; however, it is not uncommon, is it?) I believe that I would actively use a specification database, however. In a sense, I do now by maintaining an interest in new software concepts. I use examples of what *has* been done as examples of what *can* be done and as raw material for what *should* be done. Often, the point of view embodied in an existing program provides a cricial key to a simple formulation of a current problem. Also, existing programs often suggest simple program convenience features that can make a program much more pleasant and effective to use. The impact of this information on programming time and resultant quality is large and fairly obvious. I think there is a case for a program specification database. The number of books discussing programs and languages sold every year points to this interest. I, too, think that such a database could be of great, real help by suggesting structures and features used in earlier programs that could be included in new programs. Dave Wyland ------------------------------ Date: Monday, 6 August 1984, 14:22-PDT From: Reynolds at RAND-UNIX Subject: database of algorithms To: Kenneth Brooks <BROOKS at SU-SCORE.ARPA> Cc: cwr at WHITE Date: Sat 28 Jul 84 21:37:46-PDT From: Kenneth Brooks <BROOKS@SU-SCORE.ARPA> Subject: database of algorithms [Forwarded (with permission) from the Stanford bboard by Laws@SRI-AI.] I have just come back inspired from Siggraph. At one of the panel sessions there, Alan Kay showed a demo film of Sketchpad, the first interactive computer graphics editor. It has a lot of really excellent features, not seen in many graphics editing systems now being written and sold. He commented, we ought to be standing on the shoulders of others. We ought to be doing AT LEAST as well as systems of the distant past. Basically, of course, I agree with what you are trying to say -- avoiding duplication of effort is like Mom and apple pie. Alan (and Mark Vickers who showed that tape in the session I was in) state a good GOAL, but no one has discovered how to achieve it. The library of algorithms is of no real help at all. Not all things get better through time, look at air quality. We cannot automatically expect that if program X is written before program Y that Y is necessarily better than X. The issue is more than simple ignorance of what has gone before. Program Y is likely written under very different constraints (different CPU, different display device type (eg vector/raster), different graphical input devices). This is not just a matter of "device independence" but rather of different user interface techniques being more appropriate for different types of hardware. (Newer faster hardware make fancier user interaction styles practical.) Sketchpad was a very large system (especially for its day), very few of its algorithms were particularly unique. A library of algorithms would not address this problem -- its just one of software bulk and non-trans-portability. -c ------------------------------ Date: Sun 5 Aug 84 14:50:46-PDT From: Richard Treitel <TREITEL@SUMEX-AIM.ARPA> Subject: Re: HUMAN-NETS Digest V7 #44 re: Crackers and Hackers A nice simple easily memorisable definition is the following: "A cracker is a CRiminally inclined hACKER" Some people may take exception to the implication that even a minority of hackers have criminal inclinations, and others may argue that most crackers are not talented enough to deserve to be called hackers. I get more and more sympathetic to Mark Crispin's fondness for the plain old word "vandal". - Richard ------------------------------ Date: 7 August 1984 07:41-EDT From: Robert Elton Maas <REM @ MIT-MC> Subject: hacker vs. cracker To: wookie @ RICE A "hacker" is somebody who has a penchant for understanding how computer systems really work instead of the misleading or incomplete descriptions that occur in documentation, and using such knowledge for making things work more efficiently than by advertised means or for making things work that seem impossible based on published information. A "cracker" is somebody who has a penchant for violating the security of computer systems. It used to be the two were related, if you were an expert at the security aspects of a system you could possibly figure out how to violate them. But now with thousands of random people banging away at a security system until one person accidently discovers a flaw in it, and that one person advertising a recipe for violating the security on hundreds of bulletin boards arond the country, then thousands of random users of those bulletin boards using that recipe to violate that one system, you don't have to know anything about a system to break into it using a recipe you happen to see on a bulletin board, so crackers aren't necessarily (or even usually) hackers any more. <Exposition by REM> ------------------------------ Date: 7 August 1984 08:05-EDT From: Robert Elton Maas <REM @ MIT-MC> Subject: Delphi Experiment: group play against machine -> just people To: mclure @ SRI-UNIX I'd be more interested in a delphi experiment with Go instead of Chess. Pick some starting position (probably not start of game, there are too many good ways to play the fuseki) and see if we can converge on the optimum way for both sides to play through to the end. Allow backtracking at any time, thus if you suddenly see where one side made a mistake you can change your vote at that point. If changed vote(s) cause an alternate branch to have largest vote, the experiment shifts to explore that branch instead of the one that had largest vote before. Either allow everyone to vote for both black and white moves, or divide the membership into two teams and have them select only their own moves not opponents. Note that my method doesn't require a go-playing program/machine to play one side of the game. To speed up the experiment, allow a voter to specify a whole sequence of moves in advance, contingent on the opponent choosing the same move as in the sequence. (For example: now I move ..., if he replies ... then I conterreply ..., etc.; abbreviated of course.) So long as the first move agrees with the voted move and the reply agrees with the voted reply then the next move will be counted as a vote. ------------------------------ End of HUMAN-NETS Digest ************************