Last Update:
2017-Jan-06

I support the FairTax!
FairTax.org
Find out why.

This page generates random website names and allows you to visit them (if they exist). The complete rationale for this (and much more) is explained below. If you just want to get started right away, enter your desired number of letters in the site name and the number to generate, then click on the "Search" button.


Search Parameters
Number of Letters in the Name:
Number of Sites to Generate:  (max 64)

Random Site IP Address Who Is?
No results to display.    
Tips for Better Searching
  • As you might expect, you will find more sites with shorter names. I have found upwards of six-letter names, but that is rare.
  • You will find many "parked" domains (especially when searching for sites with four letters). These domains have been registered, but there is no active Website. A default Website provided by the registrar will be displayed, and they will generally try to sell you a domain (or two or three).
  • Many such registrars will (try to) pop up a lot of windows. Proceeding without a good pop-up stopper could be hazardous to your screen real estate. Most browsers now offer a built-in pop-up stopper, but if yours doesn't, I recommend Pop-up Stopper from Panicware.
What is The Million Monkeys Internet Search Engine™?

I hate to write "someone once said," but I cannot find a definitive attributation of the following quote:

"A million monkeys typing on a million typewriters would eventually produce the entire works of Shakespeare."

My (admittedly non-exhaustive) research indicates that this was said by either Thomas Huxley or Arthur Eddington in the 19th century. Huxley gets more mention than Eddington, but I have found no definitive source. (If you have such a source, please contact me.)

What does this have to do with searching the Internet? Well, this "search engine" generates site names randomly. If you do it often enough, you are bound to find the answer to your question. Or, at least, something mildly interesting. :-)

Why Does it Exist?

It all started when I found a couple of unusual referring sites in my Web log statistics. Sites like www.wr18.com, www.malixya.com,and www.saulem.com (perhaps interestingly, all nothing more than parked link pages now). I thought to myself, "were these site names randomly generated?" (OK, that's a tiny bit of a stretch, but it fits the story very well. :-)

Well, I checked 'em out, of course. Most turned out to be blogs, the appeal of which I have never quite understood. But a few of the sites were not entirely uninteresting, and I thought again to myself, "I wonder what other not-entirely-uninteresting sites I can find by randomly generating site names."

I put together a prototype page and found it oddly captivating. And now, I invite you to be oddly captivated. You might find yourself, as I did, repeatedly saying, "I'll try once more."

How Does it Work?

Generating random site names is not particularly difficult. My initial implementation was quite crude and just randomly selected letters of the alphabet. In order to improve the "hit rate," I improved the generator to select letters using the same frequency as they are used in the English language.

In order to determine if a random site name might actually exist, I perform a simple DNS lookup. These are generally fast for sites that exist but slow for sites that don't. Since most of the random site names don't exist, it was taking too long to produce a page full of ... well, mostly nothing.

Since most of the time looking up nonexistant names is spent waiting for the TCP/IP call to complete, it would be much more efficient to look up all the names at once. So, I wrote a little command-line application that does essentially that. It spawns a thread for each name and looks them up in parallel. Now, looking up twenty sites is almost as fast as just one. This made it much easier to "try once more."

How Could it be Improved?

There are a number of improvements I'd like to make. In no particular order:

  • Support domain types other than ".com."
  • Integrate numbers into the generated name.
  • Allow user-specified prefix and suffix.
  • Allow user control of the letter probability distribution.

If you have any additional ideas, feel free to pass them along.

Page generated in 0.008 second(s).