How end-user programmers forage in online repositories? An information foraging perspective

Abstract End-user (non-professional) programmers often opportunistically create programs, they evaluate various alternatives and reuse existing code by merging components from it or modifying it to suit the context or problems of their programs. Finding and evaluating which program variants to reuse code from is challenging because the searching mechanisms within online repositories are not optimal. To understand the reuse behavior of end-user programmers and to provide implications on how to further support them, we conducted an empirical study in which eight end-user programmers foraged in online repositories, specifically App Inventor Gallery and File Exchange. Using Information Foraging Theory, we qualitatively analyzed the end-user programmers’ behavior and focused on not only program variants from a single source, but also on similar variants from various sources developed over time and by different authors. This analysis revealed new cue types and strategies specific to novice and experienced end-user programmers as they foraged between- and within-variants.

[1]  André van der Hoek,et al.  CodeExchange: Supporting Reformulation of Internet-Scale Code Queries in Context (T) , 2015, 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[2]  Ann Abraham Information Seeking from Web-Based Resources: Sensemaking Strategies and Implications for Interaction Design , 2013 .

[3]  Gregg Rothermel,et al.  How end-user programmers debug visual web-based programs: An information foraging theory perspective , 2019, J. Comput. Lang..

[4]  P. Jaccard,et al.  Etude comparative de la distribution florale dans une portion des Alpes et des Jura , 1901 .

[5]  Stuart K. Card,et al.  Information foraging in information access environments , 1995, CHI '95.

[6]  Nicholas J. Belkin,et al.  Query length in interactive information retrieval , 2003, SIGIR.

[7]  Wai-Tat Fu,et al.  SNIF-ACT: A Cognitive Model of User Navigation on the World Wide Web , 2007, Hum. Comput. Interact..

[8]  Gregg Rothermel,et al.  What happened to my application? Helping end users comprehend evolution through variation management , 2018, Inf. Softw. Technol..

[9]  Ranjitha Kumar,et al.  Bricolage: example-based retargeting for web design , 2011, CHI.

[10]  Pia Borlund,et al.  Experimental components for the evaluation of interactive information retrieval systems , 2000, J. Documentation.

[11]  John M. Carroll,et al.  Principles and Heuristics for Designing Minimalist Instruction , 1998 .

[12]  Peter Pirolli,et al.  Computational models of information scent-following in a very large browsable text collection , 1997, CHI.

[13]  Sean Follmer,et al.  d.note: revising user interfaces through change tracking, annotations, and alternatives , 2010, CHI.

[14]  Kathryn T. Stolee,et al.  Discovering how end-user programmers and their communities use public repositories: A study on Yahoo! Pipes , 2013, Inf. Softw. Technol..

[15]  Rachel K. E. Bellamy,et al.  Reactive information foraging: an empirical investigation of theory-based recommender systems for programmers , 2012, CHI.

[16]  Wai-Tat Fu,et al.  SNIF-ACT: A Model of Information Foraging on the World Wide Web , 2003, User Modeling.

[17]  Rachel K. E. Bellamy,et al.  Using information scent to model the dynamic foraging behavior of programmers in maintenance tasks , 2008, CHI.

[18]  Mary Beth Rosson,et al.  The reuse of uses in Smalltalk programming , 1996, TCHI.

[19]  Margaret M. Burnett,et al.  PFIS-V: Modeling Foraging Behavior in the Presence of Variants , 2017, CHI.

[20]  Mark S. Ackerman,et al.  The perfect search engine is not enough: a study of orienteering behavior in directed search , 2004, CHI.

[21]  Elizabeth D. Mynatt,et al.  Variation in element and action: supporting simultaneous development of alternative solutions , 2004, CHI.

[22]  Rachel K. E. Bellamy,et al.  Reactive information foraging for evolving goals , 2010, CHI.

[23]  B. Dervin,et al.  Sense-Making Methodology Reader: Selected Writings of Brenda Dervin , 2003 .

[24]  Gregg Rothermel,et al.  Debugging support for end user mashup programming , 2013, CHI.

[25]  Bongshin Lee,et al.  Which version is this?: improving the desktop experience within a copy-aware computing ecosystem , 2011, CHI.

[26]  Peter Pirolli,et al.  Rational Analyses of Information Foraging on the Web , 2005, Cogn. Sci..

[27]  Geylani Kardas,et al.  DSML4DT: A domain-specific modeling language for device tree software , 2020, Comput. Ind..

[28]  Margaret M. Burnett,et al.  A practical guide to controlled experiments of software engineering tools with human participants , 2013, Empirical Software Engineering.

[29]  Peter Johnson,et al.  Human computer interaction: Psychology, task analysis, and software engineering , 1992 .

[30]  P. Pirolli Information Foraging Theory: Adaptive Interaction with Information , 2007 .

[31]  Margaret M. Burnett,et al.  Foraging Among an Overabundance of Similar Variants , 2016, CHI.

[32]  Janice Singer,et al.  Guide to Advanced Empirical Software Engineering , 2007 .

[33]  Rachel K. E. Bellamy,et al.  An Information Foraging Theory Perspective on Tools for Debugging, Refactoring, and Reuse Tasks , 2013, TSEM.

[34]  Robert J. Walker,et al.  Systematizing pragmatic software reuse , 2012, TSEM.

[35]  Philip J. Guo,et al.  Writing Code to Prototype, Ideate, and Discover , 2009, IEEE Software.

[36]  Kathryn T. Stolee,et al.  Toward semantic search via SMT solver , 2012, SIGSOFT FSE.

[37]  John M. Carroll Minimalism beyond the Nurnberg funnel , 1998 .

[38]  Sandeep Kaur Kuttal Leveraging variation management to enhance end users' programming experience , 2014 .

[39]  Gregg Rothermel,et al.  On the benefits of providing versioning support for end users: An empirical study , 2014, TCHI.

[40]  Elizabeth D. Mynatt,et al.  Side views: persistent, on-demand previews for open-ended tasks , 2002, UIST '02.

[41]  Konstantina Martzoukou,et al.  A review of Web information seeking research: considerations of method and foci of interest , 2005, Inf. Res..