ICM: Week 2 – Using variables and interactivity in Processing

This week, I used the same concept from last week but I used variables to reduce the amount of code I was drawing. I also added an interactive element. Now, when you use your mouse to move left to right across the screen, the background changes from 255 (white) to 0 (black). The alpha level of each bar is still set manually, and choosing how much to decrease the level was somewhat mathematical but the level doesn’t decrease evenly. (This became a problem the next week when I used objects to create the sketch.) I like how it looks like there’s so much more to drawing the bars than just a change of alpha level.

ICM Week 2

Color bars, Week 2

Phys Comp: Week 2 – Analog sensors, Part 2

This week’s assignment consisted of coming up with a fantasy device, and possibly going crazy using analog sensors. I did both.

First up: the UV-Sunlight watch. This watch detects how much sunlight you’ve received. The benefit to the wearer is that during winter months, you’ll know when you haven’t gotten enough sunlight, and during the summer you’ll know when you’ve gotten too much. I really thought about the design of this one, which may not have been the point, but I do like the final product.

It’s fairly practical and useful, and it was fun to make. But, I would, maybe, agree with the argument that it’s not that fantasmal. Hence, my second fantasy device.

The Unicorner! I learned by the age of six that most humans are incapable of viewing true unicorns. So try as I might, I have never seen a unicorn. My device changes that. This device changes the assumption that there are no unicorns in the world by revealing the true identity of what appear to be ordinary horses, by transforming them into unicorns so that humans can see them! It only works if they were really unicorns to begin with, but it’s only $49.95. It took me under 10 minutes to make, but I added the plastic bag and UPC code later, so maybe 15 minutes of work.

Other ideas included:

  • a camera that takes pictures of your food and reports the nutrition content
  • an alarm clock that mixes smells and sounds, like cinnamon rolls + Paris cafe, and bacon + New York diner.
  • a musical device for orchestra and band students, that plays back a pre-recorded song so that your band leader/conductor can’t tell when you’re playing out of tune. (Note: will not actually help you learn to play an instrument).
  • a remote control to make a parent slower and decreases the volume of their voice
  • an iPhone app that tells you if a store you’re in front of has your size in stock

Finally, I again took apart my teddy bear and hooked up light switches to two FSR sensors. When the hands of the bear are squeezed, the lights come on. But, because I put variable input into the Arduino, it’s difficult to get them both to light up simultaneously. I will add video later.

Code is here.

int ledPinGreen = 10; // Green pin
int ledPinRed = 9; // Red pin
int ledPinWhite = 11; // White pin

int analogFSRLeft = 0; // Left analog input
int analogFSRRight = 1; // Right analog input

int FSRValueLeft = 1; // Value of the left FSR
int FSRValueRight = 1; // Value of the right FSR

void setup() {
// initialize serial communications at 9600 bps:
Serial.begin(9600);
}

void loop() {
FSRValueLeft = analogRead(analogFSRLeft); // read the left FSR value
// if FSRValueLeft is under 300
// light nothing
// if FSRValueLeft is between 300 and 600
if( FSRValueLeft > 250 && FSRValueLeft < 375  ){
analogWrite(ledPinGreen, FSRValueLeft/4);
} else {
digitalWrite(ledPinGreen, LOW);
}
Serial.println(FSRValueLeft); // print the FSR value

FSRValueRight = analogRead(analogFSRRight); // read the right FSR value

// if FSRValueLeft is between 300 and 600
if( FSRValueRight > 200 && FSRValueRight < 750  ){
analogWrite(ledPinRed, FSRValueRight/4);
} else { // do nothing
digitalWrite(ledPinRed, LOW);
}

/*  FSRValueRight = analogRead(analogFSRRight); // read the right FSR value
FSRValueLeft = analogRead(analogFSRLeft); // read the left FSR value
if( FSRValueRight > 200 && FSRValueRight < 750) && ( FSRValueLeft > 315 && FSRValueLeft < 380  ){
analogWrite(ledPinWhite,  FSRValueLeft/4,  FSRValueRight/4);
} else { // do nothing
digitalWrite(ledPinRed, LOW);
digitalWrite(ledPinGreen, LOW);
}
*/
Serial.println(FSRValueRight);  // print the FSR value

delay(10); // gives a 10 millisecond delay
}

