posted on 1998-01-01, 00:00authored byBrad A Myers
End-users must write programs to control many different kinds of applications. Examples
include multimedia authoring, controlling robots, defining manufacturing processes,
setting up simulations, programming agents, scripting, etc. The languages used today for
these tasks are usually difficult to learn and are based on professional programming
languages. This is in spite of years of research highlighting the problems with these
languages for novice programmers. The Natural Programming Project is developing
general principles, methods, and programming language designs that will significantly
reduce the amount of learning and effort needed to write programs for people who are not
professional programmers. These principles are based on a thorough analysis of previous
empirical studies of programmers, as well as new studies designed to discover the most
natural programming paradigms. Our proposed research is to extend these results, and
apply them to different domains. The result will be new programming languages and
environments that are demonstrably superior for users.