User:Melchoir/Random links proposal

This page is a proposal for a new MediaWiki special page that would generate a list of random articles similar to the Special:Random feature. Or, at the least, a feature local to Wikipedia that does the same thing.

Since I have a lot to say, and the new feature request system around here seems screwed up, I'm using this page to describe the idea and hopefully to host discussion on it. Soon, I'll be posting links to this page wherever I think is appropriate.

If you like it, vote for bugzilla:04028 – Proposal for new special page: list of random links

I invite you to treat this proposal as a talk page; just comment at the bottom. Please?

The idea edit

I've put Wikipedia's Special:Random in my Safari bookmarks bar, right next to Slashdot. It makes life worth living.

That said, it seems to me that a much more useful feature would be a Random links page. Imagine a page that looks almost exactly like Special:Recentchanges, except that instead of displaying 50 links to recently edited articles, it displays 50 links to random articles, along with, for example, the page size in kB, the date of last edit, the number of edits, whether it is categorized, a stub, an orphan, a dead-end, etc.

The basic motivation is this: when was the last time you clicked on Special:Random just once?

Advantages edit

  • Orders of magnitude faster than requesting an article from Special:Random, waiting for it to load, requesting another....
  • Takes less effort: you're virtually guaranteed to see something interesting and unexpected within just two clicks, vs. the crapshoot that is Special:Random.
  • No more waiting for a page to load just to find out what its title is.
  • You don't have to read about census-designated places.
  • A totally insignificant drop in server load is still a moral victory!
  • Improve your intuitive picture of the "average article".

Disadvantages edit

  • Doesn't exist. (or does it?)
  • Takes more effort: two clicks to reach content, vs. the one click required by Special:Random.
  • Might encourage narrow-mindedness.
  • Might suppress patronage of worthy pages with boring titles.
  • More threatening to newbies than the simplicity of Special:Random.
  • Hopefully addictive.

The bottom line edit

If it existed, I'd use it. A lot. And I can't imagine that I'm alone here.

Melchoir 07:17, 17 November 2005 (UTC)

Discussion edit

bugzilla:03951 edit

Hi! The feature request from
bugzilla:03951 – feature request: __NORANDOM__ in order to influence page_random=0
is about having control if a page is shown in special:Random/<namespace> and would influence the special page you have proposed.
What are you thinking about such a mechanism?
Would you like to specify the full syntax and related actions?
Best regards Gangleri | Th | T 09:19, 19 November 2005 (UTC)

As for your requested __NORANDOM__ attribute, I'm personally not sure if it's a good idea. It might be useful for truly new articles, but when would the attribute be removed, and by whom? Would it be applied to pages that include any of the various cleanup tags? If so, wouldn't that decrease attention to pages that need it most? Most fundamentally: if __NORANDOM__ is to become a label for pages that aren't ready for public consumption, wouldn't it be better to create another attribute explicitly for that purpose? (And I'm not advocating that, either!)
In any case, I like your comment, "It would be a community decision to use this feature or not." I might argue against the use of __NORANDOM__ here at Wikipedia, but if it's easy to code and maintain, then it could be a useful addition to the MediaWiki software.
As for its interaction with my proposed feature: I think that by logical defualt, a Random Links page should behave exactly like Special:Random when choosing links. If __NORANDOM__ is implemented, then Random Links should not link to articles so marked.
I'm not sure what you're asking for when you say "Would you like to specify the full syntax and related actions?" I'm not a PHP or MediaWiki developer... Melchoir 20:52, 20 November 2005 (UTC)
Thanks Melchoir for your feedback. I started bugzilla:03951 because of the "broken" titles which I need to maintain for some time at wiktionary:yi:special:Allpages/%E2%80%AA.
I mentioned __NORANDOM__ but there should be also a __RANDOM__ which puts the proper value in the "page_random" field if the page should be shown in special:Random/<namespace>. Before implementing the request "full syntax and related actions" would need to be specified. Best regards Gangleri | Th | T 08:07, 21 November 2005 (UTC)

A workaround edit

Hi, there is a slight problem with your proposal: the way random pages currently appear to be done is that every page has a random number associated to it, and Special:Random uses the first matching page with page_random > a random number it thinks of (I'm not actually sure how it deals with the case when there is no such page, but it appears just to redirect to the main page instead!).

There's no easy way, that I can think of, to trick mysql into giving us n random pages at once. That would involve n SQL queries, clearly too much for the WP server if n is 50 or even 500.

However, what we could do is just use the n pages whose page_randoms start at a given random number (or just above it). That's not random, but it's unlikely anyone would end up hitting the same n-page block twice in a day or so, and, in theory at least, we could reassign the page_random value periodically. There's a greater chance, then, of not having n pages left to show; but, of course, we can just show what we've got.

Once you make all those simplifications, it's not actually difficult to implement. I still no virtually nothing about MediaWiki, but I managed to come up with a (very very ugly) proof of concept in about an hour.

I'm not so sure about presenting the recent changes information with it - do we actually keep all recent changes information in that table, or just the recent data?

I'm hacking along happily. Unfortunately, I don't have the disk space for a local WP mirror, but it appears to work on my toy wiki. It's definitely doable, I don't see anything that would make performance very bad, and it certainly sounds like an interesting project.

However, I must admit I personally just open twenty firefox tabs with random pages by ctrl-clicking "Random article" the appropriate number of times (which I've set to open a new tab in the background). Maybe that'll solve your problem, too?

RandomP 23:56, 19 May 2006 (UTC)