Blog


Trivia Night

Published January 17, 2012

Trivia night frustrates me because I don't care to know the answers to most of the questions. But I love spending time with my roommates drinking and chatting. When tonight is trivia night at Cato's Alehouse, the two come hand in hand.

I bow out before the end to walk up Piedmont Avenue home.

The most well lit signs indicate businesses that have the most to lose.

The moon-sign indicates nothing to lose.


New Waves

Published January 13, 2012

Inspired by Casey's Framed Fractions, I purchased a Holga 135 from the FourCornerStore.

In past photo experiments I used SLR and digital cameras. They easily answered my biggest questions:

  • Where is the edge of the frame?
  • What object is in focus?

The Holga is a simpler camera. So simple that it unasks my primary questions. The camera provides neither precise framing nor accurate focus. The viewfinder, wholly independent of the lens, provides only a good estimate of the films edge. The lens offers only a primitive guide for the focus. The Holga's lack of immediate feedback has led me to an easy-going "best guess" philosophy when pressing the shutter release.

Free of my usual questions, my brain has discovered some obvious new ones. I now question the most obvious subject for this artform: light! The camera is a light-capturing device. I now have all new questions when walking with the camera:

  • How much light is there here?
  • What speed is the film?
  • How much contrast is there in foreground and background light?

As a musician, I've felt sensitive to sound for years. I'm excited to be more aware of another wave (and particle) in my environment. And I'm excited to share some of the artifacts of this awareness.

film speed ISO 100


Moonset

Published January 10, 2012


December 2011 East Coast Travels

Published December 29, 2011

image

image

image

image

image

image

image

image

image

image

image

image

image


The Lead Ball in the Zero Gravity Chamber

Published November 19, 2011

A pair of improvisations recorded at home on November 17, 2011.

The Lead Ball

The Zero Gravity Chamber


Time in Either Direction

Published August 22, 2011

Since moving to Oakland, I've focused most of my creative energy on the guitar. Below you can listen to my latest composition and recording, "Time in Either Direction", recorded on August 13, 2010. Jake Feltham recorded and mixed the piece.

Time in Either Direction


Chicks

Published May 22, 2011


Kung Fu Crimewave's Capitol Punishment

Published April 29, 2011

I recorded the Kung Fu Crimewave album Capitol Punishment in autumn/winter 2009. Neil just posted a great music video for "Kill for the Side". While I'm at it, I'm also sharing Preston's video for "What do I do?".


I've been working with Rails for the past few weeks. But seriously, folks, it's been great. Anyway, what are we all here for? To hear about my first big trouble with Rails.

We had a simple request at work to make a database field case-insensitive. Which is all to say, we had to make this touch field's once defaultly true case sensitivity:

validates_uniqueness_of :a_touchy_field

into a blatant lie:

validates_uniqueness_of :a_touchy_field, :case_sensitive => false

And this is why Rails is so great. We're done!

BUT WAIT. WHAT ABOUT THE BIG TROUBLE?

Oh right! Well, this field is very touchy. Touchy like... millions of rows touchy. And it didn't like all this insensitivity we we're giving it. And neither did MySQL. There's a lighthouse ticket all about it.

The issue is that to keep things DB-neutral, Rails is having MySQL perform a LOWER() on that field on each row to do a binary comparison for the uniqueness validation. How unkind to our conveniently indexed database field.

By default, MySQL does a case-insensitive string comparison. So we rolled our own uniqueness validation...

def TouchyModel < ActiveRecord::Base
  validate :ensure_unique_case_insensitive_touchy_field

  def ensure_unique_case_insensitive_touchy_field
    if new_record? || a_touchy_field_changed?
      if TouchyModel.exists?(:a_touchy_field => a_touchy_field)
        errors.add(:a_touchy_field, "must be alone, or else it'll get whiny")
      end
    end
  end
end

This lets us tip-toe around the call to LOWER() and get on with our validations using the default MySQL comparison.


Road Fooding

Published December 3, 2010

More photos from my cross country adventure with Erin.

4 quarts of food, cooked in the Badlands during a rainstorm. Uneaten.

4 quarts of uneaten Indian food

The badlands campsite.

A blue tent and covered table on the Badlands

Nighttime Cooking.

Erin stirring up an evening brew

More late night cooking

Crabill's Hamburgers

The tiny burger joint

Tiny burgers in a tiny diner

Tiny burgers in a tiny diner

Mug n' Buns Drive-in

Mug n' Buns Drive-In

Paper menu and big metal box to summon the server

Paper menu and big metal block

Rainy day soda shop

The soda shop on a rainy day

Campsite Cooking

Campsite Cooking

Sour cream raisin pie and a sticky roll

Pie and sticky roll on diner table

Bob's

The large diner sign for Bob's

No Parking Except for BOB

The mega bob meal - burger, two sodas, fries

Mega Bob Meal - burger, two sodas, fries