Sunday, October 16, 2011

Camping Trip

Friday and Saturday was our Elder's Quorum camping trip.

My wife blogged about it from her end and was fairly accurate in her description of the event being presented as a way to work off some testosterone poisoning. There were promises of guns, fires, possibly explosions, and definitely no kids.


There was a hairy road to get to our remote wilderness campsite, but we all made it alive.  There were seven of us, four of who were auto mechanics, so the campfire conversation was distinctly auto-oriented.  The moon was nearly full that night and it was surprisingly bright, which led directly to The Incident.

About 11 p.m, as we sat around the campfire, the manager of the property (who was also camping with us) told us that the narrow, rutted dirt road we had come up continued on to the top of a nearby peak.  One of the mechanics had brought an old BMW that he had fixed up Baja-style, and he promptly jumped up.  "It's bright enough out here," he said.  "I'm going to go check it out.  Who wants to come?"

Another guy took him up on his offer and a moment later, the two of them were roaring up the dirt track towards the top of the mountain.  The property manager watched them go, then said, "They're going to get stuck.  There's no room to turn around on the road."

There was silence for a moment.  "You probably should have told them that before they left," someone finally suggested.

The property manager shrugged.  "They said they wanted an adventure."

They apparently had one, because an hour later they came hiking on foot back down the mountain.  As they later explained, they had reached the end of the road, where there was a small dirt patch.  It was just large enough that with their small car, they probably could have done a hundred-point turn and ended up facing back down the hill.  Being 20 year old guys, the thought of doing it that way didn't even enter their minds and the driver decided to try to gun his engine, spin out on the dirt, and swing the car in a circle.

All he succeeded in doing was going off the road and nearly rolling down the mountain, fortunately stopped from doing so by the brush on the side of the road.  The car was holding on precariously with two tires, necessitating cautious climbing out through the driver side door for both of them.

"We'll get it in the morning," said the property manager, unperturbed.


The next morning, we started up the mountain in a pickup truck.  The goal was to somehow use the pickup truck to rescue the car, but true to the form of all ill-fated rescue missions, we only succeeded in nearly getting the pickup truck stuck.  It was only "nearly" and not "completely" because we ended up physically lifting up the rear end of the pickup truck and swinging it around. 


Fortunately, that led to the realization that if seven guys could lift up the tail end of a pickup truck, surely we could heft a small Baja-style BMW.  We finished the hike up the mountain on foot and finally arrived at the car.



It was dangling pretty solidly over the edge of the hill, but it was nothing we couldn't handle.  The Elder's Quorum president gave a stirring speech based on Elder Utchdorf's talk, "Lift Where You Stand," and we manually hefted it out.

Unfortunately the first video section was fairly large and was rejected by Blogger.  This second section I videotaped is just as good though, because it's shorter and still demonstrates the prowess of our biceps.



So all the people and vehicles survived, but one casualty of the event was my sock, forgotten by the campfire as it dried out from the previous night's dew.  It's the tragedies in life that make us stronger, though, so it was probably a good character-building experience.  And a reminder to bring a spare pair of socks next time.


We finished the morning on a lighter note, shooting large amounts of ammunition from a wide variety of weapons.  The cows in the nearby field cautiously moved to the far side of their enclosure, but the wives would be pleased to know that we were extremely safe and that the only casualties during this portion of our event were about 250 clay pigeons and a variety of soda pop cans and assorted campfire detrius.

 We even cleaned up when we were done.

Defense News Feature

We're in the news!  Our partner, DRS, demoed our joint product at a conference in Washington, D.C.  where Defense News did a feature on it.


Sunday, October 09, 2011

The War is On

This morning, I woke to find that a mouse had brazenly eaten the cheese from the mousetrap with the unmitigated audacity to not die in it.  Even more offensive, he left a taunting note to the effect of "Sucker!" behind.

Okay, he may not have left a note, per se, but I could tell he had thought of it.  I reset the trap with the cheese embedded deeper than a CNN journalist in Iraq and placed it back under the sink.

An hour later, a spider the size of the hamburgers in Cloudy With a Chance of Meatballs was discovered in the hallway to much shrieking and violent jumping about.  My wife was also a little startled by it.  I quickly vacuumed it up, then extracted the plastic vacuum container to empty it out.  Imagine my surprise when I discovered two mice saboteurs inside, a little wide-eyed and windswept but very much alive.

Caught red-handed, their protests of innocence did them no good and I delivered them to the gallows.  Our chicken executioners made short work of one, but let the other escape to warn his comrades. 

The stakes have been raised.

Saturday, October 08, 2011

No honor among mice

For the past week I've been hearing mysterious rustlings in the walls and under cupboards.  We've had a wet week too, which led me to suspect that a gang of mice had been  driven inside.  On my near-daily meander through the hardware store today, I spotted mice traps and got a package.  When I got home, dinner was ready so I placed a mouse trap under the sink and sat down to eat.

By cleanup time, we had our first victim.  Interestingly, the cheese I had placed on the trap was gone, so either he had gobbled it down then went back to lick the grease off the trap trigger, or another mouse had crawled over the first one's dead body to get to it.  Either way, it doesn't speak much to the intelligence of the mice, although I guess they don't make particular claims along those lines.

On the plus side, the chickens loved the mouse.  As my wife pointed out, one of the downsides of belonging to a vegetarian is that the chickens don't see much food "on the hoof," so to speak.

Yard Saling

Another good find obtained today at a yard sale: an A-frame ladder for $3. 

I felt like Patrick McManus explaining to his wife why he needed so many different types of guns.  "Well, I need an extension ladder for getting on the roof or climbing trees, then a smaller section of ladder for...well, small trees.  Then an A-frame ladder for high light bulbs and killing spiders on the ceiling, plus a step-ladder for..."

We also signed up to clean the church building this morning.  There were another handful of people there helping as well, and I overheard one mother say to her eight-year-old son, "My, you're grumpy this morning."  Personally, I couldn't really blame the kid.  Instead of watching Saturday-morning cartoons, he was cleaning bathrooms at 8 o'clock in the morning.

Moving on to yard work: over the past couple days I've been pulling weeds from our old, falling-apart asphalt driveway.  I got a tube of asphalt repair goo, but I think I grossly underestimated how much I would need.  Pulling the weeds left ravines the size of irrigation canals behind, some of which were quite possibly harboring wildlife.  A amazingly wide variety of bugs for sure.  Anyway, I'm hoping the goo will hold together the pieces of our driveway at least for another year or two.  We still have a garage door, fence, yard, painting, and a million smaller things on our list to do before we can afford that.

Thursday, October 06, 2011

Beginning of the End

I finally took the plunge.  I downloaded a password manager.

Until now, I've either remembered my passwords, used some algorithm to determine them on a per-website basis, or tracked them in my emails.  All of those had shortcomings, so I decided to try a password manager.

Using no particular criteria, I devided to try Revelation.  Simple, to the point, and for the handful of days I've used it, it's gotten the job done.  Using a password manager has its own shortcomings, but having to look up a password in a single application beats trying to find passwords in my email or guess until my account is locked.

Tuesday, October 04, 2011

Ice Shaver

The best $1 I ever spent:

Not the pumpkins: those were $3.33 each.  The ice shaver was $1 from a garage sale.  To make a delicious ice shavee, you will need the following ingredients:
  1. Ice
  2. Jello powder
Step 1: Grind up the ice

Step 2: Liberally dust it with jello powder to taste.  If you're gourmet, add a teaspoon of lemonade powder for an extra kick.


Step 3: Mix it all together.



Step 4: Hop your kid up on sugar and red dye 40 an hour before bed.  Which may explain last night's experience...

Resolution!

It's never too late to make a new resolution, so I'm going to attempt to start posting with renewed vigor.  Perhaps even daily. 

First post of the new resolution: WHY IN THE WORLD IS MY DAUGHTER STILL AWAKE at 3 AM?!?!

Thursday, August 25, 2011

Follow Me

Last week, half of our company was at the Association for Unmanned Vehicle Systems International (AUVSI) conference in Washington, D.C.  By all accounts it went well.  We may not have people hurling sacks of money at us yet, but soon enough.

