Fun bug department: the anti-virus program that consulted the user's calendar

by Andy Oram

A colleague told me an amusing story about an oddball design decision that puzzled him and three tech service representatives for days. Norton Antivirus told him his antivirus software was out of date, so he updated it. The next time he booted, the program told him it was still out of date--and it continued to do so on every boot even though it had claimed the previous time to have updated successfully.

The first responses naturally focused on whether the database was corrupt or otherwise failing to update. But eventually a savvy technician figured out the real problem.

It seems that my colleague had checked his calendar for a date in the following month and had left his calendar on the month of October while in fact it was still September. Norton Antivirus relied on his personal calendar to determine what date it was. The software had been updated for September, but the program thought the month was October.

I am curious as to why a programmer would take such an unrobust decision to use a user's calendar setting to determine the date. I'm wondering whether the programmers discovered that to get the date from the operating system would require a variety of different calls on different systems, and found it simpler to consult a calendar. Obviously, this backfired. A program that installs automated updates should use an external authority to find the date, and not depend on any settings on a user's PC at all.

The bug was particularly amusing because the program was promising to have an update it couldn't possibly have for the upcoming month.


Jon Evans
2007-01-01 08:21:31
What the user has done is changed his system clock (the "calendar") forward a month. Now whenever the AV software starts up, it compares the date of its virus signature file with the system time and determines that it is a month out of date. Nothing to do with "consulting the user's calendar". I've heard this sort of thing before, where Windows users use the calendar widget on the date / time settings control panel as if it is just a reference thing, and don't realise that they've changed the system time.
Paul Lambert
2007-01-01 11:41:05
Mac OS X Server has a "Server Assistant" application that lets you create a configuration file to build out a Mac OS X Server installation.

This app lets you select the timezone in which the server will run. But while that screen is up, selecting the timezone actually changes the timezone on your system. So if you leave it on that display, and forget about it, all your calendars will be wrong, etc.

It sure took a while to track that one down!

2007-01-02 07:49:09
this has been like this for years. in fact if u set ur callendar back u can continue to get updates even when ur subscription runs out. update then correct ur callendar and carry on.
unfortunately the last good norton av was pro2003. maybe their aquisition of sygate will reduce the hog of an application they currently have.