Page MenuHomePhabricator

'Not logged in' without link is counterintuitive
Open, NormalPublic

Description

I'm very grateful for T112724. I know that the existing links are similar to those visible for logged in users, and consistency is important, but:

When I saw this menu for the 1st time, I clicked on "Not logged in". It was an intuitive expectation of being redirected to Special:UserLogin. But there's no link on that, however, two others are placed far on the right (far, because they are separated by "talk" and "contribs"). There's too much options, imho. 2 of them nearly double each other and the placeholder, which I think should combine their functions.

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes
PleaseStand added a subscriber: PleaseStand.EditedMar 3 2016, 7:18 PM

I did some mockups of the various possibilities to get an idea of what we are talking about.

As an English Wikipedia user, I am against any design that prominently uses the words "Anonymous user", or that links to the user page for an IP address:

  • While perhaps technically correct, "Anonymous user" is quite misleading; if you choose to edit while remaining "anonymous", your IP address, which may be personally identifiable, is publicly recorded in the revision history. Though there is a warning on the edit screen, the apparent contradiction may confuse users, who may then disregard the warning as a "bug", and we should try to avoid such confusion by using different wording. In contrast, the meaning of "Not logged in" is clear.
  • According to Wikipedia:User pages, "[Your user page's] normal use is to give basic information, if you wish, about yourself or your Wikimedia-related activities." However:
    • If you are an anonymous user, your IP address is used in place of a username, including in the title of the user page, and may change or be shared by other users. If you want to establish an identity on Wikipedia, you should create an account.
    • On English Wikipedia, anonymous users cannot create pages themselves, except in the Draft namespace (and talk namespaces). Any IP user pages have to be created by logged-in users, and the ones that exist mainly contain things such as test edits and sockpuppet tags. So for anonymous users, it does not make sense to include a link to a user page (which the user cannot create) at the top of every page. There is a link at the top of the talk page anyway.

Also, linking to Special:MyPage does not help when the user is really trying to log in, aside from the suggestion to "Log in or create an account to start the User:<IP address> page." It would make more sense to, when the text is clicked, show a box with some explanatory text and links: "You do not need to log in or create an account to edit Wikipedia, though if you do, your edits will be attributed to your username, along with other benefits, such as the ability to create a user page."

Foxtrott added a comment.EditedMar 3 2016, 10:58 PM

Fair point about "Anonymous user" being misleading (although if someone is serious on staying anonymous and then just disregards that warning they should really check their priorities). Would "Unknown user" or "Unregistered user" be better?

Right now the links to user page, talk and contribs are inserted when anon users have general edit permission (User::groupHasPermission( '*', 'edit' )). I do not know, how the restriction on user page editing is enforced on Wikipedia, but if it is done using $wgNamespaceProtection, it should be easy to only insert the link to Special:MyPage when user pages are actually editable. Would that work?

Finally, if the user is really trying to log in they should click on the 'Log in' link. The whole point of this task is, that the original text ("Not logged in") is misleading and should be changed so that users do not end up mistaking it for the login link. Right now that notification takes up more space, is differently colored and is the first to be read in the line of peronal tools. It is therefore more prominent than the 'Log in' link in the corner.

Hmm, seems not that important after all.

@Jdlrobson, I updated the patch to show "Unknown User" instead of "Anonymous user" and to only show the link if the anon user has the "createpage" right, which should bring this in line with the current behavior on en.wp. So English Wikipedia users should be double happy: The link that anon users don't see does not say "Anonymous". :-)

Any other blocking points?

Hey @Foxtrott, I'm fine with linking to Special:MyPage and changing the text to "Unknown user".
The removal of the sign up link may be more controversial so I'd ask you disentangle this from your commit so we have 2 commits
commit 1) change name/make it a link
commit 2) remove sign up from default config

I'll then merge them both (just in case someone wants to revert 2 they will not revert 1 :-))
It's worth noting the Wikimedia cluster config still sets this to false so 2 would only impact 3rd parties, so you may want to upload a config change as well.

