Sunday, November 30, 2008

Good Night Little Light


I came home from Thanksgiving yesterday to find that my sweet Llumi had died. I was so sad she died by herself, without me. I was so glad that I held her in my lap on Thursday before we left. Still, I wish I had been with her.

She was almost 14. She was the first cat that was really mine and that made me hers. My brother-in-law found her and her siblings in the back of a trailer where he collected paper for recycling. One day when he went to sell the paper, he found their nest, but no mom. There were seven tiny black kittens with varying degrees of kinky tails that the vet later told me were hereditary. They all had their eyes closed and still had umbilical cords. They couldn't have been more than a day old. My brother-in-law tried looking for their mom but never found her. We volunteered to raise three of them and he took the other four.

Raising kittens from birth is no small feat. You have to feed them every two hours and also make them poop. (We used a Q-tip to simulate the mother's tongue.) We filled up soda bottles with hot water to keep them warm and checked on them constantly. I still have a little notebook where we recorded how much they ate, when they ate it, if we got them to poop, how much they weighed. It was exhausting but it was fun too. Clearly, BK (before kids)

Llumeta Llumi was the first to open her big wide eyes, and that's how she got her official name, Llumeta, which means "little light" in Catalan. She was also the first one to understand how to drink from the bottle. And the first one to go walking around exploring.

Llumi exampleI spent that first summer of her life writing the first edition of my HTML book, back when it had 176 pages. I was down in my basement office and she would come down and keep me company, knocking cherry tomatoes out of a bowl and around the room. So I put her in my book.

LlumiShe loved to hunt. She could catch chipmunks and on the morning of September 11th brought me two baby rabbits, the second of which was still alive. I'll never forget driving to this tiny town in the boondocks to find a wildlife rehabilitator to take this little rabbit as I alternately listened to the radio and turned it off as the world seemed like it was falling apart.

She missed us when we went to Barcelona. Upon my return, usually late in the evening local time and early in the morning in my head, she would sit on top of me as I tried to sleep and kneed my chest with her claws. She didn't do it any other time, only when I got back from a trip.

Her favorite spot, though, was right in front of my monitor as I worked. Rarely still, stretched out, say between the keyboard and the screen, but back and forth from one side to the other, under my nose, in front of my eyes. Occasionally she'd stop and lay down on my mousepad. I had long learned that leaving her right next to my mousepad was a bad idea; my constant mousing would invite a bite after not too long. So I had to push over a pile of things a little farther on and make room for her. She would still try to walk in front of the screen, but after a while would settle down.


If I went out to garden, she always came with me. I don't know where she came from, but a few minutes after I got there, she'd be there too.

Llumi She loved the snow. She never shook her paws after touching it like so many cats do. Instead, she jumped in it, chased snowballs, stayed out for hours and hours. She was a snow kitty.

After we lost Sir Edmund (renowned for his climbing abilities), I insisted that all the cats come in at night. We had six at that point. DH had long ago taught them to come with a whistle and Llumi, as smart as she was, recognized the call and came right away. She didn't actually come in though. Instead, she'd hover about six feet away. If I got closer to try to pick her up, she'd move off just out of my reach. If I went in, she'd come closer to the door. Night after night, we played this game. It makes me feel less guilty to think of it. Because I would wait and be still for a pretty long time, and pretend I didn't care if she came or not, until eventually she would and I would snatch her up and bring her into the safety of the house.

She never was very friendly with any of our other cats. I was her friend, her human. She slept with me every night. One night, our big cat Night was in my bed instead and she stayed downstairs. There had been no altercation that I had seen, they must have worked it out ahead of time. I tried kicking him out and bringing her up to her usual spot (she was a master bed hog), but she immediately ran back downstairs and Night again sauntered in. After a few weeks, he moved on and she came back.

Llumi She loved to go on walks with me. If I walked anywhere from the house, she would follow me. It got so that if I was going far, I would have to sneak out, or take the car, so she wouldn't get lost. She loved being outside.

Two years ago, she disappeared for almost three weeks. I was sure she was gone forever and felt really sad. Black cats are notoriously identical looking and hard to find. But her tail saved her. She was born with this little stubby tail that she hated anyone to touch, but it was unique. A friend down the road found her in her garden and recognized her and called me up. She was a shadow of her former self, and seemed dazed and confused. I couldn't believe I had found her. I brought her home and fed her and she was back to normal pretty quickly. She didn't ever wander after that though. I could always find her close by in the backyard.

She got old quickly this past year. She lost a lot of weight and her hair got straggly. We were giving her thyroid pills to try to control the weight loss. I knew on Thursday that she wasn't doing well. I'm so thankful for having her in my life. I really loved her. I will miss her. If there's anything you think you should be doing for someone you love, do it right now.


Tuesday, November 25, 2008

Sewing Pattern Filing System

I have been sewing for as long as I can remember. When I was in high school, I envisioned a quilt business and even ended up at the Wharton School as an undergrad because of it. One of the reasons I chose quilts was because I didn't need a pattern. I couldn't read those things, with their interfacing and selvages. It was a tiger costume that finally opened the door for me to the world of patterns. Somehow, the fact that it didn't have to be perfect let me muddle through generally obtuse instructions to something that was entirely wearable and actually looked rather like a tiger (costume).

From that moment on, I was hooked on sewing clothing. I began collecting patterns of all types: pajamas and shirts, pants and sweaters. And not only did I have the original pattern, but I usually had a tracing of the pattern on Do-Sew so that I could make the pattern again in a different size. It made for a large pile of unwieldy papers and fabrics.

For a long time, I rolled up my patterns, tied the roll with a string and then carefully labeled the roll with its contents. This worked fine for the pattern itself, but the instructions and envelope (with the picture), invariably fell out of the package and commingled with the neighboring patterns.

My next system was stuffing everything into a big basket, trying every once in a while to reunite lost pieces with their mates. As you might suppose, this was not my best plan.

Then I tried big fat binders with plastic sleeves. But the patterns were too fat to fit well, and I could only fit about four into each binder. Worse still, the tracing paper was slippery and would slide out of the plastic sleeves. Pretty much a disaster.

The database lover in me kept thinking of more and more intricate systems until the other day I got so frustrated with the pile (and the missing pieces) that I stumbled on what should have been the obvious solution: a filing cabinet.

In a short hour, I had put each and every one of my patterns, together with all of the tracings and the picture on the cover into its own file folder, and then put them--in numerical order and by manufacturer--in the bottom cabinet of my filing cabinet. The ordering was the key. Now when I find a piece of say, McCalls 8193, I can find its home in as short a time it takes for me to actually do it.

Sewing Pattern Filing System

The last step was to photocopy each pattern cover and put them in a binder. These are organized by type: shirts, pants, costumes, etc., so that I can find the kind of thing I need. It's like having my own pattern catalogue. I love it. I'm hoping to add notes and information that I learned by doing each pattern (unfortunately, the obtuse instructions haven't gone away).

Now I can sew again.

Wednesday, November 19, 2008

Egg Gourds

I'm getting ready for an upcoming craft show and today my order of 100 egg gourds arrived from a farm in Michigan... I'm sort of weird this way, but I thought they were really beautiful. They were amazingly uniform, and looked just like chicken eggs (albeit, with moldy skin on the outside :) Unlike eggs of course, they have hard, thick, resistant shells. They don't break easily. Inside, there are seeds that rattle around when you shake them.

Egg Gourds

Cleaning the egg gourds is really easy. I just put them in the sink for a few minutes with a couple of tablespoons of bleach, covering them with a towel so they stay under water. Then I scrub each one with a copper scouring pad. (Copper's good because it doesn't rust and because it conforms to the shape of the gourds.) I always wear gloves, especially when working with bleach.

Now I'm going to start decorating them!

Tuesday, November 18, 2008

Learning HTML in Chinese, or Spanish, or French, or...

My publisher sent me a Chinese edition of my HTML book today... I confess I wasn't quite sure what language it was just by looking at the cover:

My books in many languages

And I truly love seeing my books in different languages. I've always been interested in languages (apart from English, I speak Catalan, Spanish, French, and Italian, with varying success), so it's fun to see what the other languages look like, especially when I can sometimes pick out what they're talking about from the context. And I love seeing my screenshots and photographs translated:

HTML, XHTML, and CSS in other languages HTML, XHTML, and CSS in other languages HTML, XHTML, and CSS in other languages

My books have been translated into a lot of languages. (And that list isn't even up to date!)

But while I love to have one copy, my publisher usually sends me several.

So I'd like to share the extras with you. Hey, the holidays are coming. Maybe you know someone (or are someone) who would like one of my books in a foreign language. All you have to pay is the postage. tells me it's $5 within the US, $10 for Canada and Mexico and $12 anywhere else.

OK, there's one more thing you have to do: something nice for someone else. You tell me what you've done, send me the postage (in cash or US stamps, please), and I'll send you the book.

(Want an English one? Read down to the very bottom.)

Here's what I've got left:

HTML, XHTML, and CSS, 6th edition: Czech (2), Chinese (2), and Spanish (3)
HTML 4th edition: French (2)
Creating a Web Page with HTML: Italian (2), German (2)

XML for the World Wide Web, 1st edition: Italian (2), French (1)

Publishing a Blog with Blogger: Italian (1), Swedish (2), French (1)

Perl and CGI, 2nd edition: Japanese (2)

If you're interested, leave me a comment with your email, or use my contact form.

And as a special bonus, I'll give the first person who can identify all three of the languages in the screenshots above any book of mine they like, postage paid, in English!

Tuesday, November 11, 2008

Birth of a Wiki

(Can't remember what a wiki is? Try here.)

So, I had this inspiration the other day (as I'm wont to do... it always seems so much easier to have inspirations than to make them into reality). The inspiration was to create a wiki about an as yet unnamed topic. Then I had another inspiration... to explain how I create the wiki as I go along.

The first step was to buy the domain name for the wiki. I want it to have a simple and memorable name, both so that people can remember it, and also so that people searching for my topic may happen upon it through Google or other search engines. My web host, Lunarpages, offers a domain registration service. I can simply go to my Control Panel and buy a new domain.

You can also register a domain at a big domain registrar like GoDaddy or Network Solutions. In that case, when you're buying the domain, make sure to specify the DNS servers of your web host. They tend to be a little sneaky about where to do such a thing since they'd really rather you host your site with them. Check out the tiny line below the main box with your info in it:

Setting Nameservers

Once you click the "click here to set nameservers" button, you'll see a set of fields for setting up to four nameservers. You get the numbers needed here from your web host. It's much easier and faster to set them right now than go back and edit them later.

Setting nameservers

I've been pretty happy with Lunarpages. I've been using them for a few years now and they not only have given very good service, but every few months they send me an email offering me additional services to my account, at no extra cost.

The most important of these has been free add-on domains. That means that I can host an unlimited number of domains at my one site at no extra cost. So, once I've bought a new domain, I go to my Control Panel at Lunarpages and create an add-on domain. That means Lunarpages creates a folder for me for the new domain. That folder will be the root directory for my new web site.

The trick of course isn't in the buying, but in the name choosing. You want a name that is concise and illustrative of the site's content. If the name has more than one word, it helps to choose words that don't mix together visually. Something like "talllemons" makes your visitors have to think about all those 'l's more than whatever "tall lemons" might be. Better to use something like "tallyellowfruit" so your visitors can quickly read the three words even though there are no spaces between them.

Once you've got a place for your wiki to live, you can start creating it. I'm really happy with PmWiki for small wikis. It's robust and popular, and doesn't use a database. That means setting it up is as easy as uploading files to the server. I can get a new wiki up in less than half an hour. Here's how.

Go to PmWiki and download the latest version of the software. I recommend choosing the latest stable release instead of the latest beta version.

Unzip the file on your computer. It'll look like this:


Now comes the hard part... upload (say, with Fetch or CuteFTP) all of those files to your Web Host server. I put them in the root directory of my new domain since I want the wiki to be the main page at that domain. To check if everything's working correctly, go to your browser and point it to the pmwiki.php script in your new domain (say,

But don't stop there. You still have to initialize the wiki. On your computer, open the "sample_config.php" file. Check the PmWiki Initial Setup Tasks page to see the basic changes you should make to the configuration file. Especially important is that you immediately change the administrator password. I also set the name of my new wiki, and the time format.

Finally, if you want to set the wiki as the default page for your domain, create a text file with the following line:

<?php include('pmwiki.php');

Then save it with the name "index.php" and put it in the root directory of your domain.

Now test to see if it works by using your new domain name and nothing else (

Next, we'll start to create the structure for the new wiki...

Monday, November 10, 2008

Homemade Apple Cider Press ... and a Moose!

Apples, apples, apples. They fill my dreams and my back yard. They are everywhere. More apples than I know what to do with. We have dried them, mashed them into sauce, pureed them into butter, and used a cheapo juicer to make apple cider.

Luckily, a friend of a friend lent us a homemade apple cider press. It's quite ingeniously designed.

Mashing apples for ciderThere are two parts to it. First, there is a beautiful maple cutting board with an in-sink garbage disposal. The disposal isn't for disposing though, it's for mashing up the apples. It's much more efficient than a blender, partly because you don't have to mash the apples in batches. Instead, you put a bucket under the “sink” and the apple mash just flows into the bucket. The cutting board counter is at just the right height to make cutting off the icky apple bits less of a chore. It was really easy on my back.

Apple mash on a netOnce you've mashed a bucket of apples, you ladle it onto one of a series of wooden slats in the apple press proper. There is a mesh netting that holds in the solid apple parts. We piled on four or five layers of wooden slats with mesh and apples.

Homemade apple cider pressFinally, there is a hydraulic pump that goes on top that presses out the apple cider into a waiting bucket below.

We made six and a half gallons of cider in about an hour and a half, including all the apple cutting and most of the clean-up. What do you do with 6 and a half gallons of cider? We put it in ziplock bags and stuck it in the freezer, leaving enough room for the cider to expand without bursting the bags :)

While we were finishing up, Laika began to bark. I thought I had heard the UPS truck, whose cookie-carrying driver is her favorite visitor, but no truck appeared. We went to see what she was barking at and found a moose sauntering across the field across the street. Very cool.

Moose visit

The only downside to the day? We didn't make a dent in the apples.

Lots of apples

Saturday, November 8, 2008

Blogging Flickr photos (part 4)

The other day I got a comment on the third installment of this series asking how to wrap text around photos inserted in the manner I describe there.

It's a very good question. If you use either Flickr or Blogger's automatic tools, they do the wrapping for you. But if you insert images the way I recommend, in order to link to your Flickr site from your blog, then you'll have to wrap text around them (or center them) on your own.

Fortunately, it's not difficult. Start with part 3 of my tutorial on Blogging Flickr images manually.

In this example, we'll use a photo that is narrower than it is tall. We choose the Medium size on Flickr (289 x 500 pixels) and copy the automatically generated code for the image from box number 1.

Copy code for portrait oriented photo

Next, paste the code into your blog post:

paste code into blog post

Adjust the width (and remove the height) if necessary, as described in part 3. In this example, so we can really see the text wrap, I've reduced the width to 200 pixels and removed the height.

Next, after the width, add the following:

style="float:left; margin:0 10px 10px 0"

Don't forget the quotation marks at the beginning and at the end!

It should look like this:

add style to img tag

Rosie the Llama Now when you view the photo, the text that follows the image, and indeed anything else that follows the image, will wrap around to the right. Don't put anything but a space between the chunk of code and the following paragraph so that your text is aligned to the top of the image.

You can have the text wrap to the left of the image by using float:right. Remember the image floats to the side you tell it and the text goes around the other side.

You can adjust the space around the image by adjusting the values next to margin. The numbers refer to the number of pixels of space to the top, right, bottom, and left, in that order. (Start at the top and go clockwise.) So, if you float your image to the right (and the text goes to the left, you should use something like: margin: 0 0 10px 10px. Be sure to always specify px unless the number is 0.

These bits of code are CSS and are explained in detail in my book, HTML, XHTML, and CSS, Visual QuickStart Guide, Sixth Edition, published by Peachpit Press.

P.S. That's my llama! Her name is Rosie.

P.P.S. You can find the first three parts of this series on Blogging Flickr photos here, here, and here.

Friday, November 7, 2008

How to add comments to a blog post

My mom asked me the other day how to add comments to this blog. I realized it wasn't as straightforward as it should be to add comments to Blogger posts. So, I thought I'd give a quick tutorial here.

The most confusing thing is that on the main page of a blog, where several blog posts are listed at once, it's not at all obvious where to go to post a comment. In fact, it's downright hidden. But it's there if you know where to find it: It's the place that says the number of comments. Here's what it looks like on my blog:

Add comment

And here's what it looks like on fivethirtyeight, another Blogger-based blog:

Add comment 538

So, to add a comment, you click on the place where it says "0 comments" or "248 comments" or however many. And then you'll see something like this:

post comment box

If you just see a long list of comments, but no place to add yours, like on fivethirtyeight's site, then scroll on way down to the bottom until you see where it says "Post a comment":

Post a Comment 538

When you click "Post a comment" you get the box (like the one shown above on mine) where you can actually add the comment--though it's down at the bottom of the page.

post comment 538

Once you get here, you can add your comments in the box at the top (under Leave a comment). You can even add a bit of formatting... add <b> before and </b> after text you want bold, the same thing with the letter "i" if you want italics, and if you want to add a link, add <a href="the page's url here">the clickable text here</a> Be careful with all that punctuation, it's all required. (To get the URL of the page, just go there and copy the address from the bar at the top of your browser window.)

Some blogs require that you sign in, some don't. Some require you to have a Blogger account, some don't. It's all up to the person who creates the blog. (On this blog, you can post comments anonymously, though I moderate them all before making them public.)

One more thing, if you're viewing a blog post's individual page... perhaps you clicked there from the navigation bar on the right, or you followed a link from another site, you'll see the Post a comment link at the bottom of the post automatically.

Further, like fivethirtyeight, some people have set up their blogs so that when you click the "n comments" link, you go to the post's individual page, not the Leave a comment page. In that case, just scroll down to the bottom of the list of comments and find the Post a comment link. That'll always bring you to the "Leave a comment" box.

Wednesday, November 5, 2008

The American Dream

I was greeted this morning with an email from friends in Barcelona congratulating us on our new president. I felt so happy, so proud that we did it. Throughout the day I got several more congratulations from Catalonia and England. I realized how much the rest of the world has been on tenterhooks, right along with us.

Later I was listening to NPR and they were talking about Obama's upcoming agenda including universal healthcare and energy independence and I just had to smile. Imagine fighting for universal healthcare and energy independence! There was an interview of folks in a restaurant in Chicago where a man said this was the most important event since Lincoln signed the Emancipation Proclamation. Everyone was happy.

I am happy. As I wrote my Catalan friends, this is the America that inspires me. The America where you can follow your dreams. Where you can do crazy things like have a cow and pigs, carve gourds, and write computer books.

And even though I don't fully believe in the American Dream, sometimes it works anyways and makes people believe they can follow their dreams. Which is almost as good, because believing is half the battle. If you try, you're that much closer to making them come true.

Mostly though, I am so happy for my children, who were able to witness our country, our whole country, voting for the candidate who inspired them instead of making them afraid.

Monday, November 3, 2008

Plucking Chickens

Chicken Plucker

We finally slaughtered all of our meat birds about a week and a half ago. It's not a fun job, but when it's done and you have 30 delicious organic chickens in the freezer, it feels worth it.

Folks often ask how we do it, so I'll share the process here.

We start by getting all the material ready. DH sharpens the knives and hangs three ropes from a rafter behind the manure barn.

My station is at the edge of the compost pile. I set up an eight-foot folding table with the plucker on top. And then on the ground I have a portable burner where I bring a large lobster pot full of water up to about 150°F. I have a digital thermometer that I keep in the water. The temperature should remain as constant as possible. Throughout the day I continually turn the burner on and off to maintain the right temp.

We also have a large bucket of ice water for cooling down the chickens, once plucked.

Once we're all set up, the process goes like this: DH gets a chicken from the coop. He hangs it upside down by its feet (using a slip knot so he can do it with one hand). He then slits the throat to bleed the chicken without cutting off its head. The chicken loses conscience almost immediately.

While that chicken is dying, he goes to get another.

When the chicken is dead, he brings it to me. I dip it into the scalding water for about 30 seconds (longer if the water has cooled off, shorter if it is too hot). As a test, I pull off a bunch of feathers from the legs. If they come off easily, it's ready. If bits of the feathers stay in, I dip the whole chicken back in for 10-15 more seconds.

Then I hold the chicken up to the plucker (that weird contraption in the photo above) and gently let the plucker rub against the chicken. The feathers come flying off, towards the compost pile. (If the skin comes off, it means the water is too hot, or I've left it in too long. If the feathers don't come off, the reverse is true.) I try to take advantage of the momentum of the plucker to hold the chicken at all the proper angles for the feather to come off all over. It takes about a minute or so to do the whole chicken.

Then I hose it off and put it in the bucket of ice water. Later DH will retrieve the chicken, bring it inside and cut it into pieces. He has a new way of taking out the intestines and what not which seems great... Instead of cutting around the anus and sticking his hand in and pulling (which is the way we learned), he cuts off the legs and wings, and then cuts around the back and breasts. He can then open the chicken laterally and pull out all the innards much more easily. He then cuts the livers free of the gall bladder (without cutting it or letting it spill its bitter contents on the meat).

We use freezer bags to collect a meal's worth of legs, or breasts, or whatever, and a sharpie pen to label them. We leave the meat in the refrigerator for at least 24 hours before freezing. I think this makes it taste better and have a better texture.

Last time, we tried giving Laika the heads, but she wouldn't eat them. This time, we separated the necks from the surrounding skin (and head) and gave them to her that way. She loved them. She also eats the feet and the wingtips.

And that's it, over and over for about 4 hours.

It's really no fun but we generally only do it once a year and then we have this amazingly tasty free-range, organic chicken! Yum!

Sunday, November 2, 2008

iPhoto Book Themes

If you're a Mac user and an iPhoto fan, you've probably thought about printing out some of your photos in a book. I highly recommend it. Ever since my friend, Nancy Bea, lost 19,000 pictures when her computer got accidently bumped to the floor, I've been more and more convinced that the only good backup is a printout.

I always find it hard to choose an iPhoto theme... partly because Apple only shows you a very small portion of what the interior pages of any given theme might look like. Some themes let you have a lot of text, some don't let you have any, some let you have one or two photos per page, some let you have many more, even up to 32.

But how to tell which iPhoto theme is the one you want?

Use my handy iPhoto theme wiki! I give a detailed description of each theme, including use of text, and number of photos. Then I actually show you what each page of each theme can look like, depending on the orientation of the photos you choose.

iPhoto Book Themes site

Hopefully, you'll find that it's a helpful tool for making your iPhoto books. Hey, the holidays are coming.

You'll also note that this site was created with PmWiki... although it's not currently open to the public for editing, it certainly could be. I used the wiki software to make it easy to create a lot of connected pages without having to write all the code by hand.

More of my books