Conference Paper

Predicting Reuse of End-User Web Macro Scripts

DOI: 10.1109/VLHCC.2009.5295290 Conference: IEEE Symposium on Visual Languages and Human-Centric Computing, VL/HCC 2009, Corvallis, OR, USA, 20-24 September 2009, Proceedings
Source: DBLP


Repositories of code written by end-user program- mers are beginning to emerge, but when a piece of code is new or nobody has yet reused it, then current repositories provide users with no information about whether that code might be appropriate for reuse. Ad- dressing this problem requires predicting reusability based on information that exists when a script is created. To provide such a model for web macro scripts, we identified script traits that might plausibly predict reuse, then used IBM CoScripter repository logs to statistically test how well each corresponded to reuse. We then built a machine learning model that combines the useful traits and evaluated how well it can predict four different types of reuse that we saw in the repository logs. Our model was able to predict reuse from a surprisingly small set of traits. It is simple enough to be explained in only 6-11 rules, making it potentially viable for integration in repository search engines for end-user programmers.

Download full-text


Available from: Margaret M Burnett
  • Source
    • "Still other systems are designed to emulate strategies or heuristics that users themselves appear to employ when looking for reusable code, thereby simplifying the task of choosing which existing programs to run or reuse (e.g. Gross et al., 2010; Scaffidi et al., 2009). "
    [Show abstract] [Hide abstract]
    ABSTRACT: Although there have been many advances in end-user programming environments, recent empirical studies report that programming still remains difficult for end-users. We hypothesize that one reason may be lack of effective support for helping end-user programmers problem-solve their own way around barriers they encounter. Therefore, in this paper, we describe the Idea Garden, a concept designed to help end-user programmers generate new ideas and problem-solve when they run into barriers. The Idea Garden has its roots in Minimalist Learning Theory and problem-solving theories. Our proof-of-concept prototype of the Idea Garden concept in the CoScripter end-user programming environment currently targets three barriers reported in end-user programming literature. It does so using an integrated, just-in-time combination of scaffolding for problem-solving strategies, for design patterns and for programming concepts. Our empirical results showed that this approach helped end-user programmers overcome all three types of barriers that our prototype targeted.
    Full-text · Article · Jan 2014 · Interacting with Computers
  • Source
    • "Our second research question asks to what extent Scratch is succeeding as a basis for developing social skills related to programming . Scratch's designers write, " For Scratch to succeed, the language needs to be linked to a community where people can support, collaborate, and critique one another " [19]. As evidence that Scratch achieves this goal, at least two papers describe a collaboration between six children who work together to create an entire gallery of animations, each person contributing different skills aimed at implementing specific features such as sliding backgrounds [13][19]. "
    [Show abstract] [Hide abstract]
    ABSTRACT: Scratch is the latest iteration in a series of animation tools aimed at teaching programming skills. Scratch, in particular, aims not only to teach technical skills, but also skills related to collaboration and code reuse. In order to assess the strengths and weaknesses of Scratch relative to these goals, we have performed an empirical field study of Scratch animations and associated user comments from the online animation repository. Overall, we found that Scratch represents substantial progress toward its designers' goals, though we also identified several opportunities for significant improvement. In particular, many Scratch programs revealed significant technical mastery of the programming environment by programmers, and some animations even demonstrated design patterns. On the other hand, while the Scratch repository has successfully served as a supportive environment for generating constructive feedback among users, we did not find any occasions within our sample where this interaction led to online collaboration. In addition, we found low levels of code reuse, in terms of both frequency and success. Based on these results, we identify implications for improving the design of animation tools, for using these tools to teach programming skills, and for fostering successful collaboration and code reuse among end-user programmers.
    Preview · Conference Paper · Jan 2010
  • Source
    [Show abstract] [Hide abstract]
    ABSTRACT: While end-user programmers sometimes combine, learn from, or otherwise reuse existing code to quickly create new programs, not all code is equally reusable. Some code is reused by its creator or by others, but other code simply languishes on servers and never provides any help in the creation of subsequent programs. In this paper, we draw on numerous empirical studies of end-user and professional programmers to show that the reusability of code can be inferred on the basis of "low-ceremony" evidence. This evidence is information that is often informal, possibly un-reliable, but that can be quickly gathered, interpreted and synthesized without the investment of substantial effort or skill by code producers or consumers. In the studies consid-ered here, it includes information about code's mass appeal, flexibility, understandability, functional size, authorship, and prior reuses. We summarize a simple machine learning model that has successfully predicted reuse of web macros based on this low-ceremony evidence.
    Full-text · Article · Jan 2009
Show more