Ping me on Phabricator when this is done and I'll merge.

Change 276908 had a related patch set uploaded (by Foxtrott):
Change the default value for $wgUseCombinedLoginLink to true

https://gerrit.wikimedia.org/r/276908

@Jdlrobson: Done.

https://gerrit.wikimedia.org/r/273574 - Add link to anon's user page; remove "Not logged in"
https://gerrit.wikimedia.org/r/276908 - Change the default value for $wgUseCombinedLoginLink to true

Regarding the config change I'd need to know where to change it.

Change 273574 merged by jenkins-bot:
Add link to anon's user page; remove "Not logged in"

https://gerrit.wikimedia.org/r/273574

Jdlrobson closed this task as Resolved.Mar 12 2016, 2:53 AM
Jdlrobson claimed this task.

Special:MyPage for ips is anonying, too, because no other places where an ip is linked, get a link to an ip user page, because in most cases the ip does not know about it or need to create such a page.

This could be used for vandalism of ip user pages in the future (creating it or remove templates about stable ip or such things).

Links in history or other places with user links get a link to Special:Contribs of that ip. Special:Contribs than does not link back to the ip page, too, to avoid that ip can vandalism that page and create it with some fun.

Maybe now it looks and the links works the same in the personal navbar between logged out and logged in, but now there are difference about linking ip pages or not between personal navbar and other places. (Just for the record.)

ori added a subscriber: ori.EditedMar 16 2016, 11:01 PM

@Foxtrott, @Nirzar: This is still not great, in my opinion. The vast majority of users don't want or expect personalization.

Jimbo's appeal for donations from the last fundraising campaign likened Wikipedia to a public library or a park, and I think it's a useful analogy in this context, too: when you stroll through a park, you are not an "unknown park visitor". Your relationship with the park is not mediated by identity at all. It's not as though you're consciously and deliberately withholding information about who you are. You simply don't think of your identity as being pertinent.

I think it's important to preserve that. It's especially important for Wikipedia as a reference work. One of the most fundamental tenants of Wikipedia is that content should be written from a neutral point of view. In this aspect, it is a direct descendent of Diderot's Encyclopédie and the outlook of the Enlightenment. There is a great description of the way this whole genre of writing relates to truth and knowledge in a book called Clear and Simple as the Truth:

"The concept of truth that grounds classic style does not depend on what might be called point of view or angle of vision. The truth of things can be perceived by attentive people of any age or condition. Human experience reveals the same conflicts, the same needs and desires, the same weaknesses and virtues."

At its best, classic prose is "transparent, as if the reader were looking at something through a perfectly clean and undistorting window; the window should not draw attention to itself, and will not unless it is obviously defective in some way."

Wikipedia is the same way: it strives to be a transparent medium which presents universal, rather than particular, truths. The interface should respect that, rather than insisting that every view is a view for someone, either known or unknown.

ori reopened this task as Open.Mar 16 2016, 11:01 PM

So you mean Personal Tools should be removed completely for anon users?
And anybody who has a more personal relationship with the park (the gardeners in charge of keeping it tidy) already knows where the door to the tool shed (Special:Login) is and how to get there?

Sorry for the polemic, I am very much with you when it comes to focussing on the content. Still, what do you suggest?
Bearing in mind that

  • There is other wikis than Wikipedia.
  • The "Unknown user" link is only shown if anon users have the Create Page right, which as far as I can see is not the case on Wikipedia.
Jdlrobson removed Jdlrobson as the assignee of this task.
Jdlrobson removed a subscriber: Jdlrobson.

I agree with @PleaseStand and @ori: "Anonymous user" and "Unknown user" are both problematic.

Here's how the personal tools section of https://www.mediawiki.org/wiki/MediaWiki currently looks for me:

What about making "Unknown user" read "User page" instead? It's straightforward enough, I guess.

ori added a comment.Mar 17 2016, 5:10 AM

"User page" seems fine, yeah.

