« March 2006
May 2006 »
Wasted Childhood

I can't help but suspect that I'd be a faster driver if I hadn't wasted my childhood on legos and watercolors. This little girl, for example, daughter of National Championship Winner Andy McKee, is barely 2 and she already knows what brake dust smells like:

And these kids learned how to counter-steer before they even knew any good swear words to say while they were doing it:

And this kid had his own custom-made Nomex suit at the same age that I was allowed to go to 7-11 by myself:

Parents! Don't throw your childrens' lives away on stupid stuff like playing in the park! There's centrifugal clutches to adjust! Race gas to breathe! Neck muscles to develop!

Come on!

Making Mom Proud
This weekend was a big race event out in the horrific central valley of California. It's one of the few 2-day autocrosses, and it counted for points so I really wanted to go. Unfortunately, my car was still sick in my mechanic's shop when it was time to leave on Friday, so I had to race in a friend's car. A Ford Taurus, to be exact. A Ford Taurus just like my mom has.

Don't be fooled, though, this is probably the fastest Taurus in California. It has some delicious goodies on it, and its owner and I were able to beat all but two of the more powerful Subarus who showed up. That's right, Subarus just like mine. (All the same, I don't think I'll be trading my WRX in for a Taurus any time soon.)

Definitely a... unique automobile, though. I'm very pleased that I got the chance to drive it... especially since I'm pretty sure that I shortened its remaining lifespan somewhat significantly in the process of driving it, so it might not be around much longer. I have that effect on cars.

Real Life Drama
This is a story of true-life drama, as this weekend we pitted two natural enemies against each other, The Brush Bandit versus an 80 foot tall palm tree.

What is a Brush Bandit?

The brush bandit is a trailer that can be towed behind a truck. On the fender of the trailer is the adorable raccoon character pictured above, and in the bed of the trailer are a series of shredding, chipping, and crushing blades and wheels. It looks like this:

Maybe to you this sounds like a basic piece of gardening equipment. Maybe you even think that the little raccoon is cute and playful. But a closer look at the Brush Bandit reveals that it is actually the most dangerous thing ever created by the human race. I have never in my life seen so many warning stickers on a single object:

At the risk of spoiling the story for you, I may as well reveal now that the palm tree fails to survive the Brush Bandit. The palm tree was able to mount a posthumous attack by clogging the machine for about an hour, but ultimately it was, inevitably, defeated. The men commanding the Brush Bandit achieved their victory in 3 basic steps:

Step 1: Tie Rope Around Tree

Step 2: Cut and Pull Down Tree

Step 3: Convert Tree into Fine Powder

We managed to repair the (extremely crappy) fence in front of our house today, so the dreaded palm tree is now officially gone from our lives.

The End.

(If you want to know what the palm tree did to us that made us want to invoke upon it the wrath of the Brush Bandit, the answer is that it was shoving our fence down. If it had been inside or outside of our property, we would have left it alone. But the fence was there first, and we're not allowed to move the fence, so the tree had to go. Sorry.)
Defensible Evening

I am blogging from a coffee shop guitar-violin-cello show in the city.

That is all.

On Languages

(Brace yourself for a long-winded "my language kicks your language's ass" diatribe.)

Yesterday in an interview I had the opportunity to ask a candidate the ever-controversial "What's your favorite language?" question. He had an answer that was reasonable from a certain perspective. He thought PHP and Ruby were his favorites, and cited their ability to do regular expressions, work on the web, etc.

This is what I hear argued all the time. More mature engineers eventually become language-agnostic, citing that using the right tool for the right job is more important than waging any kind of syntactic holy war over whitespace and duck typing. And I agree with that viewpoint.


Yesterday's interview made me realize that these arguments are often missing the forest for the trees. For example, I think you could have a long, boring argument about whether the following snippet is easy or hard to understand, and would be faster/shorter/simpler/more elegant in Python or Perl or PHP or whatever:

This is where the "right tool for the right job" pattern applies best. But you know what? Writing and understanding a page of code is just not a particularly tough problem. You want to see a tough engineering problem? Try this:

I know it's uncool to like anything but Ruby right now, but the fact is that if you look at all your choices today for building a project of any real size (let's say, over 40,000 lines of code) that's going to be maintained by more than just one or two people, is going to integrate a bunch of off-the-shelf libraries, or is going to be maintained for more than a few months, one language has successfully built a culture around itself that stands above all the rest.

The Java designers declared Martial Law when it comes to organizing code. Code must be in Methods. Methods must be in Classes. Classes must be in Packages. There is only ONE way to get code into the system, and that's through the ClassLoader. The ClassLoader has some flexibility, but they made the best way to structure a large system also the easiest one by far--- .JAR files. JAR files have a very simple format and are almost always found in one way, which is through the classpath.

This structure has lots of flaws, but it's unbelievably consistent across 99.9% of all of the Java code that exists today. That means that if you learn Java, you can integrate any 3rd-party Java library, step into any Java project, any Java job, any Java company, and have a good shot at understanding what's going on. You can use all the same tools, all the same techniques, and apply all of the same reasoning. In a pinch, you can even decompile your 3rd-party libraries to discover APIs and bugs. And it's so effective that even very large Java projects do not need much of a build system. You contrast that to any big project in C++, and you will just cry.

No other language has this kind of success with scale, and most don't try. Script kiddies don't like having to bow to a despotic structure like Java's, and admittedly for single-owner and smallish script projects, the structure burden is onerous and usually needless. But I'll bet most engineers with the scars of a large, old system on their backs would kill for a chance to convert their projects to Java.


Tonight I almost fell asleep after reading barely a page of Salman Rushdie's miserably unreadable Midnight's Children. Like pages on hundreds of nights before this one, tonight's page contained only 2 huge run-on sentences, full of unrelated and uninteresting facts about the main character. It also contained what you might charitably call "poetic language" but that I simply call "incorrect English grammar". Salman likes to omit commas a lot, especially around adjectives, which makes it easy to get lost in his shitty run-on sentences and have to start over again at the top of the page. My average reading speed with this book has been about 1 page every 15 minutes.

But no matter.

Because unlike the preceeding two years of nights that I have spent trying to wade through this pointless tome, tonight's page was the final page of the book.

It's OVER.

Fighting fire with fire

I am now so sick of blog comment spam scripts that I have done some scripting of my own to defeat blog comment spam. These measures are now in place on this blog. If you have problems submitting comments, please let me know by sending email to my address, which (spelled out) is rus at devtools dot org.

Cthulhu's Dining Room

This is on sale now at your local Expo lighting department, for the low, low price of $4,499. Be the first to own the angry sconces of ancient sleeping gods of destruction.

The Triscuits of Regret

Recently I was discussing with someone that, although we rarely think about it in these terms, most people, most humans, everywhere, are kind of incompetent at what they do. There's very little genius out there, but it's hard to notice except in areas that you happen to know a lot about.

And then sometimes, the stupid is so strong that it kind of shines through.

Take, for example, the Nabisco marketing executive who let the "Triscuits fill you, but not with regret!" slogan out the door. Is that really the nicest thing you could come up with to say about the product? That it displaces volume, and that the buyer won't particularly regret it? Jesus, I hope that guy doesn't make a lot of money.

Beyond Precision

The second in a trilogy of entries related to me being cranky about bad marketing:

Buick has to be the worst-performing marque in the universe--- just in the last 5 years they've thrashed about with weird attempts at capitalizing on nostalgia, attempting to create a market for "affordable dignity", and now, most recently, trying to allude to high build quality (ha ha) by being about precision. (Excuse me, beyond precision. What does that even mean? Somebody buy these guys a dictionary.)

Also: for a domestic marque being sold to self-important and yet ignorant white nationalists in the Southeast, wouldn't you think that they would choose names for their vehicles that seem less foreign? Never mind that the average Buick purchaser cannot even pronounce "Rendezvous", but isn't now kind of a bad time to associate with the French?

Buying Eternity

Is anyone else horrified by Ford's latest ad campaign for the Ford Fusion?

Admittedly, I am not the target market for this ad. But to me the slogan "Life in [D]" serves to remind the you that it is all too easy to buy a shapeless, generic econobox, switch it's on-the-column automatic gear selector to the "D" position, and then cruise numbly, unremarkably, unfeelingly through life, straight to its unremarkable end where the feeble flame of your existance finally exhausts its fuel and is extinguished, so smoothly and boringly that you do not even notice that it happened until the back-hoe is dumping the last pile of dirt onto your lovely mahogany casket.

How enticing.

Children are blurry

I spent Saturday at the Children's Discovery Museum with a friend's kids, pitting my new camera against low light and speeding toddlers. The main thing I learned is that children do not ever just hold still. Between the kids' mom and I, we took over 250 pictures, and about 4 of them came out okay.

The views expressed on this site are mine personally, and do not necessarily reflect the views of my employer.