2006-06-01 @ 11:24

Ruby iTunes Client

I’m trying to think of cool stuff for a Ruby presentation, so I thought I’d write up a quick tutorial for the Ruby iTunes client here to see how it sounds.

Introduction: DAAP stands for “Digital Audio Access Protocol”, and is the protocol used by Apple’s iTunes to share music over a network. Hence the name Net::DAAP::Client.

read more »

2006-06-05 @ 10:13

Opening day



This weekend was opening day for kickball. Our team didn't win, but we had the best outfits, skit, team spirit, and moxie. Moxie is a very important part of a team, and I think we've got it.

Our team had the best opening taunt ever. Our opponent was The Old People. Lindsey dressed up as an old person, and we marched out on to the field with him and a coffin while playing Bone Thugs-N-Harmony. We beat Lindsey up and shoved him in the coffin. Then we mooned the other team revealing that we were all wearing depends that spelled out Ball Deep.

We Rock.

read more »

2006-06-09 @ 10:45

Do Not Litter

Seriously. Don’t litter. It really pisses me off. Someone has to clean that shit up, which costs money and is also a pain in the ass. I mean, do you throw garbage on the floor in your house? I don’t. Well, sometimes I do, but then I have to pick it up and take it out, and that is a pain in the ass. People littering usually don’t pick it up. I guess its not really considered littering if the litteree picks up the litter. I think then its just considered dropping or throwing something and then picking it up.

On the way home from work yesterday there was particularly bad traffic on I-5 and this guy in the car next to me was grabbing handfuls of cigarette butts and throwing them out the window. He wasn’t really throwing though. He would just hang his arm out the window and let them go to be all sly and stuff. I watching him do it 3 times! So I shouted “hey! quit littering”, but he didn’t look at me. I couldn’t tell if he was hard of hearing (he looked pretty old), or if he was ignoring me. So finally I yelled “Hey asshole! Quit fucking littering!”. That time he looked at me and gave me an oops, I’ve been busted face. Unfortunately at that point traffic started to move again so I didn’t get to have any more altercations with him again.

read more »

2006-06-22 @ 23:22

New Stuff in Ruby Mechanize 0.5.0

I’ve been working on the next pretty major release of Ruby WWW::Mechanize 0.5.0. I’ve decided to break some interfaces with this version, but I think it will all be for the better.

The first major change is that I’ve done is to unify the name space. There were a bunch of classes scattered around under WWW, like WWW::Link for instance. I’ve moved everything under WWW::Mechanize. The names will be a bit longer, but more consistent. This shouldn’t break too much code unless the code specifically uses a class name.

One of the best new features, in my opinion, is the addition of Pluggable Parsers.

read more »

2006-06-27 @ 16:40

Build your own Sonos player with Ruby on Rails

Hardware you’ll need:

  1. A computer running linux (I used Fedora Core 4)
  2. Nokia 770 (or some other web tablet)
  3. An Airport Express

Software (all installed on the linux server):

  1. Ruby
  2. RubyGems
  3. MySQL
  4. id3lib
  5. id3lib-devel
  6. raop-play (for streaming to the Airport Express)
read more »

2006-06-29 @ 15:36

Perfect Comedic Timing

Perfect comedic timing is when you say or do the funniest thing that could have been done at that point in time. That is a very rare thing for me, and typically happens when I’m tenderly making love (which ruins the moment). The other day though, I actually had perfect comedic timing. I ordered a pizza and when the guy arrived, he said that my upstairs neighbors were watching Trapped in the Closet and had it cranked up loud. After I paid for the pizza, I went to the window and leaned my head out. Right at that moment was the “ohmygod its a rubber” part, and I yelled “OHMYGOD IT’S A RUBBER” at just the right time and they all started laughing!

Perfect Comedic Timing.

read more »