Can someone PLEASE explain…

… why We think “Chasing Cars” by Snow Patrol and “Hey there, Delilah” (punctuation added for correctness) by the Plain White T’s are such awesome songs they have to be played CONSTANTLY EVERYWHERE?  Shit, they only have maybe 10 unique notes if you count both songs together!  If there were ever two songs that made me change the radio station when they came on, these are they.

State of the Union 2008

It was like watching the father of the groom giving a toast at a wedding of inconvenience. As he extolled the virtues of his son (who perhaps somehow maybe played a part in the need for such a wedding in the first place) and the dual-edged glory and hardship that lay ahead for the newlyweds, his half of the audience whooped and hollered while the unamused friends of the bride sat still with the most annoyed looks on their faces that could possibly be mustered. The smug uncle of the groom sat next to the horrified but accepting mother of the bride, carefully placed just far enough behind and above the father of the groom to prevent any spontaneous fisticuffs.

The one thing everyone seemed to agree upon, even without articulating, was that everyone would be glad when the toast was over.

Three words

If there is one internet-related idiom that has infiltrated society which I could reverse, undo, or otherwise negate and obliterate, it would be these three words:

Thanks In Advance

The usage of this preemptive strike of gratitude, for example, in a discussion group when asking for help, actually demonstrates to me that the writer is so important and so busy that he will not have time to thank someone who generously gave their own time to help the original writer.  If he cannot give his own time to thank me for giving him my time, why should I bother giving him my time in the first place?   How hard is it to say a simple “thank you” after the fact, anyway, even if it’s a blanket “thank you to everyone who helped me!” after your problem is resolved?

It has always been my assertion that there are really only two fundamental desires of most people:  to be appreciated and to be listened to.  (How do you phrase that without a dangling preposition?  Thanks in advance!  NOT!)   How the heck do you appreciate someone “in advance?”

Anyway, to all my friends and colleagues, be sure that if you help me out, it’ll be “thanks in arrears.”  Wait, that doesn’t sound right either…

Two Great Radio Stations

Back in 1983, a friend of mine happened to ask, “Have you listened to the new KFOG?” Previously, KFOG had been a full-contact muzak station, but had recently changed its format to rock ‘n’ roll.

I explicitly remember driving home one evening in my then-new VW GTI in San Rafael, CA.  I was passing the high school and tuned to 104.5.  The DJ said, “You know that Genesis album Three Sides Live?  Well, in Europe, all four sides are live, so we’re going to play the live fourth side for you now.”

I was hooked.  Although KFOG’s tastes may have diverged a little from mine over the ensuing years, I would still rate it as an excellent radio station and one that played a giant role in my daily life for literally decades.  I remember trying desperately to find some place while I was at school in San Luis Obispo that could miraculously pull KFOG in from the clouds 200+ miles away.  Good thing I move back to the Bay Area when I graduated Cal Poly.

Fast forward to my recent visit to Washington DC.  Without anything compelling available in the morning on the hotel television, I turned to the radio and started scanning.  I landed on 94.7 The Globe where Roger Daltrey was belting out “Out of my BRAI-AIN on the train.”

So I start off my KFOG listening career with the Fourth Side Live of Genesis, and The Globe brings me into their fold with The Who 5.15.  Perfection.

Constant crisis

In my Rails application, I have a file in

RAILS_ROOT/lib/pcm/web_services/constants.rb

On my development machine (OS X), I am able to reference items in this file/module using the prefix “PCM::WebServices::Constants” without having to require the file. Once deployed on Linux, however, this approach broke and I had to explicitly

require 'pcm/web_services/constants'

(or any other file I needed from the lib/pcm directory) for things to work. I suspected it had something to do with case sensitivity on Linux as opposed to not-so-case-sensitivity on OS X. I was wrong.

Upon further investigation, I find I can easily reproduce the problem, although I do not yet have an explanation.  The solution to the problems are (so far):

1) Explicitly require ‘pcm/web_services/constant’ wherever I need it.  No biggie, but I prefer the “less is more” philosophy where Rails automagically loads the constant without the explicit require.

More possible solutions coming soon…

—>8— cut here —>8—

1) Create a new Rails app, e. g. $ rails constant

2) Edit the environment.rb file to add your own module with
configuration constant default values with the idea you could
“override” these by specifying them in the specific environment file:

At the end of config/environment.rb, add:

module AppConstants
  IMPORTANT_VALUE = "x" unless defined?(AppConstants::IMPORTANT_VALUE)
end

3) Create a Ruby module in the file lib/app_constants/list.rb, noting
the “top level” name of the module matches the one specified in the
environment file:

module AppConstants
  module List
    LIST_CONSTANT = "list_constant"
  end
end

3) Fire up the console and probe the constant values:

Loading development environment.

>> AppConstants::List::LIST_CONSTANT
=> "list_constant"
>> AppConstants::IMPORTANT_VALUE
=> "x"

4) Quit from the console and add development-specific value for the
constant defined in the environment file:

At the end of config/environments/development.rb, add:

module AppConstants
  IMPORTANT_VALUE = "definitely_not_x"
end

5) Fire up the console again and probe the constant values:

Loading development environment.

>> AppConstants::List::LIST_CONSTANT
NameError: uninitialized constant
Rails::Initializer::AppConstants::List
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/
active_support/dependencies.rb:263:in `load_missing_constant'
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/
active_support/dependencies.rb:452:in `const_missing'
from (irb):1
>> AppConstants::IMPORTANT_VALUE
=> "definitely_not_x"
>> AppConstants::List::LIST_CONSTANT

NameError: uninitialized constant
Rails::Initializer::AppConstants::List
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/
active_support/dependencies.rb:263:in `load_missing_constant'
from /usr/local/lib/ruby/gems/1.8/gems/activesupport-1.4.2/lib/
active_support/dependencies.rb:452:in `const_missing'
from (irb):3