I just finished ch4 but meanwhile wanted to bring up a conundrum from ch3.
> It seems that the only way to know how specific a set of program constructs should be is to study the domain very carefully to ascertain how tasks are broken down and performed. A guiding principle is that users will want to be able to create their applications with only a few basic operations, as the experience of UNIX users (Greenberg and Witten, 1988), spreadsheet users (Nardi and Miller, 1990) and CAD users (Tee, 1992) shows.
1. You have to provide primitives that are high-level enough to correspond to concepts & tasks users have.
2. Users want to learn & use few primitives. Sometimes they are happier with lower level yet more composable primitives.
3. Striking a good balance requires interviewing users a lot - which requires not just programmer skills but sociology skills (how to interview, "activity theory", etc.)
š
⢠The book hopes for advances on the last point (3). So, has there been? Are there simple & proven interview techniques? "ask these questions and you'll design a good EUP system" āļø ?
⢠Frame challenge: are there ways for users themselves to design for their domain š¤?
⢠Challenge on few requirement (2): were there advances on giving users both composite & lower-level primitives so they can inspect the relation ("A flange, for example, can be created out of a cut and a protrusion") and pick for themselves - something users do anyway - without overwhelming them š¤ ?