End-User Programming Should be Task-Oriented

  • this the most important point in A Small Matter of Programming by Bonnie Nardi
  • the hypothesis is that the "problem with programming" is not the programming itself, but the languages in which end-users program - these should be high-level and application-specific
    • a spreadsheet user doesn't have to think about iteration and accumulation, because there's =SUM
    • users shouldn't have to think about ring buffers, when they want to make an audio looper
    • users shouldn't have to think about unwinding RGB pixel strips, when they want to make a visual effect

it is only when people have a particular interest in something, such as knitting or baseball, or producing budgets or designing printers, or simulating the behavior of clown fish or honeybees, that they readily learn the formal languages and notations that describe the elements and relations of the system of interest

A Small Matter of Programming - Bonnie Nardi