“…The Natural Programming project [1] at Carnegie Mellon University (CMU) has repeatedly demonstrated that many of the these techniques can be adapted to improve the effectiveness of the tools and languages used by developers. For example, we have applied them to the user interfaces of integrated development environments (IDEs) [2,3], debuggers [4], programming languages [5], and APIs (application programming interfaces) [6][7][8][9][10]. Many HCI techniques are applicable, and we have used contextual inquiry, heuristic evaluation, cognitive walkthrough, ethnography, and controlled lab studies.…”