The other day’s blog post and a recent Andrew Binstock interview of Donald Knuth made me think more about how the ACM is really not serving the interests of computer science.
Here is a question from the interview:
Andrew: One of the few projects of yours that hasn’t been embraced by a widespread community is literate programming. What are your thoughts about why literate programming didn’t catch on? And is there anything you’d have done differently in retrospect regarding literate programming?
Professor Knuth had a good and interesting answer, which I will not go into here. Also, it was a good question- Literate Programming is a good idea, yet we have only seen weak imitations of it like Doxygen and JavaDoc (which automatically document the syntactic structure of code instead of really helping the programer become an author and explain their meaning and intent).
Mr. Binstock even includes a link to a site promoting the concept. Let us, as the kids these days say, “click through” and see what awaits us.
This is great. Literate programing is definitely Web 2.0 (rounded corners, use of light pastels and cool gradients). This is now, this is modern, sign me on. The site even has links to original articles by the masters:
Literate Programming - CACM Series Programming Pearls: Literate Programming, CACM (May 1986) Programming Pearls: A Literate Program, CACM (June 1986) Programming Pearls: Abstract Data Types, CACM (April 1987) Announcing Literate Programming, CACM (July 1987) LP: Processing Transactions, CACM (December 1987) LP: Expanding Generalized Regular Expressions, CACM (December 1988) LP: A File Difference Program, CACM (June 1989) LP: Weaving a Language-Independent WEB, CACM (September 1989) LP: An Assessment, CACM (March 1990) The Literate-Programming Paradigm Donald Knuth. "Literate Programming (1984)" in Literate Programming. CSLI, 1992, pg. 99.
Time to click through and see how the Association for Computing Machinery helps disseminate, guide and educate:
Oh, maybe this is part of why Literate Programming hasn’t been embraced: the whole purpose of Literate Programming is lost when you keep it a secret.
I am sure I have been a paid ACM member from time to time, but I don’t remember the online credentials and they have probably lapsed by now. I tried applying for the free temporary credential (the online form ended up not sending me anything- ACM not so good with the computers). I can afford pay (yet again) to re-join ACM but why would I want to give my money to support an organization so far from my (and common) academic values?
So in conclusion:
- Sorry Professor Knuth, you remain one of my heroes, but I’ll have to get to Literate Programing a bit later. I would say that the marketing campaign behind Literate Programming has excessive “breakage.”
- ACM: that was a funny joke, great head-fake, impeccable comic timing, good fun and I certainly learned something. Oh, and I will see you in hell.
Categories: Computer Science Opinion
Data Scientist and trainer at Win Vector LLC. One of the authors of Practical Data Science with R.
Better article on a related topic: http://www.win-vector.com/blog/2009/06/public-service-article-jstor-and-other-useful-research-archives/ .
Even better example: try to find the article Effy Oz, When Professional Standards are LAX. The CONFIRM Failure and its lessons, Comm. ACM, 37(1994), 10, 29-36. Guess what- it ACM has it locked behind a pay-wall. How does this in any way promote professional standards in the computing field?
I totally agree with you. It is unforgiveable that the ACM should so totally lock up the papers it has published behind fortress-like walls. The only saving grace is that *most* academics also publish current papers on personal web-sites, although you could easily say that this is in spite of the ACM.
It doesn’t help with papers before about … oh say 1995, which is really too bad, as there is a lot of good material that is still relevant where you can’t get to it without an all-areas-access pass from a large university library. Which, if you’re basically out working in industry, is harder to come by than you might think.
The let’s is missing its apostrophe.