Hello!
Me and May have been experimenting with different ways of finding articles related to the one the user is currently reading. This is a feature we are considering for the mobile app - to make it simple to keep going through to related articles after reading the current one. Mediawiki doesn't offer any such functionality, so we've to 'cheat'.
I have written a quick userscript to test out the different methods of finding 'related' articles. You can enable this on your logged in desktop english wikipedia account by:
1. Going to this page: https://en.wikipedia.org/wiki/Special:MyPage/common.js 2. Add this line to it: importScript("User:Yuvipanda/lost.js"); 3. Save the page!
Now, you can go to any wikipedia article and three buttons should show up under the title. If they don't, do a hard refresh (cmd + shift + r in OS X), and they then should. The first button does a category based related/random article, the second one a link based, and a third one (when it appears) a slightly more involved link based related/random article one. We're doing this to iterate quickly (the current stuff took me less than an hour to build) on the various ways to determine which related article to show.
Do take a look, click around a little and get lost, and tell us which method you prefer!
Thanks :)
P.S. The code is terrible. Please don't flame me for it.
newbie q - Where exactly do I add the code?
On Mon, Nov 11, 2013 at 12:34 AM, Yuvi Panda yuvipanda@gmail.com wrote:
P.S. The code is terrible. Please don't flame me for it.
-- Yuvi Panda T http://yuvi.in/blog
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
Go to the talk page and insert:
importScript("User:Yuvipanda/lost.js");
then save!
On Mon, Nov 11, 2013 at 1:04 AM, Vibha Bamba vbamba@wikimedia.org wrote:
newbie q - Where exactly do I add the code?
On Mon, Nov 11, 2013 at 12:34 AM, Yuvi Panda yuvipanda@gmail.com wrote:
P.S. The code is terrible. Please don't flame me for it.
-- Yuvi Panda T http://yuvi.in/blog
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
Insert by:
1. Click on https://en.wikipedia.org/wiki/Special:MyPage/common.js 2. Click 'Create' to create the page 3. Paste the following text into it:
importScript("User:Yuvipanda/lost.js");
4. Click save!
Our userscript enabling 'UI' is terrible and hacked up. Something that we could perhaps fix some day...
(No talk pages involved :D)
-buries face-
On Mon, Nov 11, 2013 at 1:16 AM, Yuvi Panda yuvipanda@gmail.com wrote:
Insert by:
- Click on https://en.wikipedia.org/wiki/Special:MyPage/common.js
- Click 'Create' to create the page
- Paste the following text into it:
importScript("User:Yuvipanda/lost.js");
- Click save!
Our userscript enabling 'UI' is terrible and hacked up. Something that we could perhaps fix some day...
(No talk pages involved :D)
-- Yuvi Panda T http://yuvi.in/blog
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
What does Meow, Linky, Closer mean?
*Jared Zimmerman * \ Director of User Experience \ Wikimedia Foundation
M : +1 415 609 4043 | : @JaredZimmermanhttps://twitter.com/JaredZimmerman
On Mon, Nov 11, 2013 at 10:19 AM, May Tee-Galloway mgalloway@wikimedia.orgwrote:
-buries face-
On Mon, Nov 11, 2013 at 1:16 AM, Yuvi Panda yuvipanda@gmail.com wrote:
Insert by:
- Click on https://en.wikipedia.org/wiki/Special:MyPage/common.js
- Click 'Create' to create the page
- Paste the following text into it:
importScript("User:Yuvipanda/lost.js");
- Click save!
Our userscript enabling 'UI' is terrible and hacked up. Something that we could perhaps fix some day...
(No talk pages involved :D)
-- Yuvi Panda T http://yuvi.in/blog
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
On Mon, Nov 11, 2013 at 3:39 PM, Jared Zimmerman < jared.zimmerman@wikimedia.org> wrote:
What does Meow, Linky, Closer mean?
'Meow' is Category based - it picks an article with the following process:
1. Pick a non-hidden category of the current page at random 2. Pick an article in that category at random 3. Go to that picked article
'Linky' is simpler:
1. Pick a random outgoing wikilink of the current page 2. Go to that picked wikilink
'Closer' is slighlty more complex, and works only when you have used 'Linky' at least once:
1. Make an intersection of all links that were present both in *this* article and the previous article 2. Pick a link out of the intersection at random 3. Go to that link.
Which one do you think gives you the best 'related to the current article, but slightly random' results?
I thought Closer meant random+Geonearby
I'd recommend this isn't a button but a list—
Related: Item Title Item Title Item Title
Nearby: Item Title Item Title Item Title
For related we use the Meow method, then switch to the Linky Method when the data exists. but always remove any pages that the user has seen this session (is that even possible?)
We should also make sure the same items aren't appearing in both lists
*Jared Zimmerman * \ Director of User Experience \ Wikimedia Foundation
M : +1 415 609 4043 | : @JaredZimmermanhttps://twitter.com/JaredZimmerman
On Mon, Nov 11, 2013 at 11:19 AM, Yuvi Panda yuvipanda@gmail.com wrote:
On Mon, Nov 11, 2013 at 3:39 PM, Jared Zimmerman < jared.zimmerman@wikimedia.org> wrote:
What does Meow, Linky, Closer mean?
'Meow' is Category based - it picks an article with the following process:
- Pick a non-hidden category of the current page at random
- Pick an article in that category at random
- Go to that picked article
'Linky' is simpler:
- Pick a random outgoing wikilink of the current page
- Go to that picked wikilink
'Closer' is slighlty more complex, and works only when you have used 'Linky' at least once:
- Make an intersection of all links that were present both in *this*
article and the previous article 2. Pick a link out of the intersection at random 3. Go to that link.
Which one do you think gives you the best 'related to the current article, but slightly random' results?
-- Yuvi Panda T http://yuvi.in/blog
On Mon, Nov 11, 2013 at 3:56 PM, Jared Zimmerman < jared.zimmerman@wikimedia.org> wrote:
I thought Closer meant random+Geonearby
Heh, I was just randomly making names up. Was not initially planning on pushing this out wider than just May, but figured it'd be a good idea.
I'd recommend this isn't a button but a list—
In the app, these won't be buttons, but 'pull up' actions - bullet point #2 of https://www.mediawiki.org/wiki/Wikipedia_App_Design#Page_1_:_Feed_me_more_kn... be exact.
For related we use the Meow method, then switch to the Linky Method when
the data exists. but always remove any pages that the user has seen this session (is that even possible?)
Makes sense. And yes, possible in the app.
Thoughts on the 'closer' method? It does tend to 'wander' less, but has an annoying tendency to keep going back to the ISBN article. Perhaps start with 'closer', but switch to linky when a duplicate is detected?
That makes sense, as long as we don't keep suggesting the same articles I think its fine.
*Jared Zimmerman * \ Director of User Experience \ Wikimedia Foundation
M : +1 415 609 4043 | : @JaredZimmermanhttps://twitter.com/JaredZimmerman
On Mon, Nov 11, 2013 at 11:34 AM, Yuvi Panda yuvipanda@gmail.com wrote:
On Mon, Nov 11, 2013 at 3:56 PM, Jared Zimmerman < jared.zimmerman@wikimedia.org> wrote:
I thought Closer meant random+Geonearby
Heh, I was just randomly making names up. Was not initially planning on pushing this out wider than just May, but figured it'd be a good idea.
I'd recommend this isn't a button but a list—
In the app, these won't be buttons, but 'pull up' actions - bullet point #2 of https://www.mediawiki.org/wiki/Wikipedia_App_Design#Page_1_:_Feed_me_more_kn... be exact.
For related we use the Meow method, then switch to the Linky Method when
the data exists. but always remove any pages that the user has seen this session (is that even possible?)
Makes sense. And yes, possible in the app.
Thoughts on the 'closer' method? It does tend to 'wander' less, but has an annoying tendency to keep going back to the ISBN article. Perhaps start with 'closer', but switch to linky when a duplicate is detected?
-- Yuvi Panda T http://yuvi.in/blog
Very interesting exercise! This is one of those mobile-initiated features that desktop users would welcome as well.
Just curious: have you considered to use data from Special:WhatLinksHere?
Incoming links are less evident than outgoing links. They might help users discovering pages with less obvious connections, yet still interesting.
In the future we want to see how we can improve relatedness by learning what the most used article linkpath patterns are. For example, If we know that "feline dwarfism https://en.wikipedia.org/wiki/Dwarf_cat" link is being clicked most frequently from Grumpy Cat article, we'd want to learn that pattern and use it for other users when they want to learn more about Grumpy Cat. I'm trying really hard not to use the word tracking here. It doesn't have to associate a user to any clicks. Just like how page views does not associate any users to a view. Example: https://www.mediawiki.org/wiki/File:WP_App.pdf (Page 7)
On Mon, Nov 11, 2013 at 10:28 AM, Quim Gil qgil@wikimedia.org wrote:
Very interesting exercise! This is one of those mobile-initiated features that desktop users would welcome as well.
Just curious: have you considered to use data from Special:WhatLinksHere?
Incoming links are less evident than outgoing links. They might help users discovering pages with less obvious connections, yet still interesting.
-- Quim Gil Technical Contributor Coordinator @ Wikimedia Foundation http://www.mediawiki.org/wiki/User:Qgil
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
I think that navigating related content is a key part of the Wikipedia experience [1][2] and surfacing related articles is really great. I'll check this to see how each method works on different articles.
I was also thinking a bit about how we could present this to users, and there may be options where we can use more than one criteria and make articles more prominent. Just an idea to add to the exploration:
We can show three article "cards" to the user after reaching the end of the article (as if they were thrown randomly). The cards include article title, image, and the criteria (e.g., nearby). Depending on the article different criteria can be used (e.g., depending on whether the linked articles are stubs, the distance of the nearby articles...). Optionally, cards can be discarded for new random cards to appear (maybe keeping the criteria for the next card).
Pau
[1] http://xkcd.com/214/ [2] http://www.ted.com/talks/rives_reinventing_the_encyclopedia_game.html
On Mon, Nov 11, 2013 at 7:28 PM, Quim Gil qgil@wikimedia.org wrote:
Very interesting exercise! This is one of those mobile-initiated features that desktop users would welcome as well.
Just curious: have you considered to use data from Special:WhatLinksHere?
Incoming links are less evident than outgoing links. They might help users discovering pages with less obvious connections, yet still interesting.
-- Quim Gil Technical Contributor Coordinator @ Wikimedia Foundation http://www.mediawiki.org/wiki/User:Qgil
Design mailing list Design@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/design
On 13-11-11 02:19 AM, Yuvi Panda wrote:
On Mon, Nov 11, 2013 at 3:39 PM, Jared Zimmerman <jared.zimmerman@wikimedia.org mailto:jared.zimmerman@wikimedia.org> wrote:
What does Meow, Linky, Closer mean?
'Meow' is Category based - it picks an article with the following process:
- Pick a non-hidden category of the current page at random 2. Pick
an article in that category at random 3. Go to that picked article
'Linky' is simpler:
- Pick a random outgoing wikilink of the current page 2. Go to that
picked wikilink
'Closer' is slighlty more complex, and works only when you have used 'Linky' at least once:
- Make an intersection of all links that were present both in
*this* article and the previous article 2. Pick a link out of the intersection at random 3. Go to that link.
Which one do you think gives you the best 'related to the current article, but slightly random' results?
Meow has a few problems. * It is not good on stubs, because stub-categories aren't hidden. * It sometimes leads to a category. * It sometimes leads back to the original article. * It sometimes leads to images. (I think all 4 can be reproduced via https://en.wikipedia.org/wiki/Burke%27s_Barrage )
On 13-11-11 10:28 AM, Quim Gil wrote:
Very interesting exercise! This is one of those mobile-initiated features that desktop users would welcome as well.
Just curious: have you considered to use data from Special:WhatLinksHere?
Incoming links are less evident than outgoing links. They might help users discovering pages with less obvious connections, yet still interesting.
+1 This might help break out of loops.
The other issue is items that tend to be overlinked (https://en.wikipedia.org/wiki/Wikipedia:OVERLINKING), eg I ran into links to [[United Kingdom]] and to [[London]] - I'm not sure if there's a list anywhere, for bot/script purposes?
Otherwise quite interesting :)
(If you need more ideas/feedback, there've been a few dozen requests for "a better random button" in The Village Pumps over the years: https://en.wikipedia.org/w/index.php?search=random+prefix%3AWikipedia%3AVill... )