One of the conference attendees uploaded a video of our follow behavior running on a robot called the Landshark, made by a company called Black-I.


Wednesday, August 17, 2011

Falcon


Friday, August 05, 2011

Summer Vacation

An overseas contact wrote the following line in an email he sent our company yesterday:

"Our company is going to be off tomorrow so I will follow up late in August."

That is no typo. Apparently most of Europe takes August off work.

How come the U.S. doesn't do that?

Scrambled Eggs

Coming home from work a couple days ago, I found out that someone had egged our house. After some questioning, my wife admitted that it had been her. She claimed our 2-year-old daughter made her do it. I tell you, what is the world coming to?

Sunday, July 17, 2011

Travels

Just got back from a business trip to Alabama.  One problem with living on the west coast is that every time you go back east, you have to wake up far too early according to the home timezone.  Since John and I arrived at our host's workplace at 8 am every morning, we met up at 7 am for breakfast and travel, which meant I was getting up around 6:15 a.m. --central time.  My body thought it was 4:15 a.m.

It's obviously worse when we travel to Boston, which I did last month and which it looks like I'll be doing again in a week.  Boston is on Eastern time, which means even earlier mornings.   It wouldn't be so bad if I could then go to bed around 9 p.m. Pacific time, but the trials and troubles of integration trips usually mean I lie awake in the hotel bed with my mind racing 100 miles per hour, trying to think through problems and find solutions and playing out scenarios in my mind for how things could have gone better.

At least our most recent trip to Alabama was a success.  Not the perfect success we could have hoped for, if such a thing exists, but a reasonable success.  There's always so many variables we have no control over, and given our time constraints, there's often no time to implement the solution we want to. 

On the last two days before the trip, I coded up a "follow" behavior.  The idea was for the robot to use the laser range-finders mounted on it to track a person and follow them around. When we were out behind our building testing it out, there were a handful of people from our neighboring businesses watching us, and it was amusing to hear their conversation.  "Do you see that?!  That's crazy!  It's following him like a dog!  That is so cool!" 

Sometimes I think I get a little jaded working with robots all day, and it isn't until I hear comments like theirs, or like the manager's at the company in Alabama, talking about how cool our work is, that I remember that it actually is a pretty cool job.

Monday, June 27, 2011

Chicken Run

A lot has been going on.  Fun progress with robots, a very interesting and educational business trip to Boston, Child's friend coming to visit for a couple weeks. 


And a chicken in our house.


Friday, June 17, 2011

Tithing

I've mentioned on this blog before that I pay tithing, and that I feel that I receive a lot of blessings as a result.  Here's the most recent:

Every now and then, my previous employer will call me up and ask me to do small jobs for them.  Shortly after we moved into our new house, he called me up and asked if I could do a project.  It was a fairly good-sized project, and I told him my estimate would be $1500-$2000, but I ended up turning it down because I wanted to spend my few free evening hours working on my novel rather than programming.

Well, the next day, we got a visit from the water company.  Apparently our house was using 15,000 gallons of water a day.  We called a plumber who discovered there was actually a couple leaks--one of them underneath the concrete slab that our house was built on.  The estimate?  $1590.

Well, since we had just bought a house, we had no money left.  Without the side-job from my previous employer, we would have been in trouble.  I called up my old boss, told him I'd do it, and spent the next couple weeks of evenings working on it. 

The final bill was $1725, which after I paid tithing, covered all but $40 of the plumbing bill.

Sunday, May 29, 2011

Uber-nerd

"Does dreaming about Captain Picard teaching me how to play chess make me an uber-nerd?"

"No, saying 'uber' makes you an uber-nerd."

What does this say about me?

While driving in the car yesterday, I flipped on the radio and caught the tail end of a program on NPR.  It seemed to be profiling somebody:

"He just went out and did things!  He was spontaneous.  Didn't stop to think, didn't worry about the consequences."

You know, I should be more like that guy, I thought.  I should be more spontaneous--go out and do things.  Live a little.

Then the program ended.  "This has been 'Profile of a Psychopath' on NPR," the announcer said.

Hmm.  Maybe I should be a little more careful about who I desired to emulate...

Monday, May 16, 2011

Robot Peripherals

I've been working for 5D Robotics for almost a year and a half now.  Early on, a large part of what I did was write drivers for various USB, serial, and Ethernet peripherals that we'd plug into our system.

That led to a realization.  The robots that we controlled using our Behavior ENgine were nothing more than peripherals themselves.  They plugged into the computer using the same USB, serial, or Ethernet systems as any other peripheral, and I had to write a driver for them just like any other plug-n-play device.

That realization sculpted how I designed the Behavior ENgine.  Rather than having everything centered around a robot, I designed the Behavior ENgine so a robot was nothing more than an additional peripheral.  Designing it that way has had a couple benefits. 

One, there is nothing special I have to do when I integrate our Behavior ENgine with additional robots.  I simply have to write an additional driver for the device.  That makes our Behavior ENgine highly portable between robots, if you want to view it from the robot's frame of reference.  It also makes our code clean and easy to maintain, since everything robot-centric is pushed down inside a driver instead of in the core of the Behavior ENgine.

Two, it makes the robot unnecessary.  This was a benefit I didn't anticipate, since I never anticipated using our robot-controlling software without a robot.  However, it turns out that the computer is useful even without a robot attached.  For example, the computer could have other sensors plugged in, e.g. chemical or radiation sensors.  Since the robot is unnecessary, the user can pull the computer off the robot and walk around with just the computer and sensors, reaching places the robot can't get to or even leaving the sensors at a position to monitor the area.

Friday, May 06, 2011

Yard Sale!

In about a week, my dad will be driving from Utah to Mexico to take part in a service project.  On the way, he's going to stop here in California to pick up my brother and help with some projects around the house. 

One of those projects is trimming some palm trees.  He's bringing a chainsaw, but until today I haven't had much luck finding an extension ladder.  On our way out the door to visit the beach, however, we spotted a yard sale literally a block away from our home. 

Normally I never stop at yard sales, but for some reason I decided to pull over, even though we were late.  There, lying in the grass, was an extension ladder!  And a dolly, which I've been wanting (probably thanks to all our moving), and a carpenter's square, and a little tricycle, and some horseshoes.  Thanks to Child's shrewd bargaining, we got the whole lot for $57.  Definitely a good find.

Friday, April 29, 2011

Punishment

Day 1 Friend: "Could you do me a favor? I need someone trustable and unswayable such as yourself to change my minecraft account password and not give it back to me until after finals. If I try to convince you to give it back to me before the semester is over, just tell me to work on my homework or to do something productive."
Me: "Sure. Done."

Day 2 Friend: "The new minecraft update is out! Let me have the password, just to check it out. Pls?"
Me: "No."

Day 3 Friend: "Man, giving my minecraft password to you was both the best and worst decision, depending on how I'm feeling about it. I know you'll never give it back, and so I'll have to stay on task... but then I know I'll never be able to convince you to give it to me either. Well now, you should try the game out yourself. heh heh"
Me: "And turn into an addict like you? Nuh uh."
Friend: "I'm not an addict! I like wasting time by assembling virtual blocks in fun shapes."

Day 4 Me: "I'm changing your profile picture to a picture of Sean Hannity." (Okay, maybe I baited him a little.)
Friend: "Curses! You'll ruin my reputation!"
Me: "Well...I can make it Glenn Beck if you'd prefer."

Day 5 Friend: "Can I minecraft for a bit? I want to check out the new features."
Me: "No."
Friend: "Dreeeeeek!"
Later Friend: "I'm dying of productivity, I've already gotten 2 assignments done early. Just a little minecraft wouldn't hurt..."

Day 6 Friend: "Can I have my password? I have nothing to do this weekend."
Me: "Except study?"
Friend: "Study? I'm done with homework!"
Me: "I would have thought you'd have forgotten about minecraft by now."
Friend: "Well I've given up trying to guess the thing you changed the password to."
Later Friend: Offensive emoticons
Later Friend: "I'll buy you your own account, just give me the password"
Friend: "I thought I could trust you"
Friend: "WHY THE HECK DID I DO THIS!"

