Home
Diary index
How I made this site

perl camel

Since I last visited the People's Republic of China, I have learnt many new skills to do with computers. One of these is how to write my own HTML instead of relying on a piece of software to do it for me.

The other important skill I have learnt is how to be concise when writing perl. Consequently, this year's website is brought to you by only a few perl scripts, as opposed to last year's fifty.

Each page on this website has a script on it to see if anyone is visiting it. This allows me to tell you that there have been visitors to this website since midnight on the 8th of August, which was when I installed the counter. The counting is done by the familiar Count.cgi program written by Muhammad A. Muquit.

Also, the number of words I have e-mailed this diary so far is , which is either a) impressive b) unimpressive or c) very unimpressive because the numbers graphics didn't work.

Below is a list of what is running to bring you the online diary thing:

convertSpool.pl This perl script downloads my Hermes (University of Cambridge e-mail) folder containing the reports from each place, extracts the text from the e-mails (i.e. discarding all the headers) and finds out where and when the report was written (i.e. the last two lines of the e-mail should be something like "Beijing \n 23/08/2001". Files are then generated accordingly, and a nice index strip is added to each page.

I have also made it count the number of words I have written and it reports this fact to the paragraph above.
compileSite.sh This shell script runs convertSpool.pl and catches the output of the program. Depending on whether it is running on-line or on the windoze box (as a test site), it concatenates a header and footer onto the output and saves it to ../debug/index.html.
crontab This crontab updates a text file each night with a list of who has looked at the website on that day. This history list is appended to the file ../debug/index.html thus showing a list of everyone who has hit the site. Nice