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
These things could improve. Sorry about having your stake disappear for 5 days. I mean, five days is not 5 minutes. I haven't been an avid delegator, but sometimes peakd in all its beauty can be complicated sometimes.
I haven't learned by lesson either, knowing it has happened to me again. But imagine things like that happening to less informed people on Hive who may or may not realize what happened and that time fixes things in this case, eventually.
I think it can happen to anyone and even the generally informed person. However, a newbie might have it worse.
It's so frustrating to deal with those delegation issues. I agree that user-friendly interfaces are important for preventing such mistakes. I really hope they improve it soon
The problem is I've seen feedback from long time users before, and it was mostly ignored.
It's a real issue man 😞
I think that is a valid change. I think it's better to help reduce user mistake because it makes for a better user experience.
Absolutely! User errors happen for various reasons. We've been a long time going with a mentality of early adopters.
It’s sad that this delegation issue happened to you for the second time
I think you should be more careful next time
Indeed. I am to blame for not paying attention.
Hive really needs to get its UX game up! Cold have prevented with a line of text.
A line of text wouldn't help. We stop seeing them after a while. A warning message with options (without a default option) could help, as it at least stops you long enough to see something could be wrong and realize what it is.
That really sucks! Too bad there isn't a confirmation screen right before you approve it so you can catch your mistake like you recommend there. 5 days in limbo isn't much fun!
No it isn't. But I guess happening to me twice makes it my fault. That doesn't mean what we have here on Hive in this regard is ok, even if such an issue won't affect many or often. But when it does, it is annoying.
Oh, man... It hurts to see and it hurts when you do it... I did that probably at least 1 time and the difference between HIVE and H-E doesn't help at all...
The thing is I felt something was off but my fingers were moving by themselves... I realized what I've done as I was clicking to delegate. And without something to break the routine (like a warning popup without a default button), it was one second too late.