There is an even worse corollary: that if there is a cancel button, it won't do anything. I have been working in software development and using computers in my everyday life for over 40 years and I've almost never found a working cancel button. Honourable mention to Microsoft Visual Studio: the 'cancel build' button works. But the default case is for the cancel button handler to be allocated so few time slices that it never receives the press event, and even if it does, the message it no doubt sends to the process to be cancelled never arrives.