Day 7 Friend: Suspicious silence
Day 8 Friend: Suspicious silence
Day 9 Friend: Suspicious silence
Day 10 Friend: Suspicious silence
Day 11 Friend: Suspicious silence
Me: Checks minecraft account. Can't log in.  Friend must have reset password.
Me: "Can you look me in the eyes and say you haven't played minecraft in the last week?"
Friend: "A person needs balance in their life..."

Right-handed rotation matrix for roll/pitch/yaw

Specifically, an three-dimensional orthogonal matrix corresponding to a counter-clockwise/right-handed rotation where roll is the rotation about the x-axis, pitch is the rotation about the y-axis, and yaw is the rotation about the z-axis.

You wouldn't think this would be hard to find online, but go figure.

Thanks to Phaedrus for his explanations and...well, doing most of the work.

Note: this matrix effectively yaws first, then pitches, then rolls.  For the opposite order (and the one I ended up using), look below.

[ cos(pitch)*cos(yaw) -sin(yaw)*cos(pitch) sin(pitch) ]
cos(yaw)*sin(pitch)*sin(roll)
    + sin(yaw)*cos(roll)
-sin(yaw)*sin(pitch)*sin(roll)
    + cos(yaw)*cos(roll)
-cos(pitch)*sin(roll)
-cos(yaw)*sin(pitch)*cos(roll)
    + sin(yaw)*sin(roll)
sin(yaw)*sin(pitch)*cos(roll)
    + cos(yaw)*sin(roll)
cos(pitch)*cos(roll)


 And to put it another way:

//Top row
rotation[0][0] = cos(pitch)*cos(yaw);
rotation[0][1] = -sin(yaw)*cos(pitch);
rotation[0][2] = sin(pitch);

//Middle row
rotation[1][0] = cos(yaw)*sin(pitch)*sin(roll) + sin(yaw)*cos(roll);
rotation[1][1] = -sin(yaw)*sin(pitch)*sin(roll) + cos(yaw)*cos(roll);
rotation[1][2] = -cos(pitch)*sin(roll);

//Bottom row
rotation[2][0] = -cos(yaw)*sin(pitch)*cos(roll) + sin(yaw)*sin(roll);
rotation[2][1] = sin(yaw)*sin(pitch)*cos(roll) + cos(yaw)*sin(roll);
rotation[2][2] = cos(pitch)*cos(roll);

Note: this matrix effectively rolls first, then pitches, then yaws.  This turned out to be the one I used for my system.

[ cos(pitch)*cos(yaw) -sin(yaw)*cos(roll)
    + cos(yaw)*sin(pitch)*sin(roll)
sin(roll)*sin(yaw)
    + cos(yaw)*sin(pitch)*cos(roll)
]
cos(pitch)*sin(yaw) cos(yaw)*cos(roll)
    + sin(pitch)*sin(yaw)*sin(roll)
-sin(roll)*cos(yaw)
    + sin(pitch)*sin(yaw)*cos(roll)
-sin(pitch) cos(pitch)*sin(roll) cos(pitch)*cos(roll)


//Top row
rotation[0][0] = cos(pitch)*cos(yaw);
rotation[0][1] = -sin(yaw)*cos(roll) + cos(yaw)*sin(pitch)*sin(roll);
rotation[0][2] = sin(roll)*sin(yaw) + cos(yaw)*sin(pitch)*cos(roll);

//Middle row
rotation[1][0] = cos(pitch)*sin(yaw);
rotation[1][1] = cos(yaw)*cos(roll) + sin(pitch)*sin(yaw)*sin(roll);
rotation[1][2] = -sin(roll)*cos(yaw) + sin(pitch)*sin(yaw)*cos(roll);

//Bottom row
rotation[2][0] = -sin(pitch);
rotation[2][1] = cos(pitch)*sin(roll);
rotation[2][2] = cos(pitch)*cos(roll);

Thursday, April 28, 2011

Nudist Beach

Sunday, April 17, 2011

Equations

Am I the only one who finds it amusing that recreational drug proponents clamor for the "freedom to choose" to do something that removes their freedom to choose?

And does anyone else find it laughable that one of their primary arguments is that it "doesn't affect anyone else"?

Foot in...pot?

Yesterday we had an early Easter celebration, since Child is going to be in Utah over Easter while I remain here in CA and work.  While we were outside hunting eggs, I noticed our back-fence neighbor out watering his ducks and chickens.  I went over to say hello.

Mr. Chicken seemed a nice gentleman, although it quickly became apparent that he didn't have a very high opinion of the previous residents of our home.

"Apparently the low opinion is universal," I said.  "A few days ago I met Mr. RV, our next-door neighbor, and one of the first things he asked me was if I was growing pot!  Ha ha!"

Mr. Chicken didn't blink.  "I'm growing pot," he said.

Mr. Chicken clearly wasn't joking.  "Just two or three plants," he added.  "I have a lot of neurological problems and it's medicinal.  I grow it legal."

Oh.  Okay.  Note to self: you live in California now.

