It amazes me that something as simple and obvious as cut and paste had to be invented. Even more amazing that we can actually point to the person that did it.
Indeed! I'm writing an app that resizes and moves shapes on a canvas (among other things) and I'm amazed at how many trivial little things I had to write that everyone including me would take for granted, including copying and pasting, drawing the little handles to resize the shape, changing the cursor based on what's below it (the handles or the shapes), drawing a translucent version of the shape when it's being moved/resized, changing the position of the shape when it is resized from _some_ of the handles but not all (top left vs. bottom right)...
My experience is that undo/redo isn't something you tack on at the end of the project, it has to be baked into the infrastructure. Every action you take has to be delegated to an object that has all the information it needs to both do the action and undo it. Then you can just keep a stack of those objects and call them as necessary.
Fortunately I'm using iced which is an implementation of The Elm Architecture so undo/redo is just a matter of keeping track of which messages were sent and reversing them as needed.
The alternative, as used e.g. by the Xerox Star, was select-and-copy/move. The advantage over cut-and-paste is that you don't have invisible fragile state.
However, the Star implementation had copy and move modes (select source, COPY, mouse to destination, CLICK) and Tesler hated modes. I don't know why Star didn't use the modeless version (select source, mouse to destination, COPY).
I love that piano like chorded keyboard (https://en.wikipedia.org/wiki/Chorded_keyboard#/media/File:X...) from the alto. I think it's still and interesting UI concept but I think it should/could be adapted to a foot pedal design, chords would be constrained to 2 inputs though unless maybe two of the inuputs were directly side by side then you could expand to three. Organists know what's up ;)
To be able to do copy (edit) paste (edit) paste you need independent storage of what’s copied. Move requires new UI sate where cut is just Copy (Edit:Delete). With Undo cut is safe enough and there’s likely something more critical to work on than a Move UI.
Also, I’ve seen some terrible move UI. It may seem cool to have a big floating blob of text follow the curser but that doesn’t work well when you want to move multiple pages or across multiple pages.
If you want to replace by pasting, you'd lose the first selection by selecting what you want to have replaced. Which means you'd need different selection modes depending on whether you are selecting the source or the target of the copy/move. Furthermore, mainting the original (source) selection while preparing the insertion point (target) of the copy/move is also fraught with some fragility.
> If you want to replace by pasting, you'd lose the first selection by selecting what you want to have replaced.
Yes, that's the tradeoff; you'd have to delete that separately. This would be quite close the X11 primary selection and middle-click paste. I think that works reasonably well on its own, but trying to provide both models as X11 does is a mess.
I use cut and paste pretty often. Besides giving visual feedback that the operation actually worked, it also makes it easy to move things around, including between files.
Which I found flabbergasting at the time, because it had been a standard feature on PDAs ten years prior. I only bought an iPhone once it gained cut&paste support.
Cut and paste is a sort of obvious miss, but in general, I think Smartphones benefitted from not taking for granted the features of PDAs. There was always something deeply niche about the things.
I think in general we are losing a lot of functionality especially since the phone UIs are slowly creeping into the desktop. Discoverability and consistency are simply horrible compared to how things worked around 2000. I think it's a huge regression.
I can't wait until somebody dusts off the design principles of Windows 95/2000 or Mac System 7 and will sell this as the new UX paradigm.
> I think in general we are losing a lot of functionality especially since the phone UIs are slowly creeping into the desktop. Discoverability and consistency are simply horrible compared to how things worked around 2000. I think it's a huge regression.
Indeed. Remember when every icon had a tooltip that told you what it would do? Remember when it shipped with a book that also told you what each thing did?
I recently used an app that was a unified phone/pc interface and I was pretty sure that somewhere in a list of icons was a thing I wanted, but wasn't sure which. I picked the wrong one and then had to figure out howto undo what I had just done.
Who needs to waste time with manuals when you can just Google what you want to do and watch a teenager deliver a three-minute monologue with 15 seconds of actual (but incorrect) content?
There are more misses. For example I found it surprising that they didn’t include a universal “context menu” equivalent (long press would have been obvious) and a universal menu bar equivalent (like Palm OS did). Stuff like this is why we still have an awfully complex and inconsistent UI landscape on mobile.
I think I lightly disagree. Phones are just not good for complex use-cases. I don’t want a context menu on my phone, the depth of interactions in a browser for example should be… slide the webpage this way, slide it that way, poke a link (or, I guess, to be leave room for what I’m doing now, poke a text box to write in it). Dumbing down the UI was a good idea.
We do have all sorts of inconsistent “context menus” now on mobile. Sometimes after you select something, sometimes as items under the share button, sometime when you actually long press, sometimes a menu appears when you tap an item, sometimes as action items that appear when you slide an item to a side. And even for a single of those variations, different variants with different looks exist, etc. A uniform way to “show me all actions I can perform on this item” would be greatly beneficial.
Actually, this conversation has made me realize I only do this sort of “give me more options” interaction in Safari (long press) and Panic Prompt (double tap). I think I hadn’t noticed the inconsistency because 2 is not very many, and also the Panic Prompt behavior is a sort of nice analogy to the typical Linux terminal behavior.
Still though, only two programs and the inconsistency is immediate, haha.
webOS, the poster child for simple and consistent UI, did all of this.
Much like the Amiga, this OS is always imitated, never copied, even though Android should have thrown out everything after Honeycomb to adopt what it brought to the table.
Yeah i think this was a UI issue more than a 'we don't think it's a needed feature' issue. Long press with that sticky popup was just something that hadn't come to yet... and certainly forcetouch tech didn't exist yet.
My dad grew up on a farm, and latter regretted not inventing the large round baler that most farmers use - he already knew about small round bales, so the only thing missing was make them larger and then haul them on a tractor instead of lifting by hand as you did the small bales. Despite saying the above for years it never occurred to him to invent the large square baler which the same concept (haul with a tractor), but stack better. Everything was known and so obvious in hindsight.
Often the obvious stuff was invented decades ago, but some old people in power persistently refuse to implement into major products. Like the ability to copy multiple things without overwriting the previous entry. Who would ever need that?!
>> something as simple and obvious as cut and paste had to be invented.
Which is was. A few hundred years ago. Cut-and-paste began as a manual process. Arranging material for printed often involved very literal cutting and pasting of text and images. Entire trades (typesetters) were dedicated to the task. A more accurate description of Tesler's contribution was that he was the first to implement the concept in the digital realm. The person who "invented" the delete key did not invent the concept of deleting a character.
I'm not so sure. The art of typesetting something like a newspaper page doesn't exist for most people. They see oldschool wooden printing press ... big gap ... then bubblejet printers. I know people who think newspapers were somehow silkscreened. The idea that someone in the mid-20th would glue bits of text to a page, which was then transformed into a metal printing plate, is a process most do not appreciate.
Yeah, in the early aughts I had to explain phototypesetting to some students, they just thought everyone used metal type or it's evolution, the typewriter, until the advent of the computer.
Demonstrably untrue, since humanity was made up of people who lived happily without those things and never even thought of them. Probably even laughed at them when they first appeared.