aku-aku: v.. To move a tall, flat bottomed object (such as a bookshelf) by swiveling it alternatively on its corners in a "walking" fashion. [After the book by Thor Heyerdahl theorising the statues of Easter Island were moved in this fashion.] source: LangMaker.com. Aku Aku also has another meaning to the islanders: a spiritual guide.
22 of 52: Kick Out The Jams Motherfuckers
Posted by dav at 2008 Feb 24 09:51 PM PST
File under: Art

This week's project is a "single serving site" called Kick Out The Jams Motherfuckers.

21 of 52: Bucket of Love
Posted by dav at 2008 Feb 17 06:33 PM PST
File under: Art

This week's 1/52nd of 52 things is a song called Bucket of Love. I started playing in Garage Band with my keyboard, just testing different instruments and making stuff up. Finally I settled on this harsh distorted electric guitar bass line. Then I added a bit of drum kit to it and decided I could make a go of it as a song. The music sounded like grindcore, so I was picturing the vocals as just some incoherent screaming, but then figured I should write some lyrics even if they were unintelligible. I didn't really know what to write though, so I just listened to the bass and drum kit over and over again and what ended up popping into my head was that creepy dude from Silence of the Lambs who had the line "it puts the lotion in the bucket. " So I wrote some lyrics from his point of view. I only had my iMac internal mic to record the vocals with, and I was a bit worried about my neighbors hearing me across the light shaft, so I tried to keep my voice low. I was able to mostly cover up the vocal recording shortcomings by adding some distortion, which worked with the song anyhow.

In the end, I realize now that I have a not so good version of the complete song, I really should re-record all of the tracks to get the timing and such more rigid, but I really don't have the time to do that right now so I'm just letting it out as is.

Enjoy (ha). Press the play button below.


bucket of love

i have utter devotion
since i got the notion
your beauty is just flesh deep
your beauty is mine to keep

now don't make a commotion
now it puts the lotion

in the bucket of love
bucket of love

you won't go
i will sew

and you'll fit like a glove
fit like a glove
bucket of love

UPDATE

Alex writes Someone was visited by the same Muse as you... (link to youtube video)

BIL: Minds Set Free.
Posted by dav at 2008 Feb 12 09:14 PM PST
File under: Events

I'm quite bummed that I have to miss the BIL (Bilateral. Intellectuals. Luminary) conference which is going on during the TED (Technology, Entertainment, Design) conference, March 1st and 2nd in Monterey, California. BIL is the BarCamp answer to TED's FOO Camp. If I didn't have a long-planned snowboarding trip to Tahoe with friends that weekend, I'd be down there with my video camera filming the talks. And don't get me wrong, I love TED. I can't get enough of the TED videos, but I also can't afford TED's $6,000 registration fee. I've been lucky enough to have been to both FOO Camp and BarCamp and FOO Camp wins. But BarCamp kicks butt too. I'm sure BIL will be great, and it's FREE. If you're free that weekend and in the area, you should go!

20 of 52: Winterish
Posted by dav at 2008 Feb 10 11:51 PM PST
File under: Art

Ok, this one is lame. But Whatchagonna do. Inspired by some truly amazing art produced from normal sheets of paper, I made a little winter scene using cd-roms as a frozen creek and little paper trees lining the river. My exacto knife cuts like a butter knife and I'm bleary eyed from lack of sleep so this is all I got this week. I really need to stop trying to get something done after dinner on Sunday.

You should check out the inspiration though, perhaps then you'll forgive me for wasting your time.

20 of 52

I'd like to try some more things in this vein using the laser cutter in the future.

Brain Training For Fun and Profit
Posted by dav at 2008 Feb 7 11:15 AM PST
File under: News

