09 March 2007

Priests in the Religion of Technology

If I had a dime for every time someone asked me "So, what's your major?" and I replied "Computer Science" and they replied "Oh...", and switched subjects...

Now, believe me when I say that I know we are nothing special. We are simply more familiar with a subset of today's technologies. I repeat, we are nothing special. No, really, they hate us.

I laughed at, yet was so humbled by, It Ought To Be Simple's post I'm An Idiot... (And Other Lessions From The IT Department). It seems we have a reputation with our friends and co-workers -- and not the good kind.

Yet you can't help but feel that we are part of a religion centered around technology... That we are the physical 'hands' of some super-natural being (i.e., beyond many people's understanding or interest) that affects the daily lives of millions of people.

Though it seems that the electronic deity we represent will be around for some time longer, some people are not so glad about it. Maybe they just need to meditate with their crackberries or plug in their earbuds and take control of their environment.

We are building a religion
We are making a brand
We're the only ones to turn to
When your castles turn to sand
-- CAKE - Comfort Eagle

(btw, Asimov expressed technology as a religion back in the 50's in his Foundation Series. And to think -- they had just developed Fortran...)

Hobbies Are Work, Too

I have friends who are musicians. To me, that always seemed like the most awesome hobby slash career in the world. I was very surprised to hear that, though they love making music, sometimes it can feel like a chore -- specifically, getting started on a track. When you have the concept for a song in your head that's been brewing for a while, you don't want to go back and start from the beginning -- to go through the necessary process of transferring it all from your head to a 'physical' medium. You just want what's in your head to magically exist, and go from there.

If you're like me, you have a lot of ideas swimming around in your head. Yet even though you are excited and have so many great ideas for extention, you never seem to get started -- there's some sort of mental block keeping you from saying "let's roll".

The fact is, anything and everything is work; because nothing is free. But sometimes things are worth their price tag.

Whether you're making music or a website, your outlook on the project is expressed through your coding. We are, after all, priests in the religion of technology. As Khoi Vinh says in 37signals' Getting Real, It Shouldn't be a Chore:

Enthusiasm manifests itself readily of course, but indifference is equally indelible.

So be positive. Start your next project with gusto. Because it's all about your relationship with your medium.

When you write a book, you need to have more than an interesting story. You need to have a desire to tell the story. You need to be personally invested in some way. If you're going to live with something for two years, three years, the rest of your life, you need to care about it.
-- Malcolm Gladwell

WebDev Performance Tests -- Everybody Wins !

Dave Dash at Spindrop wrote an article about results of a PHP performance test: single versus double quotes. Which method to use is age-old discussion that has plagued PHP developers since they read their first tutorial.

Dave ran three different tests 2 million times each: double-quote concatenation ("test " . $i), double-quote inclusive ("test $i"), and single-quote Concatenation ('test ' . $i). The results were as follows:

double-quote concat:     2.898087978363
double-quote inclusive:  3.5480048656464
single-quote concat:     2.8503499031067
To put that into perspective, here are the average times for each individual operation:
double-quote concat:     0.000001449
double-quote inclusive:  0.000001774
single-quote concat:     0.000001425

Those of us with Computer Science degrees are infamous for our nitpicking of details that do not affect the "bottom line". A classic example is arguing over which sorting algorithm to use. Sometimes we get so excited about the power we wield at our fingertips that we forget to get any work done.

So here's to us web developers caring less about saving 3.49e-7 seconds per concatenation and more about implementing functionality on time.

As Jeff Atwood points out, every algorithm is fast for small n.

(btw, I still will be using single-quote concatenation for its speed.)

Today's lyrics complements of blink-182's All the Small Things:

Late night, come home
Work sucks, I know
She left me roses by the stairs
Surprise let me know she cares

What is Your Coding Muse?

How much do you love what you do? I've just read the Creating Passionate Users article Don't ask employees to be passionate about the company! and really appreciated what she calls the "4-question test" for determining if someone is passionate about their work:

- keeps up with trade/professional journals
- knows who the key people in the industry are
- would spend his own money, if necessary, for better tools
- if they were NOT doing this as their job, they would still do something related to it as a hobby

We've all some reason why we do what we do.

Works late nights when, "I'm just one-compile away from this awesome refactoring that's going to make this thing run 40% faster."

I'm not sure about that figure, or how it was derived, or what she's talking about, or who she's talking to -- but I know that feeling; and I greatly enjoy that feeling.

What inspires you?
What keeps you where you are?
What keeps you from where you are going?

Today's lyrics complements of Muse's Sing for Absolution:
Lips are turning blue
A kiss that can't renew
I only dream of you
My beautiful