Programming is at least as difficult as developing a mathematical theory.

—Daniel T. Barry