The way I work is a kind of iterative process. If I understand something fine first time around, great. Otherwise (assuming it's something practical) I try building from small examples and (with a...