(Edit: I should add that Mr. Duck called me up this morning and asked that I meet him by our back fence.  There, he presented us with the nicest flat of 18 eggs from his chickens, as well as bacon, hash browns, and a jar of raspberry jam.  He's a very nice neighbor.)

Friday, April 15, 2011

Low Expectations

I met one of my neighbors today. He was climbing out of his RV as I left for work, so I jumped out of my car to say hello.

ME: "Hello! My name is Drek. I just moved in next door."
HIM: "That's nice. Are you growing pot over there?"

Apparently the previous few occupants have greatly lowered his neighborly expectations.

Of course, some of his initial assessment of me may have had to do with the fact that our plumbing is broken so we haven't had running water, much less hot water for shaving, showering, and washing wrinkled work clothes, for over two days now.

He also suggested I fix the gopher holes in our yard. Apparently whenever it rains, the water pools in our yard, then drains out through the holes into his yard, which is at a lower elevation.  That didn't make a very convincing case for fixing the holes--in fact, it suggested that putting out gopher treats might be a great idea from a landscaping perspective. 

Overall, he seemed like a pleasant, friendly gentleman, at least once he understood that I was not, in fact, growing pot in my new house.

Thursday, April 14, 2011

Port Forwarding

The post is more for my own remembering than anything else, although I'm posting it here just in case someone stumbles across it and finds it useful

The goal: allow a remote computer to view a website hosted on my local computer.
Steps:
  1. Set up an account with dyndns.org
  2. Install ddclient on my Ubuntu machine to periodically notify dyndns.org what my IP address is
    1. Don't prepend "http://" to your domain name in the ddclient setup!
  3. On my router, assign my computer a static IP address
  4. On my router, forward incoming traffic on port 8080 to the new static IP address
  5. On my computer, port-forward port 8080 to port 80, where my apache webserver is listening
    1. sudo iptables -t nat -A PREROUTING -p tcp --dport 8080 -j REDIRECT --to-port 80 (add the port forwarding rule)
    2. sudo iptables -F (flush the rule)
    3. sudo iptables -t nat --list (view the rule)
    4. sudo bash -c "iptables-save < /etc/iptables.rules" (save the rule to a file)
    5. sudo echo -e '#!/bin/sh\niptables-restore < /etc/iptables.rules\nexit 0' > /etc/network/if-pre-up.d/iptablesload (to create a script to restore the iptable rules every time the network interface comes up)
    6. sudo chmod +x /etc/network/if-pre-up.d/iptablesload (to make the script executable)
  6. Visit my site in a browser at http://subdomain.dyndns.org:8080
iptables: https://help.ubuntu.com/community/IptablesHowTo

Sunday, April 10, 2011

First Impressions

My plan was simple, really: trick the Lord into giving me a prime job at church.  We finally moved into our very first house last Monday, so today was our first Sunday in our new ward.  The idea is simple: wear a really nice suit the first day at church, and make sure you shave and comb your hair.  The Lord thinks you've turned a new leaf and inspires the Bishop of your new ward to give you a calling commesurate with your new duds, like...well, anything but nursery worker.  The Bishop wouldn't dream of sending you to a room where little grubby paws would wipe boogers and animal cracker crumbs all over your sparkly suit, right?

I think I may have blogged about doing this when we moved into our previous ward and it actually worked out pretty well.  I got called to be the Elder's Quorum secretary, where the worst thing I had to deal with was no one turning in their home teaching reports on time.

Apparently the Lord got wise to me.  Maybe I shouldn't have blogged about it.

So this morning I shaved and combed my hair for the first time in--well, however long it's been since the first Sunday in our previous ward.  I pulled my dusty, unused-since-the-first-day-of-church-in-our-previous-ward suit from the closet and put it on.  Church time rolled around and I put Ash in her car seat, blissfully unaware that as I gave her a bottle, I was setting in motion events that would result in my doom.

We arrived at church, made a good first impression as we strolled confidently into sacrament meeting, and found our seats near the front where everyone could admire the back of my combed head and the Bishop and his counselors could get a good look at my shave and slightly-wrinkled suit.  We sang the opening song, said the opening prayer, conducted a little ward business...then the Lord pulled the trigger.

Ash peed on me.

Child was apparently in on the plot.  Before I could move, she whisked Ash and the diaper bag away and was gone up the aisle.  I was left completely exposed, with nothing to hide a giant wet spot in the middle of my lap.  Disaster!  Ash had hidden my scriptures as we were rushing out the door that morning so I didn't even have those.  They were all in on it!

The boy carrying the sacrament tray was coming from the left!  The man who counted attendance was coming from the right!  The person in front would turn around to introduce himself at any moment!

I thought fast, grabbing a hymnal and opening it on my lap as if I were deeply absorbed in the lyrics to "I Believe In Christ."  Three ice ages later, Child returned with Ash and I was able to snatch her back and make a hasty, damp exit from the chapel.

So the Bishop's only impression of me was what he got from the all of five minutes I spent in sacrament meeting.  "Must be a less-active member," he probably thought.  "Maybe not a member at all.  Probably just came because his wife nagged him to be supportive on her first day in a new church.  Wonder why he was reading that hymnal?  Bit of an odd fish.  Nice hairdo, though."

So...yeah.  Nursery for me for sure.  No way the Bishop is going to trust me with a calling that deals with anything above the most rudimentary gospel principles.  So much for that plan.

Monday, March 28, 2011

And don't get me started on the service

Only five pillows on my bed?! And they call this a four star hotel...

Saturday, March 26, 2011

Halfway decent v. Not that bad

Our check engine oil light has been flickering for a while, so I finally decided to get the oil changed before I left for Boston tomorrow.  (I didn't want the transmission to fall out on Child while I was gone.)

We just moved here to CA a few months ago and Child took the car in last time in needed an oil change, so I didn't have any particular place I liked.  I called the Valvoline Instant Oil Change place in Vista and the person who answered the phone sounded so sullen and short that I immediately decided to try a different place.  My second phone call was to Firestone Complete Auto Care, and the way the clerk there answered the phone was like night and day.  He was bright and cheery and suggested I look on their website for a discount coupon.  I immediately decided to go there instead.

Unfortunately, that was the highest point of the experience.  Not that anything went particularly bad, but there were several areas they could have improved.  Like all auto places, they tried to upsell me on several more services, but they went even further than most places by throwing in a credit card offer.

Of course my tires were bad so they wanted to replace those, as they always do, but the man who helped me (different than the one who answered the phone) seemed genuinely peeved that I didn't take him up on his offer.  "But I'm giving them to you at cost plus a buck!"

I understand it's a great deal.  I've bought tires before.  But regardless, I just don't have $250 in the budget to drop on tires right now.

The other annoyance was that even though there was supposedly only one car ahead of me, and I was assured that they would be done by 11:30 AM at the latest, I didn't walk out until 12:30.  That was 2 1/2 hours on my Saturday gone.  I expect that at a doctor's office, but changing tires and oil isn't brain surgery.  It shouldn't be terribly hard to estimate time-to-completion, especially if there's only one other car.  (Of course there were more--I could see them in the bay.)

Would I go back?  I really, really wanted to like them after the way that first man answered the phone.  But I've been to better places, and would probably look around first.  Although actually, now that we have a house (or will in a few days) I'm going to try changing my own oil.  It'll save money, and after the first couple times, I've no doubt I'll save time too.

Sunday, March 20, 2011

Nobel Peace Prize

Nobel Peace Prize, here I come.  I have just solved world hunger.

All we have to do is send our daughter's booster seat to a country currently experiencing famine, and all their food problems will disappear.  At any given meal, it will easily amass three times the amount of food that was actually served at the meal.

As I tipped the chair on its side and shook it in preparation to sweeping the floor after dinner this evening, it produced:
  • Raisins
  • Avocados
  • Spaghetti
  • Spaghetti sauce
  • Bread
  • Cheerios
  • A cat
  • Orange
  • Granola
  • Potato
  • Apple
  • Plastic St. Patrick's Day clovers
Everything but the plastic clovers looked edible, and much of it actually looked better than many of the meals I ate as a college student.  I see no reason why the booster seat's particular capabilities couldn't be put to good use.

And who knows?  Maybe the living room recliner will come up with plan for world peace.

Love Unfeigned

In our men's group at church today, we had a new person show up.  He was obviously not your usual church-going type, and when he was asked to introduce himself, he said some things that made it clear he had some mental issues, probably schizophrenia.

Later in the lesson, the teacher asked a question and this man answered with a rambling response that ended with him saying he wanted to have a family, and how should he go about doing that?

Everyone in the room listened until he was done talking, and I expected everyone to do what I was planning to do: humor the man while maintaining a polite expression, then turn back to the teacher and let him guide the lesson back on-topic.

Instead, to my surprise, a couple of men in the class answered with very thoughtful, serious responses.  The marine with the grenade stickers on his truck explained that the man's first goal should be to make himself right with the Lord then blessings like a family would follow, while the silent man at the back of the room spoke up and gave encouragement for starting with the small things like coming to church.  Before the class was over, the man had been invited to a church activity, lined up with a ride, and shaken hands with half the class.

I was ashamed of my initial reaction of brushing off the man, while simultaneously rejoicing in belonging to an organization that built men like the ones who had just taught me a lesson.  Next time, I'll hopefully be a little more Christlike thanks to their example.

Thursday, March 17, 2011

Robotic Rodeo -- Day 3 -- Murphey backs off

So after I blogged about day 0, 1, and 2 of the Robotics Rodeo, life intervened, and I never got to day 3.  However, when John mentioned that Davin mentioned that my blog post about 5D Robotics stealing some lady's bag from airport security was on the first page of Google results for "5D robotics," I figured I better tie up a few loose ends.

First, we returned the lady's stolen bag.  We had left my phone number with Delta so they could give it to the lady if she called them, which she did.  As it turns out, the lady was moving from CA to GA, which somehow equated to carrying a carry-on full of brand-new clothes and 50 garbage bags, but she wasn't particularly inconvenienced by the bag being stolen.  We promised we'd leave it at Delta on our way home, and they would see that it got back to her, which they did.  (After we spent ten minutes convincing the Delta employee we were in fact returning a stolen bag rather than looking for a lost bag of our own.)

Second, we almost ran over Boeing's robotics team.  They were standing in a small group making snide remarks about the clearance and overall appearance of the Segway robot I was driving when it accidentally swerved towards them.  They managed to scatter in time to avoid getting ran over by 240 pounds of steel and clawing tires, but only barely.  Fortunately we had the velocity capped on the robot.

Third, the demos went marvelously, and not just because our CEO didn't like my blog post about the previous day's disaster showing up on the first page of Google results for our company's name.  They actually went really well.  Antenna Products pulled out a wireless spectrum analyzer and found us a channel that was fairly free, so our radios worked much better.  We were actually able to demo our robots for some important people that Davin roped in, and the Segway representative only mistook one middle-school boy for a girl.

So all-in-all, it ended up being a positive experience.  We had sushi for dinner, John didn't get tazed even once on the way home, and we got the next day off work to catch up on sleep.

Day 0
Day 1
Day 2

Tuesday, March 08, 2011

Favorite Baby

Last night, Child and I were in bed.  Ash was sleeping in her bed beside ours.  Child and I laughed about something and in her sleep, Ash laughed also.  Child and I thought that was pretty funny.

Wednesday, February 23, 2011

Foot, meet mouth

Following is a cautionary tale on never saying anything in private you wouldn't want repeated publicly.  Names have been changed.

We here at 5D have an intern working for us...we'll call him Scone.  Coworker John, Scone, and I all work in the same room, although we can't see each other because of the dividers between us.  This fact led directly to the incident.

Scone is a smart and articulate kid, so I sometimes forget that he just doesn't have much programming experience yet.  He came to me with a programming problem, so I told him the solution.

"Well, the obstacle avoidance behavior file is conditionally compiled based on the mission flag in the CMake file, which is currently set to mission_dave in your virtual machine.  Since the behavior should be unconditionally compiled in now, you'll have to move it out of the conditional and into the normal list of included files."

It makes perfect sense, right?  Apparently not, because Scone gives me this blank stare like I was talking in German.  That was doubtful, since I don't speak German, and I realize it just went right over his head.  I go over to his desk and walk him through what he needs to do, although I'm a tiny bit annoyed because I'd rather him play around and attempt to figure it out on his own for a few minutes before coming to me.

A few minutes later, someone walks out the door heading in the direction of the break room.  For some reason, I think it is Scone, which means John and I are left alone in the room.  I start talking, which incidentally is where a lot of my problems throughout my life have come from. 

Me: "John, do you think I'm helping Scone too little?  Or too much?  Because I just don't think he's getting anything I'm saying."

Scone: "Um..."

Me: "Um..."

So yeah.  There were a few frantic moments while I mentally went over what I said, trying to think if it was too insulting or patronizing.  Had I said Scone wasn't the sharpest knife in the drawer?  Had I mentioned anything about a light being on but nobody being home?  Because I could have easily said something like that, just joking of course, but not the sort of joke you'd want to say to someone's face.

And apparently, not the sort of the joke you'd want to say if you're not absolutely 100% sure of whose face you're talking to.  And even then, probably not, because you don't know what your listener might pass on, or what microphones are hidden around, or who might be just around the corner.

Sunday, February 20, 2011

Living Truth

Since our daughter has been sick (she seems mostly better now!), I've been doing a lot of reading about healing blessings and miracles.  There is a wealth of knowledge and information in the archives of Latter-day Saint church talks that is fascinating--even more-so when it applies personally to yourself given your particular circumstances.

Something struck me just now while reading.

Every now and then when I channel surf on the radio through the lower end of the dial where my NPR news likes to hang out, I stumble across some religious speaker.  I listen on occasion, and it brings back memories of attending various other religions' sermons while I was a missionary in Tennessee. 

There is a striking difference between those sermons and the ones I've been reading online.  The average sermon from a pastor will take an incident in the Bible and delve into it: history, background, various teachings or takeaway messages from it, etc.  Sometimes the sermons will be topical, drawing from a variety of Biblical references to make an interesting or helpful point on a specific subject.

These sermons are good, as is anything that lifts, enlightens, and gives direction to peoples' lives.  They can only rehash Jonah and the Whale so many times, though.  At some point they reach the end of what the Biblical writers managed to jot down and there they have to stop.  In the end, they're all missing a critical element: living revelation. 

Contrast this to a talk on, say, healing blessings given by an Apostle.  The Bible mentions several incidents of healing blessings, but doesn't go very much in depth into how they're done, who can do them, prerequisites, requirements, expectations, and limitations.

The Apostle isn't limited to the Bible, however, or even to the Book of Mormon, the book of Doctrine and Covenants, or revelation from a variety of modern prophets and Apostles, living and dead.  He has his own personal revelation as a mouthpiece of the Lord. 

As I've read through a half-dozen or so talks over the past couple hours, it keeps striking me how clearly and understandably the doctrine is laid out, how simple and organized it is, and most of all how much knowledge is added above and beyond any existing canon.  In short, a sermon given by an apostle or other inspired church leader has an incredible power impossible to find anywhere else.

RedBox

While getting a movie from RedBox yesterday, I watched the person in front of me walk away with five movies in hand.  Either they were planning to watch 10 hours of movies in the next 24 hours, or they were going to rack up some nice charges on their credit card.

Who knows.  Maybe the lady lived a hundred miles from civilization and this was her annual excursion to The Big City to "see what-all is goin' on."

Sunday, February 13, 2011

Haircut

My wife had a little accident last night.  I have to admit--I had a hard time keeping a straight face and murmuring the proper sympathetic phrases. 

Besides, it could have been worse.  She could have been shredding paper instead of cutting it.

Saturday, February 12, 2011

Updates

A hot-green motorcycle in our parking lot has the word "Ninja" painted in black letters on the side, with a giant grenade stencil beneath it.  Because when I think of ninjas, the first weapon that comes to mind is a grenade...

--------

Every time I go outside in the morning to leave for work, when there isn't much activity, a crow sitting in a tree along the sidewalk will give a brief caw, presumably to alert any other crows who cared that a human was nearby.  Another lookout crow did the same thing on our way to the park today.

--------

Yesterday evening I finally got another robot driving.  I was pretty excited since I had been working on it for the whole past week.  Child called me about 5 pm and asked when I was coming home.  It was a good thing she called, since I was so into my work that I probably would have worked until 7 pm before I realized what time it was.

On a related note, the company that built the robot apparently has no idea what a "standard" is.  If you decide to use the JAUS architecture for the nice standardization it brings, it's a little counter productive to put the left wheel speed in the "velocity" field, and the right wheel speed in the "turn rate" field.  It's wrong, and it defeats the whole purpose of using the standard to begin with.

--------

My writing group is great.  They gave me some good ideas for how to progress my characters and make them more realistic.  I like where my current novel is going.

Sunday, January 30, 2011

Power

Everyone's heard the saying, "Power corrupts; absolute power corrupts absolutely."  (Paraphrased from John Emerich Edward Dalberg Acton)

I decided I don't agree with that.  I don't think power corrupts, I think it merely exploits or exacerbates existing corruption.  It's like putting pressure on a stone--the stone will eventually crack along existing imperfections or fault lines.

Taking it a step further, the more power granted, the smaller the imperfections that become a problem. Following it to the conclusion, absolute power would cause anyone with the slightest corruption--anyone less that a perfect being--to be destroyed.

Mormons differ from other Christian religions in our beliefs concerning the afterlife.  For one thing, we take very literally the idea of being children of God and joint-heirs with Christ.  As such, those who fulfill to perfection their responsibilities on Earth will (as joint-heirs with Christ) obtain all that God has and become all that He is. 

Now we see the need for a judgment.  That inheritance includes absolute power--the power to create and destroy worlds without number.  The power to create and destroy life itself.  No sane person, no matter how degenerate they personally were, would want that power given to anyone with the least predilection for evil.  Imagine the potential for destruction.

No, most of us would agree that there should be a stringent teaching process (life), including frequent tests (trials), followed by a final judgment as to worthiness (and who knows--perhaps many more millenia of learning), before such an awesome power should be granted to anyone.

Saturday, January 22, 2011

Sweet Relief

Sometimes, it's been a long day and you're exhausted and all you want to do is sit down and watch the basketball game and eat something sweet but there's nothing but vegetables and coconut milk in the fridge and you're disappointed because there's never chips or cookies just lying around and you open the freezer and there you find a giant ice-cream/chocolate-chip cookie that you left there a week ago and forgot about and it's a little freezer-burned but you don't care because all you wanted was something sweet and it's like a little bit of heaven.

Saturday, January 15, 2011

Robots!

We finally lined up our robots at work and I snapped a shot with my camera.  We're missing one from the picture due to the simple expedient that it's too large to fit through the door (it weighs 4500 pounds), but when we get a nice picture I'll post that as well.


Tuesday, January 11, 2011

A Plus Updates

In a surprising "coincidence," a week to the day after an unsatisfactory phone call with A Plus, I got an email indicating that they "noticed that you do not have an account manager" and were assigning me one.  Before I even read the email, I got a call from the person who had been assigned, indicating she was my new account manager and casually asking how things were going. 

I knew exactly why they were calling and repeated my previous complaints, as well as indicated my plan to leave their services.  After listening, my "account manager" apologized profusely for the unprofessional behavior of the previous person I had talked to, and offered to give me the domain service that had prompted my original call for free.

For the price of a phone call, an apology, and a $6 perk (well, it saved me $6; it cost them nothing), they kept a customer who pays them $50-$60 per year.  That's doing business the right way.

Wombat wombat wombat!

Most people who've been to been to Latter-day Saint seminary know the mildly interesting acronym spelled by a few words in 2 Nephi 9:39: "[To be] spiritually-minded is life eternal," or SMILE.

For the fun of it, I decided to see what other acronyms there were in the Book of Mormon.  Following are a sampling (not all the phrases that make up the acronym make sense; I just chose a few of the more interesting/amusing acronyms):

PALATES: "perish as long as the earth should" (tied for longest)
HANDOUT: "hearts are not drawn out unto the" (tied for longest)

WOMBAT: "words of my beloved are true"
SITCOM: "strong in the city of moroni"
TWEETS: "the whole earth except they shall"
MAIMS: "mine account i must speak"
SCUMS: "son came unto me saying"
WITCH: "which is to come having"
PANIC: "peace and now it came"
NACHO: "naught and cast him out"
ALOHA: "and lowliness of heart and"

All in all, I found over 400 that were 5 letters or longer, although some were duplicates.

Monday, January 03, 2011

A Plus moves to my Do-Not-Buy list

Another company bites the dust.  After buying over a half-dozen domains from A Plus.net, my next domain purchase will be from a different company.  My primary complaints:

1. Terrible security.  They actually require you to give them your password before they'll help with your account.  Verifying who the account belongs to is good; asking a user to give up a password is a huge no-no.  Any security professional can tell you that.  No one but the customer should ever have access to or know their password.

2. Terrible customer support.  When a customer calls with a complaint, immediately responding with a bad attitude is very poor service, especially if the customer is (I thought) polite.  Giving them the run-around about not being able to talk to a manager before putting them permanently on hold is worse.

Goodbye, A plus.net.  You get an F in my book.

Monday, December 27, 2010

New Year Goals

It's amazing how much I consume. Food, media, entertainment, services, etc. After far too little thought, my goal for the new year is to become a producer. Following is a list of what I regularly consume, and therefore am going to attempt to produce:
  • Movie
  • Novel
  • Board game
  • Web service
  • Web game
  • Short story
  • Children's book
  • Food
This is just my initial thought; I'm open to suggestions if I'm missing something big.

I'm not planning to impose any personal standard as to level of quality or usefulness. For example, the movie will most likely be produced using a handheld camcorder with few props and less experience. On the other hand, I will likely put more effort into coming up with a fun board game and writing a good story.

To carve out time for my effort and limit distractions, I'm going to (not) do three things over the next year:
  • No TV
  • Only watch movies with wife
  • No browsing news websites after dinner

Wednesday, December 15, 2010

Numeric

Exactly what part of the confirmation number "JDHXCV" is actually numeric?

Sunday, December 12, 2010

I liked this quote: "If you're unwilling to take the difference between a comma and a semicolon seriously, you have no future as a software developer." --jc42

Tuesday, December 07, 2010

Sweeping Science

Sweeping every religious belief under the umbrella term of "religion" is like grouping astrology, alchemy, homeopathy, and economics with real science. Sure, you'll find people that believe it, but that's hardly a reflection on the scientific community in general.

At best, extrapolating your average Christian from Pat Robertson and Fred Phelps is unfair. Worse, it's disingenuous. Calling religion "bad" because of their ilk would be like dismissing all science because of what Dr. John C. Cutler or Dr. Eduard Wirths did.

Goose, meet gander. Let's all play fair.

Wednesday, December 01, 2010

Problems

When a problem occurs, how do I respond? Do I ask: "Whose fault is this?" or do I ask "Whose problem is this?"

Those questions lead down very different paths. The first leads to blame, recrimination, and abdication of personal responsibility. The second leads to a solution.

The answer to the first question varies widely. It's occasionally "Mine." Regardless, it's not particularly helpful for finding a solution.

The answer to the second question is always "Mine." If Slugger McHurty is beating me up in a dark alley, the problem is not that he's a maladjusted member of society with a punching addiction, the problem is that I'm getting hurt.

By taking the point of view that every problem is my own (albeit not caused by me), it becomes clear that every solution is going to involve some sort of change on my part. Slugger's not going to change--he's having a great time. Why, this is the most fun he's had since he stole a lollipop from that baby two days ago. Instead, I'm the one who is going to have to do something different. Run, fight, or if nothing else is possible, adopt an optimistic mental attitude and watch for signs of Slugger tiring.

My goal for the next problem I face is to not ask, "Whose fault is this problem and how can they stop causing it?" Instead, I will ask, "What is my problem, and what do I need to change to deal with it?"

Tuesday, November 23, 2010

Sunny California

Sure, we went to the beach a couple days ago. Sure, it was so sunny and warm I was in my short sleeve shirt. Sure, Ash ran around in her shorts.

I still wish I was back in Utah for the upcoming snow storm. I lived there ten years--and Child lived there her entire life--without seeing a snow day. And here BYU is closing.

I'm jealous.

Monday, November 22, 2010

Foundations

For the past little while, I've been focusing my scripture study around questions, such as:
  • How do I increase my power in the priesthood?
  • How do I recognize the Spirit better?
  • Why are there so many tree parables in the scriptures? (Judges 9, Daniel 4, Matthew 13, Matthew 21, Jacob 5, Alma 32, 1 Nephi 8, etc.)
It's interesting to see how the answers to all these questions (except maybe the tree one) universally return to the foundations of the gospel. Study and ponder the scriptures. Pray sincerely. Improve your personal righteousness in the little things.

At the end of the day, the gospel isn't complicated. It's not even particularly hard, it just requires steady, constant progression. Focus on that, and you'll be presented with a wonderfully diverse bouquet of spiritual enlightenment.

Sunday, November 21, 2010

Holidays

This blog post has a happy ending.

I have to say that up front, because otherwise it would just look like my annual anti-holiday rant. Don't get me wrong, I don't consider myself a grinch. I enjoy the opportunity holidays offer for quality time with family and friends, games, relaxation, and even a little personal self-sacrifice for the good of everyone.

But honestly, how often is that the way it really plays out? Some sacrifices are necessary, I understand that. You can't usually have family-togetherness-time without shelling out for plane tickets or gas and traveling for hours with squalling kids. However, I feel that much of what we burden ourselves with over the holidays is unnecessary, commercial, and downright detrimental.

So here's the two questions:

1. How many people complain about how commercialized the holidays are?

2. Now how many people do something about it: i.e. stop commercing?

Although Christmas is the prototypical example, let's look at Thanksgiving, since it's the next holiday coming up. I actually think Thanksgiving is one of the least commercial holidays on the calendar. Sure, commercial interests push all sorts of food, but you're going to eat on that day regardless. Still, the holiday seems all about fiddling on the roof, without really stopping to think about why we're up there in the first place.

The reason, of course, is thanksgiving, quality time with family and friends, and happiness. If you can achieve all that while spending days preparing, cooking, and cleaning up after a giant meal, more power to you. If you can do it without subjecting those around you to a choking haze of stress-induced freneticism, even better. One problem: you still haven't even asked if preparing food, cooking, and cleaning is the rest of your family's idea of a good time.

Not to detract from the work that so many people put into maintaining Tradition (and the fond memories I have of my own family's Thanksgivings growing up), sometimes it's worth stepping back and determining of new traditions are needed. If you don't like turkey, cooking, cleaning, or spending large amounts of money, and your wife doesn't like any traditional Thanksgiving food and happens to think that Thanksgiving celebrates gluttony and killing Native Americans (not necessarily in that order), then why in the world are you having a traditional Thanksgiving?

Which is why our family is not this year.

Rather than wake up at 2 AM to put a turkey in the oven, we're going to sleep in as late as Ash lets us. Instead of making an endless succession of cranberry, bread, and vegetable dishes, we're going to order pizza. (And open a can of olives and cranberry jello.) With the time saved by not cooking, we're going to spend quality time with Ash at the playground, followed by some disc golf. Later that evening, rather than washing dishes, deboning poultry, and trying to fit leftovers in the fridge, we're going to play board games.

There's obviously trade-offs. There will be no delicious cranberry, bread, and vegetable dishes. There will be no pie unless we decide to buy one. There will be no turkey wishbone. However, these are traditions I'm willing to give up to create new ones that I think fit our particular family situation better.

My hope is that some of our local friends and family will join us for pizza, disc golf, boardgames, or some subset of those activities. I believe that strengthening relationships is one of the key aspects of a holiday. However, I understand that they might want to stick with their traditional Thanksgivings. We'll see. Either way, I think we'll be doing our part to turn our personal observance of the holiday back to its foundations.

Tuesday, November 16, 2010

Caulk Fighter

I've always wanted a caulk gun, ever since I was a little boy watching my father apply that smooth white bead to any sort of crack you cared to name.

Well, I finally got an excuse to get one. We've had ants on our kitchen counter, under the kitchen sink, and oddly enough, the top of the shower. After a little investigation, it appeared that the ants on the kitchen counter and under the sink were related, and appeared to be coming from a crack under the sink. The ants in the shower were coming from a hole in the top of the shower.

One trip to Home Depot later, the crack and hole are history, and hopefully the ants are too.

Actually, to be honest, I'm sorta hoping the ants aren't history. I want to caulk more cracks.

Crayons

Ash's box of 24 crayons is down to 16. Given that she received it two months ago for her birthday, that's a monthly CDR (Crayon Dissipation Rate) of 16.667 percent, roughly.

Thursday, November 11, 2010

Borscht borscht borscht!

Holy cow. I didn't know beets could be so delicious. Child just made the most amazing borscht, and topped with sour cream with a side of focaccia bread, it was the most delicious meal I've had in a long time.

Friday, October 29, 2010

Robotic Rodeo -- Day 2 -- Somebody taunted murphey

The day started out early--about 3 AM Pacific time. We headed straight to Fort Benning to set up for our demo in the chilly morning air, fortified by a breakfast of soggy, lukewarm egg muffins.

From that high point, the day rapidly went downhill. The radios, which had worked so beautifully the day before, gave up the ghost with a vengeful permanence. If I had known at that point that it was simply the first taste of what was to quickly come, I might have followed suit.

The demo was at 10:30, a couple hours away. At first we didn't panic, assuming that the radios could be resuscitated. As time ticked away and radios remained stubbornly silent, however, the Antenna Products people became more and more frantic. A team of heart surgeons racing to beat a rising flood wouldn't even have approached their intensity. We were working on issues of our own so we couldn't watch, but Davin kept us updated on their progress. It went something like this:

"They're checking the connections."
"They're checking the linux kernel."
"They're reinstalling linux."
"They're opening up the radios."
"They're checking the circuit boards."
"They're replacing the circuit boards."
"They're stomping on the radios."
"They're rebuilding the radios from scratch."

The Antenna Products people were under a lot of stress, and Davin finally decided to stay at our own booth after one too many over-the-shoulder suggestions got him threatened with a fist to the face (these were big Texas guys). I don't think the guy was joking, either. At one point, one of the Antenna Products guys came over and said that the boss had just fired two people back home.

Like I said, though, we were dealing with problems of our own. For some reason, an ugly bug had chosen that morning to rear its head in our code. I finally had to give up working on that because we had to attempt to implement our fall-back comms solution: off-the-shelf wireless Internet.

Since we hadn't worked with it hardly at all, and we were down to our last few minutes before the demo, that predictably didn't go well and we finally gave up on that as well. What we didn't realize until later was that most people were having communication issues, due in part to the sheer number of people in the same tent all trying to use the same frequencies.

Also, it didn't help that someone had brought a massively overpowered radio that was drowning everyone else out. That was our suspicion by that point (confirmed later) and Davin got the person-in-charge to make an announcement over the PA for everyone NOT doing a demo to turn off their radios, but of course the vendor didn't. Their comms worked great.

The time for our demo to start came and went with us still trying to get a robot working. We finally gave up on the comms and simply planted our robot at the front of the demo area. If nothing else, we could demonstrate how you could plug and unplug two different sensors and they would automagically work.

Except one didn't. As we discovered later, the actual cord for the sensor had gone bad. The cord. When was the last time you ever saw a cord go bad? That's right, never. It just doesn't happen. Davin glossed over the issue as best he could, but at the end of the day it was a totally disastrous demo. The one tiny saving grace was that most of our audience was just a busload of school kids who had been trucked out to look around, and they don't usually have fat, multi-million dollar contracts to give out.

The rest of the day was spent working over radios, robots, and sensor cords. By evening time, everything was coated with dust and we were all hungry and tired, but at least the radios were starting to work. Mostly due to everyone else going home and freeing up the airwaves. We finally packed up and followed suit. Davin had pushed off all the unofficial demos he had promised people to the next day, so it would be a late night. Hopefully, the next day would be better.

Wednesday, October 20, 2010

Robotic Rodeo -- Day 1 -- Setting up

Wednesday was setup day. The rodeo was held right on the military base, with the building-sized tent set up on an old firing range, to judge from the number of empty shell-casings that littered the ground. I contemplated throwing a few of them into John's backpack, just to make things a little more exciting when he tried to go through airport security on the way home, then thought better of it. If he were wrestled to the ground and tazed, it might hold up the whole security line and I'd miss my flight as well.

The tent had probably 50 booths, otherwise known as "folding tables." Since our company had turned borrowing other companies' equipment into an artform (our robots, laptops, radios, pretty much everything but the code we brought had been bummed off someone), we saw no reason to stop at the rodeo and talked AMREL, a laptop company, into letting us share their booth. We were even generous enough to give them one of the two tables on the second day.

Over the course of the rodeo, we borrowed additional robot parts from Segway, tools from AMREL, and additional antennas and radios from Antenna Products. We took AMREL's demo slot (you can't really demo a laptop, right?) and crashed the last 10 minutes of one of Segway's demo slots. In the afternoon, Davin talked AMREL into buying us lunch.

I felt a little bad about all our mooching, especially since it was more of a cycle than straight-up borrowing. We'd take one of Antenna Product's radios, break it, give it back, and borrow the next one at the same time. They could barely fix their equipment fast enough to keep up with us. Davin had to promise them ever-increasing future profits from our partnership just to keep them from beating us with wrenches.

The two robots we took to the rodeo, sans all their radios, laptops, and other hardware accoutrements
Left to right: Segway RMP 50, Segway RMP 400

By the end of the day, however, everything was looking rosy. With the help of Antenna Products, who made the radios, we got the RMP 400 to venture further from Home Base than he ever had before. The laptops were in fine form and the computer programs had brought their A-game. Our first demo was at 10:30 the next morning and our confidence was high.

There was one thing we forgot to take into account, however: Murphy's Law. We would discover three things the next morning.

1) Having an early demo slot is a bad idea. If something goes wrong, you have no time to fix it before showing--or not showing--your demo to top military and civilian leaders whom you've specifically invited.

2) It's a lot easier to make your radios work when there's not 49 other companies trying to make their radios work at the same time. Especially if one of them is nefarious.

