2010 · 42 citations · 21 references
ComputingComputer ScienceComputer SystemsCreative Problem SolvingDesign TheoryHuman-computer InteractionComputer-supported Cooperative WorkEnd-user ProgrammingIdea GenerationSoftware DesignUser-centered DesignBehavioral Data AnalysisEnd UsersEnd-user Mashup CreationReflection In Practice
Programming has recently become more common among ordinary end users of computer systems. We believe that these end-user programmers are not just coders but also designers, in that they interlace making design decisions with coding rather than treating them as two separate phases. To better understand and provide support for the programming and design needs of end users, we propose a design theory-based approach to look at end-user programming. Toward this end, we conducted a think-aloud study with ten end users creating a web mashup. By analyzing users' verbal and behavioral data using Schon's reflection-in-action design model and the notion of ideations from creativity literature, we discovered insights into end-user programmers' problem-solving attempts, successes, and obstacles, with accompanying implications for the design of end-user programming environments for mashups. The contribution of our work is three-fold: 1) the methodology of using a design lens to view programming, 2) evidence, through insights gained, of the usefulness of this approach, and 3) the implications themselves.
21
Self-efficacy: Toward a unifying theory of behavioral change.
Albert Bandura · Psychological Review · 1977 · 35.5K citations
Six Learning Barriers in End-User Programming Systems
Amy J. Ko, Brad A. Myers, Htet Htet Aung · 2004 · 547 citations · Full text
Computing, Computer Science, Design +16