It's a while since the reviews section of my website has worked. So I'm taking this opportunity to rewrite the code in order to get it working again.
What was wrong with the old code? Mostly it was that it wasn't very extensible. And it tended to store the data in a fairly non-portable form.
This new version stores it in XML (courtesy XML::Simple ). Normally, I would use XSLT to produce the pages, but I'm not in the mood for that, so I'm writing assorted bits of code to turn the reviews into Review::* objects which, via a bit of what Java-afficiandos calls reflection (or was it introspection?), essentially tell the main process program how to render the objects.
The Review::* objects are necessary since I'll be reviewing assorted things (books, films, whatever). Mainly films, but that's because I'm a member of the ANU Film Group which is a lovely little organisation.
Anyway, back to the coding...