Why Software Jewels Are Rare

A software jewel is a well structured program written in a consistent style, developed so that each component is simple and organized, and designed so that the product is easy to change. Despite helpful articles and many textbooks on software design, software jewels remain rare. Most of the software we see or buy is ugly, unreliable, hard to change. I discuss why the recipes of the masters have not led to more elegant commercial software and then provide some advice for those who would like to produce better software.