https://en.wikipedia.org/wiki/Pie_menu
>Pie menus are a self-revealing gestural interface: they display multiple options to a user and direct them to select one.
>Users operate the menu by observing the labels or icons present as options, moving the pointer in the desired direction, then clicking to make a selection. This action is called a "mark ahead" ("mouse ahead" in the case of a mouse, "wave ahead" in the case of a dataglove).
>Repetition of actions and memorization of the interface further simplify the user experience. Pie menus take advantage of the body's ability to remember muscle motion and direction, even when the mind has forgotten the corresponding symbolic labels.[1]
However Apple has never adopted pie menus, Steve Jobs thought they sucked, and Donald Norman has never been a big fan, and he totally missed the point when I tried to explain it to him at Ted Selker's NPUC workshop.
I had the honor of meeting Steve Jobs at EduCom on October 25 1988, when he released the NeXT machine. Sun had lent me a workstation to demonstrate NeWS software in their booth, right across from the NeXT booth, and Ben Shneideman brought him over for a demo of the stuff we'd developed at HCIL.
So I gave Jobs a whirlwind tour of pie menus, the NeWS window system, UniPress Emacs and HyperTIES for about half an hour. Jobs was jumping up and down, pointing at the screen, and yelling "That sucks! That sucks! Wow, that's neat! That sucks!"
When I explained to him how flexible NeWS was, he replied "I don't need flexibility -- I got my window system right the first time!" But I gave him a NeRD button, anyway (which I'd made for NeWS window system NeRDs, but he liked because it had a lowercase "e" like NeXT).
Years later I gave a talk about pie menus at Ted Selker's epic (and free!) NPUC (New Paradigms for Using Computers) workshop at IBM Almaden Research Lab in the early 90's, and after giving my talk, I watched Don Norman give his talk. He he started at the left end of the room and moved across to the right complaining about everything he saw from the tray of the chalk board to each cabinet to the microphone to the fluorescent lights to the wall socket.
At that point it just seemed like a contrarian schtick, reflexively taking trite cheap shots at everything. But I got in a zinger when he complained about how the pie menus in SimCity that I'd just shown were so horrible because they made it easy to build a city quickly without thinking about it.
He totally missed the point that pie menus were faster and more efficient than linear menus, and just bitched about how fast efficient menus in a game about city planning made it easy to quickly plan bad cities, as if that was what playing SimCity with pie menus taught you.
Without considering that millions of people waste millions of hours picking items from inefficient linear menus every day for all kinds of applications.
Don Hopkins and Donald Norman at IBM Almaden's "New Paradigms for Using Computers" workshop:
https://www.youtube.com/watch?v=5GCPQxJttf0
He never has a positive word or comment about anything, no constructive suggestions, just negative complaints. This is the video he was responding to by complaining about pie menus making SimCity too easy to play:
X11 SimCity Demo with Pie Menus and Mouse Ahead Gestures:
https://www.youtube.com/watch?v=Jvi98wVUmQA
Talks by Don Hopkins and Donald Norman at IBM Almaden's "New Paradigms for Using Computers" workshop. Organized and introduced by Ted Selker. Talks and demonstrations by Don Hopkins and Don Norman.
Norman: "And then when we saw SimCity, we saw how the pop-up menu that they were doing used pie menus, made it very easy to quickly select the various tools we needed to add to the streets and bulldoze out fires, and change the voting laws, etc. Somehow I thought this was a brilliant solution to the wrong problems. Yes it was much easier to now to plug in little segments of city or put wires in or bulldoze out the fires. But why were fires there in the first place? Along the way, we had a nuclear meltdown. He said "Oops! Nuclear meltdown!" and went merrily on his way."
Hopkins: "Linear menus caused the meltdown. But the round menus put the fires out."
Norman: "What caused the meltdown?"
Hopkins: "It was the linear menus."
Norman: "The linear menus?"
Hopkins: "The traditional pull down menus caused the meltdown."
Norman: "Don't you think a major cause of the meltdown was having a nuclear power plant in the middle of the city?"
(laughter)
Hopkins: "The good thing about the pie menus is that they make it really easy to build a city really fast without thinking about it."
(laughter)
Hopkins: "Don't laugh! I've been living in Northern Virginia!"
Norman: "Ok. Isn't the whole point of SimCity how you think? The whole point of SimCity is that you learn the various complexities of controlling a city."
(My joking but also serious point was that in SimCity "Meltdown" is on the linear "Disaster" menu. So linear menus cause meltdowns. But the pie menus has bulldozers and roads, that you can use to recover from meltdowns with.)
My talk was about pie menus, not about SimCity, which was only an example of pie menus.
But he disregarded the point of my talk and instead criticized the game design of SimCity instead.
Which I wholeheartedly agreed with (that pie menus make it really easy to build a city really fast without thinking about it, and you end up with something like Northern Virginia).
But that wasn't the fucking point of my talk, it was that pie menus can make any game or application more efficient, and that they're self revealing and easier to learn than invisible gestures.
I would have been much more interested to hear if he had any criticisms or comments on the actual pie menus, the audio feedback, the design of the menu layout and icons, the mouse ahead, popup menu display pre-emption, gestural interaction, muscle memory, and so many other things that he squandered the opportunity to discuss.
(That talk was a few years before I started working on The Sims and implemented pie menus in that game too. But maybe they would have been better if Don had taken the opportunity to criticize the pie menus in SimCity, instead of the game itself.)
And then we could have had the whole interesting discussion about what and how SimCity really does teach you, constructionist education, and so on. (See the HAR talk below.)
The Sims, Pie Menus, Edith Editing, and SimAntics Visual Programming Demo:
https://www.youtube.com/watch?v=-exdu4ETscs
OLPC SimCity Demo with Pie Menus:
https://www.youtube.com/watch?v=EpKhh10K-j0
Micropolis Online (SimCity) Web Demo with Pie Menus:
https://www.youtube.com/watch?v=8snnqQSI0GE
Multi Player SimCityNet for X11 on Linux with Pie Menus:
https://www.youtube.com/watch?v=_fVl4dGwUrA
Unity3D Pie Menus:
https://www.youtube.com/watch?v=sMN1LQ7qx9g
MediaGraph Music Navigation with Pie Menus Prototype developed for Will Wright's Stupid Fun Club:
https://www.youtube.com/watch?v=2KfeHNIXYUc
ActiveX Pie Menus for IE 5:
https://www.youtube.com/watch?v=nnC8x9x3Xag
JavaScript Pie Menus for IE 5:
https://www.youtube.com/watch?v=R5k4gJK-aWw
The NeWS Toolkit Tabbed Window Manager with Pie Menus:
https://www.youtube.com/watch?v=tMcmQk-q0k4 (blocked due to music -- alt download:)
https://donhopkins.com/home/movies/TabWindowDemo.mov
Just the Pie Menus from All the Widgets:
https://www.youtube.com/watch?v=mOLS9I_tdKE
Pie Menus: A 30 Year Retrospective, By Don Hopkins, Ground Up Software, May 15, 2018:
https://donhopkins.medium.com/pie-menus-936fed383ff1
>Useful Technique: Mouse Ahead Display Preemption
>The first step in learning a pie menu, using it in “novice” mode, is rehearsal for using it in “expert” mode. So if you remember that you want to move the mouse down, you can press and move the mouse, then you wait, and it pops up only after you stop moving.
>Pie menus should support an important technique called “Mouse Ahead Display Preemption”. Pie menus either lead, follow, or get out of the way. When you don’t know them, they lead you. When you are familiar with them, they follow. And when you’re really familiar with them, they get out of the way, you don’t see them. Unless you stop. And in which case, it then pops up the whole tree.
The Design and Implementation of Pie Menus They’re Fast, Easy, and Self-Revealing. By Don Hopkins. Originally published in Dr. Dobb’s Journal, Dec. 1991, cover article, user interface issue:
https://donhopkins.medium.com/the-design-and-implementation-...
>For the novice, pie menus are easy because they are a self-revealing gestural interface: They show what you can do and direct you how to do it. By clicking and popping up a pie menu, looking at the labels, moving the cursor in the desired direction, then clicking to make a selection, you learn the menu and practice the gesture to “mark ahead” (“mouse ahead” in the case of a mouse, “wave ahead” in the case of a dataglove). With a little practice, it becomes quite easy to mark ahead even through nested pie menus.
>For the expert, they’re efficient because — without even looking — you can move in any direction, and mark ahead so fast that the menu doesn’t even pop up. Only when used more slowly like a traditional menu, does a pie menu pop up on the screen, to reveal the available selections.
>Most importantly, novices soon become experts, because every time you select from a pie menu, you practice the motion to mark ahead, so you naturally learn to do it by feel! As Jaron Lanier of VPL Research has remarked, “The mind may forget, but the body remembers.” Pie menus take advantage of the body’s ability to remember muscle motion and direction, even when the mind has forgotten the corresponding symbolic labels.
Micropolis: Constructionist Educational Open Source SimCity:
https://donhopkins.medium.com/har-2009-lightning-talk-transc...
>We’ll go straight in, we’ll get rid of this. Oh, pie menus, right! If you click… (Dutch “Taartmenu” cursor pops up!) I’ve got to have a talk with my translator.
>You click, and you get a pie menu, which has items around the cursor in different directions. So if you click and go right, you get a road. And then you can do a little road. And if you click and go up and right, you get a bulldozer.
>And then there are submenus for zoning parks, and stuff like that. This gives you a nice quick gesture interface.
Gesture Space:
https://donhopkins.medium.com/gesture-space-842e3cdc7102
>Excerpt About Gesture Space
>I think it’s important to trigger pie menus on a mouse click (and control them by the instantaneous direction between clicks, but NOT the path taken, in order to allow re-selection and browsing), and to center them on the exact position of the mouse click. The user should have a crisp consistent mental model of how pie menus work (which is NOT the case for gesture recognition). Pie menus should completely cover all possible “gesture space” with well defined behavior (by basing the selection on the angle between clicks, and not the path taken). In contrast, gesture recognition does NOT cover all gesture space (because most gestures are syntax errors, and gestures should be far apart and distinct in gesture space to prevent errors), and they do not allow in-flight re-selection, and they are not “self revealing” like pie menus.
>Pie menus are more predictable, reliable, forgiving, simpler and easier to learn than gesture recognition, because it’s impossible to make a syntax error, always possible to recover from a mistaken direction before releasing the button, they “self reveal” their directions by popping up a window with labels, and they “train” you to mouse ahead by “rehearsal”.
[...]
>DonHopkins on March 19, 2018
>There have been various implementations of pie menus for Android [1] and iOS [2]. And of course there was the Momenta pen computer in 1991 [3], and I developed a Palm app called ConnectedTV [4] in 2001 with “Finger Pies” (cf Penny Lane ;). But Apple has lost their way when it comes to user interface design, and iOS isn’t open enough that a third party could add pie menus to the system the way they’ve done with Android. But you could still implement them in individual apps, just not system wide.
>Also see my comment above about the problem of non-transparent fingers.
>Swiping gestures are essentially like invisible pie menus, but actual pie menus have the advantage of being “Self Revealing” [5] because they have a way to prompt and show you what the possible gestures are, and give you feedback as you make the selection.
>They also provide the ability of “Reselection” [6], which means you as you’re making a gesture, you can change it in-flight, and browse around to any of the items, in case you need to correct a mistake or change your mind, or just want to preview the effect or see the description of each item as you browse around the menu.
>Compared to typical gesture recognition systems, like Palm’s graffiti for example, you can think of the gesture space of all possible gestures between touching the screen, moving around through any possible path, then releasing: most gestures are invalid syntax errors, and they only recognizes well formed gestures.
>There is no way to correct or abort a gesture once you start making it (other than scribbling, but that might be recognized as another undesired gesture!). Ideally each gesture should be as far away as possible from all other gestures in gesture space, to minimize the possibility of errors, but in practice they tend to be clumped (so “2” and “Z” are easily confused, while many other possible gestures are unused and wasted).
>But with pie menus, only the direction between the touch and the release matter, not the path. All gestures are valid and distinct: there are no possible syntax errors, so none of gesture space is wasted. There’s a simple intuitive mapping of direction to selection that the user can understand (unlike the mysterious fuzzy black box of a handwriting recognizer), that gives you the ability to refine your selection by moving out further (to get more leverage), return to the center to cancel, move around to correct and change the selection.
>Pie menus also support “Rehearsal” [7] — the way a novice uses them is actually practice for the way an expert uses them, so they have a smooth learning curve. Contrast this with keyboard accelerators for linear menus: you pull down a linear menu with the mouse to learn the keyboard accelerators, but using the keyboard accelerators is a totally different action, so it’s not rehearsal.
>Pie menu users tend to learn them in three stages: 1) novice pops up an unfamiliar menu, looks at all the items, moves in the direction of the desired item, and selects it. 2) intermediate remembers the direction of the item they want, pop up the menu and moves in that direction without hesitating (mousing ahead but not selecting), looks at the screen to make sure the desired item is selected, then clicks to select the item. 3) expert knows which direction the item they want is, and has confidence that they can reliably select it, so they just flick in the appropriate direction without even looking at the screen.