Next week is the beginning of the Digital Architecture: Passages Through Hinterland exhibition. It is organized by Ruairi Glynn the author of the very interesting blog Interactive Architecture and Lecturer in Architecture & Interaction Design. The exhibits/exhibitors tackle varying culturally relevant topics such as the technologies of sight in urban space and climate change each using concepts or realistations of interactive or responsive architecture. Others, such as Ruiri, endeavor to bring closer the reality of digitally enabled architecture using computer vision and artificial intelligence to allow dancing robots to engage people in a conversational environment. Another of the exhibits, also utilizing adaptive behavior, consists of a grid of panels which act as a grid of cellular automaton which gives the space a living adaptive skin. I’m personally very excited about this exhibit because during my studies I have had a fascination with ALife which has a hugely entwined relationship with cellular automaton.
The two day workshop started on Saturday (Day 01) from the very ground up, taking us through the class structure, syntax and implementation of some basic openFrameworks projects. They kindly set up two projectors to cater for those on OS X using Xcode and those on Windows using Code Blocks. The syntax is not different between platforms however there are some minor differences in the IDE experience. Using this setup Memo, Joel and Merek led us through three examples including a simple drawing and interaction demo, a particle system and a very basic sound synthesizer. Using these examples, the workshops leaders demonstrated the basic setup of the three files required to compile our first C++ application. The main.cpp file – which is where the magic happens – is similar in function structure to the basic Processing patch with a setup() & draw() function plus easy interfaces to mouse and keyboard inputs. Throughout the examples were also snippets of advice and information about standard coding concepts and practices (pointers, arrays, etc) plus basic principles of OOP concepts (encapsulation, inheritance, etc).
OpenFrameworks’ ability to leverage some of the more powerful aspects of C++ became evident on Sunday (Day 02) when we went through the addon examples, which are applications with various functionality created by the oF community for reuse. These examples included a 3D rendered model of a squirrel (of course), a client and server app communicating using TCP, UDP or OSC and a threading example. The ability to utilize threading to take full advantage of multi-core systems exemplifies the power you can wield when developing in openFrameworks. One pragmatic example of threads in use would be to enable the efficient use of multiple camera inputs plus computer vision as an interface for an interactive installation; we’re talking about 6 cameras without issue.
Although the demonstrators at this event were advocates of openFrameworks itself, throughout the workshop they were even more evangelical about the community which surrounds and supports it. All the openFrameworks libraries are completely open source and available for the community to amend, update and reuse. Each library has it’s own LGPL license – a version of the GPL which does not extend any further than the original libraries. This balance of (not too) copy-left licensing and open source methodologies, I hope, will help to continue the momentum which seems to have been generated around the openFrameworks project.
As a developer I am easily excited by the ability to use C++ without having to go through the inconvenience of a degree in computer science however the proliferation of frameworks such as these may, hopefully, accelerate the creation of more diverse interfaces to digital media than the keyboard and mouse; which is possible more exciting to the vast majority!
All of the examples which we went through during the workshop are availble from the openFramworks wiki.
Sunday @ 1pm
Outside Liverpool Street Station (Bishopsgate exit - top of the escalators)
I am aware that most people have no idea what the reasoning behind this little jaunt is. Although I don’t think anyone really needs this knowledge (as i’m just getting to grips with it) to take part I think it would be helpful to look at some of the things which have influenced this.
Lottie Child – Doing Nothing
Doing Nothing is a vital skill that can be developed. In western late capitalist metropolis life most people are working long hours with free time potentially being another form of stressful consumption. Are we stuck in cycles of hyper consumption and production on many levels including our own heads? How do you do nothing?
Last Monday i lay on the pavement near to Habitat on Tottenham Court Road from 5.30pm – 6.00 as the commuters became fewer and the evening light changed – you notice different things when you stop and do close to nothing. I ignored people but occasionally when they caught my eye they smiled and i wonder if doing nothing in public space throws all the speed and activity into contrast i wonder if it makes people reflect differently on all the doing we are doing and the ways we behave in london.
These activities are influenced by the knowledge that the city is more than just it’s built forms. Urban space and the city are a not just made up of physical but also social and mental structures. We all create our own interpretation of our environment and this is influenced by the often privatised and homogenised built up environment. The idea behind Lottie’s Doing Nothing and here other activities, Street Training and Urban Climbing, is to enable people to have an effect on their surroundings equalling that which our surroundings have on us.
Alex Villar – Upward Mobility
Click image for more detail on Alex Villar - Upward Mobility
Both these projects are also quite simply attempts to break the norms of everyday life. An way of creating new meaning and significations in space which we take for granted as existing for utilitarian purposes only. Villar’s particular flavour of retaliation shuns the everyday horizontal movement in the city, challenging the means by which city planning forces our movement in a particular trajectory. Although it was by no means his aim, any attempt to achieve any practical goals using these methods are futile at best.
It is important to remember that there are no practical goals for Sunday. No research, empirical or theoretical. Despite this there will be guidance because challenging the conventions of usual activity in the city goes against its nature.
Feel free to bring anyone who has an interest or some spare time. Don’t wear your Sunday best, just in case and bring a camera if you can. I’d appreciate it if people could document proceedings.
This combination of stop motion and live projection mapping techniques is the most stunning piece of video I have seen in quite a while. The film is entirely constructed from 35000 still images which enables the supremely detailed and high quality shifts in depth of focus. I personally have no idea about the technical intricacies of live project mapping but the visual effect of multi coloured fire streaming across those orchids is nothing but sensational; in the absolute original meaning of the word as scintillating to the senses!
The ambient, minimal music by Fedaden is also worth a mention.
I have plenty to say about my experience at the Coin Laundry on Sunday. Overall it went well and was a great experience however there is plenty of room for constructive self criticism.
I will not be getting into the details of this reflection in this post but I have been harranged into putting up some video of the event by my blogging idol, Marc. So above is a stop frame video of half an hour of the event. It contains some people actually doing washing, some people who are there for the event and a man in the bottom right who keeps hitting the payment machine. It took his money once and he got angry, he fed the machine more money and it took it again. Once bitten, twice not so shy.
I’d also like to say a thanks to all my group who are a pleasure to work with and be around. Loipon!
After reflection I feel I need to apologise for the pretentious name of our event. It was a snap decision and I resent the fact that I have forced this upon my group.
Sorry guys.
In my last post I hinted to the beginning of what I thought was impending disaster.
The original planned setup for connecting physical switches to Ableton Live was based around key mapping. Live quite nicely allows you to map a track/channel to any key (the letter ‘a’ in this case) and this key then acts as a switch. This seemed to be coupled nicely to our needs. The next stage was to get Arduino to send the ASCII code representing the key we had mapped through serial communication. This was a foolproof plan………in our minds. The problem occured when I realised we could get the Arduino IDE to print the key we’d mapped however neither I, nor my group, had the expertise to get Live to believe that an actual key had been pressed. I’m sure this is possible however I did not have the time, patience or know how to do it.
To work around this we have introduced some additional elements to the software side of the project; SimpleMessageSystem for Arduino and a custom patch for Max/MSP. SimpleMessageSystem provides the necessary firmware which is loaded onto the Arduino board and allows Max/MSP to access all the digital and analogue inputs of the board. You can see in the image below the visual representation of the analogue(yellow dots in a row) and digital(inside the blue box).
Max Arduino Patch
This has worked out quite well as Max and Ableton work extremely well together. Yesterday we managed for the first time to create a fully working system, despite it being totally out of the vastly more complex context of the launderette. We have now tested the system with one manual push button switch which has turned on one channel of music from Arduino to Max/MSP and then via MIDI mapping to Ableton Live.
Other members of the group have also today got an infrared sensor working on the Arduino board as well.
During our morning seminar with Graham we discussed the concept of databases as a contemporary abstract concept which enables a new cultural perspective in which answers are not as important as asking the correct questions.
Because of the non-linearity and abundance of data sets as structures and systems of information, we are able to investigate the relationships within these in the form of databases. This does not necessarily apply only to predefined databases which are already digitalised and provided to you in tabular format, but also conceiving a database from any circumstance in which you would like to make an investigation.
In the case of our Coin Laundry project we have looked at the data set which we are using within the project. There are the four channels of music and each have potential layers of related information. Each channel has a boolean state (on or off), a volume (between none and full), tempo, pitch, etc. We also have either our four switches/footpads or Infrared receivers. If we assume that we will only use the switches/footpads (which also have an on and off state) then we could create a relationship between the footpads on/off state and the musics on/off state. However the switches will also have a potentially usable value in the amount of time someone is standing on them. Therefore we could create a relationship between the length of time someone stands on the footpad and how loud, fast or distorted the music becomes.
We need to consider the potential data sets which we could make use of within the interaction between people in the CL and the system we are setting up.
I started writing this post a few hours ago and finished it after encountering some major technical barriers with our intended process for communicating between physical switches and our our choosen music program. It is clear to me and the rest of the group that we have left our grand ideas and complex technical aspirations until quite late in the day and I suspect we about to start suffering the consequences. Whoop!! \o/
Depending on how gloomy the situation is tomorrow I may update with the technical details.
Originally we were going to be switching channels of music on and off using manual switches under custom made footpads – fiddly!! After a workshop (An Introduction to Arduino) we have decided to change the switches to infrared sensors. When the infrared beam is broken this will send a signal to switch the music on or off however we will also be able to get the distance away from the sensor that the beam was broken. If we have time we can then give another element of control to the users.