I've started a new gig working with Lumos Labs. They have a web site Lumosity which provides Brain Training (aka Brain Exercises or Brain Games) that keeps your thinking muscles in shape. I worked with them earlier as a consultant but it looks like I'll be switching to full time Director of Engineering in April when Mie, Tesla and I get back from South America (I've alread arranged great apartments in Lima and Buenos Aires). The vacation is a last blast before descending back into the regular full time employee world that I haven't been in since quiting my startup company in 2004.

Anyhow, the brain games are pretty fun, and there's a lot of science behind their efficacy. You should check them out. My favorites are Raindrops, Word Bubbles and Memory Match. The games are designed to improve four cognitive areas: Memory, Attention, Processing Speed and Cognitive Control. It's nice to know that there's some healthy stuff going on, but they are also fun to play and enough of a challenge to give you real satisfaction as you improve.

This is my new desktop image on my workstation: Brain storming.

19 of 52: Yet To Be Named Travel Research Site.
Posted by dav at 2008 Feb 4 12:31 AM PST
File under: Geek

This week's project is a web site. Unfortunately, while I got most of the development done on it over the weekend, I didn't have time to deploy it to a permanent hosting server tonight. It's running only on my development workstation at the moment. I can describe it here though and will update when it goes live.

The idea for the site was born out of a personal need. I'm planning on taking a vacation in March with my family and we were trying to figure out where to go.

Traveling with Tesla effectively rules out some options, like staying in hostels, so I was hoping to rent an apartment somewhere like I did when I lived in Brasil for a few months in 2005. There's a site Jay Allen introduced me to called VRBO.com. Vacation Rentals By Owner. It's got thousands of listings of apartments for rent all around the globe. Unfortunately the site looks like it's had the same UI design last century. It's hard to get a quick idea of how much a 2BR apartment costs in various cities.

Another issue in deciding where to go is how much it costs to fly there. I was checking the airfare for various cities as I thought of them but that was tedious.

What I really wanted was a site where I could put in my home airport and it would assemble the cost of a three week vacation in every city that had a VRBO listing plus the cost of airfare to that city. It would then display that list sorted cheapest to most expensive. Additionally it would be nice if the site allowed crowd-sourced compilation of various costs in the cities (typical meals, fare from the airport to city center, gallon of mil, etc) and included that in the assembled costs. This is the site I started to build. For a first iteration I limited it to only South American destinations, but eventually I will make it cover all of the VRBO listings.

The first step was scraping the apartment data from the VRBO site. For this I used the open-uri and hpricot ruby libraries to write a scraper. In production this scraper would run maybe once a day to get the latest listings and put them in the site database.

The second step was getting the airfares. I had found a great site, farecompare.com, that finds low price airfares. I started attempting to use the mechanize ruby library to manipulate the search form and scrape the results, but the site developers seemed to have gone to great lengths to make this difficult to do. Undaunted I fired up Wireshark and started sniffing the network traffic. If my browser can make the form work, I can write code to do it as long as I can analyze and reproduce all the necessary network traffic.

So I started getting into that, but then decided maybe I should just try another site in the interest of time. I looked at a few other sites but they all seemed to have a similar level of difficulty for scraping. Finally I noticed one site had almost exactly what I needed. Kayak.com is an airfare search site that has one search mode where you can put in your home airport, select a region of the world (like South America) and it finds the lowest fares to all the major cities in that region. Perfect! Except this search flow was also designed in a way that was difficult to scrape. Kayak had another feature that made them desirable though; they have a developer API, so network traffic analysis (not a lot of fun) wouldn't be necessary! Even though their API did not expose a way to do their regional search, I could make separate searches from a home airport to a list of other airports. It is not as elegant but it should work.

The Kayak API has some flaws though. First off, it seems buggy in that sometimes the API calls work, but most of the time I get a bogus error that says anonymous access to kayak API denied even though I am using a non-anonymous developer key. If I rerun the same API call several times in a row, eventually it works. This bumps me up against another problem with the Kayak API though: they limit API queries to 41 per hour (that's 1000/day). Since I have to make separate queries between the home airport and each city in a region, this means I can effectively only do one regional search per hour. They say you can request a higher limit, so I have an email request pending regarding that.

By the way, I think we're going to Buenos Aires.

System Overview

When a user comes to the site, she enters her home airport code, number of travelers and departure/return dates. The system fires off a BackgroundRB worker in a separate process to start hitting the Kayak API with airfare queries from the specified airport to each South American city listed in the VRBO database table. The user is shown a 'searching' web page that gets updated every 5 seconds as the airfare queries are coming in. Once the low price is found for each city, the background worker is released and the system correlates the airfares with the VRBO data already scraped and in the database. The Kayak results are cached for some time so that the queries don't need to be re-run again if the same home airport is entered. The lodging price is determined using the number of travelers to know what size apartments to look at and the length of stay to know whether to use the nightly, weekly or monthly rates.

Eventually I'd like to expand it to cover other housing options (hostels, hotels, chartered boats).

Anyone got any good names for such a site? It's so hard getting a decent domain name these days.