TTO added a comment.Mar 17 2016, 7:54 AM

This whole thing seems insane. Let me ask this, and maybe someone can explain: why on earth do we think it's a good idea to link to IP user pages?

Legoktm added a subscriber: Legoktm.

I've marked this as a deployment blocker because I agree the "Unknown user" wording is suboptimal and we probably don't want it to be cached for 30 days.

@TTO For the whole story see above, T112724 and T127758.
In short: The previously displayed text "Not logged in" is problematic in two ways:

  1. UI: It appears prominently among a list of links with a message leading users to click on it expecting some kind of login functionality.
  2. Technical: It is a text message in a list of links and needs to be special-cased by code consuming this list.

Just removing this message was considered inappropriate as somebody obviously thought it a good idea to put it there.

A way forward could be to drop this text message (now user page link) altogether and leave it to the skin to convey the not-logged-in state to the user in an appropriate way.

TTO added a comment.Mar 17 2016, 9:24 AM

I'm not sure that that answers my question. The technical issue shouldn't be influencing our decision making in this way, and should be addressed by opening a task to have the code fixed. And from a UI perspective, I would have thought that it was better to have unlinked text than to link people to a largely meaningless IP user page.

Ok, trying for a direct answer:
Because - both from a UI and technical POV - if you want to use an entry in the list of personal tools as the vehicle to convey the non-logged-in state to the user you need to make it a tool (i.e. link to somewhere) and this is the most plausible link target.

I agree that it could be argued that using a personal tool for this message was the wrong solution in the first place. Hence my proposal to drop the link altogether. Regarding the task for solving the technical issue see T127758.

If this is blocking the train we need to figure out how to roll this back.

I would like to delay this patch (not deploy today) until the discussion has a chance to finish up. However, I can't actually do this. Can someone grab this task?

What specific patches need to be reverted?

Change 278047 had a related patch set uploaded (by Ori.livneh):
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278047

Change 278049 had a related patch set uploaded (by Ori.livneh):
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278049

Change 278047 abandoned by Ori.livneh:
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278047

Thank you Ori

Change 278049 merged by 20after4:
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278049

greg added a subscriber: greg.Mar 17 2016, 7:31 PM

ok I merged the revert change on wmf.17 and I'm syncing the branch.

Jdlrobson added a comment.EditedMar 17 2016, 7:48 PM

I wanted to reiterate @Foxtrott 's concerns about T127758. We have broken 3rd party skins which expect the personal tools to be links. From what I remember, we are not Wikimedia-centric, so we have a duty to provide a solution to that problem and shouldn't ignore it. I would like this to block the next MediaWiki release to ensure we deal with this (do we have a task for that?)

Given the recent developments in the conversation I feel there are several options here to remedy the situation:

  1. Revert the original change introducing the change (T112724)
  2. Feature flag the label and set to false by default. Enable on the Wikimedia cluster only. e.g. wgAllowNonLinksInToolbars
  3. Apply the label in the skins themselves that use this (but this would leave lots of code duplication)

Personally I'd lean towards option 2 at this point.

TTO added a subscriber: Jdlrobson.

I wanted to reiterate @Foxtrott 's concerns about T127758. We have broken 3rd party skins which expect the personal tools to be links. From what I remember, we are not Wikimedia-centric, so we have a duty to provide a solution to that problem and shouldn't ignore it.

We can announce a breaking change in the 1.27 release notes. There are quite a number of other breaking changes, so I don't see how this would be a problem.

I would like this to block the next MediaWiki release to ensure we deal with this (do we have a task for that?)

Added relevant project.

Foxtrott added a comment.EditedMar 17 2016, 9:57 PM

We can announce a breaking change in the 1.27 release notes. There are quite a number of other breaking changes, so I don't see how this would be a problem.

I am not sure, that calling the bug a feature would be a good solution.

@Jdlrobson, I still think that option 3 would be the correct one (but you know that already :) ).
Option 1 would be an interim solution, but there was a reason for implementing this message, so in the end if T112724 is reverted, it should be replaced by something else.

