The ACM Digital Library badly needs an overhaul


The [[http://www.acm.org/|Association for Computing Machinery]] is one of the oldest and most popular organizations in computing, with the self-professed mission of “advancing computing as a science and a profession”. Here is some [[http://www.acm.org/about/history|historical background]]. Being the flagship society in computing, I think it is only justified that ACM should boast a //good// website, holding to the highest standards in web design and accessibility.

Until some time back, the ACM web site was fairly old school and lacking in most feature of any good standards-compliant website. I wanted to pull up a snapshot of an older version of the home back from archive.org, however, ACM seems to have blocked their crawlers. Unfortunate. Anyways, it seems like they finally got their act together (for the main web site at least), and moved to a full fledged content management system ([[http://plone.org|Plone]]) instead of home brewed custom scripts and hand written HTML. As a result, the web site seems much more professional and accessible. Note that despite [[http://www.acm.org/accessibility-info|their claim]], the site does [[http://validator.w3.org/check?uri=http%3A%2F%2Fwww.acm.org%2F&charset=%28detect+automatically%29&doctype=Inline&group=0|//not// validate]] but I won’t hold it against them, since the number and type of errors is not significant.

{{ http://www.acm.org/logo.jpg|Association for Computing Machinery}}

What does bother me a lot, however, is the state of the [[http://portal.acm.org/dl.cfm|ACM Digital Library]] (actually the entire portal). The layout and code of the site **hasn’t changed in well over 7 years** now. The HTML seems to be generated by some archaic home-brewed system and it is horribly broken in many many ways. Normally this wouldn’t bother me too much, but recently I had the misfortune of trying to screen scrape some of their web pages, which is when I realized exactly how ugly and dysfunctional the code was.

* First of all, the pages claim to be ”XHTML Transitional” in the DOCTYPE tag, but the DOCTYPE is not even in the right place!! Recall that the DOCTYPE //must// be the first thing to appear on a page to actually mean anything. But all pages in the digital library start with a weird ”