Experimental interaction mid-term project

Experimental interaction mid-term project demo


Title: Pet Cactus

What?: Pet cactus is a programme that visualises the amount of light that your cactus receives into the virtual world giving your plant a second life in your computer.


So we came up with this idea firstly from the “Pet Rock” and how it would be cool if the pet rock could actually connect to your computer and a pet simulator would appear, adding another dimension to the pet rock.  It was also party inspired by virtual pet programs such as the Tamagotchi and Digimon, however our project is just a dip into the virtual pet world and is more of a data visualisation.

The second inspiration came from an article I read long ago that stated how plants actually make sounds and the bioacoustics that the plants make could show the conditions they are in. A happy plant would make a high pitch gurgling noise while a suffering plan would make a sound more akin to that of a scream. I was intrigued by this as it turns out maybe plants maybe were reacting a lot more than we thought, just through ways that could not be perceived by humans. Though plants visibly reacting to outside factors  through screaming would be a scary thought.

From there we decided it would be cool to create a Cactus pet simulation that measures the conditions that the plant is in and translate that visually. At the same time, we would give the plant some emotions adding another dimension to botany.

Plants could make sound!


We decided to give the plant two emotions to keep it simple, one that is happy which would show when it was experiencing optimal situations and one a sad emotion.

Innitial videos:

These were the original videos we designed. It was a good start however, I thought that although it was pretty humorous we should create something more cute and less creepy as we wanted people to be able to connect with their plants. Thus we created these


For this task, my role was as a programmer. From the onset, the main challenge was trying to understand even the most basic of codes.  It frustrated me A LOT that I couldn’t understand anything I was reading. Hence I looked up tutorials online to at least level up my basic literacy.  I settled on learning from scratch through lynda.com. It was tedious to learn from the basics, but I thought it was really useful. Besides being able to finally understand the base code enough to discover the variable I could use, I now understand how to use strings and arrays ! Which allowed me to create the brightly patterned graph that appears on the top left hand corner of the screen and also sentences that the “cactus” says.

Base code

Discovering that the variable the measure light is translated to is “Xbyte” was the big defining moment for me and it was what allowed the project to move forward.

Further steps

Initially we wanted to measure other variables too such as the amount of water the plant is receiving and the temperature of the room. However we quickly realised that it was difficult to even understand the most basic of codes and thus focused our efforts on figuring out how to measure light.Thus if we were to bring this project further it would be great to able to measure the other variables too.

I had also tried to create 3 different emotions for the plant. However, I ran into problems trying to create a complex if/else statement and couldn’t go beyond creating just one and thus the cactus could only show 2 emotions. It would be great if on top of measuring all the other emotions, it cactus can in turn show more complex emotions eg. actually stating its hot and show it sweating or show it shriveled up and saying it was thirsty.

Thoughts and Reflections

I think I speak for the whole class when I say that programming was a really daunting task for most of us. I felt like I was 6 years old again, not understanding anything that I read, trying to do programming. Nevertheless, I was really surprised at the things my classmates were able to come up with despite having  little knowledge in programming.

Programming is something that I definitely want to get better in as I want to venture into interactive media and I want to be able to create games in the future. It is amazing how limitless it is what we can create with programming and I hope I would be able to effectively use this tool.

Leave a Reply

Skip to toolbar