Giorgio Sironi has a new post on DZone.com today with a look at what he calls "object calisthenics", a sort of ">workout exercise for you to do to flex your object-oriented programming skills.
Calisthenics is a Greek-derived term for exercises, in the gym sense. I have object calisthenics, exercises for object-oriented programming, around for a long time and saw them as fascinating, but never got the time to try.
The challenge he lays out includes rules relating to indentation levels (really complexity levels), wrapping primitives in strings, small entities and using first-class collections. To illustrate, he works through a solution to the prime factors kata and breaks it down into the eight different rules complete with code examples.