Five Pounds of Flax

Every culture has a burrito.

Fedora Core 4, Apache2, Ruby on Rails and FastCGI

Thursday, April 27, 2006posted by Michael Rothwell @ 10:33 PM

FastCGI (or in my case, mod_fcgid plus the FastCGI dev kit) runs the script public/dispatch.fcgi in your Rails application. If you're having problems getting it to run right, try this.

The dispatch.fcgi script normally looks like this:

require File.dirname(__FILE__) + "/../config/environment"
require 'fcgi_handler'

Edit it so that it looks like this:
require File.dirname(__FILE__) + "/../config/environment"
require 'fcgi_handler'


That one change might make it work right for you.

Macbook Pro heat

Sunday, April 23, 2006posted by Michael Rothwell @ 9:05 AM

Dad and I both have the 2.16GHz version of the Macbook Pro. It gets really hot, both on the bottom and on the top above the function keys. The fans never seem to kick on noticeably, but I've heard of a "jet engine mode" that they can go into occasionally. It would be nice to knock the fan speed up just a little to cool off the Macbook, so it'll be comfortable while on a lap. Alternatively, perhaps there's some sort of add-on I could use, like adhering a custom-fit rubber mat to the bottom side to shield flesh from the heat dissipated by the aluminum case. If you have any ideas, let me know.

UPDATE: follow-up post.


Saturday, April 22, 2006posted by Michael Rothwell @ 8:10 PM

I am using two custom ringtones on my Treo:

  1. This Foamy ringtone ("follow the sound of my voice and kill whoever's holding the phone", wav and mp3) plays when Sal calls me.
  2. This ringtone ("core meltdown in 10 seconds", wav file) plays when someone calls me from work. is moving

posted by Michael Rothwell @ 8:02 PM

The existing hosting situation is getting to be slower and slower:

$ ping
PING ( 56 data bytes
64 bytes from icmp_seq=0 ttl=42 time=1515.968 ms
64 bytes from icmp_seq=1 ttl=42 time=1455.347 ms
64 bytes from icmp_seq=2 ttl=42 time=1207.031 ms
64 bytes from icmp_seq=3 ttl=42 time=1288.661 ms
I just signed up for a new dedicated server at ServerPronto, which is also the new home of In fact, it was Zappe who referred me there.

$ ping
PING ( 56 data bytes
64 bytes from icmp_seq=0 ttl=42 time=65.153 ms
64 bytes from icmp_seq=1 ttl=42 time=64.955 ms
64 bytes from icmp_seq=2 ttl=42 time=47.836 ms
64 bytes from icmp_seq=3 ttl=42 time=52.610 ms

... performance is a little better at ServerPronto, it seems. They indicate that each server is connected via 100MBit ethernet to their redundant peered internet connections. That's certainly a step up from a 10mbit hub and two pigeons.

Photobooth is fun

posted by Michael Rothwell @ 8:00 PM

My enormous cranium and I showing off the new Macbook at work:

AppWatch vs the Apple Menu

Wednesday, April 19, 2006posted by Michael Rothwell @ 10:40 PM

Appwatch offers a menu of "recent applications".

As it turns out, so does the Apple Menu:

At the moment, I cannot explain the differences in the two lists of "recent applications".

Update on "optimum settings" for Eyehome use

posted by Michael Rothwell @ 10:23 PM

As an interim follow-up to Part 1, here is some information about producing good-quality, Eyehome-compatible video files.
  • "Actual Size" is the best "video scaling" option on the Eyehome. It avoids unnecessary scaling and distortion of the video. For video that's not a "perfect" aspect ratio, the Eyehome will produce fat or thin people in the "fit" and "16x9" settings.
  • AVI (MPEG4/DivX video + MP3 audio) is the best format for the Eyehome. It will play MPEG4 (MPEG4 video + AAC audio) files, but the sound will eventually get out of sync and attempting to fast forward will often crash the eyehome box.
  • Handbrake does a great job encoding video. I like that it gives me control over cropping, scaling and de-interlacing. The settings I am currently using are:
    • Average bitrate option set at 2048
    • ffmpeg encoder
    • AVI (MPEG4/DivX video + MP3 audio)
    • 2-pass
    • cropping and scaling "to taste". I like to end up with a frame size in the neighborhood of 704x400, 720x400, or 688x384. "Anamorphic" and 4:3 (NTSC) sources don't always fit in that mold. Encode, and test on the Eyehome to ensure that you get no funny scaling. You may need to leave on some "black bars" (e.g., ease up on the cropping some) to get a desired playback result with some source material.
    • It is generally best to crop off all black borders, including "half-black" border regions. This produces a lower final file size and fewer artifacts. See previous bullet.
    • De-interlacing as needed.
  • If you have audio equipment with optical in, pass through the original AC3 audio if possible: you'll end up with better audio and retain the surround channels. I do not have any optical-capable audio equipment, so I re-encode all of the audio as MP3 or AAC. Unfortunately, the Eyehome cannot (or will not) decode AC3, but it will pass it out the optical port.
For a good discussion of how to create high-quality MPEG4 video files (and what all the knobs and dials are), read this article.

17" powerbook issues - timing is everything

Tuesday, April 18, 2006posted by Michael Rothwell @ 8:30 PM

I have a 1st generation 17" G4 Powerbook that has developed two issues.

Problem one:
There seems to be a loose connection somewhere that prevents proper charging of the battery. It's currently reporting that a full charge will be achieved in 1014 hours, which seems a little long. Moving the powerbook around results in the green/orange ring around the power connector plug flickering between orange and green, as if the connection is being made and then broken. Pressing the button on the battery causes the lowest LED indicator to flicker. Sometimes, I can get a full charge and use the powerbook away from the AC, but not always -- not even more than half the time.

Problem two:
The "d" key occasionally "sticks", although not physically, and produces multiple "d"s when typing. The apple support guy on the phone tonight suggested this might be "a software problem". He said the battery funkiness might be as well.

According to Apple, my Applecare support expired a month ago. Doh! I thought waiting until the 11th months would result in an extended warranty, but I was wrong. I probably just didn't read something carefully enough.

If you have any suggestions about how to fix these issues, email me or post in the comments.

This blog needs a new design

Sunday, April 16, 2006posted by Michael Rothwell @ 3:29 PM

The title says it all. I've been meaning to do it, just as I've been meaning to blog more. Well, no more excuses. I'm going to put my new MacBook Pro to work today.

Ugly old design:

"Algae". Ick.

UPDATE: Part-way there. It's blue, and flax-based. The layout works ok in Firefox and Safari. Internet Explorer is, as usual, causing problems.

AppWatch 1.01

Saturday, April 08, 2006posted by Michael Rothwell @ 4:53 PM

AppWatch 1.01 is a Universal Binary.

For a description, see the previous post; there are no new features other than the hotkey, which is now shift-command-escape, because Front Row uses command-escape.

Download version 1.01