“code written in succinct languages with well-designed API’s and DSL’s will trump a diagram-driven approach.”
I’m not so sure. Given the current state of our art, I’m inclined to agree. But I’m not satisfied with that state. It’s so hard to understand most programs that we say that they are written in code. I don’t believe that the way we write software today is sustainable. As we progress to higher levels of abstraction, we will find different means of expressing our intent. Those means may be textual or they may be diagrammatic, but what they must do is to remove the boundaries – between roles, between the domain expert and the implementer, between the user and the programmer – that make software development the difficult art we know.