skip to main content
10.1145/3532512.3535221acmotherconferencesArticle/Chapter ViewAbstractPublication PagesprogrammingConference Proceedingsconference-collections
research-article

Calling Cards: Concrete Visual End-User Programming

Published: 08 December 2022 Publication History

Abstract

Creating a program that performs even a simple task and shows the result is unapproachable to most people, and even trained programmers face a burden to create a new program. In this paper, we introduce a prototype system and model for live visual dataflow programming where intermediate steps are visible and all components are tangible and manifest. Our system aims to allow a user to dive in and immediately have a working program that can be incrementally extended.

References

[1]
Apple Inc. 2022. The flow of content in Shortcuts on iPhone and iPad. https://support.apple.com/en-nz/guide/shortcuts/apd33c8d5c6d/ios.
[2]
Francisco J. Ballesteros and Sergio Arevalo. 1999. The box: a replacement for files. In Proceedings of the Seventh Workshop on Hot Topics in Operating Systems. 24–29. https://doi.org/10.1109/HOTOS.1999.798373
[3]
Wolmet Barendregt and Mathilde M. Bekker. 2011. Children May Expect Drag-and-drop Instead of Point-and-click. In CHI ’11 Extended Abstracts on Human Factors in Computing Systems (Vancouver, BC, Canada) (CHI EA ’11). ACM, New York, NY, USA, 1297–1302. https://doi.org/10.1145/1979742.1979764
[4]
Glen Chiacchieri. 2018. Flowsheets v2. https://github.com/Glench/Flowsheets-v2.
[5]
Bryan W. C. Chung. 2013. Multimedia Programming with Pure Data. Packt Publishing.
[6]
Tom Van Cutsem and Mark S. Miller. 2013. Trustworthy Proxies - Virtualizing Objects with Invariants. In ECOOP 2013 - Object-Oriented Programming - 27th European Conference, Montpellier, France, July 1-5, 2013. Proceedings(Lecture Notes in Computer Science, Vol. 7920), Giuseppe Castagna (Ed.). Springer, 154–178. https://doi.org/10.1007/978-3-642-39038-8_7
[7]
Martin Erwig and Bertrand Meyer. 1995. Heterogeneous visual languages-integrating visual and textual programming. In Proceedings of Symposium on Visual Languages. IEEE, 318–325. https://doi.org/10.1109/VL.1995.520825
[8]
Monica Figuera. 2017. ZenSheet Studio: A Spreadsheet-inspired Environment for Reactive Computing. In Proceedings Companion of the 2017 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for Humanity (Vancouver, BC, Canada) (SPLASH Companion 2017). ACM, New York, NY, USA, 33–35. https://doi.org/10.1145/3135932.3135949
[9]
Douglas J. Gillan, Kritina Holden, Susan Adam, Marianne Rudisill, and Laura Magee. 1990. How Does Fitts’ Law Fit Pointing and Dragging?. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (Seattle, Washington, USA) (CHI ’90). ACM, New York, NY, USA, 227–234. https://doi.org/10.1145/97243.97278
[10]
Michael Homer. 2010. Lively JavaScript. Honours report, Victoria University of Wellington.
[11]
Michael Homer, Timothy Jones, James Noble, Kim B. Bruce, and Andrew P. Black. 2014. Graceful Dialects. In ECOOP 2014 — Object-Oriented Programming, Richard Jones (Ed.). Lecture Notes in Computer Science, Vol. 8586. Springer Berlin Heidelberg, 131–156. https://doi.org/10.1007/978-3-662-44202-9_6
[12]
Michael Homer and James Noble. 2014. Combining Tiled and Textual Views of Code. In IEEE Working Conference on Software Visualisation. https://doi.org/10.1109/VISSOFT.2014.11
[13]
Michael Homer and James Noble. 2017. Lessons in Combining Block-Based and Textual Programming. Journal of Visual Languages and Sentient Systems Volume 3 (2017). https://doi.org/10.18293/VLSS2017-007
[14]
Dan Ingalls, Scott Wallace, Yu-Ying Chow, Frank Ludolph, and Ken Doyle. 1988. Fabrik: A Visual Programming Environment. SIGPLAN Not. 23, 11 (jan 1988), 176–190. https://doi.org/10.1145/62084.62100
[15]
Kori M. Inkpen. 2001. Drag-and-drop Versus Point-and-click Mouse Interaction Styles for Children. ACM Transactions on Computer-Human Interaction 8, 1 (March 2001), 1–33. https://doi.org/10.1145/371127.371146
[16]
Timothy Jones and Michael Homer. 2018. The Practice of a Compositional Functional Programming Language. In Asian Symposium on Programming Languages and Systems. https://doi.org/10.1007/978-3-030-02768-1_10
[17]
jq. 2018. jq is a lightweight and flexible command-line JSON processor. https://stedolan.github.io/jq/.
[18]
Szymon Kaliski, Adam Wiggins, and James Lindenbaum. 2019. End-user programming: Data pipelines. https://www.inkandswitch.com/end-user-programming/#data-pipelines.
[19]
Andrew J. Ko, Robin Abraham, Laura Beckwith, Alan Blackwell, Margaret Burnett, Martin Erwig, Chris Scaffidi, Joseph Lawrance, Henry Lieberman, Brad Myers, Mary Beth Rosson, Gregg Rothermel, Mary Shaw, and Susan Wiedenbeck. 2011. The State of the Art in End-user Software Engineering. ACM Comput. Surv. 43, 3, Article 21 (April 2011), 44 pages. https://doi.org/10.1145/1922649.1922658
[20]
Jens Lincke and Robert Hirschfeld. 2013. User-Evolvable Tools in the Web. In Proceedings of the 9th International Symposium on Open Collaboration (Hong Kong, China) (WikiSym ’13). Association for Computing Machinery, New York, NY, USA, Article 19, 8 pages. https://doi.org/10.1145/2491055.2491074
[21]
Deacon McIntyre and Michael Homer. 2020. Poster: A Visual Programming Language for Cellular Automata. In IEEE Symposium on Visual Languages and Human-Centric Computing. https://doi.org/10.1109/VL/HCC50065.2020.9127283
[22]
Tommi Mikkonen, Antero Taivalsaari, and Mikko Terho. 2009. Lively for Qt: A Platform for Mobile Web Applications. In Proceedings of the 6th ACM Mobility Conference. https://doi.org/10.1145/1710035.1710059
[23]
Hisham Muhammad, Lucas C. Villa Real, and Michael Homer. 2019. Taxonomy of Package Management in Programming Languages and Operating Systems. In Workshop on Programming Languages and Operating Systems. https://doi.org/10.1145/3365137.3365402
[24]
Hisham H. Muhammad. 2019. Userland. http://www.userland.org/.
[25]
James Noble and Robert Biddle. 2002. Program Visualisation for Visual Programs. In Proceedings of the Third Australasian Conference on User Interfaces - Volume 7 (Melbourne, Victoria, Australia) (AUIC ’02). Australian Computer Society, 29–38.
[26]
Mark Noone and Aidan Mooney. 2018. Visual and Textual Programming Languages: A Systematic Review of the Literature. Journal of Computers in Education 5, 2 (2018), 149–174. https://doi.org/10.1007/s40692-018-0101-5
[27]
Advait Sarkar, Andy Gordon, Simon Peyton Jones, and Neil Toronto. 2018. Calculation View: multiple-representation editing in spreadsheets. In IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC). IEEE, 85–93. https://doi.org/10.1109/VLHCC.2018.8506584
[28]
Ben Selwyn-Smith, Craig Anslow, Michael Homer, and James R. Wallace. 2019. Co-located Collaborative Block-Based Programming. In IEEE Symposium on Visual Languages and Human-Centric Computing. https://doi.org/10.1109/VLHCC.2019.8818895
[29]
Paul Shen. 2021. natto - write JavaScript on a 2D canvas. https://natto.dev/.
[30]
Marcel Taeumel, Michael Perscheid, Bastian Steinert, Jens Lincke, and Robert Hirschfeld. 2014. Interleaving of Modification and Use in Data-driven Tool Development. In Proceedings of the 2014 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Portland, Oregon, USA) (Onward! 2014). ACM, New York, NY, USA, 185–200. https://doi.org/10.1145/2661136.2661150
[31]
Antero Taivalsaari and Tommi Mikkonen. 2010. Simplifying Interactive Programming with Keywords "that’ and "those’. In 2010 36th EUROMICRO Conference on Software Engineering and Advanced Applications. 393–397. https://doi.org/10.1109/SEAA.2010.16
[32]
Antero Taivalsaari, Tommi Mikkonen, Dan Ingalls, and Krzysztof Palacz. 2008. Web Browser as an Application Platform: The Lively Kernel Experience. Technical Report 2008-175. Sun Microsystems Laboratories.
[33]
The MathWorks, Inc. 2022. Simulink. https://www.mathworks.com/products/simulink.html.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
Programming '22: Companion Proceedings of the 6th International Conference on the Art, Science, and Engineering of Programming
March 2022
98 pages
ISBN:9781450396561
DOI:10.1145/3532512
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 the author(s) 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].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 December 2022

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. dataflow programming
  2. end-user programming
  3. exploratory programming
  4. visual programming

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

<Programming> '22 Companion

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)9
  • Downloads (Last 6 weeks)2
Reflects downloads up to 06 Nov 2024

Other Metrics

Citations

Cited By

View all

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media