We all make some activities in an almost brainless way, on auto-pilot, without thinking about them, especially when they became a routine.
The more routinely they become, the less focused we are on them, particularly if nothing serious can happen like sending a payment to a different account.
I have this setup where I have most of my HIVE stake in an account and delegate it to my posting account for curating... That means that as I add more HP to the stake account I need to delegate more.
We have on Hive something that I consider an issue from the user experience point of view: two different ways of treating the staking operation on Hive and Hive-Engine.
Making a fresh delegation seems the same for both the first layer and the side chain to the user. Updating an existing delegation works differently.
On Hive's wallets, you have a separate Update button, and if you use it, the amount you put in there is the new total delegation.
On Hive-Engine you have only one button for staking, and the the amount you put in there is added to the existing delegation. If there isn't any delegation yet, then this is the amount of the delegation.
Obviously, the Hive-Engine way is the most logical way for a user. Why would Hive wallets choose to have separate APIs for creating a new delegation and adding to an existing one beats me. Actually, I understand, but sometimes UX is more important than resource spending.
This strangeness in handling delegations, plus no warning from the front ends (at least the one I use for that, @peakd) when you are about to do something stupid, like removing most of your delegation from an account instead of adding to it, and my lack of attentiveness for a routine operation, lead to making the same mistake twice already in my Hive history.
Here's the mistake in images:
So, now I have over 31k HP in limbo area for 5 days... Again! Could have I paid more attention? Yeah, sure! Could have Hive have been bothered to have a consistent delegation process throughout its ecosystem? Yes! Could front ends warn you when you are about to make stupid mistakes that they can catch on? Yes!
In my opinion, the delegation process on Hive-Engine is an improvement from the user experience point of view. I understand that making a delegation without checking for an existing delegation is less resource intensive, but it is also less user friendly to have two separate buttons to do the same thing and, on Hive to always talk about total delegation amount, while on Hive-Engine you always talk about the delegation amount to be added.
Then, at the front end's side. Front ends (@peakd) could check, and, if you choose the Delegate button instead of Update for one of the existing delegations to ask you if that's what you want or you want to Update instead:
"You already have a delegation to @xyz. Are you sure you want to make a new delegation or you want to update the existing one? [Delegate New] [Update Existing]" Potential additional explanations: "Making a new delegation rewrites the existing delegation. For example, if you have an existing delegation of 200 HP and want to add to it 50 HP, if you choose to make a new delegation, you will have 50 HP delegated at the end, while if you update your current delegation, you'll be able to set it to 250 HP." Still strange, because we talk in total amounts instead of additional amounts, but better than nothing.
The best solution would be if it were changed at the API level and then the front ends would change in accordance to only have one button for both making a new and updating a delegation. They don't even have to deprecate the existing APIs. The one without checking for existing delegations could be very useful where speed and resource limitations are important. They could just add another API that combines the two.
Want to check out my collection of posts?
It's a good way to pick what interests you.
Posted Using InLeo Alpha