Tuesday, June 14, 2011

The road less travelled

I've noticed a pattern. Whether in my coding or homework when I was in school, it felt as if life was playing tricks on me.

Life is full of ambiguities. People use language in ways that leave open all kinds of possibilities, and yet they consider themselves to be honest and forthright. More subtly, they assume that others have perfect knowledge, or unwaivering attention.

And I find that I notice things that others do not. Unfortunately the things I notice are often not central to reaching my goals and objectives. Hyperawareness goes hand in hand with attention deficits. I've been called perceptive, but what it comes down to is that noisy environments are very disruptive to my thinking. Then again, silent and still environments are very sterile and quickly lead to feelings of isolation.

While my attention holds together, I do not seem to decode messages in the same way others do. I have been acused of deliberately misconstruing others' views; one English teacher thought my opinions in a book report was a willful misreading of the text, going so far as to insult me in his feedback comments. It seems as if, when there are multiple possible interpretations (and even when there are not), my brain chooses the one which is least obvious.

Expressing opinion becomes an impractical proposition when your thinking is always orthogonal to that of the people around you. It can seem as if your thinking is always cutting against the grain. It means that the group dynamic works against you, countering your every thought, leaving you feeling drained instead of enlightened.

Seeking out the less traveled road wouldn't be so bad if it were a practical problem solving strategy at an individual level. Mostly, it is not.

Monday, June 13, 2011

Another fine mess

One of the hardest things about programming is when your eyes betray you. A simple twiddled character becomes an extended debugging session, or hours of meaningless research.

That happened today. I was installing Postgres with Homebrew on my Mac OSX, for a Rails application originally on MySQL. Well, I was getting this:

rake db:migrate
rake aborted!
Please install the postrgesql adapter: `gem install activerecord-postrgesql-adapter` (no such file to load -- active_record/connection_adapters/postrgesql_adapter)

Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)

If you check Google you see scores of helpful suggestions like these , suggesting that it is a mismatch between the memory model used to build the pg gem, and that used to build the Postgres library. 

What can also happen is that you write something like this in your database.yml:

development:
   adapter: postrgesql 

Egads! Look at the latest changed code first. Then have someone else look at your code. If you don't have a co-operative coworker to lend you a spare set of eyeballs, do a diff on another working file (that's how I ended up finding it). Otherwise all that internet advice is just so much more misdirection.

There was also some other spurious warnings about Rakefile and DSL.  It turned out to be a feignt, a minor diversion, quickly cleared up by Stack Overflow. So, yep, maybe Googling is a useful technique, but don't rely on it too much. It cannot make up for a lack of eye-worthiness.