Page MenuHomePhabricator

Homepage: location, navigation, and framework
Closed, ResolvedPublic

Description

Before building any modules for the homepage, we need the basic skeleton to put modules into.

This mockup is a general visual guide to this work, but is not meant to express the exact locations of modules: https://wikimedia.invisionapp.com/share/6TQEPEYEV5W#/screens/345875766

Here are the specifications for the first version of the homepage:

  • Location
    • The content should be located on a new "tab" that can be found when the user is viewing their User or User Talk page.
    • That new tab should be the first tab in the row, to the left of the "User page" and "Talk" tabs that are already present.
    • That new tab should be labeled "Homepage".
  • Navigation

** When a user navigates to their own User page by clicking on their username in their personal tools, they should be redirected to this new homepage, regardless of whether their User page has been created. Clicking on their username in their personal tools is the only link that goes directly to their homepage, apart from clicking on the "Homepage" tab once they are on their User or User Talk page.

    • When a user navigates to another user's User page, they should go to that user's User page as usual, even if it has not been created.
    • A newcomer's homepage content should be private to the user, and not visible to other users. It should not be possible to visit another user's homepage.
  • Framework

** Homepage should be titled "Your homepage".

    • Homepage should consist of modules that can be displayed and configured separately. We should be able to create and remove modules over time.
    • All content will need to be able to be translated into any language.
    • While the set and layout of modules will not vary from user to user (i.e. the layout of the homepage will not be personalized), the content inside the modules will be personalized. In other words, different users will have different mentors named in their mentorship modules, and their impact modules will show the impact of their own edits.
  • Users affected
    • We should be able to have the homepage on for a treatment group of newcomers, with it remaining off for a control group of newcomers.
    • We should add two checkboxes to Special:Preferences in a new section of the "User profile" tab. This new section should be called "Newcomer homepage" and should be the last section on the page, under the current "Email options" section:
      • One checkbox that turns the homepage on and off, called "Display newcomer homepage"
      • One that allows users to control whether or not the homepage is the destination when they click on their username in their personal tools, called "Default to newcomer homepage from username link in personal tools". This second preference should not be changeable unless the former one is "on".
    • For treatment group users, both preferences are set to "on".
    • For control group users, both preferences are set to "off", and it should not be possible for these users to click their way to a homepage unless the first preference is "on".

This is a list of capabilities that we will need for future versions of the homepage, listed here to facilitate planning:

  • We may make changes to the software that drive newcomers toward their homepages, such as links on Main Page. Those sorts of treatments should line up with the treatment/control groups from the homepage experiment. In other words, if we add a link from the Main Page, we only want that link to be displayed to people that have the homepage on, as set by their group assignment in the experiment.
  • When we start thinking about driving newcomers toward the homepage, we should address these two issues:
    • The link on the username is red, to indicate that the user page doesn't exist yet. But we will be directing newcomers toward their homepage, which does exist. What should we do about the link color?
    • The tooltip on the username reads, "Your user page (page does not exist)". We should reconcile this tooltip.
  • More complex logic around when the user is redirected to their homepage. For instance, we may want to redirect users to their homepage when they click on a their username in any context, not just in the personal tools. Or we may want users to continue to be redirected to their homepage until they have some content on their User page.
  • If we ever want experienced users to use the homepage, we should remove the word "newcomer" from the language in Preferences.

Event Timeline

MMiller_WMF moved this task from Inbox to Upcoming Work on the Growth-Team board.
Trizek-WMF added a comment.EditedFeb 18 2019, 2:19 PM

Tabs are not well identified. That's not something people pick easily. I see that when I discuss with readers or when I host workshops: they haven't noticed them, whatever they are (History, Talk...). It may add a biais to the final results, with low score on disciverability.

Have we considered to have a new link in the to top-right menu instead?
Have we considered an A/B test on discoverability (that may be also useful for a tab redesign)?

When a user navigates to their own User page by clicking on their username in any context, they should be redirected to this new homepage, regardless of whether their User page has been created.
When a user navigates to another user's User page, they should go to that user's User page as usual, even if it has not been created.

How does a user create their own user page?

How does a user create their own user page?

I think the idea is that once you're on e.g. https://en.wikipedia.org/wiki/User_homepage:KHarlan_(WMF), clicking on the "User page" tab at https://en.wikipedia.org/wiki/User:KHarlan_(WMF) would allow you to create the page.

If I'm correct about this intention, then when we read this:

