Sunday 11 January 2009

Random vs Algorithmic

After hitting a dead end with the random website generator, I have decided to take a different path. My new idea came from looking at the website infosthetics.com. On there, they visualise data in lots of innovative ways. These two examples from the website use an algorithm based on the digits in Pi.

http://www.avoision.com/experiments/pi10k/index.php

http://flickr.com/photos/peewack/102585611/in/set-72157594180898707/

The music or image is made from the numbers, but are they picked at random? Not strictly, as the writer of the software is aware of the algorithm, and so has made a choice. Having said that, the list of digits has probably been pasted from somewhere like this:

http://www.cs.ualberta.ca/~smillie/Pi10000.html

The algorithm and in fact the program have nothing to do with pi or with circles, but rather use the digits in pi as data. As most people only know pi up to 5 or so decimal places, the numbers after that are in a way being randomly selected.

A way to cancel any doubt as to whether this idea is random or not is to introduce input from a third party: Interactivity.

With the coloured pi image above, the colours were selected by the creator, which stopped it becoming random. If the colours were selected by someone else, simply asked to put a colour next to each digit and not told about the algorithm, you could say the colours have been randomly selected. The picture would look different every time too.

Algorithm + Interactivity = Random

I need to write a piece of software that just asks people to fill in text boxes, then uses that data to create some artworks.

Tuesday 6 January 2009

Design for Interactivity

My idea is based on people using the word 'random' incorrectly. It is a mathematical term meaning there is an equal chance of anything happening. For example if you roll a dice, there is an equal chance of any of the 6 numbers coming up, so the number is randomly selected.

People then starting using the word to represent a decision that appears to have been made randomly. For example if you put every possible colour into a hat, and picked one to be your hair colour, it is unlikely to be a normal hair colour pulled out. In life, however, there is not an equal chance of having black hair and having green hair. If somebody then dies their hair green, people might say "your hair is really random". This of course isn't random, as they chose green, unless they actually pulled the colours out of a hat, which is just strange.

Now, this bad use of 'random' has escalated, and people will say it when meaning something mildly different occurs. I hear things like "let's go to a few random pubs" which means "let's go a few pubs we have never been into before". In order to go to a random you could put the names of every pub in your City into a hat, and pick. Other random generators could be tossing a coin, spinning a bottle, rolling a dice, or using a calculator or computer's random function.



My idea is to search web 2.0 sites for people who use the word 'random' badly, and display a random site from within this search.

Initially I wanted to save the search results from just 'random' in a few web 2.0 sites, and then by clicking a button it would display a random page. This proved, after a couple of weeks trying, to be out of my range in terms of coding. It would require knowledge of xml, php and actionscript, and the ability to convert them in Python, a language used to write google applications.


I took a slightly easier route, and have had some success, with some help from Paul on the actionscript, and various forums and tutorials. I have managed to write a program that searches google for the word 'random' plus another random word, it then displays the top result from a randomly selected web 2.0 site.

There a couple of problems, firstly the display of the page only works 70% of the time for some unknown reason, and goes to a google search results page the rest of the time. Secondly, the other word being searched has to be pulled from a list, but I don't have one, and cannot find one to borrow (steal). The result being either I type every word I know, or get the user to type in their own word.

I have written the code for the user typing in their own word, but this no longer becomes random, and is selected by the user. I think I will have to try harder to get an array of words from the internet somewhere.

Please leave any suggestions as a comment, thanks.