3 ms·
I think the GUI application paradigm completely broke the unix way. You used to be able to pipe programs into eachother. This means that if you used programs en
by traverseda 11y ago
I think the GUI application paradigm completely broke the unix way. You used to be able to pipe programs into eachother. This means that if you used programs enough you'd eventually pick up programming skills.
I'd like to make modern GUI stuff work a bit more like that. I'm imagining a state synchronized pseudo filesystem. Instead of storing files, it stores hierarchical C data types. A folder, with an array of vertexes and faces, inside another folder that contains textures and metadata. They're not folders, just nodes, but hopefully you get the idea.
You can use your image editor to edit those textures, and the changes would show up in real time in your 3D scene editor. Small applications that do one thing well, because the "file types"(data structures) are standardized enough.
Programs subscribe to changes in a file, sometimes over a network, using a state synchronization protocol. Think rethinkDB, but optimized for very fast read/write, not querying data. If you wanted to query the data like that, you'd have a daemon watch the folder, and index the data. The point is to focus on speed above all else, so you can watch real movies or stream real content in it, and then build your indexing a layer above that.
Of course there are a whole lot of problems with that approach, and it's well beyond me. But I'd hire some C tutors, and the guys who make btrfs, and see what could happen.
In my heart of hearts, I know this is probably just because I want to live in a world with a real metaverse, and I think this will get us one step closer to the kind of collaboration you'd need to get real work done in a virtual environment. But I still think it's a pretty good approach.
I do find there's an advantage to hanging out and working with people in a real space, and I'd like to break that down a bit more.
See:
#Problems in unix design, the art of unix programming, Eric S Raymond
http://www.catb.org/esr/writings/taoup/html/ch20s03.html http://www.catb.org/esr/writings/taoup/html/ch20s03.html
>#A Unix File Is Just a Big Bag of Bytes
>A Unix file is just a big bag of bytes, with no other attributes. In particular, there is no capability to store information about the file type or a pointer to an associated application program outside the file's actual data.
>#File Systems Might Be Considered Harmful
>Was having a file system at all the wrong thing? Since the late 1970s there has been an intriguing history of research into persistent object stores and operating systems that don't have a shared global file system at all, but rather treat disk storage as a huge swap area and do everything through virtualized object pointers.
#The Verse 2 Protocol
http://verse.github.io/ http://verse.github.io/