I believe poke's UI still needs addressed as a destructive action.
I see your point that there is a constructive use-case for poking a reviewer out of approval to get them to re-review (and I overlooked that case in my original post; I agree, that being able to do that should remain a feature in some way); however, there is still the undesirable destructive case of unintentionally/accidentally poking a reviewer out of approval, which is also done via the same single click (of Poke or Poke All).
I see now that this is a classic UI design issue, and the general solution is: don't allow destructive actions via a single click, instead present the user with confirmation UI which explains the consequences and allows the user to proceed or cancel the action. Doing so allows the action to still occur as feature, and also greatly helps prevent the action from accidentally occurring.
In the case of Poke and Poke All: if there is one or more users that would be poked out of approval, then show a confirmation UI; otherwise, there is no destructive consequence so skip showing confirmation UI.
When poking a single user out of Approval, then the confirmation can be as simple as: "Poke will pull <username> out of Approval, proceed?" Ok/Cancel. In the case of poking multiple users at once, where at least one of them would be poked out of approval, then the confirmation UI could be similar to the single-user-poke confirmation (e.g. list all of the users that would be poked out of approval); or perhaps it would show all of the users that would be poked, in two lists: 1) those that would be poked out of approval and 2) everyone else; then the confirmation UI could have 3 choices, such as: Poke All, Poke Non-Approved Only, Cancel.
Your suggestion of a new feature, that is somewhere between emailing a user and poking them, may still be useful in addition to the above; but it isn't enough alone to address the destructive case of Poke/Poke All.
I believe the most pertinent issues to address in codecollab (other than bugs that break the review process) is to further streamline and optimize the review process by eliminating (where possible) and otherwise preventing (via UI confirmation or options) all cases that would otherwise unnecessarily pull a Reviewer out of Approval; and secondarily similar cases that unnecessarily pull any user out of Waiting to Active. All such annoying cases lead to confusion and lost development time. Poke and Poke All are just one case of this bigger general issue.
Related Content
- 10 years ago
- 7 years ago