Often customers report problems that are intermittent or not easily reproducible. The problem solver must develop programs written in a variety of computer languages to attempt to consistently reproduce the reported problem. On occasion this can involve days or even weeks of diligent work to develop a program or programs that can reproduce the problem on demand. Once the problem can be reproduced at will, a fix can usually be developed in a reasonable amount of time.