skip to main content
10.1145/2723742.2723750acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisecConference Proceedingsconference-collections
research-article

Simplifying Web Programming

Published: 18 February 2015 Publication History

Abstract

Modern web programming is plagued by a jungle of heterogeneous programming frameworks and lacks adequate abstractions for end-to-end rapid, structured, design and development. We studied the current problems faced by developers using an online survey, and found that integrating client-side interactivity with the back-end is a major source of inefficiency. Based on the reported issues, we developed a new programming environment, called WebNat, to reduce the burden of client-server programming. WebNat makes it easy to specify bindings of client-side views with server-side data and provides multiple abstractions that enable succinct specifications for interactive web applications. We conducted a user study to understand its usefulness and barriers to adoption. Our participants were able to learn and use WebNat in less than 2 hours showing minimal learning curve. We also discovered that although novices embrace the system readily, experience developers are more cautious about adopting a new web programming framework.

References

[1]
http://www.smashingmagazine.com/2011/06/22/following-a-web-design-process/.
[2]
Angularjs - superheroic javascript mvw framework. http://www.angularjs.com/.
[3]
Backbone.js. http://backbonejs.org/.
[4]
Handlebars.js: Minimal templating on steroids. http://handlebarsjs.com/.
[5]
Ifml: The interaction flow modeling language. http://www.ifml.org/.
[6]
A javascript library for building user interfaces. http://facebook.github.io/react/.
[7]
jquery: The write less, do more, javascript library. http://jquery.com.
[8]
Meteor. http://www.meteor.com/.
[9]
Mongodb. http://mongodb.org/.
[10]
Node packaged modules. https://www.npmjs.org/.
[11]
node.js. http://nodejs.org/.
[12]
S. Ahmad and S. Kamvar. The dog programming language. UIST '13, pages 463--472, 2013.
[13]
S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S. Comai, and M. Matera. Designing Data-Intensive Web Applications. Morgan Kaufmann Publishers Inc., 2003.
[14]
E. Cooper, S. Lindley, P. Wadler, and J. Yallop. Links: Web programming without tiers. FMCO'06.
[15]
E. Czaplicki and S. Chong. Asynchronous functional reactive programming for guis. SIGPLAN Not., 48(6):411--422, June 2013.
[16]
C. Elliott and P. Hudak. Functional reactive animation. In ICFP, 1997.
[17]
R. T. Fielding. REST: Architectural Styles and the Design of Network-based Software Architectures. Doctoral dissertation, Univ. of California, Irvine, 2000.
[18]
F. Frăsincar, G.-J. Houben, and P. Barna. Hypermedia presentation generation in hera. IS, 35(1), 2010.
[19]
M. Funk and M. Rauterberg. Pulp scription: a dsl for mobile html5 game applications. ICEC'12, 2012.
[20]
J. G. García, J. M. González-Calleros, J. Vanderdonckt, and J. M. Arteaga. A theoretical survey of user interface description languages: Preliminary results. In Proc. LA-WEB/CLIHC, 2009.
[21]
J. J. Garrett. Ajax: A new approach to web applications. http://www.adaptivepath.com/ideas/ajax-new-approach-web-applications/.
[22]
Z. Hemel and E. Visser. Declaratively programming the mobile web with mobl. SIGPLAN Not., 46(10):695--712, Oct. 2011.
[23]
N. Koch, A. Knapp, G. Zhang, and H. Baumeister. UML-Based Web Engineering - An Approach Based on Standards. In Web Engineering. 2008.
[24]
C. H. Lewis. Using the "thinking aloud" method in cognitive interface design. rc 9265, ibm, 1982.
[25]
L. A. Meyerovich, A. Guha, J. Baskin, G. H. Cooper, M. Greenberg, A. Bromfield, and S. Krishnamurthi. Flapjax: A programming language for ajax applications. OOPSLA '09.
[26]
B. A. Myers, S. E. Hudson, and R. F. Pausch. Past, present, and future of user interface software tools. TOCHI, 7(1), 2000.
[27]
M. W. Newman and J. A. Landay. Sitemaps, storyboards, and specifications: a sketch of web site design practice. DIS, pages 263--274, 2000.
[28]
J. Nichols and B. A. Myers. Creating a lightweight user interface description language: An overview and analysis of the personal universal controller project. TOCHI, 16(4), 2009.
[29]
J. Nielsen and R. Molich. Heuristic evaluation of user interfaces. CHI '90, pages 249--256, 1990.
[30]
F. Paternò, C. Santoro, and L. Spano. Maria: A universal, declarative, multiple abstraction-level language for service-oriented applications in ubiquitous environments. TOCHI, 16(4), 2009.
[31]
B. C. Pierce. Types and programming languages. MIT Press, Cambridge, MA, USA, 2002.
[32]
T. Reenskaug. Thing-model-view-editor. Tech. report, Institutt for informatikk, University of Oslo, 1979.
[33]
J. Rode, M. B. Rosson, and M. A. P. Qui. End user development of web applications. In End User Development, pages 161--182. Springer, 2006.
[34]
N. Sinha, R. Karim, and M. Gupta. Simplifying web programming. Technical Report RI14009, IBM, 2014.
[35]
N. Tillmann, M. Moskal, J. de Halleux, M. Fähndrich, and S. Burckhardt. Touchdevelop: app development on mobile devices. In SIGSOFT FSE, 2012.
[36]
J. Wright. A Modelling Language for Interactive Web Applications. PhD thesis, Massey Univ., NZ, 2011.

Cited By

View all
  • (2023)Leveraging Large Language Models for End-User Website GenerationEnd-User Development10.1007/978-3-031-34433-6_4(52-61)Online publication date: 30-May-2023
  • (2016)Modern Web Page Generation by Using Exclusively SuperSQLProceedings of the 20th International Database Engineering & Applications Symposium10.1145/2938503.2938527(340-345)Online publication date: 11-Jul-2016

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ISEC '15: Proceedings of the 8th India Software Engineering Conference
February 2015
207 pages
ISBN:9781450334327
DOI:10.1145/2723742
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

In-Cooperation

  • iSOFT: iSOFT
  • ACM India: ACM India

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 18 February 2015

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

ISEC '15
ISEC '15: 8th India Software Engineering Conference
February 18 - 20, 2015
Bangalore, India

Acceptance Rates

Overall Acceptance Rate 76 of 315 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Leveraging Large Language Models for End-User Website GenerationEnd-User Development10.1007/978-3-031-34433-6_4(52-61)Online publication date: 30-May-2023
  • (2016)Modern Web Page Generation by Using Exclusively SuperSQLProceedings of the 20th International Database Engineering & Applications Symposium10.1145/2938503.2938527(340-345)Online publication date: 11-Jul-2016

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media