This is big and more people are working on one or another facet of this problem, so I'll keep it relatively high-level.
Imagine an infinite canvas that doesn't operate on images, text, media, but objects. An object could be static like a media file or a piece of text, but it could also be a small computer program, or a primitive dealing with transforming information.
Examples of objects:
- a note with a single word
- a picture
- an audio file
- a thing that arranges its content in a grid
- a thing that given text returns a summarised version of that text
- a thing that looks like a queue with an input and an output
- a thing, an NPC who walks around the board and adds questions to your notes
Steve Ruiz, the author of tldraw, said that infinite canvasses are a bit like 2D games where you move the camera. I think he hit the nail on the head here.
When I hear that metaphor what I think is RTS games:
- borrowing certain RTS UX primitives, e.g. selection, camera panning
- managing information amount and density (fog of war, LoD)
- NPCs (perhaps as Matt Webb's Dolphins)
Stephan Nago talks about turning ideas into objects and I imagine that this is at least partially where they'd like to go with the Obsidian canvas. I also like that they use files as the base primitive.
But, I also think that we can go one step farther and merge a canvas with a programming environment, without letting people know they're programming.
When it comes to computing, everyone focuses on Moore's Law, whether more interesting trends are: gradually increasing abstractions and shortening the distance between user intent and the result.
Inspirations:
- Mother of All Demos (of course)
- N8N
- Figma, Miro, Mural and all their cousins
- Obsidian
article-idea