Thursday, July 05, 2012

Q: What’s the difference between software and reality?

A: A router

Recently I have come to take an interest in woodworking, specifically making musical string instruments. Good fortune has provided me with a basic woodworking shop and some cash for buying materials and hand tools.

So I designed an instrument. I used Adobe Illustrator and created a very nifty design for a cigarbox slide guitar. I planned and measured every piece down to the precise distance the tuning pegs need to be from the edge of the headstock.

An initial design

I was very proud of myself and my vivid imagination.

I watched a lot of videos made by woodworkers who had done what I was hoping to do. After a few nights of study, I bought some wood and some glue.

Things went according to the plans I made in software. I attached headstocks to necks using an impromptu mounting apparatus.

Mounting headstock to neck

I learned to use a scroll saw and drum sander to shape the headstocks.

Finished headstocks on necks

So far, so good. Then it came time to shape the curve of the necks. I figured that I’d just run the area of the neck, between headstock on one end and mounting block on the other, through a router using a  ¾” round over bit. The bit would give the neck an even round corner that I could sand down to a nice curve overall. No problem.

Well, it was a problem! Turns out that a router is not a simple mechanical beast.

Routing a guitar neck is not easy on a table router

The bit rotates but one way, thus making routing both sides of the neck, between headstock and mounting block, an excursion into advanced router technique. It was not simply a matter of running one side of the neck though the router and then doing the same for the other side. And, that I angled the headstock back away from the plane of the neck, prevented me from putting the neck flush on the router table.

Headstock mounted at a 15 degree angle to neck

In no time at all I destroyed 4 necks trying to round them out using the router.  Obviously I needed to rethink my development procedure.

No problem, right? I mean, I am a software developer. I deal with solving these sorts of problems every day. All I needed to do was give thoughtful analysis to the problem at hand and make some sort of real world utility to set the situation right. Then, it was just a matter of moving the wood through the router twice, once for each side.

So, I thought things out. I even consulted an expert. My keen analytic ability allowed me to come up with a solution. All seemed good to go.

Then my hands gave out. Twenty five years ago, before I got into this software thing, I developed Carpal Tunnel Syndrome, due to repetitive motion while painting a house. Realizing that I could not use my hands to make a living, I went into computers and software. Software has been very, very good to me.

But, today the ghost of the past haunts me.

The reason that I started woodworking is that I’ve come to think that living in cyberspace is an existence lacking in authenticity. There’s no smell of families cooking an evening meal as I troll Facebook. There’s no glean of sweat off bodies in an online game. There’s no negotiation of personal space in a crowd on Twitter. I wanted more of the real world in my day to day experiences.

I got what I wanted. Yet, I wish that Illustrator had told me when I started all this to be careful, that my hands would give out. But there is no reason it should have. In software, reality is just something to emulate, akin to a printer, a monitor, a Bluetooth device or attack target. The software running an unmanned drone knows nothing of the bloodshed and pain it will leave behind. Nor does it need to. If recent events have taught me anything at all, it is this: in the digital domain, reality is an abstraction.