BitSavers is a repository of documentation and software for “vintage computers”. New manuals and documentation are being contributed to BitSavers all the time. The archive contains lots of documentation on common vintage computers like the PDP-11 as well as obscure items like the AN/FSQ-7, the computer used in the SAGE air defense system.
Unfortunately, the only way to find out when new files were placed on the archive was to periodically browse the What’s New file and check for interesting items. The what’s new file is just a simple text file with one line per entry for the files that have been added. There have been a couple times where new things showed up on BitSavers that were of interest to me and I didn’t realize it until much later. The solution is to create an RSS feed that shows new documents, with links to the documents and a description extracted from the what’s new file.
An RSS feed is just a text file in XML format that is updated periodically. To generate one for the bitsavers document archive, I wrote a perl script that executes once an hour, gets the What’s New file and parses out the 50 most recent entries. These entries are used to contruct an RSS XML file with links back to the documents on bitsavers. The root folder for the documents is the name of the company issuing the document and makes a natural category for each RSS item. The additional directory structure between the root folder and the document can also tell you information such as which model of computer the document describes. The document path is used to construct the title of each item.
The perl script that does all this is only 51 lines long and makes use of the LWP::Simple and XML::RSS modules to fetch the what’s new file and create the RSS file, respectively. Its a nice example of a simple script that leverages other perl modules to do something simply. This should be no surprise to anyone who is familiar with perl, since it is a scripting language designed for manipulating text files. Its also a nice example of how a little bit of programming can enhance a resource on a remote web site even without any special access to the web site itself.