Option 2 would just try to contain the fallout of the current implementation. The implementation as it is is simply conceptually wrong. Signalling the non-logged-in state to the user is the responsibility of the skin. The message should not be thrown among the personal tools just because this way it happens to end up at roughly the right spot on the page. (If we wanted it on the bottom-right corner, would we then put it among the footer icons?) Besides that, a feature flag would probably not work on wikis that allow users to choose their skin.

The code duplication introduced with option 3 on the other hand would be minor imo (it is only one message, after all) and would allow skins to evolve independently. There is probably not much hope for Monobook, but it would be nice if Vector at some point would get a cleaner looking list of personal tools again (although this is more an issue for logged in users right now).

TTO added a comment.Mar 17 2016, 10:16 PM

I wouldn't be opposed to option 3. Option 2 seems quite weird.

Tgr added a subscriber: Tgr.Mar 18 2016, 7:11 AM

A way forward could be to drop this text message (now user page link) altogether and leave it to the skin to convey the not-logged-in state to the user in an appropriate way.

Having a login link seems appropriate enough, except for a wiki using exotic some authentication extension which disables login completely (e.g. client certificate based login only) and hides the link, in which case it is reasonable to leave it to the extension to deal with the situation.

Yeah, I'm also increasingly convinced that the "Not logged in" text item / anonymous user page link should just be removed. The presence of a "Log in" or "Log out" should be enough for the user to know whether they are logged out or logged in, and if the design of any particular skin calls for a more visible indicator (maybe because the personal tools are in a dropdown menu or something), that skin can provide it.

If we think that it's important for Wikimedia wikis to display such additional indicator, we'd only need to implement it in the Vector skin, as that is the only skin our not-logged-in users normally see.

TTO added a comment.Mar 21 2016, 9:56 PM

My sole concern with just removing the "Not logged in" text is that without it, the personal tools "Talk" and "Contributions" would lack any kind of context. It mightn't have been so bad if the "My" prefix was still there, but as it stands, these links need some kind of contextualisation to make any sense,

Cutting wmf.18 today—where does this task stand?

If there is no consensus, can this patch be reverted in core?

Change 278923 had a related patch set uploaded (by Thcipriani):
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278923

Change 278943 had a related patch set uploaded (by Thcipriani):
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278943

Change 278923 merged by jenkins-bot:
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278923

Change 278943 merged by jenkins-bot:
Revert "Add link to anon's user page; remove "Not logged in""

https://gerrit.wikimedia.org/r/278943

My sole concern with just removing the "Not logged in" text is that without it, the personal tools "Talk" and "Contributions" would lack any kind of context. It mightn't have been so bad if the "My" prefix was still there, but as it stands, these links need some kind of contextualisation to make any sense,

Hmm. They already have separate messages ('anontalk' and 'anoncontribs'), so we could fairly easily do this. I see 'anontalk' used to be "Talk for this IP address" before your changes, which is frankly rather horrible, but we could make it "User talk" perhaps? I think IPs can be called users… We could also keep the person icon even if we remove the "Not logged in" text.

MW 1.27 is branched off and it being an LTS version will have to be supported for some time.
I would really like to avoid having to scrub personal tools in my skin.