3) Working radios are kinda essential for a good demo. When your robot is tethered to your control computer with a three-foot cable, it's hard to explain the advantages of your system to, say, a bomb-disposal technician.

If you've got an iron stomach and don't mind a little carnage--at least someone else's--tune in tomorrow for the next compelling segment in our ongoing saga: Robots Gone Wild: How Boeing Almost Lost Their Entire Robotics Team to a Crazy Robot From 5D Robotics, Inc. Fortunately, the Driver Managed To Evade the Military Police, Since I Really Didn't Want to Spend the Next 10 to 15 Years With Three Off For Good Behavior at Fort Benning, Charming As It Is.

Also, we need to talk with our saga-naming people.

Tuesday, October 19, 2010

Latest project: robotic bike

Our latest project at work has been robotizing a bicycle. Here's what we have so far:


Sunday, October 17, 2010

Robotic Rodeo -- Day 0 -- The Seventh Carry-on

Tuesday morning, three of us from 5D Robotics, Inc. arrived at the San Diego airport. Our destination, by way of the Atlanta, GA airport, was Fort Benning, GA. Our mission over the course of the week was to demonstrate 5D Robotics' capabilities at the Robotics Rodeo.

Everyone knows that a trip of this importance does not go flawlessly. We got things off to a quick start.

