The potential for machine learning systems to improve via a mutually beneficial exchange of information with users has yet to be explored in much detail. Previously, we found that users were willing to provide a generous amount of rich feedback to machine learning systems, and that the types of some...
Although machine learning is becoming commonly used in today's software, there has been little research into how end users might interact with machine learning systems, beyond communicating simple "right/wrong" judgments. If the users themselves could somehow work hand-in-hand with machine learning systems, the accuracy of learning systems could be improved...
If basic assumptions about how knowledge workers conceptualize and use work units are wrong, then any solutions resting on those assumptions are unlikely to be successful since, instead of decreasing costs, they will lead to increasing them. This paper reports on how knowledge workers understand, use and switch between units...
Although spreadsheets can be argued to be the most widely-used end-user programming languages today, they are very limited compared to other programming languages, supporting only a few built-in types and offering only primitive support for code reuse. The inheritance mechanisms of object-oriented programming might seem to offer help for the...
Although spreadsheets can be argued to be the most widely-used visual programming languages (VPLs) today, most are very limited compared to other VPLs, supporting only p few built-in types and offering only primitive support for code reuse. The inheritance mechanisms of object-oriented programming might seem to offer help for the...
How might capabilities for algorithm animation be seamlessly integrated into a programming language that is both visual and declarative? Until now, visual programming language researchers have not attempted to answer that question, making the fruits of algorithm animation available only to users of textual progranming languages. Users of visual programming...
This paper focuses on mining the strategies of problem solving software users by observing their actions. Our application domain is an HCI study aimed at discovering general strategies employed by software users and understanding how such strategies relate to gender and success. We cast this problem as a sequential pattern...
End users create software when they use spreadsheet systems, web authoring tools and graphical languages, and when they create educational simulations, macros-by-demonstration, and dynamic e-business web applications and mash-ups. Some end-user developers, such as accountants or teachers, may have no formal training at all in programming. Others, such as scientists...
There has been little research into how end-user programming environments can provide explanations that could fill a critical information gap for end-user debuggers - help with debugging strategy. To address this need, we designed and prototyped a video-based approach for explaining debugging strategy, and accompanied it with a text-only approach....
Spreadsheet languages, which include commercial spreadsheets and various research systems, have proven to be flexible tools in many settings. Research shows, however, that spreadsheets often contain faults. This thesis presents an integrated testing and fault localization methodology for spreadsheets. This methodology allows spreadsheet developers to engage in modeless development, testing...
Despite years of research into human computer interaction (HCI), the environments programmers must use for problem-solving today—with separate modes and tools for writing, compiling, testing, visualizing, and debugging— derive their basic structure from historical accident, and take little advantage of HCI research into the cognitive issues of programming. Neglecting these...
Forms/3 is a declarative visual programming language that aims to provide general purpose programming language capabilities in a simple, form-based approach. This report provides an example-driven introduction to programming in Forms/3.
Although there have been a number of studies of
end-user software development tasks, few of them have
considered gender issues for real end-user developers
in real-world environments for end-user programming.
In order to be trusted, the results of such laboratory
studies must always be re-evaluated with fewer controls,
more closely...
ExcelForms is a front end Excel-based application that supports Forms/3, a research
language based on the spreadsheet paradigm, end-user software engineering features.
The old implementation of ExcelForms performed poorly, and was considered
unstable, not robust, and not scalable enough for our users' needs. This project
addresses these issues by implementing...
Although researchers have begun to explicitly support end-user programmers' debugging by providing information to help them find bugs, there is little research addressing the right content to communicate to these users. The specific semantic content of these debugging communications matters because, if the users are not actually seeking the information...
"Code coverage visualizations using block coverage neither guided developers
toward productive testing strategies, nor did these visualizations motivate
developers to write more tests or help them find more faults than the control
group. Nevertheless, code coverage visualizations did influence developers in a
few important ways. Code coverage visualizations led developers...
Knowledge workers need to find information but even when it is stored on their local computer systems, finding it can be costly. There are many researchers working on solutions to reduce these costs, but there has been little research into exactly what these costs are, and what the ties are...
This paper presents qualitative results from interviews with knowledge workers about their recovery strategies after interruptions. Special focus is given to when these strategies fail due to the nature of the interruption and existing computer support. Potential solutions offered by participants to overcome some of these problems are presented. These...
Although gender differences in a technological world are receiving significant research attention, much of the research and practice has aimed at how society and education can impact the successes and retention of female computer science professionals—but the possibility of gender issues within software has received almost no attention. If gender...
End users develop more software than any other group of programmers, using software authoring devices such as e-mail filtering editors, by-demonstration macro builders, and spreadsheet environments. Despite this, there has been only a little research on finding ways to help these programmers with the dependability of the software they create....
A human-centric issue that has not been considered in
the design of end-user programming environments is
whether gender differences exist that are important to the
design of these environments. Ignoring this issue would
miss the opportunity of enhancing the effectiveness of
end-user programmers by incorporating appropriate
mechanisms to support gender-associated...
End users develop more software than any other group of programmers, using software authoring devices such as email filtering editors, by-demonstration macro builders, and spreadsheet environments. Despite this, there has been only a little research on finding ways to help these programmers with the dependability of the software they create....
End-user programmers are writing an unprecedented number of programs, primarily using languages and environments that incorporate a number of interactive and visual programming techniques. To help these users debug these programs, we have developed an entirely visual, interactive approach to fault localization. This paper presents the approach. We also present...
How can rigorous forms of testing be supported in a way that is both compatible with the visual aspect of visual programming languages, and usable by the audiences using those languages -- even when the audience has no background in software engineering? Visual programs are likely to contain at least...
This paper reports on an empirical study involving end users that addresses the question of whether it is possible to provide the benefits of formal testing within the informal spreadsheet paradigm. We have developed a "What You See Is What You Test" (WYSIWYT) methodology that brings the benefits of formal...