Final Design - Explaining the Metaphor









This exhibition piece is a metaphor for the term “variable” used in the computer programming language Java. The metaphor plays with the idea that a computer variable is much like a symbol that can be used in mathematics to refer to a given value. An example of this is p, which equals a circle’s circumference divided by its diameter, one can then use p at any time and it will refer to its given value.

In my metaphor, instead of using something like p which already has a value, I gave the variable the name x. This is because x is commonly used in mathematics to show that a value goes there, without defining what it is. The x can then be given a value, defining the so far undefined variable. The interesting part is that the value of x can then be changed again, replacing its value with a new one, which thus changes the outcome of the equation. In both Java and mathematics this is an extremely useful tool used to update your code or an equation.

Some of the less obvious features of this metaphor are that the variable can only have one value at a time and that the value of the variable can range from a simple integer, a complex equation or even a decimal number, while if nothing is set for the variable it equals zero.

Another awesome link. This is where I found the the code for the letter box - and where I learnt how to use it. Plus it's really really cool!

First Ideas

My favorite first ideas are of a sandwich where the variable is the bread or meat or something. It can only hold one bread or meat at a time, and whatever you choose will change what the sandwich will turn out like.



My second ideas is to have a screen that reacts to people. Both the quantity and and movement of the crowd would change how much static is one the screen, this means the value of the variable is the actual spectators. I really like the idea of how people can passively become a part of my "programme" - even by just walking past. I think This would make people interested in it and want to have a closer look.

Variables


We were asked to explore the term we have chosen and try to really understand what it does/means. I think explaining the term Variable and what it encompasses can best be described by answering the three following questions. Each new question moves into a deeper understanding of the term, the first I knew before I started this project the second two moves much further.
What: What is a variable?
A variable is a word or letter/s that represents a number. This number can be changed or updated as the application plays out, thus the name
Why: Why use a variable?
A variable is used to represent a changing number (for example: the distance between mouseX, mouseY  and the centre of the screen) using an long equation could do the same job though however variables can easily repeat an equation many times using less space and making the code more comprehensible in the same process. To summarize: A variable can be used to organise (esp. if using long or complicated equations or lots of code) your code, this can make it more comprehensible and thus easier to edit later or easier for someone unfamiliar with your code to edit it. Similarly it can be use to make your code less comprehensible and thus harder for someone else to mess with your code – if you are that way inclined.
Where: Where should I put a variable instead of using an array or class or something?
This is a question about how a variable relates to others in processing and comparing what would be the most effect of the two. As such, it takes a certain amount of intuition and understands of the nature of variables, as described above, but I will give a small explanation that will most likely have exceptions. A variable should be used anywhere where the code is slightly complex/long  ( if the amount of code used decreases with the use of the variable than you are on the right track, although is not necessary) and uses equations that update or change, so long as a class wouldn’t use less code to do the same thing.

Project 3 - Coding Exhibition

The third and final project for DSDN 142 is an extremely open one where we are asked to create a metaphor about a term we were using during the first two projects. We are able to do this in any medium so the design possibilities are nearly endless. My first thoughts are to do either if/else or variables.

Reflection

Above is my final design (click on it for a link to my actual programme), it has come a long way since my initial ideas, and I am very happy with how it has turned out. The most important thing I learned during this project was to actually ask for help - sometimes. Perhaps it's my stubborn nature but at certain points during this project, as I am sure is true of everyone during this project, I got stuck on something I was trying to do. The problem is that in one instance I ended up spending several days trying to do something that couldn't be done. Or at least couldn't be done the way I wanted, while still using minim. If I had of asked a tutor I could have saved a lot of time, but the thing was I always felt so close to cracking it, and I didn't want to ask for help if I could do it myself.
Overall I really enjoyed the freedom of this project and look forward to the next.

Final Design


I used the morphological matrix with a collection of interesting colours , shapes and styles (i.e. with/without fill, white/black background ect.) to find the best looking shape for my sound shape. Some were more aesthetically pleasing than others, some related better with the sound and others showed how the differing pattern the sound-shape made better. Needless to say, it was a balancing act and not an easy thing to chose one over another. I ended up choosing a gold colour because it fitted the sound well, I gave it a  strong stroke for aesthetics and a slightly see-through fill to help illustrate  the evolving patterns made when moving the sound-shape.

Fixing my background turned out to be relatively easy, the problem was that I had made a background then layered a rectangle over it with a slight transparent. Removing the background fixed the original problem but presented a new one. When I made the rectangle black, it meant that the programmed starts with a light background and fades to black, this is an annoying problem and I am unsure of how to resolve it.



Sound Updates













I decided the sound for my sound-shape should be thesound of playing wine glasses. I chose that sound because it is a soft and harmonic sound that sounds like a spinning object, like my design.  A rather cool feature I have also added is a volume pan from left to right, which I decided was necessary because when the design is moved around the screen in a circle there was no change in the sound. It also gives the programme a more dynamic interaction. I then added a frequency oscillator that change with the mouses speed to make my programmes sound more consistent with the image when the mouse is shaken or rapidly moved around the screen.