When a user navigates to their own User page by clicking on their username in any context, they should be redirected to this new homepage, regardless of whether their User page has been created.

That actually means, throughout the user interface, replace links to /wiki/User:KHarlan_(WMF) with /wiki/User_homepage:KHarlan_(WMF).

kostajh updated the task description. (Show Details)Feb 19 2019, 7:16 PM
SBisson added a comment.EditedFeb 19 2019, 9:06 PM

While /wiki/User_homepage:Username would be nice and consistent with User and User_talk, it would also involve registering a new namespace with a custom content model, which is begging for trouble (Flow<cough/>).

Everything about this page points to a special page. Its URL would be something like /wiki/Special:Homepage. It could include the current user's name but it's not needed since this is a private page that show data about the current user. Is it acceptable?

I was about to write exactly the same comment. Let's start with Special:Homepage, and change it if asked to.

MMiller_WMF updated the task description. (Show Details)Feb 20 2019, 1:31 AM

I updated this task to incorporate our decisions from our deep dive meeting today. I believe this addresses the discussion that @Trizek-WMF and @kostajh were having about the creation of user pages.

  • We should add two preferences to Special:Preferences under the "Basic information" section of the "User profile" tab:
    • One that turns the homepage on and off, called "Display newcomer homepage"
    • One that allows users to control whether or not the homepage is the destination when they click on their username in their personal tools, called "Default to newcomer homepage from username link in personal tools".

This second preference should not be changeable unless the former one is "on".

We can't really do that on the Special:Preferences. There are other examples where the second preference doesn't really make sense unless the first one is filled but both are still enabled.

A special page would ease internal links. Link to to special:Homepage is easier than user_homepage:{{USERNAME}}.

@SBisson -- how do you recommend we do the preferences and treatment/control situation?

@SBisson -- how do you recommend we do the preferences and treatment/control situation?

As written, except the part in bold: both preferences are present and enabled (in the html sense) but the second one only has an effect when the first one is checked. In other words, if you uncheck "Display newcomer homepage" and check "Default to newcomer homepage from username link in personal tools", it won't change the username link because there is no homepage to go to.

Change 491800 had a related patch set uploaded (by Sbisson; owner: Sbisson):
[mediawiki/extensions/GrowthExperiments@master] [wip] Homepage

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

@SBisson -- I think that having those two separate checkboxes could be okay. If we do it like that, I think I would want the language for the two to be:

  • Enable newcomer homepage
  • When newcomer homepage is enabled, default to newcomer homepage from username link in personal tools

That said, I'm wondering if this would make more sense as a preferences dropdown or radio buttons, like these:

In those cases, the header would be "Newcomer homepage:", and the options would be like:

  • Default to newcomer homepage from username link in personal tools
  • Do not default to newcomer homepage from username link in personal tools
  • Disable newcomer homepage

What do you think?

@MMiller_WMF I'm personally OK with the two checkboxes, with or without the updated language.

There are similar situations on the preferences page already. For instance: you can tell Echo to NOT send you any email but you can still choose the email format (text vs. html) and check the box for "Mention" to notify you by email. I assume people understand that disabling a feature means further customization of that feature won't have any effect. That said, I'm curious what other people think.

It's no big deal to change it now one way or another but it would be more work to change it after it's in production since migrating existing preferences is time consuming.

@SBisson -- I just talked this over with @Catrope to get another opinion. We think we should go with the two checkboxes. The reason I am now thinking about is in the case that we end up with additional preferences related to the homepage (e.g. "Enable the impact module" or whatever). We're not going to want to handle all those combinations in a series of radio buttons.

Can we put them under a header? Like this:

Newcomer homepage

  • Enable newcomer homepage
  • When newcomer homepage is enabled, open it from username link in personal tools

The treatment group will have both options selected and the control group will have neither option selected.

Re checkboxes: I believe hide-if works for preferences too, although right now there are no preferences that use it. I don't know if that's because there's an actual problem with it, or because it's just too new. The only thing I could find was this commit mesage where Moriel says "Not conditionally hiding XYZ yet because hide-if's behavior is annoying", but I couldn't find what was annoying about it.

If hide-if works well, we could hide the "open from user name link" preference (and any future preferences) if the "enable" preference is disabled.

hide-if works but I also find it really annoying when options appear/disappear and the page shifts up or down. We could probably introduce disable-if without too much trouble.

We can also put them all in a new section, it's not a problem.

