Page MenuHomePhabricator

'Not logged in' without link is counterintuitive
Closed, DeclinedPublic

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

@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 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.)

@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.

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 a project: Patch-For-Review.
Jdlrobson unsubscribed.

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:

Screen Shot 2016-03-17 at 12.46.00 AM.png (106×1 px, 22 KB)

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

"User page" seems fine, yeah.

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 subscribed.

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.

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

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

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

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

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.

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).

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

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.

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?

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:

Screen Shot 2016-05-18 at 20.00.58.png (128×964 px, 26 KB)

After:

Screen Shot 2016-05-18 at 20.02.34.png (125×856 px, 22 KB)
Screen Shot 2016-05-18 at 20.02.35.png (134×909 px, 27 KB)

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).

Change 276908 abandoned by Jdlrobson:
Change the default value for $wgUseCombinedLoginLink to true

Reason:
Assuming work here is abandoned given the timeframe and reverts. Please reopen and rebase if not the case.

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

This is going to be fixed in the new version of Vector. For the existing version of Vector and Monobook it is unlikely to be fixed and thus should consider this declined.