Gneiss: spreadsheet programming using structured web service data
Web services offer a more reliable and efficient way to access online data than scraping web pages. However, interacting with web services to retrieve data often requires people to write a lot of code. Moreover, many web services return data in complex hierarchical structures that make it difficult...
Saved in:
Published in | Journal of visual languages and computing Vol. 39; pp. 41 - 50 |
---|---|
Main Authors | , |
Format | Journal Article |
Language | English |
Published |
Elsevier Ltd
01.04.2017
|
Subjects | |
Online Access | Get full text |
ISSN | 1045-926X 1095-8533 |
DOI | 10.1016/j.jvlc.2016.07.004 |
Cover
Loading…
Summary: | Web services offer a more reliable and efficient way to access online data than scraping web pages. However, interacting with web services to retrieve data often requires people to write a lot of code. Moreover, many web services return data in complex hierarchical structures that make it difficult for people to perform any further data manipulation. We developed Gneiss, a tool that extends the familiar spreadsheet metaphor to support using structured web service data. Gneiss lets users retrieve or stream arbitrary JSON data returned from web services to a spreadsheet using interaction techniques without writing any code. It introduces a novel visualization that represents hierarchies in data using nested spreadsheet cells and allows users to easily reshape and regroup the extracted structured data. Data flow is two-way between the spreadsheet and the web services, enabling people to easily make a new web service call and retrieve new data by modifying spreadsheet cells. We report results form a user study that showed that Gneiss helped spreadsheet users use and analyze structured data more efficiently than Excel and even outperform professional programmers writing code. We further use a set of examples to demonstrate our tool's ability to create reusable data extraction and manipulation programs that work with complex web service data.
•A spreadsheet tool for using structured web service data.•Constructing two-way data flow between web services and spreadsheets without writing code.•A new design to view and use hierarchical data in spreadsheets.•An architecture that interacts with web services dynamically using spreadsheet data. |
---|---|
ISSN: | 1045-926X 1095-8533 |
DOI: | 10.1016/j.jvlc.2016.07.004 |