MOC planning and design
Some of the more popular programs used when designing MOCs are:


LEGO Digital Designer
MLCAD
SR 3D Builder


There are some other ones available but those three seem to be most preferred editors. They all have quite similar set of features but their user interfaces are very different. I encourage you to try each of them out. If you wish to find most extensible software, MLCAD seems to be rather old and stable platform to build upon.

I myself use pen &amp; paper for concepts and ideas and LEGO Digital Designer for designing.