be is the URL of the document that
has a link to this particular local web document.
This was especially thrilling to me because I had the great fortune
to talk to Ted Nelson
of
Project Xanadu fame (blatant
name drop!) at a party while I was in L.A. about his ideas about
transcopyright, and other exciting things.
I have heard that one of the criticisms of the WWW protocol (perhaps
compared to Project Xanadu, in this instance) is lack of back-linking.
So I wrote unbib to facilitate this missing luxury.
unbib is a perl script that goes through the referer_log and
builds a list of local pages, followed by pages which link to them, and
both saves this list (to be added to later) and outputs (to standard out)
an HTML marked-up page containing all the back-links. This can get pretty
huge. You can find out how to run it from the comments in the source code.
Problems, bugs, and source code
Please read the Usage Agreement below before chomping
away with the code. It is pretty painless.
- I am testing/using 0.95BETA now. This should be updated to reflect that (including the source, which now points to 0.9BETA) soon -- especially if you all send me info to inspire me!
- This is version 0.9BETA -- There are plenty of messing things
in the code, and I am not a perl guru, so I am sure silly things are being done.
I welcome polite (or at least, non-flaming) suggestions for improvements
in effeciency. I programmed this while I couldnt sleep last night, so there
are also probably many logic errors as well. Hey, I try...
- By the nature of the referer field, you don't really
know for sure (without looking) if the last URL links to yours. It is just
where the browsing person was prior to yours. So if they typed in (or reached via hotlist) your
URLs, the refering page will be meaningless (but maybe interesting). I guess there is
nothing you can do about this. (?) This also means you get some local files
(hotlists?), too. Groovy.
- Something is goofy with the count of pages, but am just too exhausted to deal
with this now. I have ran this thing so many times, I am sick of it.
- It would be nice to do things like add additional counts per page and things like
that. Lots of bells and whistles can and will be added "soon"(tm).
- Both the "data file" (which stores the raw URL info, as just a dumped perl
array) and the output have lines too huge to be viewed with things like vi.
This sorta sucks and some newlines may take care of this eventually.
- I am also currently working on customizations that will allow a separate
perl script to extract unbibliographical information about any given page
from this mess, so that a reader can see who and what links to any page
they are currently looking at on the site.
- You can also see who links to your graphics and stuff -- which means they
are out-and-out swipin' your image in a page somewhere! Wow-ee! This is
what I was talking to "Ted" about, with transcopyright and all.
- Yeah, I plan on replacing the ugly [XX] things with a nice .gif, too.
- VERSION 1.0 will be done soon. It includes things like (pseudo)
weighted results, indicated by not showing back-links with less
than a user-defined count [yes, unbib 1.0 saves the number of times a
back-link is found] and showing links as "." for back-links with a count
within a "weak" range, and as "#" when above a "strong" level. You can
get a better idea of what I am rambling about by looking at the UWI
unbib page created with 0.95BETA (internal, will be released as 1.0) below.
Source code (text)
(if it is "gone", I may be making changes)
The UWI unbib page
(the whole site; if it is "gone", I may be making a new one)
'unbib-one' (source/text)
This is a tiny hack that can be used to spit out single document
unbibliographies and is meant to be used as a web-envoked
script, like: unbib-one?/uwi.html
Usage Agreement
unbib version 0.9BETA was programmed on 95 Jun 09 by
Jon Van Oast
It is another fine public service brought to you by
UnderWorld Industries.
I don't ask for much -- really, I don't. Just don't commercialize this without
talking to me and always at least give credit to me as the original source, if
you refine it and so forth. It would be nice to have something refer back to
this page, too. Use this however you see fit. I am sure this has been done,
and can be done much better, and so on. If it weren't such a hack, I would
consider saying something about, oh, maybe the GNU software agreement or
some such; but, just apply some sort of modified version of the UWI
Anti-copyright restrictions to it, even though they are subject to constant
alterations.