So, what does it mean for teaching and learning programming when the solution to every beginner problem is available on the Internet? Cay S. Horstmann More Quotes by Cay S. Horstmann More Quotes From Cay S. Horstmann One purpose of CRC cards [a design tool] is to fail early, to fail often, and to fail inexpensively. It is a lot cheaper to tear up a bunch of cards that it would be to reorganize a large amount of source code. Cay S. Horstmann design learning tears