Phys Comp: Week 2 – Analog sensors, Part 1

This week we worked with analog sensors.

For the lab, I was able to correctly set up the breadboard, Arduino, and potentiometer to create my first analog input. I documented along the way.

Then I made a two-input analog switch with two LEDs as output. Here’s the code:

int ledPinGreen = 10; // Green pin
int ledPinRed = 9; // Red pin

int analogFSRLeft = 0; // Left analog input
int analogFSRRight = 1; // Right analog input

int FSRValueLeft = 1; // Value of the left FSR
int FSRValueRight = 1; // Value of the right FSR

void setup() {
// initialize serial communications at 9600 bps:
Serial.begin(9600);
}
void loop() {
FSRValueLeft = analogRead(analogFSRLeft); // read the left FSR value
analogWrite(ledPinGreen, FSRValueLeft/4);
Serial.println(FSRValueLeft); // print the FSR value back to the

FSRValueRight = analogRead(analogFSRRight); // read the right FSR value
analogWrite(ledPinRed, FSRValueRight/4);
Serial.println(FSRValueRight);

delay(10); // gives a 10 millisecond delay
}

October 17: IxDA Design Workshops

Received Sept 9, 2009

SAVE THE DATE: OCTOBER DESIGN WORKSHOPS
While you’re marking your calendar, don’t forget to save the date for our annual fall Design Workshop: Saturday, October 17. We’re holding this ever-popular event on a Saturday this year so participants will have more time to design and present. We’re pleased to announce two excellent workshops, both with interaction design rock-stars: one with Todd Zaki Warfel and Will Evans, the other with Ted Booth and Michelle Tepper. Full details and registration coming soon!

I hope it’s free or has a serious student rate (i.e., free).

Talk by Clay Shirky: Forking, Failing, and Open Source

Upgrade! New York presents: Talk by Clay Shirky: Forking, Failing, and Open Source

As an introduction to our Upgrade New York year theme we are excited to announce this month’s speaker, Clay Shirky. Clay will discuss the concepts of fork and failure in the open source process and will open them to discussion in the context of activism and the creative process.

Read about it here.

June 18, 2009
6:30 pm to 8:00 pm
The Change You Want To See Gallery @ 84 Havemeyer Street, Brooklyn

If you can’t make it live, the live stream is here.

Sadly, I can’t go or watch the live stream, but you can do either, tell me all about it.

On the the New York City Dance and Technology Meetup

I was reading the feeds on my iGoogle page, and I came across this post on Danciti. The author seems to have taken offense at the new “DanceTech” Meetup group by Doug Fox of Great Dance.

In this particular post, the Danciti author comments on of the suggested meetup topics, ‘How dancers can create professional websites without any technical training or background, and do this very inexpensively’: “It’s just the hight of conceit to believe that you can create professional results in my field [web design] without training.” After I read that, I was offended. However, the owner of Danciti does not have a comment section, so I’ll write it here.


To the Danciti author:

I do not think that the topic “How dancers can create professional websites without any technical training or background, and do this very inexpensively” is implying that an individual with no technical or web design training can create “professional” quality web designs that are on par with what an actual web developer could provide.

In my opinion, that is such an extremely obvious point, I do not see how anyone could be offended. I think Doug’s mission with this workshop is to help dance companies generate more income using internet marketing techniques, by lowering the barrier of entry to the web. Perhaps if professional web development firm offered to design slick websites, pro bono, for dance companies with limited budgets and outdated technology he wouldn’t feel the need to do this workshop. You and I know that building good websites is not that easy and takes plenty of resources which, as far as I know, is  probably why that is not the current situation.

In fact, I think that the Danciti author should go ahead and create a workshop for fat web developers who want to put on a full-length ballet. Dance is for everyone. Why deny them the opportunity to perform? If there was such a workshop, I would seriously doubt the professionalism of any dancer that was actually offended by such a workshop. Why? Because it’s OBVIOUS that web developers would not be as good as ballet as someone who spent 8 hours dancing everyday, nor would the performance be as good as what you would get if you paid $100+ for a ticket to a see a professional dance company perform.

Sorry, Doug. Apparently, it is true that no good deed goes unpunished.