I think it is about having something you really want to code - inspiration - and interest - counts for a lot, if you get an idea and suddenly realise you could write a program to show it, then ocd...