Yet the widely recognized most effective way to crystallize the idea, is not via therapy but through rounds of prototyping. Now only if prototyping is as easy as snap a finger.<p>Coding automation too will help to make better software.<p>What programmers have done is to translate human ideas into machine understandable symbols, or graphic layout. Not he latter is probably far more difficult than the former which itself can be as hard as NLP and essentially the goal of the almost entire computer language evolution, to improve the effectiveness of translations human ideas to computer understandable symbols.