A marvelous article.
I’m not sure if “lost medium” is quite the right term. For “lost medium”, I think of the photo-copied anarchist “zines” of my youth, papyrus scrolls or usenet net news.
Maybe “lost ontology” or “lost order of life”. Oddly, I feel like this is an order of life whose loss people are acutely aware of today, through the “where’s my flying refrain” and so-forth.
I agree. I thought this was going to be about magazines, books, vinyl, or maybe the telegraph. A realistic title might be more along the lines of “Effects of technology and UX metaphors on individuals and society.”
One thing I would say about our current version of the computing medium, is that we’ve converged near a bit of a local maximum, in terms of what and how we expect things to behave.
I do think that moving away from text-based programming could be a good idea, for example, but we’d need to make the replacement for it every bit as functional and more. There are a lot of common things that can be done to text, like Copy/Paste/Search/Replace that would need to analogues in a future changed medium for programming.
Would VR be the next big medium? It certainly requires a different set of rules and assumptions to design VR experiences.
Well, even Snow Crash made the conceit that for actually getting work done 2D terminals were superior to 3D spaces.
I’m unsure if the future will keep providing that sort of work, mind you, but I think that programming will probably always be better in textual form.
The backend of my company runs on mainframes using probably same text software from 1970’s. They have all kinds of modern stuff, too. Thing is, those simple, text interfaces are lightening fast on cheap hardware. They always work with mistakes automatically rolled back. Better yet, the limitations force people to focus on just what work they need to be doing. No browsers or minesweeper. ;)
Now, it wasn’t UX experts that made ours for sure: it’s got issues where I see better text or graphical interface would improve things. However, the good traits I mentioned are worth keeping in whatever medium we use. Hard for me to map it to an all graphical or even 3D environment given all the extra complexity that comes with that. Plus, the tools for rendering or analyzing such content are often more probabilistic whereas acting on a reasonable subset of text or UI fields can be done deterministically with verifiable, state machines. Gotta be careful not to shoot ourselves in the foot during current or next transitions.
[Comment removed by author]
I think there is a lot of potential there, but it’s going to take someone with a really solid understanding of UX to pull it off. I used to think it was the kind of thing that you’d want a video game developer to try, just because they were the only group of programmers that I knew about that could bend UI to their will outside of the common text-boxes over data. I believe it’s a wider range of programmers than that, now that I’ve seen more of the world.
I’ve often imagined using visual tools to manipulate parse trees, akin to a serious version of Blockly. Backwards compatibility is going to be another problem. I could see LISPs, Golang, and maybe C# being easier to adopt for this than c++ or ruby, just due to being easier to parse.
What, beyond the cool factor, is fundamentally better about some kind of visual programming compared to text based programming?
I think what works is not replacing text with graphics but enhancing it. I’ve seen some cool incremental steps in my Scala IDE: green undelines on implicit conversions, and mousing over things to see the type. As effect systems improve I think there’s a lot to be gained from having a visual representation of effects somehow overlaid on the program text. Look at e.g. the Frank programming language as discussed recently here, where effects are tracked completely by the system but don’t appear directly in the source code. That’s the sort of thing where graphics can be really helpful, letting you track more detail than you could reasonably read in text, but without usurping the textual representation.
I think it will be important medium, but not the next big thing. Augmented reality has a bigger potential, especially when combined with internet of things.