APIs & debugging

Paper session

会議の名前
CHI 2020
Enabling Data-Driven API Design with Community Usage Data: A Need-Finding Study
要旨

APIs are becoming the fundamental building block of modern software and their usability is crucial to programming efficiency and software quality. Yet API designers find it hard to gather and interpret user feedback on their APIs. To close the gap, we interviewed 23 API designers from 6 companies and 11 open-source projects to understand their practices and needs. The primary way of gathering user feedback is through bug reports and peer reviews, as formal usability testing is prohibitively expensive to conduct in practice. Participants expressed a strong desire to gather real-world use cases and understand users' mental models, but there was a lack of tool support for such needs. In particular, participants were curious about where users got stuck, their workarounds, common mistakes, and unanticipated corner cases. We highlight several opportunities to address those unmet needs, including developing new mechanisms that systematically elicit users' mental models, building mining frameworks that identify recurring patterns beyond shallow statistics about API usage, and exploring alternative design choices made in similar libraries.

キーワード
API Design
Community
Information Needs
Tool Support
著者
Tianyi Zhang
Harvard University, Cambridge, MA, USA
Björn Hartmann
University of California, Berkeley, Berkeley, CA, USA
Miryung Kim
University of California, Los Angeles, Los Angeles, CA, USA
Elena L. Glassman
Harvard University, Cambridge, MA, USA
DOI

10.1145/3313831.3376382

論文URL

https://doi.org/10.1145/3313831.3376382

ScrAPIr: Making Web Data APIs Accessible to End Users
要旨

Users have long struggled to extract and repurpose data from websites by laboriously copying or scraping content from web pages. An alternative is to write scripts that pull data through APIs. This provides a cleaner way to access data than scraping; however, APIs are effortful for programmers and nigh-impossible for non-programmers to use. In this work, we empower users to access APIs without programming. We evolve a schema for declaratively specifying how to interact with a data API. We then develop ScrAPIr: a standard query GUI that enables users to fetch data through any API for which a specification exists, and a second GUI that lets users author and share the specification for a given API. From a lab evaluation, we find that even non-programmers can access APIs using ScrAPIr, while programmers can access APIs 3.8 times faster on average using ScrAPIr than using programming.

キーワード
Web APIs
API Description Language
Web Scraping
著者
Tarfah Alrashed
Massachusetts Institute of Technology, Cambridge, MA, USA
Jumana Almahmoud
Massachusetts Institute of Technology, Cambridge, MA, USA
Amy X. Zhang
Massachusetts Institute of Technology, Cambridge, MA, USA
David R. Karger
Massachusetts Institute of Technology, Cambridge, MA, USA
DOI

10.1145/3313831.3376691

論文URL

https://doi.org/10.1145/3313831.3376691

Debugging Database Queries: A Survey of Tools, Techniques, and Users
要旨

Database management systems (or DBMSs) have been around for decades, and yet are still difficult to use, particularly when trying to identify and fix errors in user programs (or queries). We seek to understand what methods have been proposed to help people debug database queries, and whether these techniques have ultimately been adopted by DBMSs (and users). We conducted an interdisciplinary review of 112 papers and tools from the database, visualisation and HCI communities. To better understand whether academic and industry approaches are meeting the needs of users, we interviewed 20 database users (and some designers), and found surprising results. In particular, there seems to be a wide gulf between users' debugging strategies and the functionality implemented in existing DBMSs, as well as proposed in the literature. In response, we propose new design guidelines to help system designers to build features that more closely match users debugging strategies.

キーワード
Debugging Databases
Literature Review
Empirical Study
Survey
Visualization
著者
Sneha Gathani
University of Maryland, College Park, College Park, MD, USA
Peter Lim
University of Maryland, College Park, College Park, MD, USA
Leilani Battle
University of Maryland, College Park, College Park, MD, USA
DOI

10.1145/3313831.3376485

論文URL

https://doi.org/10.1145/3313831.3376485

MicroMentor: Peer-to-Peer Software Help Sessions in Three Minutes or Less
要旨

While synchronous one-on-one help for software learning is rich and valuable, it can be difficult to find and connect with someone who can provide assistance. Through a formative user study, we explore the idea of fixed-duration, one-on-one help sessions and find that 3 minutes is often enough time for novice users to explain their problem and receive meaningful help from an expert. To facilitate this type of interaction, we developed MicroMentor, an on-demand help system that connects users via video chat for 3-minute help sessions. MicroMentor automatically attaches relevant supplementary materials and uses contextual information, such as command history and expertise, to encourage the most qualified users to accept incoming requests. These help sessions are recorded and archived, building a bank of knowledge that can further help a broader audience. Through a user study, we find MicroMentor to be useful and successful in connecting users for short teaching moments.

キーワード
software learning
quick help
one-on-one help
mentoring
著者
Nikhita Joshi
Autodesk Research & University of Waterloo, Waterloo, ON, Canada
Justin Matejka
Autodesk Research, Toronto, ON, Canada
Fraser Anderson
Autodesk Research, Toronto, ON, Canada
Tovi Grossman
Autodesk Research & University of Toronto, Toronto, ON, Canada
George Fitzmaurice
Autodesk Research, Toronto, ON, Canada
DOI

10.1145/3313831.3376230

論文URL

https://doi.org/10.1145/3313831.3376230

動画