Nathaniel’s First Night Without Baby

On Thursday night at bedtime, we discovered Nathaniel didn’t have Baby (his security blanket). He’s slept with Baby every night of his life.

Nathaniel was very, very upset. So were Alice and I. But he handled it really well. Alice loaned him one of her blankets, which helped some.

I stayed with him in his room, watching over him. He’d open his eyes and see me watching. That seemed comforting. He was asleep pretty quickly.

This was a teaching moment for the kids. When biomom packs their bags, things get left behind. For years, I’ve been encouraging Alice and Nathaniel to pack their own bags.

Photo Friday – High Speed

Alice and Cassie cruising at high speed

Alice driving Cassie’s Barbie Jeep at the farm. At high speed. Since it was almost bedtime, they’re cruising in their pyjamas.

Gas-powered RC car

For something a whole lot faster, Norm’s gas-powered RC car. It goes like stink. Nathaniel needs one of these right away.

Simple ‘Down for Maintenance’ Solution for Apache using .htaccess

I finally decided to create a maintenance page to use whenever I’m upgrading any of my sites. This solution was pretty simple.

I added two RewriteCond stanzas to my .htaccess, at the top of the file at the base of the site. The first rewrite handles the case where the maintenance page exists:

# If the maintenance.html page exists, redirect to that.
RewriteCond /full/path/to/site/system/maintenance.html -f
# Don't redirect if the maintenance page was requested.
RewriteCond %{REQUEST_URI} !/system/maintenance.html
RewriteRule ^.*$ http://blog\.coredump\.ca/system/maintenance.html [R,L]

If the maintenance.html file exists, it is displayed. What happens when the maintenance is complete? Well, I remove the maintenance.html page of course. To prevent anyone from seeing a 404 once maintenance.html has been removed, I added the following to .htaccess immediately after the previous stanza:

# If the maintenance.html page does not exist, redirect to the index.
RewriteCond /full/path/to/site/system/maintenance.html !-f
RewriteCond %{REQUEST_URI} /system/maintenance.html
RewriteRule ^.*$ http://blog\.coredump\.ca [R,L]

Now all I do whenever I bring the site down for maintenance is:

  1. copy maintenance.html into the appropriate location;
  2. perform the site maintenance;
  3. remove maintenance.html.

Isn’t that easy?

Installing Fedora 10 from USB drive

I’ve got an old IBM ThinkPad R51 that needed an upgrade. The CD-ROM has become flaky, so I wanted to install from a USB thumbdrive. Turns out this was pretty easy.

  1. Download the Fedora live CD. For Fedora 10, this is about 682MB.
  2. Follow the instructions at How to create and use Live USB.

That’s all it took. To boot from USB, you have to press the blue ‘Access IBM’ button, then F12. From there, the BIOS presents a menu and you can select the thumbdrive as a boot device.

BTW, I was initially going to attempt a PXE-boot and kickstart. This is also easy to do thanks to the folks at Etherboot.

Nathaniel’s Favourite TV

Things Nathaniel likes to watch on TV:

  • dogs (we’re watching the Iditarod Great Sled Race right now);
  • race cars (Nathaniel watched some of the Daytona 500 with me in February);
  • steak commercials (each time ads for The Keg appear, Nathaniel points and laughs);
  • Barney (daddy is not a fan);
  • Four Square on Treehouse.

Nathaniel’s First Teeth, First Christmas

On Christmas Eve (Dec 24, 2008) we noticed that Nathaniel finally had a tooth break through his gums. It was one of his bottom incisors. Kind of funny that Alice got her first tooth at Christmas too.

Nathaniel seemed to like Christmas. He didn’t try to unwrap anything early, nor did he bother the tree at all. Not what we expected. But on Christmas day, he did kind of figure out how to unwrap presents.

Alice enjoyed her Christmas too. She wrote Santa a letter (with Mommy’s help), asking him for Baby Belle, Baby Belle Bathtub, and the Sleeping Beauty movie. Because she’d been so good all year, she got all three of her wishes! Nathaniel asked for more things for the Thomas the Tank Engine train set, and he got that too.

Alice took her time opening presents. We let her go at her own pace, and she seemed to enjoy that more. As she opened a new toy, she could take a little time to play with it right away. This was better than what sometimes happens: a furious and un-enjoyable rush to open everything as quickly as possible.

Nathaniel is getting really good at standing on his own. He can take a step too, but mostly sticks to the perimeters where he has some extra support. He still adores Alice, and is a generally happy little boy.

We’re also starting to see clear communication from him. He can shake his head for “no” and “yes” — mostly he says “no.” He tries to say:

  • Alice (Ahh)
  • Nana (nah nah)
  • cat (tack)
  • up (upf)

He also loves to clap his hands, wave at people, and point at everything. He doesn’t make strange, but seems to love being around people. Whenever we go out, Nathaniel befriends anyone who looks at him.

Crawling to Sitting and Back Again

This morning Nathaniel was crawling around on the doffice floor, while Alice watched one of the new movies she got for her fourth birthday. I turned my head, and then Nathaniel was sitting on his bum

I’ve never seen him do this before. Technically, I still haven’t seen him do this, only the final result. I’m not really sure how he manages to get from tummy/hands/knees to his bum.

By the way, Chase is not very impressed with all this crawling business. He liked Nathaniel a lot more when he stayed in one place. The first time I saw Nathaniel crawl, it was to try to get to Chase. As you can imagine, babies think you should always grab fur, paws, tails, whenever you get close enough to your cat. As with Alice, Chase is pretty understanding about this abuse — he usually just runs away.

Upgrading OpenSolaris 2008.05 Build 86 to Build 95

I’ve just managed to upgrade my OpenSolaris 2008.05 machine from build 86 to build 95. The instructions were inspired by Updating Your System to OpenSolaris Development Builds. The process was a little finicky, so here’s the script I used:

#!/bin/bash

set -e

if [ -z $1 ]; then
  echo "ERROR: You didn't specify the name of the be you'd like to create!"
  exit 1
fi

newbe=$1

BUILD=$( uname -v | sed s/snv_// )

if [ '86' != ${BUILD} ]; then
  echo "ERROR: This is only for build 86!"
  exit 2
fi

mntpt="/tmp/mnt$$"
beadm create ${newbe}
mkdir ${mntpt}
beadm mount ${newbe} ${mntpt}
pkg -R ${mntpt} rebuild-index # This step was missing from the original instructions.
pkg -R ${mntpt} image-update
${mntpt}/boot/solaris/bin/update_grub -R ${mntpt}
beadm unmount ${newbe}
beadm activate ${newbe}

Once I ran this script I rebooted (init 6) and the upgrade took effect.