Okay -- from my perspective the hide-if approach is a nice-to-have. Up to you.

Okay -- from my perspective the hide-if approach is a nice-to-have. Up to you.

I'll put it in so more people can try it and we can decide if we find it annoying or useful.

Do you want the options in a custom section "Newcomer homepage" of in "Basic information"?

Note that the new section would be at the end of the "User profile" tab since it is defined last.

Yes, that's right -- it would be a new section called "Newcomer homepage" underneath the existing "Email options" section. I will change this in the description of this task now.

MMiller_WMF updated the task description. (Show Details)Feb 22 2019, 1:31 AM

Change 491800 merged by jenkins-bot:
[mediawiki/extensions/GrowthExperiments@master] Homepage

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

Change 492323 had a related patch set uploaded (by Sbisson; owner: Sbisson):
[translatewiki@master] Message group for Growth experiments homepage

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

Is it too early to enable this feature in betalabs? It's just an empty homepage with two new preferences.

Change 492323 merged by jenkins-bot:
[translatewiki@master] Message group for Growth experiments homepage

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

@SBisson -- if that's a question for me, I am of course fine with deploying to beta labs. But I don't know what any of the arguments against would be.

@SBisson -- if that's a question for me, I am of course fine with deploying to beta labs. But I don't know what any of the arguments against would be.

It's fine with me too. It's just that the homepage is currently empty and some people may wonder why there's a new tab that leads to an empty page.

@SBisson -- I'm not worried about that. How about we default both the preferences to "off" for now, until we're getting closer to deploying to production? Then we shouldn't have any issues.

Change 493023 had a related patch set uploaded (by Sbisson; owner: Sbisson):
[operations/mediawiki-config@master] Enable the GrowthExperiments Homepage in lab

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

Change 493023 merged by jenkins-bot:
[operations/mediawiki-config@master] Enable the GrowthExperiments Homepage in lab

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

@SBisson -- I'm not worried about that. How about we default both the preferences to "off" for now, until we're getting closer to deploying to production? Then we shouldn't have any issues.

The homepage is now enabled on betalabs with both preferences OFF by default.

Etonkovidova updated the task description. (Show Details)Feb 28 2019, 1:13 AM
Etonkovidova updated the task description. (Show Details)Feb 28 2019, 1:22 AM

@MMiller_WMF I checked what's been implemented to far. Please review my comments for the items marked with

When a user navigates to their own User page by clicking on their username in their personal tools, they should be redirected to this new homepage, regardless of whether their User page has been created. Clicking on their username in their personal tools is the only link that goes directly to their homepage, apart from clicking on the "Homepage" tab once they are on their User or User Talk page.

  • the username link is still a red link even after I enabled "Display newcomer homepage" option and Home page is created. Arguably, if a user name link ==only User page, it's ok (kind of).

  • the username link displays a tool tip " Your user page [ctrl_option_.]" The shortcut will redirect to the Home page. Should 'user page' be changed or 'user page' can still be used to describe three tabs collectively as 'a user page'? Maybe we can use 'Your user pages'.

  • User's Home page can be be found via search box as "Special:Homepage" - and in the case, when a user does not enable "Display newcomer homepage" option it's still displayed, but with a tab -Special page which also brings a next point - all Special pages display the tab except when a user navigates to 'Special:Homepage' via clicking on a username link.

Homepage should be titled like "[User]'s homepage", e.g. "Cloud atlas's homepage"

There is general recommendation to avoid apostrophes in page titles - https://en.wikipedia.org/wiki/Wikipedia:Article_titles#Article_title_format. I do not think that the limitation is for technical reasons only for stylistic ones (but I could be wrong).

Can we put them under a header? Like this:
Newcomer homepage

  • Enable newcomer homepage
  • When newcomer homepage is enabled, open it from username link in personal tools

@MMiller_WMF

  • "newcomer homepage" - the specific name implies that it will expire when a newcomer stops being a new user?

Change 494223 had a related patch set uploaded (by Sbisson; owner: Sbisson):
[operations/mediawiki-config@master] Enable GrowthExperiments Homepage on testwiki

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

Change 494223 merged by jenkins-bot:
[operations/mediawiki-config@master] Enable GrowthExperiments Homepage on testwiki

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

