<?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>writing &#124; ben fry &#187; processing</title>
	<atom:link href="http://benfry.com/writing/archives/category/processing/feed" rel="self" type="application/rss+xml" />
	<link>http://benfry.com/writing</link>
	<description>Visualizing Data</description>
	<lastBuildDate>Sat, 04 Sep 2010 18:50:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Processing 0187</title>
		<link>http://benfry.com/writing/archives/682</link>
		<comments>http://benfry.com/writing/archives/682#comments</comments>
		<pubDate>Mon, 12 Jul 2010 17:17:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=682</guid>
		<description><![CDATA[New release available shortly in the pre-releases section of processing.org/download.
More bug fixes, and one new treat for OS X users. Hopefully we&#8217;re about set
to call this one 1.2. Please test and report any issues you find.
[ additions ]

+ On Mac OS X, you&#8217;re no longer required to have a sketch window open at
all times. This [...]]]></description>
			<content:encoded><![CDATA[<p>New release available shortly in the pre-releases section of <a href="http://processing.org/download">processing.org/download</a>.</p>
<p>More bug fixes, and one new treat for OS X users. Hopefully we&#8217;re about set<br />
to call this one 1.2. Please test and <a href="http://code.google.com/p/processing/issues/list">report any issues</a> you find.</p>
<p><strong>[ additions ]<br />
</strong><br />
+ On Mac OS X, you&#8217;re no longer required to have a sketch window open at<br />
all times. This will make the application feel more Mac-like&#8211;a little<br />
more elegant and trendy and smug with superiority.</p>
<p>+ Added a warning to the Linux version to tell users that they should be<br />
using the official version of Java from Sun if they&#8217;re not.<br />
<a><a href="http://wiki.processing.org/w/Supported_Platforms#Linux"> http://wiki.processing.org/w/Supported_Platforms#Linux<br />
</a> </a>There isn&#8217;t a perfect way to detect whether Sun Java is in use,<br />
so please let us know how it works or if you have a better idea.</p>
<p><strong>[ fixes ]<br />
</strong><br />
+ &#8220;Unexpected token&#8221; error when creating classes with recent pre-releases.<br />
<a href="http://code.google.com/p/processing/issues/detail?id=292">http://code.google.com/p/processing/issues/detail?id=292</a></p>
<p>+ Prevent horizontal scroll offset from disappearing.<br />
Thanks to Christian Thiemann for the fix.<br />
<a><a href="http://code.google.com/p/processing/issues/detail?id=280"> http://code.google.com/p/processing/issues/detail?id=280<br />
</a> <a href="http://code.google.com/p/processing/issues/detail?id=10">http://code.google.com/p/processing/issues/detail?id=10<br />
</a></a><br />
+ Fix NullPointerException when making a new sketch on non-English systems.<br />
<a href="http://code.google.com/p/processing/issues/detail?id=283">http://code.google.com/p/processing/issues/detail?id=283<br />
</a><br />
+ Fixed a problem when using command-line arguments with exported sketches<br />
on Windows. Thanks to davbol for the fix.<br />
<a href="http://code.google.com/p/processing/issues/detail?id=303"> http://code.google.com/p/processing/issues/detail?id=303<br />
</a><br />
+ Added requestFocusInWindow() call to replace Apple&#8217;s broken requestFocus(),<br />
which should return the previous behavior of sketches getting focus<br />
immediately when loaded in a web browser.<br />
<a href="http://code.google.com/p/processing/issues/detail?id=279">http://code.google.com/p/processing/issues/detail?id=279<br />
</a><br />
+ Add getDocumentBase() version of createInput() for Internet Explorer.<br />
Without this, sketches will crash when trying to find files on a web server<br />
that are not in the exported .jar file. This fix is only for IE. Yay IE!</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/682/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Processing 0186</title>
		<link>http://benfry.com/writing/archives/680</link>
		<comments>http://benfry.com/writing/archives/680#comments</comments>
		<pubDate>Fri, 25 Jun 2010 16:48:49 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=680</guid>
		<description><![CDATA[Mixed bag of updates as a follow-on to release 0185.
[ mixed bag ]

Android SDK requirement is now API 7 (Android 2.1), because Google has deprecated API 6 (2.0.1).
More Linux PDF fixes from Matthias Breuer. Thanks!
PDF library matrix not reset between frames. (Fixed in 0185.)
http://dev.processing.org/bugs/show_bug.cgi?id=1227

Updated the URLs opened by the software to reflect the new site [...]]]></description>
			<content:encoded><![CDATA[<p>Mixed bag of updates as a follow-on to release 0185.<strong></strong></p>
<p><strong>[ mixed bag ]<br />
</strong><br />
Android SDK requirement is now API 7 (Android 2.1), because Google has deprecated API 6 (2.0.1).</p>
<p>More Linux PDF fixes from Matthias Breuer. Thanks!</p>
<p>PDF library matrix not reset between frames. (Fixed in 0185.)<br />
<a href="http://dev.processing.org/bugs/show_bug.cgi?id=1227">http://dev.processing.org/bugs/show_bug.cgi?id=1227<br />
</a><br />
Updated the URLs opened by the software to reflect the new site layout.<br />
<a href="http://code.google.com/p/processing/issues/detail?id=278">http://code.google.com/p/processing/issues/detail?id=278<br />
</a><br />
Updated the included examples with recent changes.</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/680/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Processing 0185</title>
		<link>http://benfry.com/writing/archives/674</link>
		<comments>http://benfry.com/writing/archives/674#comments</comments>
		<pubDate>Mon, 21 Jun 2010 09:27:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=674</guid>
		<description><![CDATA[Just posted release 0185 of Processing on the download page. It&#8217;s a pre-release for what will eventually become 1.2 or 1.5. Please test and file bugs if you find problems. The list revisions are below:
PROCESSING 0185 &#8211; 20 June 2010

Primarily a bug fix release. The biggest change are a couple tweaks for problems caused by [...]]]></description>
			<content:encoded><![CDATA[<p>Just posted release 0185 of Processing on the <a href="http://processing.org/download/">download page</a>. It&#8217;s a pre-release for what will eventually become 1.2 or 1.5. Please test and <a href="http://code.google.com/p/processing/issues/list">file bugs</a> if you find problems. The list revisions are below:</p>
<p><strong>PROCESSING 0185 &#8211; 20 June 2010<br />
</strong><br />
Primarily a bug fix release. The biggest change are a couple tweaks for problems caused by Apple&#8217;s Update 2 for Java on OS X, so this should make Processing usable on Macs again.</p>
<p><strong>[ bug fixes ]<br />
</strong><br />
+ Fix for Apple bug that caused an assertion failure when requestFocus() was called in some situations. This was causing the PDE to become unusable for opening sketches, and focus highlighting was no longer happening.<br />
<a href="http://code.google.com/p/processing/issues/detail?id=258"> http://code.google.com/p/processing/issues/detail?id=258</a><br />
<a><a href="http://dev.processing.org/bugs/show_bug.cgi?id=1564">http://dev.processing.org/bugs/show_bug.cgi?id=1564<br />
</a> <a href="http://dev.processing.org/bugs/show_bug.cgi?id=1569">http://dev.processing.org/bugs/show_bug.cgi?id=1569<br />
</a></a><br />
+ Fixed two bugs with fonts created with specific charsets.</p>
<p>+ Fix from jdf for PImage(java.awt.Image img) and ARGB images. The method “public PImage(java.awt.Image)” was setting the format to RGB (even if ARGB)</p>
<p>+ Large number of beginShape(POINTS) not rendering correctly on first frame<br />
<a href="http://dev.processing.org/bugs/show_bug.cgi?id=1572">http://dev.processing.org/bugs/show_bug.cgi?id=1572</a></p>
<p>+ Fix for PDF library and createFont() on Linux, thanks to Matthias Breuer.<br />
<a href="http://dev.processing.org/bugs/show_bug.cgi?id=1566">http://dev.processing.org/bugs/show_bug.cgi?id=1566<br />
</a><br />
+ Fix from takachin for a problem with full-width space with Japanese IME.<br />
<a href="http://dev.processing.org/bugs/show_bug.cgi?id=1531">http://dev.processing.org/bugs/show_bug.cgi?id=1531<br />
</a><br />
+ Reset matrix for the PDF library in-between frames also added begin/endDraw between frames<br />
<a href="http://dev.processing.org/bugs/show_bug.cgi?id=1227">http://dev.processing.org/bugs/show_bug.cgi?id=1227<br />
</a><br />
<strong>[ additions ]<br />
</strong><br />
+ Add the changes for &#8220;Copy as HTML&#8221; to replace the &#8220;Copy for Discourse&#8221; function, now that we&#8217;ve shut down the old YaBB discourse board.<br />
<a href="http://code.google.com/p/processing/issues/detail?id=271">http://code.google.com/p/processing/issues/detail?id=271<br />
</a><br />
+ Option to disable re-opening sketches when you start Processing. The default will stay the same, but if you don&#8217;t like the feature, alter your preferences.txt file to change:<br />
last.sketch.restore=true<br />
to the following:<br />
last.sketch.restore=false<br />
The issue was originally filed here:<br />
<a><a href="http://dev.processing.org/bugs/show_bug.cgi?id=1501">http://dev.processing.org/bugs/show_bug.cgi?id=1501<br />
</a> <a href="http://code.google.com/p/processing/issues/detail?id=245">http://code.google.com/p/processing/issues/detail?id=245<br />
</a> </a>However the main problem with this is that due to other errors, the wrong sketches are being opened, sketches are sometimes forgotten, or windows are opened concurrently on top of one another, creating a bad situation:<br />
<a><a href="http://code.google.com/p/processing/issues/detail?id=177">http://code.google.com/p/processing/issues/detail?id=177<br />
</a> <a href=" http://code.google.com/p/processing/issues/detail?id=179">http://code.google.com/p/processing/issues/detail?id=179<br />
</a> </a>Those bugs are not yet fixed, but will be addressed in future releases.</p>
<p>+ Option to change the default naming of sketches via preferences.txt.<br />
First, you can change the prefix, which defaults to:<br />
editor.untitled.prefix=sketch_<br />
And the suffix is handled using dates. The current default (since 1.0) is:<br />
editor.untitled.suffix=MMMdd<br />
Or if you want to switch back to the old (six digit) style, you could use:<br />
editor.untitled.suffix=yyMMdd<br />
<a href="http://dev.processing.org/bugs/show_bug.cgi?id=1091">http://dev.processing.org/bugs/show_bug.cgi?id=1091<br />
</a><br />
+ Updated bundled JRE/tools to 6u20 for Windows and Linux</p>
<p>+ Several SVG fixes and additions, including some tweaks from PhiLho. These changes will be documented in a future release once the API changes are complete.</p>
<p>+ Added option to launch a sketch directly w/ linux. Thanks to Larry Kyrala.<br />
<a href="http://dev.processing.org/bugs/show_bug.cgi?id=1549">http://dev.processing.org/bugs/show_bug.cgi?id=1549<br />
</a><br />
+ Pass actual exceptions from InvocationTargetException in registered methods, which improves how exceptions are reported with libraries.</p>
<p>+ Added loading.gif to the js version of the applet loader. Not sure if this is actually working or not, but it&#8217;s there.</p>
<p><strong>[ android ]<br />
</strong><br />
+ Added permissions for INTERNET and WRITE_EXTERNAL_STORAGE to the default AndroidManifest.xml file. This will be addressed in greater detail here:<br />
<a><a href="http://code.google.com/p/processing/issues/detail?id=275">http://code.google.com/p/processing/issues/detail?id=275<br />
</a> </a>And with the implementation of code signing here:<br />
<a href="http://code.google.com/p/processing/issues/detail?id=222">http://code.google.com/p/processing/issues/detail?id=222<br />
</a><br />
+ Lots of work happening underneath with regards to Android, more updates soon as things start evening out a bit.</p>
<p>+ Defaulting to a WVGA screen for the default Processing AVD.</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/674/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Evolution of Privacy on Facebook</title>
		<link>http://benfry.com/writing/archives/662</link>
		<comments>http://benfry.com/writing/archives/662#comments</comments>
		<pubDate>Fri, 07 May 2010 18:48:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[privacy]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[refine]]></category>
		<category><![CDATA[social]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=662</guid>
		<description><![CDATA[Inspired by this post by Kurt Opsahl of the EFF, Matt McKeon of IBM&#8217;s Visual Communication Lab created the following visualization depicting the evolution of the default privacy settings on Facebook:

Has a couple nice visual touches that prevent it from looking like YAHSVPOQUFOTI (yet another highly-stylized visualization piece of questionable utility found on the internet). [...]]]></description>
			<content:encoded><![CDATA[<p>Inspired by <a href="http://www.eff.org/deeplinks/2010/04/facebook-timeline">this post</a> by Kurt Opsahl of the EFF, <a href="http://www.mattmckeon.com/">Matt McKeon</a> of IBM&#8217;s Visual Communication Lab created the following visualization depicting the evolution of the default privacy settings on Facebook:</p>
<p style="text-align: center;"><a href="http://mattmckeon.com/facebook-privacy/"><img class="size-full wp-image-663  aligncenter" title="sorry, still don't have an account on fb" src="http://benfry.com/wp/wp-content/uploads/2010/05/facebook-privacy-site.jpg" alt="sorry, still don't have an account on fb" width="390" height="325" /></a></p>
<p>Has a couple nice visual touches that prevent it from looking like YAHSVPOQUFOTI (yet another highly-stylized visualization piece of questionable utility found on the internet). Also cool to see it was built with <a href="http://processingjs.org/">Processing.js</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/662/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JavaScript: The Good Parts</title>
		<link>http://benfry.com/writing/archives/603</link>
		<comments>http://benfry.com/writing/archives/603#comments</comments>
		<pubDate>Tue, 23 Feb 2010 22:35:03 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[cs]]></category>
		<category><![CDATA[languages]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[speaky]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=603</guid>
		<description><![CDATA[Watched Douglas Crockford&#8217;s “JavaScript: The Good Parts” talk, based on his book of the same name. I like Crockford&#8217;s work on JSON—or rather, the idea of simple file formats that need simple APIs to work with them. More important, with the continued evolution of processing.js, I&#8217;m really optimistic about where things are headed with JavaScript. [...]]]></description>
			<content:encoded><![CDATA[<p>Watched Douglas Crockford&#8217;s “JavaScript: The Good Parts” talk, based on <a href="http://www.amazon.com/gp/product/0596517742?ie=UTF8&amp;tag=benfrycom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0596517742">his book</a> of the same name. I like Crockford&#8217;s work on JSON—or rather, the idea of simple file formats that need simple APIs to work with them. More important, with the continued evolution of <a href="http://processingjs.org/">processing.js</a>, I&#8217;m really optimistic about where things are headed with JavaScript. (You might say I&#8217;m feeling a bit hopey changey about it.) I&#8217;ve had Crockford&#8217;s book in my reading pile for a while and finally got around to watching the talk last week.</p>
<p><object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/hQVTIJBZook&#038;hl=en_US&#038;fs=1&#038;"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/hQVTIJBZook&#038;hl=en_US&#038;fs=1&#038;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"></embed></object></p>
<p>I was at Netscape (or maybe at Sun?) when they renamed their “LiveScript” language to “JavaScript” (because Java was the it-language at the time) and I&#8217;d avoided it for a long time. His talk points out a series of things to avoid from the JavaScript syntax, in fact I think I enjoyed the explanation of the “Bad Parts” a bit more. By clearing out a few things, the whole starts making more sense. But it&#8217;s an interesting discussion for people scratching their head about this incredibly pervasive language found in web browsers, and rapidly becoming more exciting as support for Canvas and WebGL evolve.</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/603/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Processing 0176 (pre-release)</title>
		<link>http://benfry.com/writing/archives/600</link>
		<comments>http://benfry.com/writing/archives/600#comments</comments>
		<pubDate>Sun, 21 Feb 2010 00:13:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=600</guid>
		<description><![CDATA[I&#8217;ve just posted revision 0176 of Processing, a pre-release of what will become version 1.1 or maybe 1.5, depending on how long we bake this one before releasing the final. A list of changes can be found here.
You can download the release at android.processing.org, which (as you might guess) is the eventual home of the [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-601" title="Poo" src="http://benfry.com/wp/wp-content/uploads/2010/02/loading.gif" alt="Poo" width="100" height="100" />I&#8217;ve just posted revision 0176 of Processing, a pre-release of what will become version 1.1 or maybe 1.5, depending on how long we bake this one before releasing the final. A list of changes can be found <a href="http://processing.org/download/revisions.txt">here</a>.</p>
<p>You can download the release at <a href="http://android.processing.org">android.processing.org</a>, which (as you might guess) is the eventual home of the Android version of Processing. The Android support is very incomplete, as you can see from the warnings on the page.</p>
<p>But ignore for a moment that it says “Android”, the download is hosted there because at the moment, most of my energy is focused on the Android extensions. While the build also includes the incomplete Android tools (just pretend they aren&#8217;t there, unless you&#8217;re willing to read all the caveats on that page), there are many bug fixes for the regular Java version of Processing in the download too. It&#8217;s been a couple months since I&#8217;ve done a proper release, so there&#8217;s a backlog of fixed bugs and things I&#8217;ve been adding.</p>
<p>I&#8217;m posting the pre-release because so many things have changed, and I don&#8217;t want to do a 1.1 release, followed by an immediate 1.1.1. So please test! Then again, it&#8217;s taken me so long to explain the situation that I should have just posted it as 1.1.</p>
<p>And by the time you read this, it&#8217;ll probably be release 0177, or 0178, or&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/600/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>toxiclibs showreel</title>
		<link>http://benfry.com/writing/archives/575</link>
		<comments>http://benfry.com/writing/archives/575#comments</comments>
		<pubDate>Wed, 11 Nov 2009 20:05:02 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=575</guid>
		<description><![CDATA[One of the earliest fixtures in the Processing community is toxi (or Karsten Schmidt, if you must) who has been doing wonderful things using the language/environment/core for many years. A couple months ago he posted a beautiful reel of work done by the many users of his toxiclibs library. Just beautiful:

A more complete description can [...]]]></description>
			<content:encoded><![CDATA[<p>One of the earliest fixtures in the Processing community is <a href="http://postspectacular.com">toxi</a> (or Karsten Schmidt, if you must) who has been doing wonderful things using the language/environment/core for many years. A couple months ago he posted a beautiful reel of work done by the many users of his <a href="http://code.google.com/p/toxiclibs/">toxiclibs</a> library. Just beautiful:</p>
<p><embed src="http://vimeo.com/moogaloop.swf?clip_id=6644720&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="500" height="280"></embed></p>
<p>A more complete description can be found on the <a href="http://www.vimeo.com/6644720">video page</a> over at Vimeo.</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/575/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Health Numbers in Context</title>
		<link>http://benfry.com/writing/archives/520</link>
		<comments>http://benfry.com/writing/archives/520#comments</comments>
		<pubDate>Wed, 26 Aug 2009 14:08:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[interact]]></category>
		<category><![CDATA[mine]]></category>
		<category><![CDATA[probability]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[seed]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=520</guid>
		<description><![CDATA[As a continuation of this project, we&#8217;ve just finished a second health visualization (also built with Processing) using GE&#8217;s data. Like the first round, we started with ~6 million patient records from their “MQIC” database. Using the software, you input gender, age range, height/weight (to calculate BMI), and smoking status. Based on the selections it [...]]]></description>
			<content:encoded><![CDATA[<p>As a continuation of <a href="http://benfry.com/writing/archives/399">this project</a>, <a href="http://seedmediagroup.com/visualization/">we&#8217;ve</a> just finished a <a href="http://www.ge.com/visualization/your_health_visualizer/">second health visualization</a> (also built with <a href="http://processing.org/">Processing</a>) using GE&#8217;s data. Like the first round, we started with ~6 million patient records from their “MQIC” database. Using the software, you input gender, age range, height/weight (to calculate BMI), and smoking status. Based on the selections it shows you the number of people in the database that match those settings, and the percentages that have been diagnosed with diabetes, heart disease, hypertension, or have had a stroke:</p>
<p><a href="http://www.ge.com/visualization/your_health_visualizer/"><img class="size-full wp-image-521 alignnone" title="are you blue? no, dark blue." src="http://benfry.com/wp/wp-content/uploads/2009/08/gedeux-410px.png" alt="are you blue? no, dark blue." width="410" height="260" /></a></p>
<p>For people reading the site because they&#8217;re interested in visualization (I guess that&#8217;s all of you, except for mom, who is just trying to figure out what I&#8217;m up to), some inside baseball:</p>
<p>On the interaction side, the main objective here was to make it easy to move around the interface as quickly as possible. The rows are shown in succession so that the interface can teach itself, but we also provide a reset button so that you can return to the starting point. Once the rows are visible, though, it&#8217;s easy to move laterally and make changes to the settings (swapping between age ranges, for instance).</p>
<p>One irony of making the data accessible this way is that most users — after looking up their own numbers — will then try as many different possibilities, in a quick hunt for the extremes. How high do the percentages go? If I select bizarre values, what happens at the edges? Normally, you don&#8217;t have to spend as much time on these 1% cases, and it would be alright for things to be a little weird when truly odd values are entered (300 lb. people who are 4&#8242; tall, smokers, and age 75 and over). But in this case, a lot more time has to be spent making sure things work. So while most of the time the percentages at the top are in the 5-15% range, I had to write code so that when one category shoots up to 50%, the other bars in the chart scale down in proportion.</p>
<p>Another aspect of the interface is the body mass index calculator. Normally a BMI chart looks something like <a href="http://en.wikipedia.org/wiki/File:Body_mass_index_chart.svg">this</a>, a large two-dimensional plot that would otherwise use up half of the interface. By using a little interaction, we can make a simpler chart that dynamically updates itself based on the current height or weight settings. Also, because the ranges have (mathematically) hard edges, we&#8217;re showing that upper and lower bound of the range so that it&#8217;s more apparent. Otherwise, a 5&#8242;8&#8243; person steps from 164 to 165 lbs to find themselves suddenly overweight. In reality, the boundaries are more fuzzy, which would be taken into account by a doctor. But with the software, we instead have to be clear about the way the logic is working.</p>
<p>(Note that the height and weight are only used to calculate a BMI range — it&#8217;s not pulling individuals from the database who are 5&#8242;8&#8243; and 160 lbs, it&#8217;s pulling people from the “normal” BMI range.)</p>
<p>For the statistically (or at least numerically) inclined, there are also some interesting quirks that can be found, like a situation or two where health risk would be expected to go up, but in fact they go down (I&#8217;ll leave you to find them yourself). This is not a bug. We&#8217;re not doing any sort of complex math here to evaluate actual risk, the software is just a matching game with individuals in the database. These cases in particular show up when there are only a few thousand individuals, say 2,000 out of the full 6 million records. The number of people in these edge cases is practically a rounding error, which means that we can&#8217;t make sound conclusions with them. As armchair doctor-scientist, it&#8217;s also interesting to speculate as to what might be happening in such cases, and how other factors may come into play.</p>
<p>Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/520/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>History of Processing, as told by John Maeda</title>
		<link>http://benfry.com/writing/archives/513</link>
		<comments>http://benfry.com/writing/archives/513#comments</comments>
		<pubDate>Tue, 25 Aug 2009 15:31:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=513</guid>
		<description><![CDATA[John Maeda (Casey and I&#8217;s former advisor) has written a very gracious, and very generous article about the origins of the Processing project for Technology Review. An excerpt:
In 2001, when I was a young MIT faculty member overseeing the Media Lab Aesthetics and Computation Group, two students came up with an idea that would become [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://our.risd.edu/"><img class="alignright size-full wp-image-514" style="margin: 8px;" title="kicking it color mac classic style" src="http://benfry.com/wp/wp-content/uploads/2009/08/maeda-1.png" alt="kicking it color mac classic style" width="100" height="100" />John Maeda</a> (Casey and I&#8217;s former advisor) has written <a href="http://www.technologyreview.com/computing/23187/?a=f">a very gracious, and very generous article</a> about the origins of the <a href="http://processing.org">Processing</a> project for <em>Technology Review</em>. An excerpt:</p>
<blockquote><p>In 2001, when I was a young MIT faculty member overseeing the Media Lab Aesthetics and Computation Group, two students came up with an idea that would become an award-winning piece of software called Processing—which I am often credited with having a hand in conceiving. Processing, a programming language and development environment that makes sophisticated animations and other graphical effects accessible to people with relatively little programming experience, is today one of the few open-source challengers to Flash graphics on the Web. The truth is that I almost stifled the nascent project&#8217;s development, because I couldn&#8217;t see the need it would fill. Luckily, Ben Fry and Casey Reas absolutely ignored my opinion. And good for them: the teacher, after all, isn&#8217;t always right.</p></blockquote>
<p>To give him more credit (not that he needs it, but maybe because I&#8217;m bad with compliments), John&#8217;s objection had much to do with the fact that Processing was explicitly an evolutionary, as opposed to revolutionary, step in how coding was done. That&#8217;s why it was never the focus of my Masters or Ph.D. work, and instead has nearly always been a side project. And more importantly, for students in his research group, he usually forced us away from whatever came naturally for us. Those of us for whom creating tools was “easy,” he forced us to make less practical things. For those who were comfortable making art, he steered them toward creating tools. In the end, we all learned more that way.</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/513/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tiny Sketch, Big Funny</title>
		<link>http://benfry.com/writing/archives/506</link>
		<comments>http://benfry.com/writing/archives/506#comments</comments>
		<pubDate>Fri, 14 Aug 2009 14:36:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[opportunities]]></category>
		<category><![CDATA[processing]]></category>

		<guid isPermaLink="false">http://benfry.com/writing/?p=506</guid>
		<description><![CDATA[Just heard about this from Casey yesterday:
Tiny Sketch is an open challenge to artists and programmers to create the most compelling creative work possible with the programming language Processing using 200 characters or less.
&#8230;building on the proud traditions of obfuscated code contests and the demo scene. The contest runs through September 13 and is sponsored [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.openprocessing.org/collections/rhizome.php"><img class="alignright size-full wp-image-507" style="margin: 8px 13px;" title="not all sketches are 6x6 pixels in size" src="http://benfry.com/wp/wp-content/uploads/2009/08/thumbnails-small.png" alt="not all sketches are 6x6 pixels in size" width="96" height="300" /></a>Just heard about this from <a href="http://reas.com">Casey</a> yesterday:</p>
<blockquote><p><a href="http://www.openprocessing.org/collections/rhizome.php"><em>Tiny Sketch</em></a> is an open challenge to artists and programmers to create the most compelling creative work possible with the programming language <a href="http://www.processing.org/" target="_parent">Processing</a> using 200 characters or less.</p></blockquote>
<p>&#8230;building on the proud traditions of obfuscated code contests and the demo scene. The contest runs through September 13 and is sponsored by <a href="http://rhizome.org/" target="newW">Rhizome</a> and <a href="http://openprocessing.org/">OpenProcessing</a>.</p>
<p>Having designed Processing to do one thing or another, several of the submissions made me laugh out loud for ways their authors managed to introduce new quirks. For instance, consider the <a href="http://processing.org/reference/createFont_.html"><code>createFont()</code></a> function. Usually it looks something like this:</p>
<blockquote><p><code>PFont f = createFont("Helvetica", 12);</code></p></blockquote>
<p>If the “Helvetica” font is not installed, it silently winds up using a default font. So somebody clever figured out that if you just leave the font name blank, it&#8217;s an easy way to get a default font, and not burn several characters of the limit:</p>
<blockquote><p><code>PFont f = createFont("", 12);</code></p></blockquote>
<p><a href="http://www.openprocessing.org/visuals/?visualID=3508">Another</a>, by Kyle McDonald, throws an exception as a way to produce text to plot on screen. (It&#8217;s also a bit of an inside joke—on us, perhaps—because it&#8217;s a ubiquitous error message resulting from a <a href="http://processing.org/reference/loadPixels_.html">change</a> that was made since earlier releases of Processing.)</p>
<p>One of the most interesting bits is seeing how these ideas propagate into later sketches that are produced. Since the font hack appeared (not sure who did it first, let me know if you do), everyone else is now using that method for producing text. Obviously art/design/coding projects are always the result of other influences, but it&#8217;s rare that you get to see ideas exchanged in such a direct fashion.</p>
<p>And judging from some of the jagged edges in the submissions, I&#8217;m gonna change the <a href="http://processing.org/reference/smooth_.html"><code>smooth()</code></a> to just <code>s()</code> for the next release of Processing, so that more people will use it in the next competition.</p>
]]></content:encoded>
			<wfw:commentRss>http://benfry.com/writing/archives/506/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
