August 10, 2006
This quote is spot on: “Millions for compilers but hardly a penny for understanding human programming language use. Now, programming languages are obviously symmetrical, the computer on one side, the programmer on the other. In an appropriate science of computer languages, one would expect that half the effort would be on the computer side, understanding how to translate the languages into executable form, and half on the human side, understanding how to design languages that are easy or productive to use…. The human and computer parts of programming languages have developed in radical asymmetry.” [Newell, A. and S. K. Card (1985). “The Prospects for Psychological Science in Human-Computer Interaction.” Human-Computer Interaction. 1(3): 209-242].
Programming language researchers have never studied the human side of programming languages. What concepts are easier for typical IT programmers to understand? What syntactic and semantic tools allow programmers to clearly express their ideas? Why do people hate parentheses in Lisp so much? There are a few really bad papers out there, but nothing of any real substance. Nevertheless, PL researchers insist on inventing new languages every other day. A complete waste of time, IMO.