ABSTRACT
Creating and publishing read-write-compute web applications requires programming skills beyond what most end users possess. But many end users know how to make spreadsheets that act as simple information management applications, some even with computation. We present a system for creating basic web applications using such spreadsheets in place of a server and using HTML to describe the client UI. Authors connect the two by placing spreadsheet references inside HTML attributes. Data computation is provided by spreadsheet formulas. The result is a reactive read-write-compute web page without a single line of Javascript code. Nearly all of the fifteen HTML novices we studied were able to connect HTML to spreadsheets using our method with minimal instruction. We draw conclusions from their experience and discuss future extensions to this programming model.
- Firebase. https://www.firebase.com, 2014.Google Scholar
- Greasemonkey. http://greasemonkey.mozdev.org, 2014.Google Scholar
- Meteor. https://www.meteor.com, 2014.Google Scholar
- Yahoo! pipes. http://pipes.yahoo.com, 2014.Google Scholar
- Benson, E., and Karger, D. R. Cascading Treesheets and Recombinant HTML: Better Encapsulation and Retargeting of Web Content. In WWW '13 (2013). Google ScholarDigital Library
- Benson, E., and Karger, D. R. End-Users Publishing Structured Information on the Web: An Observational Study of What, Why, and How. In CHI (2014). Google ScholarDigital Library
- Benson, E., Marcus, A., Karger, D., and Madden, S. Sync kit: a persistent client-side database caching toolkit for data intensive websites.Google Scholar
- Bolin, M., Webber, M., Rha, P., Wilson, T., and Miller, R. C. Automation and customization of rendered web pages. In UIST '05 (2005). Google ScholarDigital Library
- Fisher, D., Drucker, S. M., Fernandez, R., and Ruble, S. Visualizations everywhere: A multiplatform infrastructure for linked visualizations. In IEEE Trans Vis and Comp Graphics (2010).Google Scholar
- Force, C. S. T. A. T. Csta k-12 computer science standards. ACM (2011).Google Scholar
- Gulwani, S., Harris, W. R., and Singh, R. Spreadsheet data manipulation using examples. Commun. ACM 55, 8 (Aug. 2012). Google ScholarDigital Library
- Hartmann, B., Wu, L., Collins, K., and Klemmer, S. R. Programming by a sample: Rapidly creating web applications with d.mix. In UIST '07 (2007). Google ScholarDigital Library
- Huynh, D. F., Karger, D. R., and Miller, R. C. Exhibit: Lightweight structured data publishing. In WWW '07 (2007). Google ScholarDigital Library
- Jagadish, H. V., Chapman, A., Elkiss, A., Jayapandian, M., Li, Y., Nandi, A., and Yu, C. Making database systems usable. In SIGMOD '07 (2007). Google ScholarDigital Library
- Ko, A. J., and Myers, B. A. Human factors affecting dependability in end-user programming. SIGSOFT Softw. Eng. Notes 30, 4 (May 2005). Google ScholarDigital Library
- Ko, A. J., Myers, B. A., and Aung, H. H. Six learning barriers in end-user programming systems. In VLHCC '04 (2004). Google ScholarDigital Library
- Kowalczykowski, K., Ong, K. W., Zhao, K. K., Deutsch, A., Papakonstantinou, Y., and Petropoulos, M. Do-it-yourself custom forms-driven workflow applications. In CIDR '09 (2009).Google Scholar
- Lin, J., Wong, J., Nichols, J., Cypher, A., and Lau, T. A. End-user programming of mashups with vegemite. In IUI '09 (2009). Google ScholarDigital Library
- Little, G., Lau, T. A., Cypher, A., Lin, J., Haber, E. M., and Kandogan, E. Koala: Capture, share, automate, personalize business processes on the web. In CHI '07 (2007). Google ScholarDigital Library
- Myers, B., Park, S. Y., Nakano, Y., and Mueller, G. How designers design and program interactive behaviors. In VLHCC '08 (2008). Google ScholarDigital Library
- Rode, J., Bhardwaj, Y., Perez-Quinones, M. A., Rosson, M. B., and Howarth, J. As easy as click: End-user web engineering. In Web Engineering. Springer, 2005, 478--488. Google ScholarDigital Library
- Rode, J., Rosson, M., and Perez-Quinones, M. The challenges of web engineering and requirements for better tool support. In Virginia Tech Computer Science Tech Report TR-05-01 (2005).Google Scholar
- Rosson, M. B., Ballin, J., and Rode, J. Who, what, and how: a survey of informal and professional web developers. In VLHCC '05 (2005). Google ScholarDigital Library
- Scaffidi, C., Myers, B., and Shaw, M. Topes: Reusable abstractions for validating data. In ICSE '08 (2008). Google ScholarDigital Library
- Scaffidi, C., Shaw, M., and Myers, B. Estimating the numbers of end users and end user programmers. In VLHCC '05 (2005). Google ScholarDigital Library
- Valderas, P., Pelechano, V., and Pastor, O. Towards an end-user development approach for web engineering methods. In Advanced Information Systems Engineering, vol. 4001. 2006. Google ScholarDigital Library
- Voida, A., Harmon, E., and Al-Ani, B. Homebrew databases: Complexities of everyday information management in nonprofit organizations. In CHI '11 (2011). Google ScholarDigital Library
- Wong, J., and Hong, J. I. Making mashups with marmite: Towards end-user programming for the web. In CHI '07 (2007). Google ScholarDigital Library
Index Terms
- Spreadsheet driven web applications
Recommendations
Wildcard: spreadsheet-driven customization of web applications
Programming '20: Companion Proceedings of the 4th International Conference on Art, Science, and Engineering of ProgrammingMany Web applications do not meet the precise needs of their users. Browser extensions offer a way to customize web applications, but most people do not have the programming skills to implement their own extensions.
In this paper, we present ...
Creating interactive web data applications with spreadsheets
UIST '14: Proceedings of the 27th annual ACM symposium on User interface software and technologyWhile more and more data are available through web services, it remains difficult for end-users to create web applications that make use of these data without having to write complex code. We present Gneiss, a live programming environment that extends ...
Mavo: Creating Interactive Data-Driven Web Applications by Authoring HTML
UIST '16: Proceedings of the 29th Annual Symposium on User Interface Software and TechnologyMany people can author static web pages with HTML and CSS but find it hard or impossible to program persistent, interactive web applications. We show that for a broad class of CRUD (Create, Read, Update, Delete) applications, this gap can be bridged. ...
Comments