Of all the web based applications to come along in the last few years, StumbleUpon is easily the one I use the most. By clicking that little button, I have discovered so many great websites and even greater information that I would never have found by traditional searching methods.

As a former web-developer, one of the things I do is try to figure out how neat web apps work. Now, before I get rolling, I have to say that EXACTLY how StumbleUpon works is a trade secret and they certainly aren't going to reveal that info to me. Also, a comprehensive overview of how it might work would make for an article that is far longer than this format allows for. What follows is a simplified theory on how it works based on my years of web developing and some probing around the application.

The heart of any large web application is the database. If you aren't familiar with what a database is, the best everyday example I can give is the phone book. A phone book is just a lot of data records that are organized by region, business or residential, town, and then alphabetically by last name. Because the structure of the phone book has become common knowledge, we can easily find that data that we want. That common knowledge of looking up the region, then deciding if the number we want is residential or a business, then looking up the town and then quickly going to the alphabetical section where we know that John Q. Public's number will be - under the P. That process might be referred to as an algorithm for finding a phone number.

I expect that StumbleUpon has a very large database!

When you sign up for StumbleUpon, they ask you to define a few categories of interest to you. This helps them to direct you to web pages that have been put in those categories.

When you press the button, a message is sent to the StumbleUpon database that most likely is just your User ID. The database looks up the categories that you chose when you signed up. From there, the application most likely chooses one of those categories randomly. Then the application goes through that category and finds a webpage in that category that is new to you, and directs your browser to that page.

Now it gets a bit more complicated as certain questions are raised. The first one that comes up for me is, how do they know the website is new to me? Well, I imagine that the websites that you have visited through StumbleUpon are tracked. I say this because I have gotten to the point in some StumbleUpon categories where StumbleUpon tells me that there is no more for me to see in this category. (Yes, I stumble a lot.)

Now I wonder how it knows what type of web pages in a certain category I will like. That's what the thumbs-up and thumbs-down buttons are for.

If I give a page a thumbs-up, it probably adds a point to not only that page, but to the keywords associated with that page, so other pages with a high correlation to that pages keywords will be weighted heavier in favour of showing up under my User ID.

thumbs_down

If that's the case for the thumbs-up, then the thumbs-down has to function in a similar manner. Hit the thumbs-down button and and the application, in effect, takes away a point for that page and pages with similar keywords.  The thumbs-down button does have a few more features to it though. If you click on the black arrow-down part of the button, you're given a few options: Not-For-Me, Report Spam, Duplicate Content, and Block Website.

Not-For-Me is the basic function of this button. Report Spam sends a message to StumbleUpon that the page served up is not anything like what it should be and is just, well, spam! Duplicate Content helps StumbleUpon know when you get served a page more than once. That could happen if the page has been added under more than one category. Block Website will block the entire website that the page was served from. This is what I use when I come across a page that is in another language or just completely not for me.

Here's a little chart to give you a visual representation of the simplified process, as I believe it happens.

pseudo_flow

That's the simple underpinnings of StumbleUpon. As you move to the right of the StumbleUpon toolbar, there are different options you can use to refine your Stumbling and add to the quality of the rankings of pages.

stumbleupon_bar

Do you use StumbleUpon? What's your favourite site that you have stumbled upon? Let us know your StumbleUpon stories in the comments below.