You have to understand that the three of us arrive at the airport with 11 items of luggage in tow. Two suitcases or carry-ons each, two large crates of equipment, a carry-on-sized battery charger for military-spec batteries, a banner in long tube, plus a Segway robot. Even after checking what needed to be checked, we had six carry-ons between us. It should be understandable that a little confusion might arise about whose luggage belonged to whom and what exactly we had in tow.

Going through TSA security, John (names have been changed) is pulled aside. He's carrying the battery-charger as one of his carry-ons and that many wires and electronics in a military-green case is a little suspicious. He's taken to a nearby table for interrogation and trying to expedite our traveling, Davin takes a suitcase off the conveyor belt that he thinks belongs to John.

John is finally released by TSA and Davin hands the suitcase he grabbed back to John. John, of course, thinks that the suitcase belongs to Davin, and that Davin was just trying to pawn the job of carrying his luggage off on him. "Why does Davin even have three carry-ons?" John wonders to himself. "He's a Platinum member of Delta's frequent flier program. You'd think he'd learn to pack lighter." Being the nice guy he is, though, John says nothing and takes the suitcase.

We reach the gate, seven carry-ons in tow. Being a Platinum-level member of Delta's frequent flier program, Davin has a seat in the first-class section while John and I will slum it in coach. First-class people get to board first and as they are invited to come forward, John finally tires of lugging Davin's third suitcase. "Here, take this with you," John says, shoving the suitcase at Davin. "Being first-class, you'll have an easier time getting three carry-ons past the gate agent than either of us."

