Sit down; Be Quiet; and Think

As humans, we think all the time. We think about needing to eat. Or that we need to push the brake pedal if the light is turning red. There are countless more examples of this type  - mundane and undirected - that dominate the percentage of our waking thoughts. Now, I'm not saying there is anything inherently wrong with this. We certainly need to eat, and we need to stop our cars at the appropriate time.


Twitter Bootstrap Nav Tabs That Overflow To A Dropdown

Recently, while converting a site to use Twitter's Bootstrap CSS, I needed to handle there being too many menu tab options to fit in the horizontal space. Not finding any easy solutions, I wrote the following, which make options that don't fit on one line show in a dropdown at the end of the menu. If all options fit, the dropdown isn't shown.

Sample markup and the Javascript necessary to make it work is included below. To use this, place your current list items in place of mine. Note that they must me put in two places - at the top, and then duplicated in the dropdown. Then, include the javascript below the content.

Yes, there are ways that require less markup to do this, but this solution fits my needs - no need to over optimize.

Patricia's Songs

I wrote and sang this for Patricia on our wedding day.

X9 SDK Vendors

The main vendors who provide SDKs to create x9 files (used for banking remote deposit) are:


Run cron for all Drupal 7 sites in an install

Drupal 7 introduced a unique key that must be included when requesting the cron.php file. This presents a problem when you want to script the running of cron for all sites in an install. You don't want to have to manually add new sites and their keys.

I've amended my old Drupal cron script to lookup the key for each site and use it when requesting the cron.php file


Book Review: The Compound Effect

I've been reading a lot more recently - every day in fact. I'm going to try to post short summaries/reviews of the books I read and the things I glean from them. I'm starting with a book I received for Christmas from a good friend.

PHP 'readfile' and corrupted zip/gzip/binary files

For a recent project, I needed to create a large batch of files for the user to download all at once. Creating a zip/tar was of course the solution. However, the file was always corrupted when downloaded and opened, but it was fine when read on the server.

It turns out that PHP was outputting some extra data before readfile() was called, so, I needed to clean the output buffer first, using ob_clean();



My Father's Eulogy


Thank you all for coming. We’re here to remember the life, and celebrate the ultimate destination of Sid Seagraves (my father). He was born on June 20th, 1946 in Charleston WV, and Died from natural causes at his home on Thursday, May 5th. He is survived by his Son - Me, His brother Eddie Seagraves and his wife Sue; and his sister Jane, and her husband Bill.

You Are, You Are

An original song I wrote with some assistance from Jason Pamblanco. Feedback is very much welcome!

Chord Chart
Instrumental Tutorial Videos


"Search in the Biblical Domain" - presentation - BibleTech: 2011

Here are the slides from my talk at BibleTech:2011. I'll be adding audio and video as I get it.