The cost of updating the systems is expected to run into hundreds of millions of pounds, but the cost to companies - and even the taxman - of failing to update could be even higher.
The problems are already occurring. A US insurance company recently offered a 30-year policy, only to find its computer system preparing a multi-million- dollar cheque to pay out on a new $100,000 investment. The system thought the policy had already matured - in 1900 - and was adding interest to the payout.
"Many computer systems just aren't set to recognise the difference between 2000 and 1900," says Les Thomas, managing director of Millennium UK, a software and services company based in Poole in Dorset.
The date dilemma has its origins decades ago, in the price of computer memory for mainframe computers. Because memory was expensive, programmers tried to economise on how much of it their programs used, which meant cutting out extraneous digits such as the "19" in a date.
Many never expected their systems to be needed for more than a few years. However, many programs have exceeded their life expectancy, to the dismay of computer managers, who have to find and replace the two-digit systems wherever they occur.
A typical fault could arise for somebody born in 1970. At the end of 1999 the computer will calculate that they are 29 years old. But at the beginning of the next year it will subtract 00 from 70 and decide that they are 70, and eligible for a pension.
The fault extends to PCs. Peter de Jager, a Canadian computer consultant, suggests people try a simple test on their PC: reset the date to 23:58 on 31 December 1999 and turn off the machine for five minutes. When it is powered up, the time should be early on Saturday, 1 January 2000. "My computer responds with 1 January all right - 1 January 1980," says Mr de Jager."More than 95 per cent of personal computers fail this test."
Large organisations using expensive mainframe systems face the same problems, but magnified by the size of their investments in software.
"I would estimate that between five and 15 per cent of the lines of code in every program out there use the computer's internal date for something," says Mr Thomas, whose company only opened its doors in October but already has 300 clients.
Many programs will have been written by people who have since moved on, leaving software that has little or no documentation, so those trying to reprogram them cannot be certain how changes will affect other parts of the program. In Britain, the Inland Revenue expects to spend two years and an unspecified amount converting the programs that run its Computerisation of PAYE (COP) system, which generates millions of tax returns.
"It's a funny project - if companies do everything right they'll expend a huge amount of effort and nobody will notice a thing. But if they get it wrong, the consequences could be horrific," says Peter Ambrose, who is putting together a group of the largest users of IBM mainframes which will try to find a solution.
"It's lucky the first day of the new century is a Saturday - programmers will have a weekend to work out temporary fixes."Reuse content