At this point, Davin thinks that John is now trying to pawn his luggage off on Davin, but he takes the suitcase anyway. The gate agent manning the microphone sees Davin coming with his three carry-ons and quickly makes an announcment--"We remind our passengers that there are only TWO carry-ons allowed per passenger"--but it's too late. Pretending not to hear, Davin gets past the ticketing agent and is free.

Arriving in Atlanta, Delta does its best to give us all heart attacks by cleverly moving our equipment crates from the regular baggage carousel to the oversized-baggage area, but we finally locate at and load it into our rental minivan. We drive for an hour and a half down to Columbus, GA, finally arriving at our hotel late at night. As we unload the minivan, John turns to go inside with a single backpack in hand. This is too much for Davin. "Do you want to take your stupid suitcase?" he asks, shoving the seventh carry-on at John.

John looks at it. "It's not mine," he says. Davin looks at me. "It's not mine," I quickly say. Davin frowns. "It's not mine," he says.

We stole someone's luggage. From security.

We take the bag up to my hotel room and start digging through it. We don't see any identification on the outside (Owner: "It's a carry-on! There's no possible way it could get lost.") and there's nothing inside but a stack of brand-new clothing with tags still attached and, inexplicably, a complete roll of about 5o Hefty trash bags.

Doing a second inspection of the outside of the bag, I finally notice a tiny scrap of sticker left over from some long-past flight with the name "Doe/Jane" on it. Since we took the bag from security, we don't even know which airline the person may have been flying, so I just call Delta.

