Conversation

Maybe Notion documents is not a good benchmark and maybe markdown is not the ideal “elemental material” or perhaps it is. Figma is interesting as its file format is a list of key-value maps. The app then gives special meaning to certain keys and values.
2
23
Aside: interestingly this is the data format underlying almost everything in Spotify; an ordered dictionary. Keys and values are just byte strings. Hierarchy and meaning applied computationally. (3-way diff-merge was less hard to implement this way. Etc etc.)
2
10
Didn’t Dropbox have an API like this for a while which you could use to build real-time syncing apps? I remember it being distinct from the files API and closer to firebase/meteor.
1
3
It seems like the issue is most (all?) OS platforms have a programming model that is designed around the “file” as data store. It’s the assumed base unit for persistence and portability. The file concept is used everywhere: unix pipes, virtual file systems, /proc, etc.
1
4
So if you want a new base data model (say, a transactional data store which supports multiple actors) you essentially need to start from scratch. Plus traditional UI programming techniques like MVC no longer make sense. A few decades of app architecture pedagogy out the window.
2
5
Most promising is the rise of declarative UI frameworks combined with a one-way data flow model (React/SwiftUI plus some version of flux) but I have no idea how this would become fully cross-platform desktop native. We probably need a new platform/OS not based around files…
3
6
I think one approach here is to forget desktop and bet on the Web. 1) everything moving to web anyway, 2) no existing cross-app persistence strategy (eg, filesystem) to replace, 3) devs are already used to writing apps backed by a transactional DB rather than a filesystem
5
6