Thanks, @Etonkovidova.

  • Red link: I think it's okay that this is still a red link. I'm going to put this in the "future versions" section of the description as something to think about in the future for when we want to drive more traffic to the page.
  • Tool tip: good catch, but I also think it is okay to let this one slide for now. It is not too confusing, and I would rather learn more from initial usage than change it now. I will also add this to the "future versions" section.
  • Navigation from search: we agreed that this is okay. We couldn't think of a reason why a user would want to disable their ability to get to a special page, and so we are okay with finding it through search. And re-reading the text of the preference, it is accurate, saying "Display" instead of "Enable". You are making a good point, though, that we want users who navigate to their homepage to always see it in the tabbed layout along with "User page" and "Discussion". It's okay that search takes you to the version that has "Special" as the tab, but if/when we create additional links to the homepage from other places, we should remember to bring the user to their user space.
  • Apostrophe: this is definitely a good point. I imagine using the apostrophe for possessives causes issues in translations. I would like @Trizek-WMF to weigh in on this. Is it a bad practice to call the page like "[USER]'s homepage"? Should we instead call it something like, "Your homepage" or "Homepage: [USER]"?
  • Newcomer: I think we should continue to call it "newcomer" in the preferences for now, even though we will not take it away when a user gets more experienced. I think this will help us set good expectations with our target communities around who we're building this for now, and reduce their confusion when they notice this in their preferences. When we actually think the homepage is good for experienced users to have, we can just change the language in the preferences.
MMiller_WMF updated the task description. (Show Details)Mar 4 2019, 10:35 PM
MMiller_WMF moved this task from Needs PM Review to QA on the Growth-Team (Current Sprint) board.

Back to @Etonkovidova to revise any of her flags in the description.

Also hoping to hear from @Trizek-WMF about apostrophes.

@MMiller_WMF @Etonkovidova
A few User Experience considerations about your very valid comments above:

Apostrophe
Option A - I initially thought about "Your homepage" as a good name for the page too, but having the two tabs "Your homepage" and "User page" right next to each other I think it could be a bit misleading for newcomers who might not know yet what the "User page" is.


I imagine questions like "Who is the user of the User page?", "How is the User page different than my Homepage?"

These considerations bring me to the idea that a possible good solution would be to rename the User page into Profile page (it would also make more clear that your "Profile page" would be public):

  • 9 out of 10 of the compared platforms call this kind of page a "Profile" (the exception being WikiHow, interesting eh?!)
  • In 8 out of these 9 platforms the profile page is a public page > we can deduct users should be familiar with the association of the Profile page to being a public page.

Now, I understand of course that renaming the User page could face a certain amount of friction in experienced users...
What's your thinking?

Option B - I understand the English possessive would require the "'s" to be grammatically correct, but in term of comprehension wouldn't "[USER] homepage" without "'s" work as well and (maybe) make it easier to translate?

Newcomer
I think it would be good to have consistency in the naming to let users create easy name/pages associations.
If the page is called "Your homepage" in the tab I think it would be a good idea to call it as such in the preferences as well. This would also solve the naming issue for the experienced user.

  • Apostrophe: this is definitely a good point. I imagine using the apostrophe for possessives causes issues in translations. I would like @Trizek-WMF to weigh in on this. Is it a bad practice to call the page like "[USER]'s homepage"? Should we instead call it something like, "Your homepage" or "Homepage: [USER]"?

