Flood Maps Upgraded

Google have just withdrawn the old version of their "Maps API". That broke Flood Maps and sent me into a tizzy of reading up on the new version and recoding my JavaScript to use it.

The site was down for a few hours, but I've now restored it. The positive …

View comments more ...

EventCalendar 3.1

I've finally released the new version of EventCalendar. I'm really proud of it. It's been updated, with better integration into WordPress and some cool new features.

Even more importantly, I've put loads of effort into making it easy to install and use. WordPress users aren't always the most tech-savvy web-site …

View comments more ...



VIA IRQ Quirk

I've stupidly bought a VIA EPIA motherboard. It's a tiny, low power server board, with two built-in VIA-Rhine ethernet controllers. I've added a Prism based wireless PCI card. I use it as a firewall and WiFi base-station.

Apparently VIA's BIOS is really stupid. I have real trouble running a stock …

View comments more ...

Timezones in PHP.

How do I convert timestamps between UTC (GMT) and an arbitrary timezone in PHP?

These function work on PHP 4 and 5.

/** Converts a timestamp between arbitrary timezones. */
function tz_to_tz($timestamp,$from_tz,$to_tz) {
  $old_tz = getenv('TZ');
  // Parse $timestamp and extract the Unix time.
  if(!empty($from_tz))
      putenv("TZ=$from_tz");
  $unix_time …
View comments more ...




BackupPC

I've just started using BackupPC to backup my file server. It's a disk-based solution - so if you want to archive to removable media such as DVD-R or tape, you need a separate archive step.

The advantage of BackupPC is supposed to be that it can do remote backups of every …

View comments more ...