Famished by Greg Leppert
September 21st, 2009

There are a few small applications that I’ve come to rely on in my daily workflow–apps that help me maneuver around the necessary distractions that pull me away from designing and programming throughout the day. After upgrading to OSX 10.6 and living without it for a month now, a day hasn’t passed without longing for a Snow Leopard compatible version of Bronson Beta’s Mail Appetizer. If you’ve never had the pleasure, it’s a plugin for Apple’s Mail that brings up a HUD style summary window of incoming mail as it arrives. I use it to quickly triage emails and keep that dreaded red badge of the unread away without feeling the need to consciously switch back to Mail and access the situation.

So it was with great joy that I discovered the developer behind Bronson Beta has not only announced a Snow Leopard compatible version is in development, with updates via his twitter account, but right now–I kid you not–you can download a development snapshot and get it running on your own machine. He’ll be the first to tell you that it’s not especially stable at the moment, in fact right after installing it I had to disable it altogether due to the HUD refusing to close, but knowledge that Mail Appetizer will make the transition with me to 10.6 makes me happy.

September 19th, 2009

Change is afoot on the web, with HTML 5 around the corner and everyone freaking out about how it and the standards it leverages and creates will solidify. The whole thing reminds me of the first time I mixed up hydraulic cement. “Oh my gosh this is totally… I NEED MORE WATER! Quick! It’s going to… I… can’t… AH just put it in there!” Luckily the web isn’t the cement I used to plug up the hole in a brick wall that flooded my bedroom every time it rained – it’s a slow moving beast that’s guided not by kings of rule and flippant decisions (at least hopefully those are behind us) but rather committees and volunteers and a whole bunch of other thankless positions. And corporations. Okay, but lets gloss over those for the moment and assume we’re all mutually invested in this whole “progress” thing working out.

So this weekend I took another look at @font-face embedding after having let it sit for a year or so. When it was first announced we all, all of us designers, looked up from our Helvetica and Arial stupor like a stoned kid who’s just been told there’s free pizza down in the dorm lobby. “Huh? Wait, were you talking to me? There’s… woah free pizza? Alright!” and suddenly the haze lifted and we were in motion, that is until we read the fine print of “limited support across browsers” and realized we had to sign up for a credit card or calling card or some other sort of promo to get that pizza. Bummer. But here we all, almost all grow’d up and it’s starting to look halfway practical to use a custom font on the web via CSS, given due concern for embedding and licensing restrictions. What follows are a few resources regarding that concern and hopefully, by using @font-face in our own pages, we’ll slowly influence that beast of the web.

Interactively Programmatic by Greg Leppert
September 17th, 2009

I just received a copy of Programming Interactivity by Joshua Noble in the mail today, primarily for the openFrameworks side of it, and it’s sitting nicely next to Visualizing Data by Ben Fry. Now if only I can come up for air long enough to dig my feet in and get my heels wet. What’s that old saying, “Outside of a dog, a book is a man’s best friend. Inside of a dog it’s too dark to read.” Dad, are you reading this? Stop showing up in my dreams.

May 26th, 2009

It’s been exciting to see web oriented technologies evolve, especially since Javascript started shaking off its rap as the hackery of the web and began the arduous transformation into one of its driving forces. Javascript hasn’t been the only focus, though. A while back Ben Fry and Casey Reas introduced the versatile Java based Processing language and environment and the art world, among others, has never been the same. That’s why when I heard about John Resig’s port of Processing to Javascript (Processing.js), utilizing the HTML canvas for rendering, I knew I needed to set aside some time to get my feet wet. This Memorial Day weekend was intended to be just that but when I sat down with my favorite code editor, TextMate, I found that there wasn’t yet a bundle that specifically addressed this new melding of Javascript and Processing. So, instead of digging into Processing.js itself, I dug into the TextMate bundle framework and now, with the extended weekend passed, I’d like to introduce my Processing.js bundle for TextMate. It’s a simple bundle, really, and at it’s core it ties together two existing bundles – the Javascript bundle that ships with TextMate and the Processing bundle, made for the Java incarnation, that can be downloaded from the official TextMate repository, and you’ll need both of them installed for the Processing.js bundle to work properly. It’s not perfect by any means (I’m certain there’s some conflicting language overlap between the Javascript and Processing bundles) but, with my love for TextMate and my excitement for Processing.js, I’m hoping it’ll get the ball rolling so that developing quick sketches can be as painless as possible. Given that goal, one of the main features is a hot-key triggered preview that allows you to write a pure Processing.js sketch with no wrapper HTML and preview it instantly in your open browsers. There’s a small amount of configuration that will make that preview much quicker so make sure to read the help section in the bundle menu after you’ve installed it. In the near future I’ll submit the bundle to Macromates for inclusion in their repository but for now you can download a zip of the current build here or check it out from my SVN repository here: http://svn.formasfunction.com/Processing_js.tmbundle. My hope is that others will chime in with revisions and help make TextMate a fun environment in which to write Processing.js sketches, so if you’re interested in helping out.