Could we fix this issue before the release? Or as a minimum revert the original change (T112724 / https://gerrit.wikimedia.org/r/239649)?

Change 273108 had a related patch set uploaded (by Bartosz Dziewoński):
Remove "Not logged in" from the personal URLs array

https://gerrit.wikimedia.org/r/273108

I am inclined to merge the patch above, https://gerrit.wikimedia.org/r/273108 (submitted by @Foxtrott a while above for T127758, I just connected it to this task). I'd also backport to 1.27. Please object now. (@Tnegrin @TTO @Jdlrobson)

There is also https://gerrit.wikimedia.org/r/273105 in Vector, which re-implements this feature as part of the skin (rather than MediaWiki core). If we have concerns about the menu without "Not logged in" being confusing, we could merge that as well.

Change 273108 merged by jenkins-bot:
Remove "Not logged in" from the personal URLs array

https://gerrit.wikimedia.org/r/273108

I've merged the Vector and Monobook patches to keep the status quo so that they still have the "Not logged in" indicator.

This patch should thus stay open but T127758 is resolved. I personally think it's more of an issue in Monobook then Vector. @thcipriani can you clarify which skin you consider this be a problem on?

Krinkle added a subscriber: Krinkle.EditedMay 18 2016, 7:03 PM

This causes a regression. ULS used to render to the left of "Not logged in" (and thus it didn't cause a FOUC or reflow).

The real underlying problem is that ULS shouldn't render late in the first place, but that's a separate issue (T135688).

It now appears to the right of "Not logged in" (before the first link, rather than the first item). As such, causing an annoying reflow on every single page view.

(If using MediaWiki-Vagrant, be sure that $wgGroupPermissions['*']['edit'] = true; is set since the whole "Not logged in" is only ever shown in the first place if anon editing is enabled).

Before:

After:

Please revert these three patches, or otherwise solve the problem, before Monday.

Change 289545 had a related patch set uploaded (by Foxtrott):
Fix order if univ lang selector and "not logged in" message

https://gerrit.wikimedia.org/r/289545

Change 289548 had a related patch set uploaded (by Foxtrott):
Fix order if univ lang selector and "not logged in" message

https://gerrit.wikimedia.org/r/289548

Please revert these three patches, or otherwise solve the problem, before Monday.

I'll look into it, but to clarify ULS is a beta feature so this issue will only surface for beta users?

I'm a little concerned that HTML is being treated here as an API and I'd consider that a bug too. Relying on an HTML is very brittle and we should use this opportunity to inject that button here in a cleaner way. Manipulating menus needs to be easier and shouldn't cause issues like this.

This part of ULS is not a beta feature (and can't even be disabled afaik).

It's been enabled on at least meta.wikimedia.org, www.mediawiki.org, commons.wikimedia.org and MediaWiki-Vagrant for a while now.

I'll look into it, but to clarify ULS is a beta feature so this issue will only surface for beta users?

ULS is not a beta feature and it is enabled in all WMF wikis. For wikis with language versions, the position of ULS trigger is in the sidebar next to interlanguage links, and for the rest it is in the personal tools (which this bug is about).

I'm a little concerned that HTML is being treated here as an API and I'd consider that a bug too.

That is not the case: https://github.com/wikimedia/mediawiki-extensions-UniversalLanguageSelector/blob/master/UniversalLanguageSelector.hooks.php#L169-L197

The reason it appears late is that it is hidden by default and only enabled when JavaScript is around because it only works with JavaScript. As far as I know this is a best practice (after not creating the HTML at all, but as you say it has it's own set of problems in this case).

Change 289545 merged by jenkins-bot:
Fix order of univ lang selector and "not logged in" message

https://gerrit.wikimedia.org/r/289545

Change 289548 merged by jenkins-bot:
Fix order of univ lang selector and "not logged in" message

https://gerrit.wikimedia.org/r/289548

Alright… we've dealt with the immediate problem of T127758 (third-party skins being affected by the non-link among personal tools). I am backporting the relevant patches to MediaWiki 1.27 (see T127758 for notes about that). The effect together is that Vector and MonoBook display exactly the same as they did, but other skins don't have to deal with the non-link in personal tools. Thanks for doing this, folks :)

Now we can go back to discussing whether the 'Not logged in' without link is counterintuitive, and what to do about it. Note that it is only displayed in Vector and MonoBook now (it was previously in all skins, which was determined to have been problematic, and undone).

Thanks @matmarex and all involved!

SamanthaNguyen moved this task from Backlog to UX or stuff on the Vector board.Jan 5 2017, 4:05 AM
Krinkle removed a subscriber: Krinkle.Mar 30 2017, 8:29 PM