May 10th, 2002

David McCusker writes saying that he has heard that three children are easier than two and speculates that it is because the oldest child is able to help with the younger. John O'Sullivan wrote back to assure him that three children is not easier than two. John also links to the book The Best a Man can Get, about a man who escapes from fatherhood while his wife copes, saying that any thirty-somethings considering children should read it.

John Sullivan is probably right that for those men over thirty (or perhaps even 25), having children is something that is extremely difficult to adjust to. You've got freedom, you've got mobility, you've got very little responsibility. Having one child changes your perspective no matter what your age. Having a second one soon afterward (in my experience) only serves to reinforce the imposition.

If, by the time the third one comes around, you still haven't adjusted your expectations, then the third one can be just as bad. This is probably what John means when he warns off "thirty-somethings" from fatherhood.

I think, though, that if you start having children when you are younger (I was 23), you can adjust your expectations easier than if you start having children around, say, 32. This is probably why David has heard that three are easier than two — I really haven't notice my five-year-old helping with the three-year-old and 20-month-old. She's just bossy. She could probably be more helpful, but that will come with age.

People who recognise early on that children will impede their goals take steps to avoid them. Richard Stallman told me this is why he hasn't had children — it would get in the way of his drive for Free Software. Dan Lyke has said that he has avoided children because he was told repeatedly that they are an enormous responsibility (I'm paraphrasing).

Well, that was incredibly easy. Software RAID under linux using mdadm:

$ mdadm --create /dev/md0 --chunk=32 --level=1 --raid-disks=2 /dev/hdc /dev/hdd
mdadm: array /dev/md0 started.
$ sudo mdadm --detail /dev/md0
/dev/md0:
        Version : 00.90.00
  Creation Time : Fri May 10 20:57:01 2002
     Raid Level : raid1
     Array Size : 39082560 (37.27 GiB 40.02 GB)
    Device Size : 39082560 (37.27 GiB 40.02 GB)
     Raid Disks : 2
    Total Disks : 2
Preferred Minor : 0
    Persistance : Superblock is persistant

    Update Time : Fri May 10 20:57:02 2002
          State : dirty, no-errors
  Active Drives : 2
 Working Drives : 2
  Failed Drives : 0
   Spare Drives : 0


    Number   Major   Minor   RaidDisk   State
       0      22        0        0      active sync   /dev/hdc
       1      22       64        1      active sync   /dev/hdd
           UUID : 678d4abe:00f7f2c6:cebff360:4438e01f

$ mkfs -t xfs /dev/md0
meta-data=/dev/md0               isize=256    agcount=38, agsize=262144 blks
data     =                       bsize=4096   blocks=9770640, imaxpct=25
         =                       sunit=8      swidth=16 blks, unwritten=0
naming   =version 2              bsize=4096  
log      =internal log           bsize=4096   blocks=1200
realtime =none                   extsz=65536  blocks=0, rtextents=0
$ 

Basically, this means I have two hard drives that are a complete mirror image of each other. Additionally, I have journalling on the drive (via XFS) so that if the power fails suddenly, the machine doesn't have to fsck ("scandisk" for you Windows users) on the way back up. It makes the machine that much more reliable.

And it only took three commands under a minute to do it.

Now... Lets see if I can figure out how to make this the root partition.

Caveat: Since I'm just experiementing, I put the drives on the same IDE chain. Don't do that for production purposes. Each drive should have its own controller if you are going with IDE. SCSI lets you have more flexiblity, but the drives are much more expensive.

And, with a little looking, you could find something like the Adaptec ATA RAID, a hardware IDE controller that will free up your CPU cycles.