Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace "Confirm password" with a show link/icon #4

Open
bojanz opened this issue Aug 24, 2020 · 5 comments
Open

Replace "Confirm password" with a show link/icon #4

bojanz opened this issue Aug 24, 2020 · 5 comments
Labels
enhancement New feature or request
Milestone

Comments

@bojanz
Copy link

bojanz commented Aug 24, 2020

create-account.html has a "Confirm password" field. This solves the problem of a user registering with a mistyped password, but requires the user to retype the password twice in case of an error. For a number of years the web dev community has been advocating for the removal of the confirm field, replaced with a link/icon that shows the password. This increases conversion and lowers user frustration. It is now the default pattern on mobile, and common on many sites. Large sites like Twitter and Facebook also no longer include a confirm field.

So, my feature request is to implement a show link or icon inside the password field, and remove the confirm field. This article shows both options: https://uxmovement.com/forms/why-the-confirm-password-field-must-die/

Which look (link/icon) do you think matches Windmill's design more?

@estevanmaito estevanmaito added enhancement New feature or request question Further information is requested labels Aug 24, 2020
@estevanmaito
Copy link
Owner

Thank you for your time to make this issue.

It took me some time to answer because I wanted to take a moment and write an article with some considerations that others might find helpful eventually.

https://estevanmaito.me/blog/killing-the-confirm-password-field-is-not-enough

It'll take me some time to add this to the project, as I still need to update it to match the React version, but for those who want to apply the best practice right away, just swap the "Confirm password" field with a check box saying "Show password".

Logic for it should be as easy as changing the input type from password to text

Like this:

password-4

@estevanmaito estevanmaito removed the question Further information is requested label Aug 29, 2020
@estevanmaito estevanmaito added this to the 1.0 milestone Sep 24, 2020
@svoop
Copy link

svoop commented Oct 20, 2020

@estevanmaito I've just read your article, here are my 5¢:

If you use email addresses as primary key, the password can be omitted entirely:

  • Create the user with NULL password (impossible to sign in) and send an email which both confirms the email address and asks the new user to set the password for future sign ins.
  • Implement a "sign in by email" flow which is functionally identical to the "forgot password" flow, but uses different wording to emphasize the possibility to either set a password or never set a password but always authenticate via email (best for forgetful users without a decent password manager).
  • Setting the password at this stage comes after the user has already invested in disclosing his email and confirming GDPR and similar regulations. Therefore, a password/confirmation combo is not as harmful anymore. Still, given there are now well-worded "sign in by email" and "forgot password" flows in place, the confirmation is not necessary and one masking input with "show password" checkbox might be better. (I prefer an explicit checkbox for usability reasons or screen readers.)

@Explorer09
Copy link

How did people listen to an article of bulls**t suggesting that password confirmation field is all useless? And that a "show password" button can be a substitute for it?

People may register an account on a public place, and they may not be able to reveal the password at any second, but only to rely on their muscle memory to ensure they typed the password correctly. When revealing password is not an option, users have to rely on the confirm password field to catch mistakes. Both "confirm password" field and "show password" button have their uses, why not have both feature and not drop any of them?

The behavior can work like this: By default the password is masked, and that user has to retype to password to confirm it, but if the user clicks the "show password", the confirm password field goes away and the user verifies their password by eye. Win-win for both use cases.
https://ux.stackexchange.com/a/518

@svoop
Copy link

svoop commented Feb 15, 2024

How did people listen to an article of bulls**t suggesting that password confirmation field is all useless? And that a "show password" button can be a substitute for it?

@Explorer09 Because it's not. The article talks about conversion, you talk about security in public places.

The behavior can work like this: By default the password is masked, and that user has to retype to password to confirm it, but if the user clicks the "show password", the confirm password field goes away and the user verifies their password by eye. Win-win for both use cases.

That's indeed a good compromise to accommodate both concerns. But it's more work to implement.

(If it's too much work, I personally prefer the disclosure feature over the confirmation feature. Why? If I mistype, there's always the "forgot password" workflow to restart. And since I don't use passwords without a password manager, I really don't need confirmation fields. Disclosure, however, comes in handy if I have to type a password on the mobile phone (where I don't use the password manager due to safety concerns). I can always turn the phone such that nobody can spy as I quickly check what I typed. But the alternative, having to type a fully random 20 all kind of characters password twice is a major pain... and any typo forces you to repeat the whole. Now that certainly is poison for conversion at best, encourages weak passwords at worst.)

@Explorer09
Copy link

@svoop Just to clarify, I'm not against the "show password" feature for many websites, but I am against people talking about "convertion rate" or UX while compromising users' security in this regard.

When a feature just works to protect the users' security, it's really tempting to remove it in the name of "convenience" or anything. Some people want this extra safety just to prevent locking themselves out of their accounts. And don't tell me about they can reset the password with an email -- they may not even know they have mis-typed the password until next time they login.

Perhaps the only alternative to the "confirm password" field is to force users to log out and re-log in to complete the whole sign up process. Without this, the user may not be aware of the error or it might be very late when they know it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants