skip to main content
10.1145/3313831.3376765acmconferencesArticle/Chapter ViewAbstractPublication PageschiConference Proceedingsconference-collections
research-article

Supporting Visual Artists in Programming through Direct Inspection and Control of Program Execution

Published:23 April 2020Publication History

ABSTRACT

Programming offers new opportunities for visual art creation, but understanding and manipulating the abstract representations that make programming powerful can pose challenges for artists who are accustomed to manual tools and concrete visual interaction. We hypothesize that we can reduce these barriers through programming environments that link state to visual artwork output. We created Demystified Dynamic Brushes (DDB), a tool that bidirectionally links code, numerical data, and artwork across the programming interface and the execution environment - i.e., the artist's in-progress artwork. DDB automatically records stylus input as artists draw, and stores a history of brush state and output in relation to the input. This structure enables artists to inspect current and past numerical input, state, and output and control program execution through the direct selection of visual geometric elements in the drawing canvas. An observational study suggests that artists engage in program inspection when they can visually access geometric state information on the drawing canvas in the process of manual drawing.

Skip Supplemental Material Section

Supplemental Material

paper636pv.mp4

mp4

7.1 MB

pn8508vf.mp4

mp4

80.8 MB

a636-li-presentation.mp4

mp4

98.6 MB

References

  1. Cycling '74. 2016. Max. (2016). http://cycling74.com/products/max.Google ScholarGoogle Scholar
  2. Michel Beaudouin-Lafon and Wendy E. Mackay. 2000. Reification, Polymorphism and Reuse: Three Principles for Designing Visual Interfaces. In Proceedings of the Working Conference on Advanced Visual Interfaces (AVI '00). ACM, NY, NY, USA, 102--109. DOI: http://dx.doi.org/10.1145/345513.345267Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. John Berger. 2008. Drawing. In Selected Essays of John Berger, Geoff Dyer (Ed.). Knopf Doubleday Publishing Group.Google ScholarGoogle Scholar
  4. Brian Burg, Richard Bailey, Amy J. Ko, and Michael D. Ernst. 2013. Interactive Record/Replay for Web Application Debugging. In Proceedings of the 26th Annual ACM Symposium on User Interface Software and Technology (UIST '13). ACM, NY, NY, USA, 473--484. DOI: http://dx.doi.org/10.1145/2501988.2502050Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Ellen Do and Mark D. Gross. 2007. Environments for Creativity: A Lab for Making Things. In Proceedings of the 6th ACM SIGCHI Conference on Creativity & Cognition (C&C '07). ACM.Google ScholarGoogle Scholar
  6. Max Documentation. 2019. Max Signal Probing. (2019). https://docs.cycling74.com/max7/vignettes/signal_probe.Google ScholarGoogle Scholar
  7. Benjamin Jotham Fry. 2004. Computational information design. Ph.D. Dissertation. Massachusetts Institute of Technology.Google ScholarGoogle Scholar
  8. David J. Gilmore. 1991. Models of debugging. Acta Psychologica 78, 1 (1991), 151--172. DOI: http://dx.doi.org/https://doi.org/10.1016/0001--6918(91)90009-OGoogle ScholarGoogle ScholarCross RefCross Ref
  9. M. D. Gross. 2009. Visual Languages and Visual Thinking: Sketch Based Interaction and Modeling. In Proceedings of the 6th Eurographics Symposium on Sketch-Based Interfaces and Modeling (SBIM '09). ACM, NY, NY, USA, 7--11. DOI: http://dx.doi.org/10.1145/1572741.1572743Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Björn Hartmann, Loren Yu, Abel Allison, Yeonsoo Yang, and Scott R. Klemmer. 2008. Design As Exploration: Creating Interface Alternatives Through Parallel Authoring and Runtime Tuning. In Proceedings of the 21st Annual ACM Symposium on User Interface Software and Technology (UIST '08). ACM, NY, NY, USA, 91--100. http://doi.acm.org/10.1145/1449715.1449732Google ScholarGoogle Scholar
  11. B. Harvey. 1991. Symbolic Programming vs. the A.P. Curriculum. The Computing Teacher 56 (February 1991), 27--29.Google ScholarGoogle Scholar
  12. Brian Hempel and Ravi Chugh. 2016. Semi-Automated SVG Programming via Direct Manipulation. In Proceedings of the 29th Annual Symposium on User Interface Software and Technology (UIST '16). ACM, NY, NY, USA, 379--390. DOI: http://dx.doi.org/10.1145/2984511.2984575Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Joshua Hibschman and Haoqi Zhang. 2016. Telescope: Fine-Tuned Discovery of Interactive Web UI Feature Implementation. In Proceedings of the 29th Annual Symposium on User Interface Software and Technology (UIST '16). ACM, NY, NY, USA, 233--245. DOI: http://dx.doi.org/10.1145/2984511.2984570Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Jane Hoffswell, Arvind Satyanarayan, and Jeffrey Heer. 2018. Augmenting Code with In Situ Visualizations to Aid Program Understanding. In Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems (CHI '18). ACM, NY, NY, USA, Article 532, 12 pages. DOI: http://dx.doi.org/10.1145/3173574.3174106Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Tim Ingold. 2010. The textility of making. Cambridge Journal of Economics 34 (01 2010), 91--102. DOI: http://dx.doi.org/10.1093/cje/bep042Google ScholarGoogle ScholarCross RefCross Ref
  16. Jennifer Jacobs, Joel Brandt, Radomír Mech, and Mitchel Resnick. 2018. Extending Manual Drawing Practices with Artist-Centric Programming Tools. In Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems (CHI '18). ACM, NY, NY, USA, Article 590, 13 pages. DOI: http://dx.doi.org/10.1145/3173574.3174164Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Jennifer Jacobs, Sumit Gogia, Radomír M?ch, and Joel R. Brandt. 2017. Supporting Expressive Procedural Art Creation Through Direct Manipulation. In Proceedings of the 2017 CHI Conference on Human Factors in Computing Systems (CHI '17). ACM, NY, NY, USA, 6330--6341. DOI: http://dx.doi.org/10.1145/3025453.3025927Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Scott R. Klemmer, Björn Hartmann, and Leila Takayama. 2006. How Bodies Matter: Five Themes for Interaction Design. In Proceedings of the 6th Conference on Designing Interactive Systems (DIS '06). ACM, NY, NY, USA, 140--149. DOI: http://dx.doi.org/10.1145/1142405.1142429Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Amy J. Ko and Brad A. Myers. 2008. Debugging Reinvented: Asking and Answering Why and Why Not Questions About Program Behavior. In Proceedings of the 30th International Conference on Software Engineering (ICSE '08). ACM, NY, NY, USA, 301--310. DOI: http://dx.doi.org/10.1145/1368088.1368130Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Mode Lab. 2015. What is a Data Tree? In The Grasshopper Primer (3rd ed.). https://modelab.gitbooks.io/grasshopper-primer/ 1-foundations/1--5/2_what-is-a-data-tree.html.Google ScholarGoogle Scholar
  21. Tom Lieber, Joel R. Brandt, and Rob C. Miller. 2014. Addressing Misconceptions About Code with Always-on Programming Visualizations. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '14). ACM, NY, NY, USA, 2481--2490. DOI: http://dx.doi.org/10.1145/2556288.2557409Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Henry Lieberman. 1984. Steps Toward Better Debugging Tools for LISP. In Proceedings of the 1984 ACM Symposium on LISP and Functional Programming (LFP '84). ACM, NY, NY, USA, 247--255. DOI: http://dx.doi.org/10.1145/800055.802041Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Z. Lieberman, T. Watson, and A. Castro. 2015. openFrameworks. (2015). http://openframeworks.cc/about.Google ScholarGoogle Scholar
  24. Zhicheng Liu, John Thompson, Alan Wilson, Mira Dontcheva, James Delorey, Sam Grigg, Bernand Kerr, and John Stasko. 2018. Data Illustrator: Augmenting Vector Design Tools with Lazy Data Binding for Expressive Visualization Authoring. In To Appear. Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems (CHI '18). ACM, NY, NY, USA. DOI: http://dx.doi.org/10.1145/3173574.3173797Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Rune Madsen. 2019. Introduction. In Programming Design Systems. https://programmingdesignsystems.com/introduction.Google ScholarGoogle Scholar
  26. Michael Mateas. 2005. Procedural literacy: Educating the new media practitioner. On the Horizon 13 (06 2005), 101--111. DOI: http://dx.doi.org/10.1108/10748120510608133Google ScholarGoogle ScholarCross RefCross Ref
  27. Lauren McCarthy. 2016. P5.js. (2016). http://p5js.org/.Google ScholarGoogle Scholar
  28. M. McCullough. 1996. Abstracting Craft: The Practiced Digital Hand. The MIT Press, Cambridge, Massachusetts.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Matt Pearson. 2011. Generative Art. Manning Publications Co., Greenwich, CT, USA.Google ScholarGoogle Scholar
  30. Casey Reas. 2004. The Language of Computers. In Creative Code, John Maeda and Red Burns (Eds.). Thames & Hudson, London, United Kingdom, 44.Google ScholarGoogle Scholar
  31. C. Reas and B. Fry. 2004. Processing. (2004). http://processing.org.Google ScholarGoogle Scholar
  32. C. Reas and B. Fry. 2007. The Processing Handbook. MIT Press, Cambridge, Massachusetts, USA.Google ScholarGoogle Scholar
  33. C. Reas and B. Fry. 2019. Processing Environment. (2019). https://processing.org/reference/environment/.Google ScholarGoogle Scholar
  34. C. Reas, C. McWilliams, and LUST. 2010. Form and Code. Princeton Architectural Press, New York, NY, USA.Google ScholarGoogle Scholar
  35. M. Resnick and E.O. Rosenbaum. 2013. Designing for Tinkerability. In Design Make Play: Growing the Next Generation of STEM Innovators, M. Honey and D. Kanter (Eds.). Routledge.Google ScholarGoogle Scholar
  36. David Rutten. 2007. Grasshopper. http://www.grasshopper3d.com. (2007).Google ScholarGoogle Scholar
  37. Toby Schachman. 2012. Alternative Programming Interfaces for Alternative Programmers. In Proceedings of the ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Onward! 2012). ACM, NY, NY, USA, 1--10. DOI: http://dx.doi.org/10.1145/2384592.2384594Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Bret Victor. 2011. Dynamic Pictures. (2011). http://worrydream.com/DynamicPicturesMotivation.Google ScholarGoogle Scholar
  39. B. Victor. 2012. Learnable Programing: Designing a programming system for understanding programs. (2012). http://worrydream.com/LearnableProgramming/Google ScholarGoogle Scholar
  40. vvvv group. 2017. vvvv. (2017). https://vvvv.org/.Google ScholarGoogle Scholar
  41. Marius Watz. 2012. The Algorithm Thought Police. http://mariuswatz.com/mwatztumblrcom/ the-algorithm-thought-police.html/. (2012).Google ScholarGoogle Scholar
  42. Haijun Xia, Nathalie Henry Riche, Fanny Chevalier, De Araujo, and Daniel Widgor. 2018. DataInk: Direct and Creative Data-Oriented Drawing. In To Appear. Proceedings of the 2018 CHI Conference on Human Factors in Computing Systems (CHI '18). ACM, NY, NY, USA. DOI: http://dx.doi.org/10.1145/3173574.3173797Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Loutfouz Zaman, Wolfgang Stuerzlinger, Christian Neugebauer, Rob Woodbury, Maher Elkhaldi, Naghmi Shireen, and Michael Terry. 2015. GEM-NI: A System for Creating and Managing Alternatives In Generative Design. In Proceedings of the 33rd Annual ACM Conference on Human Factors in Computing Systems (CHI '15). ACM, NY, NY, USA, 1201--1210. DOI: http://dx.doi.org/10.1145/2702123.2702398Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Supporting Visual Artists in Programming through Direct Inspection and Control of Program Execution

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      CHI '20: Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems
      April 2020
      10688 pages
      ISBN:9781450367080
      DOI:10.1145/3313831

      Copyright © 2020 ACM

      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: 23 April 2020

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate6,199of26,314submissions,24%

      Upcoming Conference

      CHI '24
      CHI Conference on Human Factors in Computing Systems
      May 11 - 16, 2024
      Honolulu , HI , USA

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format .

    View HTML Format