I imagine the future of computer interaction could evolve into a split model combining foundational capabilities that just make sense to be pre-built, tested and shared deterministic code - codecs, numerical solvers, geometry kernels, databases and transactional tools, compilers, theorem provers, cryptography, etc. - with a fluid interaction layer that accesses either local or cloud-provided versions of those foundational capabilities and is capable of synthesising any tools it needs where it would be helpful to build it first - either as a one-off or something to cache - for anything that can’t just be done as a task.
Applications are compressed bundles of some assumptions about how something should work and be interacted with. So you wouldn’t need VLC, it’s a shell around a foundational codec layer. Instagram is just a view over data in the Instagram social network, and you could customise it as you see fit. Transmit is a lovely application but you can delegate that to a fluid task layer that can do one-off tasks or make something you can re-use.
Everything in the fat ‘middle layer’ of software that is connecting a user to something foundational through interface assumptions might disappear, unless it’s more useful for it to exist as a permanent tool. Things that a lot of people share or that are more complex, Blender for example.
I also imagine there’d be a lot more focus on making explicit things like canonical records or schema, contracts, provenance, versioning, access policies, some kind of fixed views. Things that your local fluid interface would rely on the structure for when it came to connecting to your bank and doing whatever you want with your finances.
Not all software as we think of it might disappear, but the things that are lightweight layers over something more stable could all be subsumed with tools synthesised on demand.
Perhaps from the overhead of the language interface coupled with the ease of the expansion of the amount of 'stuff' you potentially need to read and internalise?
Human language can be wonderfully descriptive or terribly verbose as a way of communicating ideas. Writing everything out and being forced to externalise it is its own cost, which pays off only when the space of work to then do collapses with as little feedback as possible (and, ideally, with correct outcomes).
On the other hand the ease with which you can simply get back more text to process means the upfront language heavy interface is now just returning back more information to pull back into your internal model.
Which, for me at least, feels tiring, and stressful when doing language-heavy exploratory tasks that don't collapse or resolve neatly and simply give you back more decisions.
"And in tonight's news, the worldwide CRM solution Salesforce had a global outage affecting one hundred percent of its customer base. We interviewed users of the service to find out the scope of the impact. Everyone agreed that they were impacted, but strangely, nobody could describe _in what way_ they were affected."
Unfortunately YouTube captures the full set of extremes and everything in between, so I don't think it's fair to label the entire thing a cesspit of stupidity.
For every MrBeast there's a 3Blue1Brown. For every recycled clip from a well-known TV series uploaded purely to drive ad revenue for a bot-controlled channel there's a fine art restoration video showing a very niche process with a real, skilled human behind it.
Applications are compressed bundles of some assumptions about how something should work and be interacted with. So you wouldn’t need VLC, it’s a shell around a foundational codec layer. Instagram is just a view over data in the Instagram social network, and you could customise it as you see fit. Transmit is a lovely application but you can delegate that to a fluid task layer that can do one-off tasks or make something you can re-use.
Everything in the fat ‘middle layer’ of software that is connecting a user to something foundational through interface assumptions might disappear, unless it’s more useful for it to exist as a permanent tool. Things that a lot of people share or that are more complex, Blender for example.
I also imagine there’d be a lot more focus on making explicit things like canonical records or schema, contracts, provenance, versioning, access policies, some kind of fixed views. Things that your local fluid interface would rely on the structure for when it came to connecting to your bank and doing whatever you want with your finances.
Not all software as we think of it might disappear, but the things that are lightweight layers over something more stable could all be subsumed with tools synthesised on demand.
Perhaps, at least.
reply