May 15th, 2009

One of the things I love about digital content is it’s malleability. There was a time not too long ago when we were forced to see content from the perspective provided us by the content creator, but things are rapidly changing and that’s exciting. As we progress further into a digital society I think we’ll start to see new developments in “lenses” through which to view this mass of content we’re inundated with on a daily basis. For instance, a while back I wrote a bookmarklet that converts any U.S. currency on a web page into the equivalent number of bags of rice that you could buy for someone in a 3rd world country. In fact, you can try it out now. Take this quote from William Jennings Bryan for instance: “No one can earn $1,000,000 honestly.” If you click here, the page should refresh and you’ll see what I mean. And you can bookmark that link to use it on any webpage you visit – once the page has loaded just click on your bookmark-let (hence the term) and watch the magic.

Bling bling!

Bling bling!

Now imagine going to Amazon or Ebay and instead of seeing a list of items you could spend money on you see a list of items that let you know how easy it would be to change someone’s life in a 3rd world country, that tell you for what you spent on your watch you could have bought two bags of rice that would have lasted a family for months. Imagine these online retailers actually lending a perspective on how opulent we are compared to our neighbors in need and how the ability to influence the world for the better really is within reach of the individual. Pretty cool huh? And this is just the beginning. The first phase of the web has been about the access of information – putting at our finger tips what previously only resided in libraries and as stories told among friends. I imagine that the second phase is going to be about processing that information – about using it in ways that the content creators never imagined and even in ways counter to their intended purpose, as might be the case with the Amazon and Ebay examples. And as those lenses mature in the digital space they’ll start to spill over into the physical space as well, shifting our perspectives on people and objects and all of the other interesting things we encounter every day, in real time. Suddenly walking a mile in another man’s shoes won’t be so hard and in fact might be as enlightening as the old adage would lead us to believe.

Going Nowhere. by Greg Leppert
May 13th, 2009
Run, Christina, Run!

Run, Christina, Run!

A couple of weekends ago we set up in a studio space on the east side of Austin, TX to see what it sounds like when you combine a girl, a treadmill, a heart rate monitor, and a fun little puredata patch. The video is still being processed but here’s a picture of two of the four elements involved; the rest is forthcoming.

Color Pick’n by Greg Leppert
May 11th, 2009

The color picker in OS X isn’t half bad but, unfortunately, it isn’t offered as a stand alone utility. That’s easily remedied with some simple instructions and even more easily remedied by downloading the fruits of those instructions which you can drop into Applications/Utilities where it’ll live happily alongside DigitalColor Meter.

[update] A nice compliment to the color picker is the Developer Color Picker created by Wade Cosgrove over at Panic.

April 29th, 2009

So, you just bought a polar heart rate monitor interface (HRMI) from Sparkfun.com? Awesome, so did I. What’s that? You want to know how to use Pure Data (PD) to grab the data off of the USB connection so you can use it for cool stuff later on? Perfect – I have just the patch for you. First, you’ll need the latest version of PD-extended. Got it? Okay, next you’ll need the PdMtl Abstractions Library. PdMtl is great because it’s going to take the serial ASCII data that we get from the USB connection and convert it into standard PD lists that can be easily manipulated. So, now that you have those two bits installed, here’s the HRMI Patch that pulls it all together.

A Screenshot of the HRMI patch

A Screenshot of the HRMI patch

Strap your Polar heart rate monitor on, plug in the HRMI via USB, adjust the comport if need be (it should point to the USB port the HRMI is plugged into) and hit the toggle at the top of the patch. The metro object should start polling the HRMI once every second with the results displayed in the numbers at the bottom of the patch. The first number is the status byte, the second is the count, and the third is the solid gold we’re looking for – our heart rate in beats per minute as averaged by the magic of the HRMI. There you have it; as for application, that’ll come later but in the mean time play around with it and see what fun stuff you can control using only your squishy ticker.