Canvas for Programming

  • ideas from Canvas for Thinking could be applied to programming
    • laying out functions spatially
    • laying out (embodied data) spatially
      • or maybe a Data Layer that can be toggled on/off
    • mixing code, visual reference materials, and running instances in the same "space"
    • I explored some of these ideas in Protoboard
  • VPLs, understood as "nodes & edges", always (is that true?) provide some sort of infinite canvas to lay functions on, I'm curious if this combination is necessary - can the code still be text (or some other structural approach), while I can still "keep some functions here on the right of that other thing" - basically thinking spatially about my code
    • notable work in this direction is Dark (also featuring the "embodied data" idea):
      Dark Canvas
  • another idea would be to allow working with "vertical slices": CSV data, transformation code and data visualization output visible at once, instead of dealing with parsing code, then somewhere else with visualization code, etc.
  • another take on this prompt is to allow code to "execute" spatially - Neighbour Computing note is more about this
  • related to Canvas for Thinking, End-User Programming, Future Of Coding

Combination of the background grid, and a quick way to build DOM elements, allows for adding pieces of documentation, notes, and inspiration images inline on the board, creating a canvas for programming:

Szymon Kaliski © 2021