"[USER]'s homepage":

  • sounds super impersonal. Like if it is not my page, but someone's property just lend to me.
  • The best translation I can find in French is "la page de [USER]" (literally "the page of [USER]", which sounds like a condescending speech written for children. :/

"Your homepage" is really personal.
However, it is not labelled like other personal pages people have access to, like "Watchlist". Maybe we should follow the watchlist pattern and just call that page "Home page"? That would go with "Profile page".

"Homepage: [USER]" sounds like a new namespace. We are on sort-of a special page, so it shouldn't be like a namespace.

MMiller_WMF added a comment.EditedMar 6 2019, 1:52 AM

Thanks, @Cntlsn and @Trizek-WMF. @Cntlsn, just to clarify -- we are talking about the title of the page, not the label on the tab (though it is valuable to consider the title of the tab as part of this). So this part:

Taking this all together, I think a few things:

  • It sounds like neither of you think that having the username in the title of the page is important. In fact, if we have a well-designed homepage, it will be obvious that it's a homepage even without a title.
  • Furthermore, maybe having the username in the title might actually cause us problems later when we are working on a "Profile" page, because the username would probably be a prominent thing at the top of that page.
  • @Cntlsn -- regarding the idea of just switching "User page" over to "Profile", I don't think we can tackle that now. In addition to that being a controversial change, there are also tons of places in the wiki that refer to "User pages", like help docs, etc, and we would need to be careful about reconciling that.
  • Therefore, I think a good way to do this would be:
    • Change the title to "Your homepage".
    • Leave the tabs alone. Even though the tab says "Homepage" and not "Your homepage", I think it is okay that they won't match, and would cause less confusion for now.

What do you two think of this? Also, we are interested in the opinions of anyone else watching this task.

Also, a question for @Trizek-WMF or @SBisson (just because I'm wondering): does it cause us any technical translation problems to have the "[USER]'s homepage" pattern? I am remembering how it is challenging to have gendered phrases, etc.

Also, a question for @Trizek-WMF or @SBisson (just because I'm wondering): does it cause us any technical translation problems to have the "[USER]'s homepage" pattern? I am remembering how it is challenging to have gendered phrases, etc.

It doesn't cause any technical issue that I'm aware of. Translators can use the GENDER function to vary the message based on the gender of the current user.

Maybe the issue you are referring to is using "Wikipedia" in a sentence because while it is gendered in some languages, the GENDER function doesn't know about it.

Cntlsn added a comment.Mar 6 2019, 2:32 PM

Taking this all together, I think a few things:

  • It sounds like neither of you think that having the username in the title of the page is important. In fact, if we have a well-designed homepage, it will be obvious that it's a homepage even without a title.
  • Furthermore, maybe having the username in the title might actually cause us problems later when we are working on a "Profile" page, because the username would probably be a prominent thing at the top of that page.
  • @Cntlsn -- regarding the idea of just switching "User page" over to "Profile", I don't think we can tackle that now. In addition to that being a controversial change, there are also tons of places in the wiki that refer to "User pages", like help docs, etc, and we would need to be careful about reconciling that.
  • Therefore, I think a good way to do this would be:
    • Change the title to "Your homepage".
    • Leave the tabs alone. Even though the tab says "Homepage" and not "Your homepage", I think it is okay that they won't match, and would cause less confusion for now.

What do you two think of this? Also, we are interested in the opinions of anyone else watching this task.

Sounds good to me!
(And sorry for the confusion)

Okay, I am going to change this requirement in the description.

MMiller_WMF updated the task description. (Show Details)Mar 6 2019, 11:22 PM

Change 494862 had a related patch set uploaded (by Sbisson; owner: Sbisson):
[mediawiki/extensions/GrowthExperiments@master] Homepage: update page title

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

Change 494862 merged by jenkins-bot:
[mediawiki/extensions/GrowthExperiments@master] Homepage: update page title

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

Etonkovidova updated the task description. (Show Details)Mar 8 2019, 1:19 AM

The page title is updated:

In T217927, we are continuing to discuss the title of the page, in light of the fact that the modules are titled in 2nd person (e.g. "Your impact"), and the homepage also says "Your" and whether that's too much. We're pretty sure we want to keep the modules in 2nd person, but we're still talking about the title of the page. No need to change yet -- we will make this decision final a little later.

MMiller_WMF updated the task description. (Show Details)Mar 21 2019, 11:42 PM

This is waiting to be checked in our target wikis.

Cntlsn added a comment.EditedJun 14 2019, 11:08 AM
  • Red link: I think it's okay that this is still a red link. I'm going to put this in the "future versions" section of the description as something to think about in the future for when we want to drive more traffic to the page.

@MMiller_WMF
I'm resurfacing this as I think making the username link blue is technically correct, and it would help the Homepage discovery.

Why a blue link should be considered correct:

  • When the username is rewired to redirect to the Homepage it is actually linking to an existing page, so it should technically be blue.
    • Also, on the Homepage the tab link to a non-existing user page is correctly displayed in red, so we're not compromising consistency.

Why it could help Homepage discovery:

  • If a newcomer has basic Wiki experience they should know that a red link is linking to a non-existing page, and as a consequence they might not feel invited/confident to click on their username in the first place.

This change could be a first move in addressing the issues raised in T212280

@Cntlsn -- I think your theory makes sense (though I don't know if we have evidence that it's correct -- you could imagine it the other way around, that a red link is attractive). In any case, I think you should make a subtask of T220552 about this, and we can triage it later. I am eager to see the homepage discovery rate after we implement T222852 to see if it continues to need improvement.

MMiller_WMF closed this task as Resolved.Jun 19 2019, 10:35 PM

This has been working well in production for weeks.