Today I was explaining what the problem with all programming languages today is, that they have all failed, because they are not intented to make results (except Prolog maybe), but rather to aid the programmer to tell the computer what to do. This is a fundamental mistake, since computers should serve humans, including programmers. So the base for a better programming language is to focus on what the programmer wants as result, and let the computer optimize and decide what method is best to implement it.
This brought me to the next step, that a programming language must indeed only be a medium to listen what the programmer wants, and the programmer doesn't need to know how to do it, as long the computer works within the limits given by the programmer. My initial idea was to have a "English Programming Language", but then I discussed this idea with a friend who was a fan of graphical programming using flowcharts.
It was obvious that a spoken text based and graphical based approach are both good at some things, but neither is better than the other in all situations. I realized that both are actually parts of some bigger picture, and I realized also that spoken english (like all spoken languages) is only a failure of communication skills, since using a symbol language all people would understand eachother, including the computers. Then I started to draw the bigger picture and came up with this: