RCS—a system for version control
Software—Practice & Experience
A selective undo mechanism for graphical user interfaces based on command objects
ACM Transactions on Computer-Human Interaction (TOCHI)
The reuse of uses in Smalltalk programming
ACM Transactions on Computer-Human Interaction (TOCHI)
PadPrints: graphical multiscale Web histories
Proceedings of the 11th annual ACM symposium on User interface software and technology
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
A temporal model for multi-level undo and redo
UIST '00 Proceedings of the 13th annual ACM symposium on User interface software and technology
A technique for isolating differences between files
Communications of the ACM
Using thumbnails to search the Web
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Where do web sites come from?: capturing and interacting with design history
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Integrating back, history and bookmarks in web browsers
CHI '01 Extended Abstracts on Human Factors in Computing Systems
Active Programming Strategies in Reuse
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Visualizing Histories for Selective Undo and Redo
APCHI '98 Proceedings of the Third Asian Pacific Computer and Human Interaction
Differences between versions of UML diagrams
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
Designing the whyline: a debugging interface for asking questions about program behavior
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Six Learning Barriers in End-User Programming Systems
VLHCC '04 Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing
Estimating the Numbers of End Users and End User Programmers
VLHCC '05 Proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing
A generic approach to supporting diagram differencing and merging for collaborative design
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
Integrating automated test generation into the WYSIWYT spreadsheet testing methodology
ACM Transactions on Software Engineering and Methodology (TOSEM)
What can history tell us?: towards different models of interaction with document histories
Proceedings of the nineteenth ACM conference on Hypertext and hypermedia
Graphical Histories for Visualization: Supporting Analysis, Communication, and Evaluation
IEEE Transactions on Visualization and Computer Graphics
Improving End-User Programming with Situational Mashups in Web 2.0 Environment
SOSE '08 Proceedings of the 2008 IEEE International Symposium on Service-Oriented System Engineering
Males' and Females' Script Debugging Strategies
IS-EUD '09 Proceedings of the 2nd International Symposium on End-User Development
What's in a mashup? And why? Studying the perceptions of web-active end users
VLHCC '08 Proceedings of the 2008 IEEE Symposium on Visual Languages and Human-Centric Computing
Conversations in developer communities: a preliminary analysis of the yahoo! pipes community
Proceedings of the fourth international conference on Communities and technologies
Visual Comparison of Graphical Models
ICECCS '09 Proceedings of the 2009 14th IEEE International Conference on Engineering of Complex Computer Systems
Changing how people view changes on the web
Proceedings of the 22nd annual ACM symposium on User interface software and technology
Playing with information: How end users think about and integrate dynamic data
VLHCC '09 Proceedings of the 2009 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC)
d.note: revising user interfaces through change tracking, annotations, and alternatives
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
End-user mashup programming: through the design lens
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
What would other programmers do: suggesting solutions to error messages
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
A longitudinal study of how highlighting web content change affects people's web interactions
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
No Code Required: Giving Users Tools to Transform the Web
No Code Required: Giving Users Tools to Transform the Web
A Debugging Perspective on End-User Mashup Programming
VLHCC '10 Proceedings of the 2010 IEEE Symposium on Visual Languages and Human-Centric Computing
The state of the art in end-user software engineering
ACM Computing Surveys (CSUR)
Refactoring pipe-like mashups for end-user programmers
Proceedings of the 33rd International Conference on Software Engineering
Versioning for mashups: an exploratory study
IS-EUD'11 Proceedings of the Third international conference on End-user development
End-User Programmers and their Communities: An Artifact-based Analysis
ESEM '11 Proceedings of the 2011 International Symposium on Empirical Software Engineering and Measurement
Debugging From the Student Perspective
IEEE Transactions on Education
Hi-index | 0.00 |
End users with little formal programming background are creating software in many different forms, including spreadsheets, web macros, and web mashups. Web mashups are particularly popular because they are relatively easy to create, and because many programming environments that support their creation are available. These programming environments, however, provide no support for tracking versions or provenance of mashups. We believe that versioning support can help end users create, understand, and debug mashups. To investigate this belief, we have added versioning support to a popular wire-oriented mashup environment, Yahoo! Pipes. Our enhanced environment, which we call “Pipes Plumber,” automatically retains versions of pipes and provides an interface with which pipe programmers can browse histories of pipes and retrieve specific versions. We have conducted two studies of this environment: an exploratory study and a larger controlled experiment. Our results provide evidence that versioning helps pipe programmers create and debug mashups. Subsequent qualitative results provide further insights into the barriers faced by pipe programmers, the support for reuse provided by our approach, and the support for debugging provided.