It takes several minutes to get across to the baggage claims lady that we were in fact trying to return luggage rather than looking for a lost bag of our own, but she finally understands. "Well, just bring it back to the airport when you fly home," she says. Since that won't be for another another three days, Davin gets online and starts searching for every Jane Doe he can find. There are several, so he sends emails to the most likely ones.

One of the Jane Does, according to Google, ran a 17-minute mile in some race, which might explain her lack of catching up to us if she was, in fact, the one we had stolen the bag from. "Wait!" she calls out in her wavery voice, shuffling after us with her walker as we casually stroll off into the distance. "Come back with my suitcase! It has all my trash baaaaaagggggs!"

Anyway, by that time it is late and we are tired. "The day could have been worse, though," Davin points out. "Someone could have stolen our bags instead of vice versa. At least Jane Doe has the clothes she's wearing, and you can pick up trash bags practically anywhere. We wouldn't get very far at a robot demo without a robot though."

As we would find out the following day, however, there are more things than just losing a robot that can make a presenter start sweating at a robot demo. Stay tuned for the next installment of "Murphy's Law: An In-depth Exploration."

Sunday, September 12, 2010

Nothing like a good addiction to while away the hours...

If ever there was a time to give up smoking, you'd think it would be when you were trapped half a mile underground with limited ventilation, limited diet and exercise opportunities, and other people who might not share your same opinion of the health benefits of cigarette smoke.

Apparently not.

According to CNN one of the first requests made by 33 miners trapped 2300 feet underground was for cigarettes.

Tuesday, August 31, 2010

Credit Scores

Child has an excellent credit score, but no income.

I have an income...but as we found out today, no credit score. Not a bad credit score, just no credit score. Apparently credit cards don't build your credit if you're responsible and pay them on time, and (car) loans over seven years old don't count.

That leaves us with basically four options as far as obtaining a house goes.

1. Wait a year to buy a house while I build credit by taking out loans I don't need and paying interest I don't want to. Note that credit scores are a black box, so this isn't actually guaranteed to give me a credit score.

2. Wait a year to buy a house while we save enough money to put down 20% on a home, jump through all sorts of crazy hoops to prove to our mortgage lender that I'm a responsible buyer despite the lack of a credit score, then almost double the amount of interest we pay on our mortgage.

3. Save money until we can pay cash for a house. Note that this would actually be our daughter's house, since given California prices, Child and I will be kicking the bucket about the time we finished saving. Since the plan is for Ash to be supporting us in our old age, not vice versa, this option is out.

4. Steal one under cover of darkness and move it somewhere convenient like the beach, or perhaps my work's parking lot. I'd have to look into how much it costs to hire someone to move a house though. And they'd probably run a credit check.

Friday, August 27, 2010

Backwards

I'm teaching Ash the alphabet backwards, but I'm thinking about teaching her the numbers backwards also. We'll start at infinity and work our way down.

Wednesday, August 25, 2010

Writing Meeting

So I finally found a writing group locally and attended a meeting last night...and this morning.

Yes, it went that long.

Pros: nice people, decent critiques.

Cons: I arrived at the meeting at 7:30 p.m., and got home at 1 a.m.

When I arrived, it was only the host and I. My first irritation was that it was 15 minutes after the meeting was supposed to start that the next person came in, and 45 minutes or more before most of the people had arrived and we actually started the meeting. Apparently this wasn't uncommon. From the joking as people straggled in, I gathered this was the usual modus operandi.

The second major irritation was that it took five hours to critique what every other writing group I've attended has done in two. The problem started because we didn't get each other's entries ahead of time. Each person showed up with their submissions and started by reading them aloud at the meeting. Seven submissions, ranging from two pages (mine) to six or seven pages, and you're talking probably 45 minutes just for the reading alone.

Without any advance preparation, you're critiquing on the fly, which is inefficient and doesn't allow for any sort of thought-gathering or organizing, which means most critiques were stream-of-consciousness. Throw in one or two people who like to ramble, and there was a very low signal-to-noise ratio.

That said, the critiques were good enough, but again, nothing that couldn't have been accomplished in half the time with a little more organization.

I'm not sure I'm going back. The usefulness of the critiques didn't really seem to outweigh the late bedtime and frustrating meeting procedure. Maybe I can find another group that follows the sort of format I'm a little more appreciative of...or perhaps start one.

Saturday, August 14, 2010

You're kidding, right?

The above poll from CNN.com astonished me. I can completely understand there being a huge variety of opinions about the wisdom of building an Islamic center near Ground Zero, but there should be no question as to whether they have the right. Isn't religious freedom one of the foundation stones of our country?

(Granted the poll is unscientific, and I wouldn't be surprised if many of the respondents confused the "right" to build an Islamic center there with it being a "good idea" to build an Islamic center there. If that's the case, though, then I can rant about the poor comprehension skills of poll respondents.)