Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Programming Software IT Technology

Great Computer Science Papers? 410

slevin writes "Recently I listened to a talk by Alan Kay who mentioned that many 'new' software ideas had already been discovered decades earlier by computer scientists - but 'nobody reads these great papers anymore.' Over the years I have had the opportunity to read some really great and thought-provoking academic papers in Computer Science and would like to read more, but there are just too many to sort through. I'm wondering what great or seminal papers others have encountered. Since Google has no answers, perhaps we can come up with a list for the rest of the world?"
This discussion has been archived. No new comments can be posted.

Great Computer Science Papers?

Comments Filter:
  • Papers or books ? (Score:4, Informative)

    by Anonymous Coward on Sunday November 16, 2003 @08:46AM (#7486610)
    Often, when you're new to a given domain, there exists a book (on citeseer too...) that covers the domain and express, often better than the original authors, the main ideas.
    Then, you can use citeseer to see what's new and what's the fashion in the domain.
    Anyway, one of the best papers (and oldest) I read give birth to a whole community:
    http://cm.bell-labs.com/cm/ms/what/sha nnonday/pape r.html
  • by G4from128k ( 686170 ) on Sunday November 16, 2003 @08:50AM (#7486617)
    I wonder how many IT gurus are members of ACM [acm.org] or IEEE Computer Society [computer.org]? The % of /. members who are in ACM must be very small because ACM only has 75,000 members in total.
  • by junklight ( 183583 ) <mark@TIGERjunklight.com minus cat> on Sunday November 16, 2003 @08:59AM (#7486643) Homepage
    Dijkstra's archive is on line and is indeed fascinating from both an historical point of view and full of ideas as well. Check it out...

    http://www.cs.utexas.edu/users/EWD/
  • by acidblood ( 247709 ) <decio@@@decpp...net> on Sunday November 16, 2003 @09:02AM (#7486650) Homepage
    McCarthy's paper on Lisp: Recursive Functions of Symbolic Expressions and Their Computation by Machine (Part I) [stanford.edu].

    For a refreshing analysis of the paper by Lisp guru Paul Graham (the same guy who proposed the idea of Bayesian anti-spam filtering), see The Roots of Lisp [paulgraham.com].
  • by mscheid ( 318333 ) on Sunday November 16, 2003 @09:05AM (#7486655)
    ACM [acm.org] and IEEE [ieee.org] are just the places I would look for such papers. The proceedings of ACM SIGCOMM [acm.org] for example are a very good "filter" for the flood of papers on networking.
  • by Dr_Java ( 689552 ) * on Sunday November 16, 2003 @09:08AM (#7486663) Homepage
    Try http://citeseer.org/ [citeseer.org] Helped me out with many CS papers whilst writing up my thesis.
  • by acidblood ( 247709 ) <decio@@@decpp...net> on Sunday November 16, 2003 @09:09AM (#7486664) Homepage
    ...but Claude E. Shannon's paper, A Mathematical Theory of Communication [bell-labs.com] has changed our outlook on information and communication. The importance of this paper on modern communication cannot be stressed enough, and it is very readable. If I had 10 papers to take to a desert island, surely this one would be on my list (:
  • by acidblood ( 247709 ) <decio@@@decpp...net> on Sunday November 16, 2003 @09:13AM (#7486675) Homepage
    This has been reported in Slashdot a while ago, but it deserves another mention: the manuscripts of Edsger W. Dijkstra [utexas.edu]. There are more than a thousand documents written by Dijkstra in this archive, and very interesting ones too -- careful or you'll lose days browsing it like I did.
  • Quantum Computation (Score:3, Informative)

    by acidblood ( 247709 ) <decio@@@decpp...net> on Sunday November 16, 2003 @09:16AM (#7486683) Homepage
    While not exactly classic papers, some of these may be regarded as classic by our grandchildren when the time comes, since they're at the forefront of computer science's research today. A good introduction to quantum computing was recently linked in a Slashdot story posting: The Centre for Quantum Computation's Tutorials [qubit.org]. Very, very interesting reading, if a bit advanced.
  • Citeseer (Score:3, Informative)

    by p-p-pom ( 716823 ) on Sunday November 16, 2003 @09:18AM (#7486688)
    Citeseer was cited in the blurb, but a really nice service that they provide is the Computer Science Directory [nec.com]. There you can look for papers sorted by domain, and ranked by several criteria like "authority". The top papers are usually a good read if you are interested in a particular domain.
  • by hweimer ( 709734 ) on Sunday November 16, 2003 @09:22AM (#7486700) Homepage

    Does anyone know of a website where you can get access to comp sci and comp eng papers and stuff?

    Try looking at arxiv.org [arxiv.org] and CiteSeer [nec.com].

  • by Anonymous Coward on Sunday November 16, 2003 @09:25AM (#7486710)
    for AI specifically, with patience some great links can be culled from the lists at:

    the American Association for AI [aaai.org]

  • by acidblood ( 247709 ) <decio@@@decpp...net> on Sunday November 16, 2003 @09:28AM (#7486720) Homepage
    Though it has very few entries, and is no longer updated, there are at least two papers in that list that the typical Slashdotter may have heard about: Go To Statement Considered Harmful [acm.org], by Dijkstra, and Reflections on Trusting Trust [acm.org], by Ken Thompson.

    The remaining ACM Classics of the Month are here [acm.org].
  • by brentlaminack ( 513462 ) on Sunday November 16, 2003 @09:39AM (#7486754) Homepage Journal
    Reference: Jerome H. Saltzer, and Michael D. Schroeder. The Protection of Information in Computer Systems. (invited tutorial paper) Proceedings of the IEEE 63, 9 (September 1975) pages 1278-1308. Reprinted in David D. Clark and David D. Redell, editors. Protection of Information in Computer Systems. IEEE 1975 CompCon tutorial. IEEE # 75CH1050-4. Also reprinted in Rein Turn, editor. Advances in Computer System Security. ArTech House, Dedham, MA, 1981, pages 105-135. ISBN 0-89006-096-7 Also reprinted in Marvin S. Levin, Steven B. Lipner, and Paul A. Karger. Protecting Data & Information: A Workshop in Computer & Data Security. Digital Equipment Corporation, 1982. This paper was originally prepared off-line. In 1997, Norman Hardy kindly rendered it into World-Wide Web form. here [mit.edu]
  • Here are three. Not the top three, not the only three, but definitely an important three. Maybe someone else will have better luck tracking down a link to Mogul's paper.
  • Some suggestions (Score:3, Informative)

    by offpath3 ( 604739 ) <offpath4@ya h o o . c o .jp> on Sunday November 16, 2003 @09:46AM (#7486775)
    If you want a mind bender, there is always On the Duality of Operating System Structures [stanford.edu]. But if you want something a little more practical, I'd recommend Eliminating Receive Livelock in an Interrupt-Driven Kernel [stanford.edu] or The End to End Argument in System Design [stanford.edu].
  • GCH full text (Score:2, Informative)

    by bigHairyDog ( 686475 ) * on Sunday November 16, 2003 @09:50AM (#7486783)

    You have to register to get most papers from ACM (the Association for Computing Machinery who published "GOTO considered harmful"). However, the full text can be found free in their classics series [acm.org].

    Everybody should read this paper, then read Linus Torvalds et. al. discussing the matter on kernaltrap.org [kerneltrap.org]

  • by skaya ( 71294 ) on Sunday November 16, 2003 @09:52AM (#7486789) Homepage
    As a PhD student, I often have to look for papers in the computer science field ; and very often, CiteSeer yields better results - or, rather, different results, but with a very good cross-referencing system. You can directly jump to the other papers cited by the paper you're reading, and you can see which papers did cite it, too.

    The URL : [nec.com]
    http://citeseer.nj.nec.com/cs

    That said, I often find very interesting ideas in scientific papers, but sometimes things can't be implemented with current technology (I'm still talking about computer science domain, since that's what I know), or sometimes, the good idea in the paper is obsoleted a few years later.

    For instance, I remember a scheduling algorithm to read disk blocks in a Video-On-Demand server : it was maybe very clever when it was written, when they had to feed 155 Mbps with a computer having 16 MB of RAM, but today, you have maybe 10 times more throughput, but 100 times more RAM - so you can use simpler, memory-hungry, buffering methods.

    The problem is, that it's difficult (IMHO) to say "OK, this paper is theoretically interesting, but we can't implement this today, BUT we will probably be able to do it in a few (dozen) years", because you don't know what will and won't evolve (in my previous example, it was easy to predict that network bandwidth and memory size would increase, but it was maybe harder to guess that MPEG4 and DivX would allow the bitrate of a video stream to stay low...)
  • by peragrin ( 659227 ) on Sunday November 16, 2003 @10:05AM (#7486836)
    just because I'm bored "why not \." simple the backward slash is only used by the backward company microsoft. All true operating systems use the forward slash / it is easier to get to on the keyboard and makes life easier as it is now standard. now to see if anyone bites
  • by hubertf ( 124995 ) on Sunday November 16, 2003 @10:07AM (#7486844) Homepage Journal
    Check out the Networked Computer Science Technical Reference Library [ncstrl.org].

    - Hubert
  • by Anonymous Coward on Sunday November 16, 2003 @10:26AM (#7486912)
    "After a few weeks of digging, we got a copy of the (hard to locate) conference proceedings, and now that brand new patent looks like it's toast."

    I hate to burst your bubble after all the effort that you went through, but ... From your description, your Dad's company is nowhere near out of the woods yet.

    In order to invalidate a patent, the prior art must no only describe an invention, but also be "enabling" in it's description (either standing alone or in combination with other prior art). Most conference proceeding consist of a title and/or abstract, neither of which normally contains sufficient information to teach how to make and use the invention (i.e., is "enabling"). A mere mention of the concept does not make for invalidating prior art. In almost every case such as this you also need additional prior art and testimony of the speaker at the conference (and possibly those attending).

    And, if you are relying on testimony, the (enabled) invention must be proven to have been "known or used by others" (35 USC 102(a)), or "on sale or in public use" (35 USC 102(b)) ... "in this country" . 35 USC 102 [cornell.edu]. Unfortunately, testimony corroborating oral disclosure in a foreign country doesn't do the trick.

  • by Henry Stern ( 30869 ) <henry@stern.ca> on Sunday November 16, 2003 @10:37AM (#7486962) Homepage
    Since nobody who seems to have actually read any computer science papers has posted, here are two that immediately come to my mind.

    Vannevar Bush. As We May Think [vub.ac.be]. Atlantic Monthly, July, 1945.

    This paper put forth the very first ideas about how people can mechanically search for information. While we don't have desks with levers on them, we do have Google. :)

    Tim Berners Lee. Information Management: A Proposal [w3.org]. 1989.

    This paper is where Tim Berners Lee proposes what we now know as the world wide web. It's an interesting read if you'd like to see what the original intent of the web was so that you can compare it to what we have today.

    A place to look for good old computer science papers is in older issues of Communications of the ACM. There are lots of articles in plain English that you may find of interest. If you are a university student, your school may have a subscription to the ACM Digital Library. If they do, you can read all the issues back to 1958.

    Also, you can find a lot of interesting CS publications at Citeseer [nec.com]. They have a page with the top 200 most accessed papers of all times [nec.com]. When I skimmed through it, I saw quite a few titles that may be of interest.
  • Re:Why should I? (Score:3, Informative)

    by bj8rn ( 583532 ) on Sunday November 16, 2003 @10:53AM (#7487032)
    Monopoly science: n. A science that tries to monopolize the knowledge (and explaining) of how the Universe works. See also: Physics, Theology, Philosophy, Sociology and Semiotics.

    (those who feel left out should immediately report to me or the nearest AC; they will be duly noted in the next edition of this post)

  • by dido ( 9125 ) <dido&imperium,ph> on Sunday November 16, 2003 @11:13AM (#7487120)

    Shannon's 1948 paper, "A Mathematical Theory of Communication [bell-labs.com]", the seminal work on information theory and coding.

  • by handy_vandal ( 606174 ) on Sunday November 16, 2003 @11:25AM (#7487173) Homepage Journal
    I'm learning to read classical Greek so that I may read Euripides.

    An admirable exercise.

    Journalist I.F. Stone, rather late in life, taught himself ancient Greek, in order to read the actual source documents relating to the trial and execution of Socrates [umkc.edu].

    No translation would suffice: Stone felt that only by reading the original text for himself could he arrive at the insight he desired.

    -kgj
  • MIT Open Courseware (Score:4, Informative)

    by The Jonas ( 623192 ) on Sunday November 16, 2003 @11:34AM (#7487215)
    MIT Open Courseware [mit.edu] These are not whitepapers and the like. Rather, they are mostly lecture notes from the professors who teach the classes there - Enjoy!

    p.s. - Check out the link [nasa.gov] in my earlier post
  • by e_lehman ( 143896 ) on Sunday November 16, 2003 @11:43AM (#7487263)
    This [nec.com] is the paper by Diffie and Hellman that originated public-key cryptography. This paper explained for the first time (in an unclassified place) how two parties could communicate privately over an open channel without previously agreeing on a secret key. Every time your browser says, "Setting up a secure connection..." when you order from Amazon or check your bank account, you're witnessing the impact of this work.
  • by tlhf ( 312423 ) <tlhf_loves@NOsPAM.hotmail.com> on Sunday November 16, 2003 @12:00PM (#7487350) Homepage
    Try reading Perl, the first postmodern computer language [wall.org], by Larry Wall. It's informal and not too focussed on perl - the first few pages hardly touch perl.

    Well, maybe I just wanted to whore my favourite paper.

    xxx

  • by YoJ ( 20860 ) on Sunday November 16, 2003 @12:51PM (#7487635) Journal
    In CS, conference proceedings generally include full texts of the papers. Often conference papers will be a general description of an idea and how it was implemented in a system, with references that include a technical report or someone's thesis with more details about the ideas and implementation. I'm not disagreeing that to prove prior art more may be required than old papers.
  • by xeo_at_thermopylae ( 585330 ) on Sunday November 16, 2003 @01:09PM (#7487740)
    Ivan Sutherland's Sketchpad was the first realization of object-oriented programming. As you read it you see OOP come to consciousness. Sutherland's dissertation is available online at Sketchpad, A Man-machine Graphical Communication System[HTML] [216.239.41.104] or Sketchpad, A Man-machine Graphical Communication System[PDF] [cam.ac.uk]. It was originally submitted at M.I.T. in 1963.

    In the section titled GENERIC STRUCTURE, HIERARCHIES , Sutherland describes how he restructured SKETCHPAD in what we would immediately recognize as an OO manner:

    "The big power of the clear-cut separation of the general and the specific is that it is easy to change the details of specific parts of the program to get quite different results or to expand the system without any need to change the general parts. This was most dramatically brought out when generality was finally achieved in the constraint display and satisfaction routines and new types of constraints were constructed literally at fifteen minute intervals." ... "Before the generic structure was clarified, it was almost impossible to add the instructions required to handle a new type of element."

    Later in the section DEMONSTRATIVE LANGUAGE we see what we might call today the association of classes with methods as Sutherland notes:

    "The organization of the demonstrative program in Sketchpad is in the form of a set of special cases at present. That is, the program itself tests to see whether it is dealing with a line or circle or point or instance and uses different special subroutines accordingly. This organization remains for historical reasons but is not to be considered ideal at all. ***A far better arrangement is to have within the generic block for a type of picture part all subroutines necessary for it.***" [asterisks mine].
  • by ecklesweb ( 713901 ) on Sunday November 16, 2003 @01:10PM (#7487748)
    The Grid: Blueprint for a New Computing Infrastructure by Dr. Ian Foster of Argonne National Laboratory and the University of Chicago, and Dr. Carl Kesselman of the Information Sciences Institute and the University of Southern California.

    Morgan Kaufmann, San Francisco; 1999.
  • by oudzeeman ( 684485 ) on Sunday November 16, 2003 @01:27PM (#7487853)

    Lamport, Leslie. "Time, Clocks, and the Ordering of Events in a Distributed System", pps. 558-565, CACM, Vol. 21, No. 7, July, 1978

    Parnas, David. "On the Criteria To Be Used in Decomposing Systems into Modules", pps. 1053-1058, CACM, Vol. 15, No. 12, December, 1972

    Hester, S.D, Parnas, D.L., and Utter, D.F. "Using Documentation as a Software Design Medium", pps. 1942-1977, The Bell System Technical Journal, October, 1981

    Parnas, David L. and Clements, Paul C. "A Rational Design Process: How and Why to Fake It", Presented at the Tapsoft Joint Conference on Theory and Practice of Software Development, Berlin, March, 1985

    And one more(I know this guy, and I had to read this for a class, so I figured I'd give him some props..) Wheeler, Tom. Software System Development Through The Use of Formal Documentation, Ch. 2 (System Documentation), PhD. Thesis, Steven's Institute of Technology 1988

  • by orthogonal ( 588627 ) on Sunday November 16, 2003 @01:43PM (#7487950) Journal
    don't expect him to give away the details that you would expect in a CS class

    Let me quibble with you a bit.

    There are no details to "give away". The knowledge isn't a secret.

    I'm reminded of Robert Heinlein's book Starman Jones, where guilds, using Intellectual Property laws, had made all scientific and technical knowledge proprietary (much as guilds did in the Middle Ages).

    Fortunately, in our world, we are moving away from that model. Scientific and technical knowledge is available to anyone with the tenacity and aptitude to learn it.

    Certainly, all the knowledge to be learned in an introductory Computer Science course is available -- free -- on the web. For other disciplines, there's still the cost of $100 textbooks -- but more and more free alternatives are becoming available. And that's not even mentioning all the free and open software (even a whole OS!) out there to use as examples.

    What's lacking is not the knowledge, or the software; what's lacking are tutors able to explain the tough bits, smooth the rough bits, and challenge their students to make the knowledge their own. Somebody to demonstrate adding a node to a linked list to the puzzled; someone to review the basic math for those of us (like me) who got a bit intimidated by Big O notation. that's the next problem, and the problem I want to address.

    But the knowledge is a click away -- and no Sphinx is guarding any "secrets".
  • by dfung ( 68701 ) on Sunday November 16, 2003 @02:27PM (#7488187)
    I've been an intermittent ACM member over the years, and I think it can be very beneficial depending on how you want to use the membership. You get the general journal (Communications of the ACM) which has articles of broad interest across the entire scope of computing. That's the nice way to put it - what it often means is that, even as an accomplished professional in your field, you won't have the slightest idea about what 80% of the articles are about. The CACM often has "theme" issues which are a lot more interesting generally, since the articles are more tutorial.

    You will get a much bigger bang from the special interest groups. Sign up for the ones that are your field of specialty or interest, and you'll get a more focused journal that will show you the leading edge issues of the field, as well as giving you visibility into who some of the academic and corporate players are. Most of the SIGs are relatively small, so the journal may only be quarterly and not a fancy production. Some of the big ones - SIGGraph for graphics or SIGChi for human interaction are big fancy productions and can be very engaging.

    For most people, there will also be local chapters who have occasional meetings. I live in the Silicon Valley, so you can network with a lot of interesting people and see what different companies and universities are up to. I found this very interesting, and (for /.ers) entertaining when the discussion turned to ripping somebody else's work.

    I used to do a lot of work in computer graphics and found that SIGGraph was really useful to me in terms of keeping abreast of what was new. I've largely switched into a different area over the past years (embedded systems mostly) and found that I haven't had time to keep up with the graphics world, so I let my membership lapse. I guess I should join the IEEE which has a lot of the same material in my current area.

    If you're out of academia, the need to be up to date on the latest battles in your field may be unnecessary, but if you dig this stuff, this is an excellent way to get engaged.

  • Lambda (Score:2, Informative)

    by rpg25 ( 470383 ) on Sunday November 16, 2003 @02:42PM (#7488248)
    How about the Steele and Sussman "Lambda the Ultimate" MIT AI Lab tech reports. Very influential. Sadly, I don't know if anyone's put them on the web. And, of course, there's the repository of Dijkstra's stuff....
  • Djikstra (Score:3, Informative)

    by Ian Bicking ( 980 ) <(moc.ydutsroloc) (ta) (bnai)> on Sunday November 16, 2003 @02:47PM (#7488276) Homepage
    I found this paper (note?) by Djikstra quite interesting: The Programming Task Considered as an Intellectual Challenge [utexas.edu]

    It talks about software quality and testing -- which seem very applicable, if not entirely in sync with, recent ideas about agile programming, test-driven-development, etc.

  • by AquaRichy ( 663473 ) on Sunday November 16, 2003 @03:08PM (#7488382) Journal
    I think you mean "The Calculi of Lambda Conversion" [jfsowa.com] , or are they two different things?
  • by Gldm ( 600518 ) on Sunday November 16, 2003 @03:12PM (#7488412)
    Gee I dunno, maybe the fact that he was put on trial for homosexuality, found guilty, and forced to take hormone treatments instead of a prision sentence? Simple google search on his hame would bring up plenty of evidence, or you could try looking for a biography in your local library. From what I've read he was quite open about it, which is why the trial came about in 1952 or so.
  • by Tony.Tang ( 164961 ) <slashdot@@@sleek...hn...org> on Sunday November 16, 2003 @03:39PM (#7488572) Homepage Journal
    This is not a paper, but a video that was done in the late 60's [stanford.edu]. In it, you'll see many UI concepts that you see being "discovered" now.

    For instance, he has the very first mouse, a word processor with cut, copy, paste, embedded graphics (remember how cool OLE seemed to be?), hyper-linking (remember how cool hypercard seemed to be?), embedded levels of text (kind of like looking at a hyper-linked table of contents in a book), multi-handed interface, a piece of groupware that allows him and a distant co-worker to work together in the same application (think collaborative real-time modification of the same document -- something we still don't really have), telepointers (graphical representation of other people's mouse pointers), embedded video (think webcam), and the list goes on and on and on.

    When you think about the fact that this was done in the 1960's, you really begin to wonder, "what the hell have we been doing since then!?"

  • by DrSkwid ( 118965 ) on Sunday November 16, 2003 @03:41PM (#7488584) Journal
    http://www.cs.bell-labs.com/who/rob/ [bell-labs.com]

    be sure to catch "Systems Software Research is Irrelevant"

    You will probably see a lot worse links than :

    Bell Labs [bell-labs.com] - formerly known as heaven.

  • Re:Classic papers (Score:3, Informative)

    by F2F ( 11474 ) on Sunday November 16, 2003 @04:42PM (#7488963)
    Later surpassed by "Plan 9 from Bell-Labs", which distills the ideas from UNIX and improves in many areas it lacked:

    Plan 9 from Bell-Labs [bell-labs.com]

    Somebody else mentioned Rob Pike already, pity you can't find any of his older (pre-Plan 9) papers online anymore: "The Hideous Name" and "Cat -v Considered Harmful":

    R. Pike, P. Weinberger, "The Hideous Name" USENIX Summer 1985, pp 563-568.

    and an abstract of the other: http://gaul.org/files/cat_-v_considered_harmful.ht ml

    As for history repeating itself, let me quote Ron Minnich:

    You want to make your way in the CS field? Simple. Calculate rough time of amnesia (hell, 10 years is plenty, probably 10 months is plenty), go to the dusty archives, dig out something fun, and go for it. It's worked for many people, and it can work for you.
  • by Anonymous Coward on Sunday November 16, 2003 @05:28PM (#7489166)
    ...you must sometimes also seek mediocrity.

    Learn from other people's mistakes by pointing your newsgroup reader to comp.risks and reading the digests religiously.
  • by voodoo1man ( 594237 ) on Sunday November 16, 2003 @08:16PM (#7489976)
    Even many experienced OO'ers will tell you that they use less inheritance and sub-typing than they used to, and instead use composition and aggregation, which are "less OO" concepts, and found in IBM's 1964 IMS database.
    Inheritance is certainly not some intrinsic OO concept. It's actually a special case of delegation, where the object just shuffles unknown messages around. Hewitt's Actors and derived languages use this paradigm. See MIT AI Memo 410, Viewing Control Structures as Patterns of Passing Messages. I'd like to find out more about the IMS database - have you got any pointers?
    Even in geometry with its stable rules, we have the ellipse-circle fights and the square-rectangle fights.
    I swear I heard about a proposed/experimental object system where parent relationships were handled by constraints (so for example if some rectangular object had equal sides, it would automatically become a square), but I can't find anything on it!

    Alan Borning proposed a neato object system where relationships among objects (it's prototype based) was handled by "inheritance constraints," a sort of super-flexible inheritance cum delegation scheme. See this page [washington.edu] for Classes versus Prototypes in Object-Oriented Languages.

  • by JohnQPublic ( 158027 ) on Sunday November 16, 2003 @09:04PM (#7490198)
    It's very instructive to go look at the "ACM Classic of the Month" collection [acm.org]. It's exactly eight entries long, was only live for short period, and the papers are rife with typos, etc. You can't argue with the choices, though:
    • Codd: "A Relational Model of Data for Large Shared Data Banks"
    • Dijkstra: "Go To Statement Considered Harmful"
    • Dijkstra: "Appendix of The Structure of the "THE"-Multiprogramming System"
    • Hoare: "Monitors: An Operating System Structuring Concept"
    • Metcalfe & Boggs: "Ethernet: Distributed Packet Switching for Local Computer Networks"
    • Parnas: "On the Criteria to be Used in Decomposing Systems into Modules"
    • Thompson: "Reflections on Trusting Trust"
    • Wirth: "Program Development by Stepwise Refinement"
    Of course, the ACM Digital Library [acm.org] contains the "[f]ull text of every article ever published by ACM", but only for paying subscribers ($198/year). An organization that considers itself to be "a major force in advancing the skills of information technology professionals and students worldwide" should be trying to get information into circulation, not trying to squeeze publications fees out of the practioners of the field.
  • CanonicalPapers (Score:2, Informative)

    by bshanks ( 520250 ) on Sunday November 16, 2003 @11:32PM (#7490911) Homepage
    Recently I listened to a talk by Alan Kay who mentioned that many 'new' software ideas had already been discovered decades earlier by computer scientists - but 'nobody reads these great papers anymore.' Over the years I have had the opportunity to read some really great and thought-provoking academic papers in Computer Science and would like to read more, but there are just too many to sort through.

    Sounds like the sort of problem that a system like CanonicalTomes [canonicaltomes.org] would be good for. Canonical tomes is for books. Anyone up for making a similar site for "canonical papers"?

  • by CodeBuster ( 516420 ) on Monday November 17, 2003 @12:47AM (#7491256)
    Interestingly enough, the Luftwaffe was very careful with its settings documents and its discipline for changing rotors. Bletchley Park never solved the Luftwaffe version of Enigma.

    What a bunch of bullox! The following are excerpted from "The Ultra Secret" which was written by F. W. Winterbotham who worked closely with Allen Turing and the rest of his team at Bletchly Park throughout the war.

    "Although the well-guarded Kriegsmarine messages could not be deciphered, BP was regularly eavesdropping on the Luftwaffe. The Luftwaffe was particularly negligent in applying appropriate safeguards to their Enigma-coded messages, perhaps due to a measure of arrogance evident in World War II "fly-boys." Through this source the British were able to piece together Hitler's plans for the cross-channel invasion, dubbed Seelowe (Sealion). Before it could be accomplished, the RAF would have to be neutralized. Warned beforehand of Luftwaffe bombing raids on airfields, designed to eliminate not only the fields themselves but also destroy RAF fighters on the ground, British planes were able to avoid being caught as sitting ducks. Although Ultra intelligence forewarned of impending attacks, coastal radar (underestimated by the Germans) was able to pinpoint flights of incoming enemy planes."

    "The British were regularly reading Luftwaffe messages, Of particular interest were messages from the Fliegerverbindungoffiziere, or "Flivos", liaison officers responsible for coordinating air and ground operations The all important Kriegsmarine signals ("Dolphin") were still a mystery. U-33, on a mission to sow mines in the Firth of Clyde, was depth charged and forced to the surface on Feb 12, 1940 by minesweeper HMS Gleaner."

    "One of the first relied on German operators using some easily remembered sequence of letters as rotor starting positions. There were identified as "Cillies", after one operator who frequently used "Cilly", his girlfriend's name."

    Obviously you were misinformed about your chosen subject. The Kriegsmarine messages were the really tough ones to crack because they were disciplined about transmission lengths, randomized key rotor selections for each message, and distribution of code books which contained the key sequences that would be used in a particular month. By comparison the Luftwaffe operators used their girlfriend's initials as rotor settings and changed keys only infrequently.

  • by Pampaluz ( 163324 ) <(pampaluz) (at) (cox.net)> on Monday November 17, 2003 @12:53AM (#7491269) Journal
    Here is a neat site that I found (yep, using Google):

    Great Papers in Computer Science:
    http://bit.csc.lsu.edu/~chen/GreatPapers.html [lsu.edu]

    I kept trying to put the TOC from the site in this comment, but Slashdot kept saying that the line length was too short. Since it was just plain text, I do not understand what was going on with that. So sorry, but the link really is worth checking out. Good reading!
  • by DrEspenA ( 517292 ) on Monday November 17, 2003 @03:11AM (#7491669) Homepage
    The Bletchley Park (HQ for UK cryptintelligence work during WWII) operation and assorted activities to capture and feed information to it involved thousands of people (I think I have seen numbers of 5000 for the HQ operations alone). Turing was extremely important in this work, especially in the earlier part of the war. However, many others contributed - for instance, it was Polish intelligence that broke the first versions of the Enigma cipher machine, even before WWII started.
  • Good CS Reading List (Score:3, Informative)

    by eludom ( 83727 ) on Monday November 17, 2003 @07:17AM (#7492146) Homepage
    http://john.regehr.org/reading_list/

Software production is assumed to be a line function, but it is run like a staff function. -- Paul Licker

Working...