Here is a new web-based sound project I have been working on:

First, I recorded myself whistling the same two notes for about a minute, three times, in three different places (a cafeteria, a park bench, and a busy street). I then asked friends to submit recordings of themselves whistling these same two notes. Thus far, there have been 26 submissions from 15 people.

The site is arranged so that you can listen to more than one of these files at a time, and this is what I find most interesting. Here’s an example of what that sounds like:

Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.

If you’re interested in participating, please send a recording of yourself whistling those two notes. There is information on how to do that here.

The project is turning out to be about a few things. Ambient sounds, intention and non-intention, collaboration and unity, etc. There are different people in different places all doing the same thing. I think playing around with and listening to this has tuned up my ears to my own aural environment. Very interesting to me is that after playing with the files for a while, I start to hear those two tones everywhere: in the wind, in traffic sounds, in electronic and mechanical hums.

I got tired of copying a column of stuff from Excel, opening BBEdit, doing a find and replace to convert a bunch of lines into one block of comma-delimited text, selecting it all, copying again, and then finally pasting. I felt like I was that chump using an old fashioned blanket on the snuggie commercial.

So, I wrote this AppleScript.

clipboard newlines to commas and paste

Usage:

  1. Copy a column of stuff (from Excel, Numbers, anything really)
  2. Go to where you want to paste it as comma-delimited
  3. Invoke the script!

On my system, I run it with a keystroke trigger defined in Quicksilver. But you could use LaunchBar…or activate it from the scripts menu. By the way, if you want a system-wide scripts menu, here is a page that describes a nice way of activating a bunch of menu extras in OS X.

There are probably more elegant ways of doing this, but it has been working for me. If you find anything funky with it, let me know.

Want to know if any libraries close to you have a particular book? Drag this link to your bookmarks bar:

-WorldCat->

While you’re browsing around and thinking about books, click it. Here’s what’ll happen when you do:

  1. If you are looking at a book on Amazon, it’ll take you straight to the WorldCat entry for that book. Magic!
  2. If you’re not looking at anything on Amazon, it’ll check to see if you have highlighted any text on the current page in your web browser (i.e., you’re reading book reviews in the New York Times and you highlight the name of a book, an author, etc.) and then search WorldCat for that text.
  3. If you’re not looking at anything on Amazon, and there is no text highlighted, you’ll be prompted to enter what you want to search for in WorldCat.

Slick, eh? If you haven’t used WorldCat before you’ll need to tell it your location so it can give you relevant results.

I think it’s handy. It isn’t perfect, though. For example, if you’re looking at an electric toothbrush on Amazon and click this, it’ll take you to WorldCat and WorldCat will say it has no idea what you’re looking for. There are probably some other conditions/edge cases/etc. I haven’t thought of. Let me know if you come up with anything I oughtta account for and I’ll give it a shot.

This script toggles your iChat status between (away, “totally walking around”) and (available, [whatever you had as your available status before]). It even works with Current iTunes Song(!).

If your status is available, then it writes your status message to a hidden file (.temp_iChat_status) in your preferences folder and changes your status to away and your status message to “totally walking around”. Conversely, if your status is away, it reads whatever’s in that temp file and sets it as your status message and makes you available.

Attach this to a keystroke trigger (via Quicksilver or the like) and life is grand.

Here’s the script. And there you go. Here’s a unicorn from Eeyore’s Birthday in Austin.

Unicorn from Eeyore's Birthday

I really dislike viewing videos in iTunes. It’s clunky, there’s no support for multiple displays, I’m picky.

I wrote this little script to open and play the selected item in QuickTime, increase its played count by 1 (which marks podcasts as played in iTunes), and pause any music you might be listening to.

tell application "iTunes"
set theTrack to item 1 of selection
set theFile to (get location of theTrack)
set theCount to get (played count of theTrack)
set played count of theTrack to theCount + 1
end tell
tell application "iTunes"
if player state is playing then
playpause
end if
end tell
tell application "QuickTime Player"
open theFile
activate
play document 1
end tell

