From a reply to an email query:
It's always difficult to know when code clarity/maintenance problems arise from the language vs. the people programming in it. The success of Java is partly due to getting rid of many of the difficult language aspects of C++, but I think it also "encourages" a stricter form of programming which helps less experienced programmers to write somewhat better code. At least in theory; I've seen horrible Java code written by master's and Ph.D. students. However, I'm not yet convinced that a more constraining language really helps when being used by less experienced programmers. In the end I think it's the team culture and the desire of the individual programmer towards self-improvement and clarity of expression that will make the difference.