<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Inessah Selditz</title>
	<atom:link href="http://inessah.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://inessah.com</link>
	<description>Interaction Designer. Making magic happen using design and technology. Master&#039;s candidate at NYU&#039;s ITP.</description>
	<lastBuildDate>Mon, 06 May 2013 18:30:55 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Data Rep Final</title>
		<link>http://inessah.com/data-rep-final/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-rep-final</link>
		<comments>http://inessah.com/data-rep-final/#comments</comments>
		<pubDate>Sun, 05 May 2013 12:38:00 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=1303</guid>
		<description><![CDATA[For my data rep final I had a lot of ideas, but finally picked up on an old idea &#8230;]]></description>
				<content:encoded><![CDATA[<p>For my data rep final I had a lot of ideas, but finally picked up on an old idea that I&#8217;ve been wanting to try out. I&#8217;ve been interested in concrete poetry and I&#8217;ve always loved books. There&#8217;s this great site called The Book Cover Archive and I love the different book covers, but I&#8217;ve always wondered if it would be more interested to have a really stripped down cover. Devoid the design of all the information and design and bring it back to a really simple design that informs and only hints to the reader of the contents and the character of the book.</p>
<p>Inspiration:</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/05/tumblr_mm6dzgyh0L1qz8rpeo1_500.jpg"><img class="alignnone size-full wp-image-1334" alt="tumblr_mm6dzgyh0L1qz8rpeo1_500" src="http://inessah.com/wp-content/uploads/2013/05/tumblr_mm6dzgyh0L1qz8rpeo1_500.jpg" width="500" height="625" /></a></p>
<p><a href="http://inessah.com/wp-content/uploads/2013/05/Screen-Shot-2013-05-06-at-1.57.20-PM.png"><img class="alignnone size-full wp-image-1328" alt="Screen Shot 2013-05-06 at 1.57.20 PM" src="http://inessah.com/wp-content/uploads/2013/05/Screen-Shot-2013-05-06-at-1.57.20-PM-e1367863098206.png" width="700" height="624" /></a></p>
<p><a href="http://inessah.com/wp-content/uploads/2013/05/Screen-Shot-2013-05-06-at-8.31.13-AM.png"><img alt="Screen Shot 2013-05-06 at 8.31.13 AM" src="http://inessah.com/wp-content/uploads/2013/05/Screen-Shot-2013-05-06-at-8.31.13-AM.png" width="536" height="475" /></a></p>

<p><a href="http://inessah.com/wp-content/uploads/2013/05/covers1.png"><img class="alignnone  wp-image-1326" alt="covers1" src="http://inessah.com/wp-content/uploads/2013/05/covers1.png" width="536" height="475" /></a></p>
<p>Originally, I tried doing a haiku so: 5, 7, 5, but the output started to feel less meaningful and also felt like I was deviating away from my original idea.</p>
<p>Moby Dick haiku:</p>
<h3>WHALE UPON OLD AHAB YE<br />
SHIP WHALES THOUGH SEA SUCH YET STILL<br />
THOSE CAPTAIN HERE MUST SEEMED</h3>
<p>Siddartha haiku:</p>
<h3>SIDDHARTHA GOVINDA RIVER HIMSELF SAW<br />
AGAIN LIFE LOVE THOUGHT LEARNED TEACHINGS FELT<br />
KAMALA NOTHING HEART WITHOUT BECOME</h3>
<p>So I went back to scraping the corpus finding the most frequently occurring words. For the corpus, I decided to use books from Project Gutenberg because they are free and there are hundreds of books that are well known enough that I thought people would be able to guess what the book was, but it might not be so obvious as to what it was immediately. Using python, I wrote a script that would scrape through the text, eliminate punctuation and exclude the most common words. I figured that would chip away at the number of repeats and get to the meat of the most common words.</p>
<p>Some early tests:</p>
<p>It became too busy with the top 100 words:</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/05/IMG_1284.jpg"><img class="alignnone size-full wp-image-1315" alt="IMG_1284" src="http://inessah.com/wp-content/uploads/2013/05/IMG_1284-e1367861654575.jpg" width="700" height="467" /></a></p>
<p>Reduced it to the top five words. Much cleaner and succinct. I like it better because it bold and it feels a little more intriguing than factual.</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/05/IMG_1286.jpg"><img class="alignnone size-full wp-image-1316" alt="IMG_1286" src="http://inessah.com/wp-content/uploads/2013/05/IMG_1286-e1367861671620.jpg" width="700" height="467" /></a></p>
<p>Second test with the real books (Huck Finn and Peter Pan):</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/05/IMG_1289.jpg"><img class="alignnone  wp-image-1317" alt="IMG_1289" src="http://inessah.com/wp-content/uploads/2013/05/IMG_1289.jpg" width="700" height="467" /></a></p>
<p>The covers:</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/05/huckfinn.jpg"><img alt="huckfinn" src="http://inessah.com/wp-content/uploads/2013/05/huckfinn.jpg" width="945" height="1316" /></a><br />
<a href="http://inessah.com/wp-content/uploads/2013/05/peterpan.jpg"><img alt="peterpan" src="http://inessah.com/wp-content/uploads/2013/05/peterpan.jpg" width="945" height="1316" /></a><br />
<a href="http://inessah.com/wp-content/uploads/2013/05/alice.jpg"><img class="alignnone  wp-image-1308" alt="alice" src="http://inessah.com/wp-content/uploads/2013/05/alice.jpg" width="945" height="1316" /></a><a href="http://inessah.com/wp-content/uploads/2013/05/kamasutra.jpg"><img class="alignnone  wp-image-1310" alt="kamasutra" src="http://inessah.com/wp-content/uploads/2013/05/kamasutra.jpg" width="945" height="1316" /></a> <a href="http://inessah.com/wp-content/uploads/2013/05/mobydick.jpg"><img class="alignnone  wp-image-1311" alt="mobydick" src="http://inessah.com/wp-content/uploads/2013/05/mobydick.jpg" width="945" height="1316" /></a><a href="http://inessah.com/wp-content/uploads/2013/05/therepublic.jpg"><img class="alignnone  wp-image-1313" alt="therepublic" src="http://inessah.com/wp-content/uploads/2013/05/therepublic.jpg" width="945" height="1316" /></a></p>
<p>Conclusions:</p>
<p>Overall I&#8217;m happy with the results. The simplicity feels interesting and intriguing and I think a lot can be communicated with very little. The results obviously depend a lot on the initial corpus though. My favorite one is the Kama Sutra because I feel like the essence is there, but isn&#8217;t too revealing due to lack of characters.</p>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/data-rep-final/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Rep- Final Proposal</title>
		<link>http://inessah.com/data-rep-final-proposal/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-rep-final-proposal</link>
		<comments>http://inessah.com/data-rep-final-proposal/#comments</comments>
		<pubDate>Sun, 31 Mar 2013 23:39:08 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=1279</guid>
		<description><![CDATA[]]></description>
				<content:encoded><![CDATA[<div class="one-third"><strong>3/31/13- </strong><b> </b>Final Proposal</p>
<p></div>
<div class="two-third last"></p>
<p><strong>Final Proposal  </strong>So for my data rep final I&#8217;m not totally set on this idea for a couple reasons, but the basic idea is a visualization of space and environmental inputs over time.</p>
<p>I&#8217;m currently interning at Base Design designing their permanent interactive installation for the NY headquarters. They want it projected in the five windows facing the street off Lafayette and Grand in Soho. It&#8217;s the top floor corner windows.</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/03/pic.jpg"><img class="alignnone size-full wp-image-1295" alt="pic" src="http://inessah.com/wp-content/uploads/2013/03/pic.jpg" width="600" height="400" /></a></p>
<p>Coincidentally they have 5 international offices and what inspired me was that at the top of their site they have the current times and whether or not each office is &#8220;open&#8221; or &#8220;closed.&#8221;</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/03/Screen-Shot-2013-03-31-at-7.22.30-PM.png"><img alt="Screen Shot 2013-03-31 at 7.22.30 PM" src="http://inessah.com/wp-content/uploads/2013/03/Screen-Shot-2013-03-31-at-7.22.30-PM.png" width="744" height="141" /></a></p>
<p>I love that they show some current contextual information about their other offices and it feels like it gives a little bit of a story with just a tiny bit of information. So what I&#8217;m thinking about taking video feeds of the different offices and transforming them into a slit scan in the shape of a circle and have it animate based on some environmental input such as sound. Then each day at midnight it will animate through each segment and show the feed from each hour.</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/03/Screen-Shot-2013-03-31-at-11.14.06-PM.png"><img class="alignnone size-full wp-image-1298" alt="Screen Shot 2013-03-31 at 11.14.06 PM" src="http://inessah.com/wp-content/uploads/2013/03/Screen-Shot-2013-03-31-at-11.14.06-PM.png" width="620" height="362" /></a></p>
<p>1) What is your data set?- The data set will be video feed from different offices and surrounding sound levels.<br />
2) What is the medium?- The medium is an projected installation on windows.<br />
3) What is the central question?- What do these different spaces look like over time?</p>

<p><strong> </strong></p>
<p></div><div class="clear"></div>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/data-rep-final-proposal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Rep</title>
		<link>http://inessah.com/data-rep/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-rep</link>
		<comments>http://inessah.com/data-rep/#comments</comments>
		<pubDate>Mon, 04 Mar 2013 19:07:18 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=1203</guid>
		<description><![CDATA[Our assignment for data rep is to take a list of hotels and map the different star ratings on &#8230;]]></description>
				<content:encoded><![CDATA[<p>Our assignment for data rep is to take a list of hotels and map the different star ratings on separate maps.</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/03/screen-0001.png"><img class="alignnone size-full wp-image-1205" alt="screen-0001" src="http://inessah.com/wp-content/uploads/2013/03/screen-0001.png" width="6400" height="720" /></a></p>

<p>The northernmost hotel is:</p>
<p>The northernmost hotel is Radisson Blu Polar Hotel Spitsbergen Longyearbyen</p>
<p>/*<br />
0 5 10 12 13<br />
id~hotelName~stars~price~cityName~stateName~countryCode~countryName~address~location~url~tripadvisorUrl~latitude~longitude~latlong~propertyType~chainId~rooms~facilities~checkIn~checkOut~rating<br />
80171~Fafa Island Resort~3~172~NukuAlofa~~TO~Tonga~Fafa Island PO Box 1444~NukuAlofa,Tonga~~~-21.0862~-175.16~15905~7~0~~2|3|5|9|13|20|22|31|34|40|53|59|60|65|66|72|108|202|203|209|210|211|~~~0<br />
*/</p>
<p>BufferedReader hotelReader;<br />
float north = -90;</p>
<p>void setup() {<br />
// size is HD format so you can record video from it<br />
size(1280, 720);<br />
background(0);</p>
<p>hotelReader = createReader(&#8220;hotelsbase.csv&#8221;);<br />
try {<br />
String ln;<br />
int c = 0;<br />
colorMode(HSB);<br />
while ( (ln = hotelReader.readLine ()) != null) {<br />
String[] cols = ln.split(&#8220;~&#8221;);<br />
if (cols.length &gt; 11) {<br />
float lat = float(cols[12]);<br />
float lon = float(cols[13]);<br />
float stars = float(cols[2]);</p>
<p>// get the hotel name<br />
String hotelName = cols[1];</p>
<p>if (lat &gt; north) {<br />
north = lat;<br />
println(&#8220;The northernmost hotel is &#8221; + hotelName);<br />
}</p>
<p>float col = map(stars, 0, 5, 30, 255);<br />
float x = map(lon, -180, 180, 0, width);<br />
float y = height &#8211; map(lat, -90, 90, 0, height);</p>
<p>stroke(col, 255, 255);<br />
point(x, y);<br />
}<br />
if (c % 1000 == 0) println(c);<br />
c++;<br />
}<br />
}<br />
catch(Exception e) {<br />
println(&#8220;READER FAILED.&#8221; + e);<br />
}<br />
}</p>
<p>void draw() {<br />
}</p>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/data-rep/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Viz</title>
		<link>http://inessah.com/data-viz/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=data-viz</link>
		<comments>http://inessah.com/data-viz/#comments</comments>
		<pubDate>Mon, 25 Feb 2013 04:29:27 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=1190</guid>
		<description><![CDATA[]]></description>
				<content:encoded><![CDATA[<div class="one-third"> <strong>2/24/13- </strong><b> </b></p>
<p>This is the first assignment for Jer Thorp&#8217;s Data Rep class.</p>
<p><strong></strong></div>
<div class="two-third last"></p>
<p><strong>Assignment </strong>We were asked to choose a data set from the <a href="http://www.guardian.co.uk/data" target="_blank">Guardian</a> and create two different visualizations from it. The first was to make the information as clear as possible and the second to represent it in a way that addresses the specific character set. I chose a set <a href="http://www.guardian.co.uk/news/datablog/2011/jul/15/us-debt-how-big-who-owns" target="_blank">US debt</a>: how big is it and who owns it? Amazingly, half is owned by China and Japan alone. I think it is more apparent in the first visualization than the second one.</p>
<p><a href="http://inessah.com/wp-content/uploads/2013/02/Screen-Shot-2013-02-24-at-11.34.23-AM1.png"><img class="alignnone size-full wp-image-1191" alt="Screen Shot 2013-02-24 at 11.34.23 AM" src="http://inessah.com/wp-content/uploads/2013/02/Screen-Shot-2013-02-24-at-11.34.23-AM1.png" width="1098" height="698" /></a></p>
<p><strong> <a href="http://inessah.com/wp-content/uploads/2013/02/Screen-Shot-2013-02-24-at-11.32.47-PM.png"><img class="alignnone size-full wp-image-1196" alt="Screen Shot 2013-02-24 at 11.32.47 PM" src="http://inessah.com/wp-content/uploads/2013/02/Screen-Shot-2013-02-24-at-11.32.47-PM.png" width="1099" height="699" /></a></strong></p>
<p></div><div class="clear"></div>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/data-viz/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Thesis</title>
		<link>http://inessah.com/thesis/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=thesis</link>
		<comments>http://inessah.com/thesis/#comments</comments>
		<pubDate>Thu, 14 Feb 2013 04:26:56 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=1087</guid>
		<description><![CDATA[]]></description>
				<content:encoded><![CDATA[<div class="one-third"><strong>2/13/13- </strong><b> </b></p>
<p>This post is a response to my Rest of You class with Dano. The question was &#8220;Why connect computers to the rest of you?&#8221;</p>
<p><strong></strong></div>
<div class="two-third last"><b><br />
</b></p>
<p><strong> Why connect computers to the Rest of You? </strong>In short, it can be used to identify, give context to and serve as a jumping off point for possible solutions to problems. It can provide insight to issues not usually given much attention or it can be used as leverage and create new ways to explore old problems. The rest of the post I explain my thoughts through “thesis glasses” as I am using ROY to explore ideas pertaining to my thesis.</p>
<p><strong>The Problem: We suck at communicating (and it’s only getting worse) </strong>In the last 20 years, with the advent of personal computers and smart phones our eyes are spent mostly gazing at screens- not at each other. In a relatively short amount of time, we have become increasingly inexperienced and <i>unpracticed</i> at the skill of nonverbal communication. Essentially we are <i>bad</i> at it. The average adult spends 8.5 hours staring at a screen. This leaves little time to engage in face to face communication and to exercise our nonverbal communication muscles. Our typical mode of communication now is mostly passive, mediated through screens- computers, cellphones and tablets.</p>
<p><strong>Context: Screens are undoing 200,000 years of evolution </strong>“Modern” humans as we know it are around 200,000 years old and although verbal communication is superior for conveying detail and analysis, nonverbal communication is the primary way we convey emotion and is the foundation upon which we build our interpersonal relationships. Nonverbal communication is a multi-channeled form; in essence there are many small cues of nonverbal communication that make up the whole of the message we send out.</p>
<p>One of the most noted forms is <a href="http://en.wikipedia.org/wiki/Oculesics" target="_blank">oculsesics</a>, the study of the messages sent by the eye. It is nuanced and slight, registered by eye contact, gaze, pupil dilation, conjugate lateral eye movements and blinks. To others, it gives strong and authentic cues to another’s personality, true emotions and intent. It is a crucial communication channel in close relationships and in some cases perceptions of intimacy were a function of increased eye contact.</p>
<p>To communicate mostly through screens is to create a situation where the complex messages of communication (verbal and nonverbal) are largely filtered and reduced into simplfied signifiers (i.e. haha, omfg, lol). These signifiers are reductive and ambiguous leaving us confused, anxious and unsure. No wonder we take solace in curating and consuming- it’s a clear, one way relationship that doesn’t leave us feeling like a mixed bag of taxed emotions.</p>
<p><strong> Solution: Create an intervention </strong>With the problem identified, the intent of my thesis is not to judge, berate or guilt others in a process that I find myself an often a complicit and willing participant in. It is also not a pie in the sky, fix the world solution. Instead, my goal is to identify a problem, give context to it and provide a solution- albeit a temporary one. It is a designed experience that uses playful procedures (inspired by Sureralist parlor games) to challenge and be a counterpoint the conventions of our typical modes of communication- one that is uncomfortable and unfamiliar with direct intimacy.</p>
<p></div><div class="clear"></div>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/thesis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plinko Poetry</title>
		<link>http://inessah.com/plinko-poetry-project-summary/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=plinko-poetry-project-summary</link>
		<comments>http://inessah.com/plinko-poetry-project-summary/#comments</comments>
		<pubDate>Wed, 06 Jun 2012 15:38:31 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=342</guid>
		<description><![CDATA[]]></description>
				<content:encoded><![CDATA[<p><div class="one-third"><b>June 6, 2012</b>  </div><br />
<div class="two-third last">Now that the semester is over, but the project is still fresh in my mind I wanted to do a post-mort on <a href="http://inessah.com/portfolio/plinko-poetry/" target="_blank">Plinko Poetry</a>. I wanted to give a little context on how Plinko Poetry came around.</p>
<p><strong>Context: </strong>Deqing and I were partners in Spatial Media (<a href="http://www.potiondesign.com/" target="_blank">Jared Schiffman of Potion</a>&#8216;s class) this past spring 2012. We had been partners for the mid-term and before spring break started, we talked about doing a projection on a building or outside. After the break we brainstormed and thought it would be interesting to do a projection on the <a href="http://en.wikipedia.org/wiki/Alamo_(sculpture)" target="_blank">Astor Cube </a>near ITP. We came up with a combination touch / projection map of a Rubik&#8217;s cube on top of The Alamo.</p>
<p>The Alamo has been pranked many times, including the group <a href="http://www.alltooflat.com/pranks/cube/" target="_blank">All Too Flat</a> doing a cardboard Rubik&#8217;s cube surface taped on top of the exterior. We hadn&#8217;t known this when we came up with the idea of projecting a Rubik&#8217;s cube, but when we found out we figured it would still be an interesting idea to elaborate on since it has never been made interactive. When we presented the idea to Spatial Media, the feedback was brutally harsh. There were many concerns about feasibility and also how to actually make the surface a touch surfaceAlso, randomly enough another group also proposed a project using the Alamo and received similarly critical feedback.</p>
<p>After class, Deqing and I spoke about just doing a proof of concept model that was scaled down. So instead of trying to demo a real projection on the Alamo, to make a scaled model with the approximate dimensions and make it a touch surface. A lot of projects at ITP fall to the proof of concept example when you have to present your project, usually due to size, time, scalability or technological constraints, but it just seemed like a wasted opportunity to put so much time into a project that increasingly seemed like a idea that could <em>never</em> be executed.</p>
<p><strong>Back to the drawing board:</strong> We decided to spend the weekend brainstorming and re-thinking our concept. Around that time I was increasingly interested in my RWET (<a href="http://www.decontextualize.com/teaching/rwet/" target="_blank">Reading and Writing Electronic Text</a> class taught by ITP alum <a href="http://www.decontextualize.com/" target="_blank">Adam Parrish</a>). I fell in love with the playfulness of munging text and aleatoric procedures. I have always loved poetry and liked the opportunity to add an element of absurdity and user interaction into an expressive form that can sometimes be intimidating. Also, by chance I had recently watched a documentary on Netflix called &#8220;<a href="http://www.hulu.com/watch/243423/special-when-lit-a-pinball-documentary" target="_blank">Special When Lit</a>&#8220;- a film about the cultish nature of Pinball machines. So I had a loose idea to make a Pinball Poetry machine. I thought it would be interesting to project on top of a pinball machine interface and to create poems a person could &#8220;play&#8221; the machine. Eventually outputting a munged poem.</p>
<p>I suggested this idea as well as a few others to Deqing and he liked the Pinball Poetry idea. However, he brought up a good point that you run into the problem of length of use. Basically- how long does one play, is there a limit, will it take too long, should we impose a time limit, etc. So he suggested a box, but he didn&#8217;t know the name of it. After a little research we found out it was the <a href="http://en.wikipedia.org/wiki/Bean_machine" target="_blank">Galton Box</a> or Bean Machine. Designed by Sir Francis Galton, it is a device to demonstrate the probability theory on the bell curve. The Galton Box has been adapted many times into games including: Pachinko (Japan), Bagatelle (France) and Plinko (made popular by The Price is Right). We decided on Plinko Poetry as our concept- funnily enough since neither Deqing and I grew up outside of the U.S. neither of us were that familiar with how well it was known as a pop culture reference.</p>
<p><strong>Design + Implementation:</strong> We both liked the idea and re-pitched our concept. In our presentation our biggest concern for point of failure was that programming the software to fit the interface of a plinko machine could be more challenging than anticipated. Either way we knew the only way to figure that out would be to rapid prototype the Plinko frame to start testing as soon as possible. So we quickly put together a frame CNCing and laser cutting the parts. We had some errors- like a hole drilled in the wrong place and we used scrap materials so it looked pretty terrible, but we figured it was more important to get something physical made and we could easily re-cut the materials for the final. A simple Logitech webcam to do the color tracking. We concealed it in a laser cut box and mounted it above the frame with an auto-pole and articulated arm. We also mounted a simple polarizing camera filter in front of the camera to bring out the red of the color chip.</p>
<p><strong>Tech run down:</strong> We used openFrameworks color tracking to distinguish the red plinko chip versus the green pegs.<br />
The edge of the screen was calibrated using four discretely mounted LED&#8217;s at each corner so that it could be easily re-calibrated.<br />
The text display and animation was handled in Processing. We actually spent a bit of time figuring out what font to use. Most fonts did not display well especially when scrolling. We ended up using Rockwell, a simple legible serif font.<br />
Tweets from @NYtimes and @FoxNews were scraped using a Python script. We hadn&#8217;t set up a cron job so we had to physically run this in the mornings, but it was fine for our purposes. It pulled about 200 tweets from each account and then parsed it into 8 different text files (one file per line).</p>
<p></div><div class="clear"></div></p>
<div class="one-third">6/06/12- Plinko Poetry twitter scraping</div>
<div class="two-third last">I&#8217;m working on the code for scraping the twitter api for both @nytimes and @FoxNews for the Plinko Poetry Machine. So far the code does this:</p>
<p></p>
<p>Scrapes 200 through the @nytimes tweets<br />
Prints tweets and puts them into 4 different .txt files<br />
I stripped out any tweets with an &#8220;@&#8221; symbol<br />
And also stripped out any hyper links &#8211; so basically go though the tweets, and if you find &#8220;http&#8221; remove the text starting at &#8220;http&#8221; and ending at the break. This retains any text after the hyperlink.<br />
Then it runs through an if else statement to sort the files.<br />
</p>
<p>import urllib<br />
import json<br />
import re</p>
<p>num_tweets = 200</p>
<p>resp = urllib.urlopen(&#8220;https://api.twitter.com/1/statuses/user_timeline.json?screen_name=nytimes&amp;count=&#8221; + str(num_tweets))<br />
tweets = json.loads(resp.read())</p>
<p>print tweets</p>
<p>file1 = open(&#8220;nyt1.txt&#8221;, &#8220;w&#8221;)<br />
file2 = open(&#8220;nyt2.txt&#8221;, &#8220;w&#8221;)<br />
file3 = open(&#8220;nyt3.txt&#8221;, &#8220;w&#8221;)<br />
file4 = open(&#8220;nyt4.txt&#8221;, &#8220;w&#8221;)</p>
<p>i = 0<br />
for tweet in tweets:<br />
output_str = tweet['text']<br />
if &#8216;@&#8217; in tweet['text']:<br />
continue<br />
if &#8216;http&#8217; in tweet['text']:<br />
output_str = re.sub(r&#8217;\bhttp\S+\b&#8217;, &#8221;, tweet['text'])</p>
<p>output_str = output_str + &#8220;\n&#8221;</p>
<p>if i &lt; 50:<br />
file1.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))<br />
elif i &lt; 100:<br />
file2.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))<br />
elif i &lt; 150:<br />
file3.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))<br />
else:<br />
file4.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))</p>
<p>i += 1</p>
<p>resp = urllib.urlopen(&#8220;https://api.twitter.com/1/statuses/user_timeline.json?screen_name=foxnews&amp;count=&#8221; + str(num_tweets))<br />
tweets = json.loads(resp.read())</p>
<p>print tweets</p>
<p>file1 = open(&#8220;fox1.txt&#8221;, &#8220;w&#8221;)<br />
file2 = open(&#8220;fox2.txt&#8221;, &#8220;w&#8221;)<br />
file3 = open(&#8220;fox3.txt&#8221;, &#8220;w&#8221;)<br />
file4 = open(&#8220;fox4.txt&#8221;, &#8220;w&#8221;)</p>
<p>i = 0<br />
for tweet in tweets:<br />
output_str = tweet['text']<br />
if &#8216;@&#8217; in tweet['text']:<br />
continue<br />
if &#8216;http&#8217; in tweet['text']:<br />
output_str = re.sub(r&#8217;\bhttp\S+\b&#8217;, &#8221;, tweet['text'])</p>
<p>output_str = output_str + &#8220;\n&#8221;</p>
<p>if i &lt; 50:<br />
file1.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))<br />
elif i &lt; 100:<br />
file2.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))<br />
elif i &lt; 150:<br />
file3.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))<br />
else:<br />
file4.write(output_str.encode(&#8216;ascii&#8217;, &#8216;ignore&#8217;))</p>
<p>i += 1<br /></div><div class="clear"></div>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/plinko-poetry-project-summary/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plinko Poetry- Color tracking update</title>
		<link>http://inessah.com/plinko-poetry-color-tracking-update/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=plinko-poetry-color-tracking-update</link>
		<comments>http://inessah.com/plinko-poetry-color-tracking-update/#comments</comments>
		<pubDate>Thu, 26 Apr 2012 18:44:54 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=315</guid>
		<description><![CDATA[I&#8217;m working on the code for scraping the twitter api for both @nytimes and @FoxNews for the Plinko Poetry &#8230;]]></description>
				<content:encoded><![CDATA[<p>I&#8217;m working on the code for scraping the twitter api for both @nytimes and @FoxNews for the Plinko Poetry Machine. So far the code</p>
<ul>
<li>Scrapes 200 through the @nytimes tweets</li>
<li>Prints tweets and puts them into 4 different .txt files</li>
<li>I stripped out any tweets with an &#8220;@&#8221; symbol</li>
<li>And also stripped out any hyper links &#8211; so basically go though the tweets, and if you find &#8220;http&#8221; remove the text starting at &#8220;http&#8221; and ending at the break. This retains any text after the hyperlink.</li>
<li>Then it runs through an if else statement to sort the files.</li>
</ul>
<pre>import urllib
import json
import re

num_tweets = 200

resp = urllib.urlopen(&quot;https://api.twitter.com/1/statuses/user_timeline.json?screen_name=nytimes&amp;count=&quot; + str(num_tweets))
tweets = json.loads(resp.read())

print tweets

file1 = open(&quot;nyt1.txt&quot;, &quot;w&quot;)
file2 = open(&quot;nyt2.txt&quot;, &quot;w&quot;)
file3 = open(&quot;nyt3.txt&quot;, &quot;w&quot;)
file4 = open(&quot;nyt4.txt&quot;, &quot;w&quot;)

i = 0
for tweet in tweets:
  output_str = tweet[&#039;text&#039;]
  if &#039;@&#039; in tweet[&#039;text&#039;]:
  	continue
  if &#039;http&#039; in tweet[&#039;text&#039;]:
  	output_str = re.sub(r&#039;\bhttp\S+\b&#039;, &#039;&#039;, tweet[&#039;text&#039;])

  output_str = output_str + &quot;\n&quot;

  if i &lt; 50:
  	file1.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))
  elif i &lt; 100:
	file2.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))
  elif i &lt; 150:
  	file3.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))
  else:
	file4.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))

  i += 1

resp = urllib.urlopen(&quot;https://api.twitter.com/1/statuses/user_timeline.json?screen_name=foxnews&amp;count=&quot; + str(num_tweets))
tweets = json.loads(resp.read())

print tweets

file1 = open(&quot;fox1.txt&quot;, &quot;w&quot;)
file2 = open(&quot;fox2.txt&quot;, &quot;w&quot;)
file3 = open(&quot;fox3.txt&quot;, &quot;w&quot;)
file4 = open(&quot;fox4.txt&quot;, &quot;w&quot;)

i = 0
for tweet in tweets:
  output_str = tweet[&#039;text&#039;]
  if &#039;@&#039; in tweet[&#039;text&#039;]:
  	continue
  if &#039;http&#039; in tweet[&#039;text&#039;]:
  	output_str = re.sub(r&#039;\bhttp\S+\b&#039;, &#039;&#039;, tweet[&#039;text&#039;])

  output_str = output_str + &quot;\n&quot;

  if i &lt; 50:
  	file1.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))
  elif i &lt; 100:
	file2.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))
  elif i &lt; 150:
  	file3.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))
  else:
	file4.write(output_str.encode(&#039;ascii&#039;, &#039;ignore&#039;))

  i += 1</pre>
<p>&#8211;</p>
<p>Making progress on the color tracking. A demo of the tracking as the camera follows the red chip. You can see the red dots behind every green peg is also tracking / marking its location.</p>

]]></content:encoded>
			<wfw:commentRss>http://inessah.com/plinko-poetry-color-tracking-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RWET Final- Craigslist</title>
		<link>http://inessah.com/rwet-final-craigslist/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rwet-final-craigslist</link>
		<comments>http://inessah.com/rwet-final-craigslist/#comments</comments>
		<pubDate>Wed, 25 Apr 2012 22:28:04 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[RWET]]></category>
		<category><![CDATA[Storytelling]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=285</guid>
		<description><![CDATA[I wanted to use a body of text that I collected about a year and a half ago. I &#8230;]]></description>
				<content:encoded><![CDATA[<p>I wanted to use a body of text that I collected about a year and a half ago. I was curious about the things people would post on Craigslist and ended up searching the personal section for the words &#8220;lonely&#8221;, &#8220;alone&#8221; and &#8220;sad.&#8221; After filtering out creepy one night stand posts, one can find extremely personal and poignant posts from people- but not just in big cities. From NYC to Olathe, Kansas I found people trying to communicate things they seemed to have difficulty communicating in real life- sometimes it seemed like they just wanted someone to listen to them, so I did.</p>
<p>Here is  a sampling of one of the posts I found:</p>
<p><strong>kansas city craigslist &gt; personals &gt; missed connections</strong><br />
I saw you at a stop light in Olathe and u were crying… m4w – 52 (Olathe)<br />
Date: 2010-12-03, 6:26PM CST</p>
<p>I was so sad when I saw you crying…I don’t think you could see me through your tears, but if I can help you in any way just let me know…</p>
<p>Location: Olathe<br />
PostingID: 2093855294</p>
<p>&#8212;</p>
<p><strong>nashville craigslist &gt; personals &gt;missed connections</strong></p>
<p>Any trekkies out there…</p>
<p>Captain&#8217;s log, star date today. After an extensive sensor sweep of this sector, I have found no compatible life forms. If anyone out there received this subspace message, please help a lonely captain find his way back home. Hoping to open hailing frequencies tomorrow of in the near future.</p>
<p>Location:<br />
PostingID: 2093855294</p>
<p>&#8211;</p>
<p><strong>new hampshire craigslist &gt; personals &gt; missed connections</strong><br />
i miss my son the most – 31 (new hampshire)<br />
Date: 2010-11-25, 1:20PM EST</p>
<p>i’m alone on my day of thanks. i have a bad dream late night, i keep having nightmares of you getting hurt. i love you with all my heart. happy thanksgiving son, … maybe someday i can see you…</p>
<p>Location: new hampshire<br />
PostingID: 207983464</p>
<p>&#8212;</p>
<p><strong>new york craigslist &gt; personals &gt; men seeking women<br />
</strong>Unhappily Married<br />
Date: 20120-12-15, 4:23PM EST</p>
<p>I didn&#8217;t think I&#8217;d find myself posting something like this… but here I am. I got married pretty young at 25. Now things have fizzled and we barely spend time together. We haven&#8217;t…. been intimate in almost two years. I&#8217;m still me… still fun and fit and all the things I was when we started. I miss being close. I think she&#8217;s having an affair, and it&#8217;s just isolating. So here I am… and I&#8217;m not sure what to do. I want to feel a connection with someone, to talk at least… to kiss maybe. Maybe more… To feel like I&#8217;m heard, like I matter. It was a lonely summer. The fall&#8217;s been no better, so If you&#8217;re up for e-mailing or chatting to start… say hi. Thanks.</p>
<p>Location: -<br />
PostingID: 2112995934</p>
<p>&#8211;</p>
<p>I found these at an interesting time in my life and found myself identifying with the sadness and vulnerability that these people expressed. So for my final I wanted to make a kind of new posting- one that treats all of our sadness as one collective sadness blending all these stories together. So I created a large text file of all the craigslist posts I&#8217;ve found and also added texts from some emails that contained the same motif as the ones I had searched for. I ran a markov generator on the text and generated a random location from a list of Craigslist locations. After returning a new poem I then posted these new poems on Craigslist in the actual (randomly chosen) city the program generated.</p>
<p>The poems:</p>
<p><strong><a href="http://indianapolis.craigslist.org/mis/2979340717.html" target="_blank">respect.</a></strong></p>
<p><strong><a href="http://wilmington.craigslist.org/mis/2979339791.html" target="_blank">computer.</a></strong></p>
<p><strong><a href="http://decatur.craigslist.org/mis/2979351848.html" target="_blank">at me.</a></strong></p>
<p><strong><a href="http://jerseyshore.craigslist.org/mis/2979389460.html" target="_blank">so much.</a></strong></p>
<p><strong><a href="http://bham.craigslist.org/mis/2980361766.html">evidence is stacked up.</a></strong></p>
<p>&#8211;</p>
<p>class MarkovGenerator(object):</p>
<p>import re<br />
def __init__(self, n, max):<br />
self.n = n # order (length) of ngrams<br />
self.max = max # maximum number of elements to generate<br />
self.ngrams = dict() # ngrams as keys; next elements as values<br />
self.beginnings = list() # beginning ngram of every line</p>
<p>def tokenize(self, text):<br />
#return text.split(&#8221; &#8220;)<br />
return list(text)</p>
<p>def feed(self, text):</p>
<p>tokens = self.tokenize(text)</p>
<p># discard this line if it&#8217;s too short<br />
if len(tokens) &lt; self.n:<br />
return</p>
<p># store the first ngram of this line<br />
beginning = tuple(tokens[:self.n])<br />
self.beginnings.append(beginning)</p>
<p>for i in range(len(tokens) &#8211; self.n):</p>
<p>gram = tuple(tokens[i:i+self.n])<br />
next = tokens[i+self.n] # get the element after the gram</p>
<p># if we&#8217;ve already seen this ngram, append; otherwise, set the<br />
# value for this key as a new list<br />
if gram in self.ngrams:<br />
self.ngrams[gram].append(next)<br />
else:<br />
self.ngrams[gram] = [next]</p>
<p># called from generate() to join together generated elements<br />
def concatenate(self, source):<br />
import re<br />
toReturn = &#8220;&#8221;.join(source)<br />
return toReturn;</p>
<p># generate a text from the information in self.ngrams<br />
def generate(self):</p>
<p>from random import choice<br />
import re<br />
# get a random line beginning; convert to a list.<br />
current = choice(self.beginnings)<br />
output = list(current)</p>
<p>for i in range(self.max):<br />
if current in self.ngrams:<br />
possible_next = self.ngrams[current]<br />
next = choice(possible_next)<br />
output.append(next)<br />
# get the last N entries of the output; we&#8217;ll use this to look up<br />
# an ngram in the next iteration of the loop<br />
current = tuple(output[-self.n:])<br />
else:<br />
break</p>
<p>output_str = self.concatenate(output)<br />
output_str = re.sub(r&#8217;[.,]\s&#8217;, &#8216;.\n&#8217;, output_str)</p>
<p>return output_str</p>
<p>if __name__ == &#8216;__main__&#8217;:</p>
<p>import sys</p>
<p>generator = MarkovGenerator(n=3, max=500)<br />
for line in sys.stdin:<br />
line = line.strip()<br />
generator.feed(line)</p>
<p>for i in range(14):<br />
print generator.generate()</p>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/rwet-final-craigslist/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Plinko Poetry test run</title>
		<link>http://inessah.com/plinko-poetry-test-run/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=plinko-poetry-test-run</link>
		<comments>http://inessah.com/plinko-poetry-test-run/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 20:23:02 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[Sensor]]></category>
		<category><![CDATA[Test]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=207</guid>
		<description><![CDATA[We have the prototype Plinko Poetry frame mounted and working. We also mounted a camera and did some initial &#8230;]]></description>
				<content:encoded><![CDATA[<p>We have the prototype Plinko Poetry frame mounted and working. We also mounted a camera and did some initial color tracking tests. This upcoming week we will be focusing on the color tracking and then move on to animating the text on the LCD screen! Very exciting week.</p>
<p>Testing a filter for the camera:</p>
<p><a href="http://inessah.com/wp-content/uploads/2012/04/plinko-poetry-test-run.jpeg"><img class="alignnone size-full wp-image-216" title="plinko-poetry-test-run" src="http://inessah.com/wp-content/uploads/2012/04/plinko-poetry-test-run.jpeg" alt="" width="600" height="400" /></a></p>
<p>Doing an actual plinko run- feels just like the Price is Right.</p>
<p><a href="http://inessah.com/wp-content/uploads/2012/04/P1150279.jpg"><img class="alignnone size-full wp-image-210" title="P1150279" src="http://inessah.com/wp-content/uploads/2012/04/P1150279.jpg" alt="" width="600" height="400" /></a></p>
<p>Testing different backgrounds for color tracking.</p>
<p><a href="http://inessah.com/wp-content/uploads/2012/04/P1150285.jpg"><img class="alignnone size-full wp-image-211" title="P1150285" src="http://inessah.com/wp-content/uploads/2012/04/P1150285.jpg" alt="" width="600" height="400" /></a></p>
<p>Video documentation:<br />
<iframe src="http://player.vimeo.com/video/40737151" frameborder="0" width="300" height="500"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://inessah.com/plinko-poetry-test-run/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Your place or mine?</title>
		<link>http://inessah.com/your-place-or-mine/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=your-place-or-mine</link>
		<comments>http://inessah.com/your-place-or-mine/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 19:20:29 +0000</pubDate>
		<dc:creator>inessah</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Site]]></category>
		<category><![CDATA[Storytelling]]></category>

		<guid isPermaLink="false">http://inessah.com/?p=197</guid>
		<description><![CDATA[For our When Strangers Meet final we&#8217;re developing a website where people can post pictures and a short story &#8230;]]></description>
				<content:encoded><![CDATA[<p>For our When Strangers Meet final we&#8217;re developing a website where people can post pictures and a short story about their bedroom. We chose the bedroom for a number of reasons, but foremost that the bedroom is often the most private and also most telling of a person. A glimpse of someone&#8217;s bedroom tells a story even without any words.</p>
<p>It reminds me of this wonderful series of <a href="http://www.time.com/time/photogallery/0,29307,1626519,00.html">photo</a> <a href="http://www.time.com/time/photogallery/0,29307,1645016,00.html">essays</a> done years ago by Time magazine. I think it&#8217;s interesting and important to note that this essay chose to limit a lot of information and only told what was necessary to support the narrative- which I think are the actual storytellers.</p>
<p><a href="http://inessah.com/wp-content/uploads/2012/04/0293071645016_1408122001.jpeg"><img class="alignnone size-full wp-image-267" title="0,29307,1645016_1408122,00" src="http://inessah.com/wp-content/uploads/2012/04/0293071645016_1408122001-e1335023747777.jpeg" alt="" width="600" height="396" /></a><br />
The information being: location, family name, food expenditure and favorite foods. So it is equally split between personal and somewhat quantitative information. This is something we&#8217;ve talked about and I think a critical consideration (what information is important to the narrative and how to present it) when doing projects like these, where the story is mostly being told through pictures.</p>
<p><a href="http://inessah.com/wp-content/uploads/2012/04/0293071626519_1373764_last00.jpeg"><img class="alignnone size-full wp-image-269" title="0,29307,1626519_1373764_last,00" src="http://inessah.com/wp-content/uploads/2012/04/0293071626519_1373764_last00-e1335023899912.jpeg" alt="" width="600" height="396" /></a><br />
The foundation of the project is that we were interested in collecting visual stories- almost a photo album of intimacy. Also, we wanted to use technology to accelerate the task of creating an environment that facilitated vulnerability.</p>
<p>Right now we have a working site prototype and are discussing adding possible features such as a data visualization. Like this ABC Flood Crisis Map which depicts clusters of information. For our project we could adapt it to show the clusters of bedrooms submitted by zip, which I think would be interesting. If we develop it to more cities, it would be even more interesting.</p>
<p><a href="http://inessah.com/wp-content/uploads/2012/04/abc1.jpg"><img title="abc" src="http://inessah.com/wp-content/uploads/2012/04/abc1.jpg" alt="" width="600" height="400" /></a></p>

]]></content:encoded>
			<wfw:commentRss>http://inessah.com/your-place-or-mine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