Ahh, that’s better. I set this up with a Quicksilver trigger and am no longer grouchy. Ever. Download the script. For some reason, the playpause (or play, or stop, or anything else I tried) wouldn’t work if I put all of the iTunes stuff in one tell block…so that’s why there’re two of them.

Three lines, real simple:

tell application "iTunes"
duplicate current track to playlist "srsly partytime"
end tell

And then you can create a Quicksilver trigger to run the script; so, anytime you hear something and think “yo, that’s my JAM” you don’t have to leave the keyboard to make sure it gets in the rotation for your upcoming birthday party. A couple of tracks that should be on there right now:

  1. Crystal Castles – “Crimewave
  2. Foals – “Olympic Airways

growl…missing pictures from the WordPress transition…

I come across lots of new words in the readings for my information science class this term. The whole field is fertile ground for making up new words. Aboutness, findabilty, satisfice, berrypicking. The list goes on. I’ve decided to coin three new words this week.

  1. memesta – A digital gangsta who has a specific goal of spreading or popularizing a new unit of cultural information, and does so through a planned and concerted effort.
  2. homepwnership – Annoying maintenance/labor/money costs of owning a home. You may own the house, but the house pwns you.
  3. ASCIIwall – A wall full of ASCII art, the source of which may come from a video feed.

Meme becomes a more significant term for the info-saturation age based on how agile and fanned-out our new ways of “telling” are. Write about a meme on a popular blogging aggregate website and a potentially huge audience receives it. This may usher in the day of the memesta, a digital gangsta of ideas.

I like that idea so much, I think I’ll be one. You see, here’s how homepwnership came up originally:

homepwnership

I looked, and the word’s been used before, but not very much as far as I can tell. Now, I’ve put it up on wordie.org, submitted it to urbandictionary (which surprised me–they have editors and I have to wait for my submission to show up!), and I’d imagine I could find some image of a tree falling on a house and put the word in block white letters near the bottom of the frame and post it randomly in fark forums and CL rants & raves. With the housing market crisis that’s been in the news lately, its pretty timely. Default on your subprime loan? This is homepwnership in a big way.

And for the ASCIIwall. A friend of mine is helping Camille Utterback (a prominent interactive video artist) with an installation in San Jose this month. I also came across QuickASCII, a Mac command line tool that renders any Quicktime video into ASCII and plays it in Terminal. We were having a party, so I set to work on an installation for the event. Here’s how it went:

  1. iSight records 60 seconds of video
  2. QuickASCII plays that video in Terminal, which is projected onto the wall.
  3. iSight records another video while the first one is playing.
  4. QuickASCII plays that second video.
  5. Repeat 4eva.

Here’s the janky AppleScript I wrote to keep the party going. I liked having the minute-long delay between recording and projection. That way, you noticed the installation, thought “hey–that’s me” and moved your arm around. When it didn’t move right along with you, you had to watch a little more to figure out what was going on. DJ took some good pics here.

ASCIIwall pic

I’ll upload some other pictures and give them the texasparty07 tag, too. I also had people hacking the KraftPad so we could play StepMania, an open source DDR clone. That’s right, it just ain’t a party unless AppleScript’s involved and there’s a hot soldering iron.

It’s been a busy couple of weeks.

I went to visit my brother and family in the Omaha metro area. Very fun visit and I took a bunch of photos at the Omaha Henry Dorly Zoo (here’s a link). The pictures are stored on my local wiki because I thought it’d be an easy way to get good captions for all the photos. You see, my brother has a family pass to the zoo and I think they go there at least once a week in the summer. Hence, my brilliant 10-year-old nephew knows the name of every animal there. Plus, he gets to learn a little web 2.0 lesson in the process. Here’s a youtube link to some little videos from the trip. Pay close attention to the ones about the famous Council Bluffs, Iowa Squirrel Cage Jail. Here’s a Wikipedia article explaining the Rotary Jail.

Its crazy, but a lot of people (particularly most of my family until now) still have no idea what a wiki is. They know what Wikipedia is, and sometimes they know that anybody can edit it, but that’s where it stops.

I must give a special shout-out to Edward Z. Yang (aka Ambush Commander), who wrote this great MediaWiki Extension that allows batch image uploading if you have good access to the server that your wiki is hosted on. SpecialUploadLocal worked like a charm to get my 80 photos into MediaWiki’s mechanical stomach.

yes, that's a real primate

Within 10 hours of landing back in California, I went to a one-day class in San Francisco taught by Edward Tufte, a preeminent charts and graphs guru and information design expert. Amazing day. Smart guy. Seriously, until the mid-afternoon when I started getting tired, about every 3 minutes I had some “wow, this guy is really smart” thought running through my brain.

One big idea I took home: when presenting information visually, don’t waste a single pixel on anything that doesn’t convey information. For example, does that arrow really need to be big, green, and have a drop shadow? Probably not. Make it black or gray with a thin line and your audience will focus on the things on either side of the arrow more easily, rather than being distracted by your design. That, and annotate stuff that shows causality—heck, annotate pretty much everything.

His website has very nice information architecture/design forums that are moderated and full of other smart people saying stuff (and probably fanboy disciples, too). His four books are beautiful, and I got nice hardcover editions of each as part of the class. Now that’s what I call takeaway. Here’s the Wikipedia article about Tufte for a general introduction.

SF SF Giants Win-Loss Sparkline 44-57     This is a sparkline of wins and losses for the San Francisco Giants so far this season, generated at hardballtimes.com. Sparkline is a term Tufte coined to describe data dense graphics that can be displayed inline with text. (Wikipedia link) Basically, you’ve got a little chart or line graph that’s a couple of inches long, as tall as regular text, and can convey a lot of meaningful information using potentially thousands of data points. There’s a cool PHP package available to start makin’ your own at sparkline.org. I’d love to start doing this with my own cycling statistics.

And the other big news—we signed a lease for a place in Sunnyvale and will move there in August. Oh, so much fun to pack everything up and move it all of 4.2 miles. Once we’re settled in, I’m hoping to have a free Saturday afternoon to curl up with Beautiful Evidence.

After about 8 man-hours of labor, I pared the photos down from 1500 to just under 200. Still a lot, but what can I say–Alaska was amazing. It is on my official list of “places to go back to.” Wouldn’t the Northern Lights be cool in wintertime?

Here they are, in five parts: Alaska07 pics. And here are a few shaky-hand youtube videos. The teaser image here is an ice cave underneath the Mendenhall Glacier outside Juneau.

Ice Cave Teaser

Something I read in this month’s Wired got me thinking of ways I could cut down on all that post-vacation photo labor. Wouldn’t it be great if you could, say, put all 1500 of your vacation photos up on Flickr and have the hive mind of that established community tell you which 100 photos best represent the entire collection?

The article is worth reading, an interview with Luis von Ahn. Luis is the inventor of those squiggly/obscured strings of text used to prevent bots from setting up accounts for various online services. These are pretty darn useful for things like keeping communities legit (i.e., preventing spambots from overrunning Yahoo’s game sites or craigslist’s apartment listings). The device itself is called a CAPTCHA (Completely Automated Public Turing test to tell Humans and Computers Apart), and they’re starting to be used for productive side-projects as well, like having unassuming computer users decipher words that OCR systems can’t parse.

Other projects von Ahn has worked on are more like games that get bored cube-jockeys and dorm-dwellers to put their time-wasting cycles to work tagging images for use by massive web search tools. There are a lot of applications of this kind of distributed human computation good for broad, gigantic projects, but I’m curious to see if anyone has ideas of how this can be good for me. The crux here, as the article explains, is trying to make the work something fun, that people will play on their own volition, without you having to, like, pay them. Hit me up with great ideas and/or VC cash any time. ;-)

I know this is what everyone has been waiting for. Here it is. Corncat, in dashboard widget form. I even made two versions! One with border and one without.

corncat.jpg

This cat will eat corn on the cob every time you hit that F12 button. Now that’s unconditional cuteness. Corncat will probably make you happy. If you have one of the original prototype editions of corncat widget, please update to one of these as the file sizes are much more reasonable (i.e., 300K as opposed to 2MB).

corncat_icon.jpg corncat_noborder_icon.jpg

Corncat animated .gif originally ganked from here. If you come across any problems with it, please let me know.