Four Kitchens blog: March, 2009

Project Manager Shannon Hinshaw's "SCRUM-ptious" birthday cake

We at Four Kitchens are devotees of the scrum method of development. When we celebrated the birthday of our Project Manager and Certified Scrum Master Shannon Hinshaw, we could think of nothing more appropriate than a SCRUM-ptious cake:

Task: Eat the cake (999 points)Task: Eat the cake (999 points)

The Transatlantic Tacky Swag Swap has begun!

Web Chef Aaron Stanush "mugs" for the camera. Get it?Web Chef Aaron Stanush “mugs” for the camera. Get it?

Drupal themer extraordinaire Morten.dk, currently ranked #7 on Google for “king of Denmark”, has been bugging us for a Don’t Mess with Texas mug. Well, “bugging” may not be the right word. “Profanely demanding” is more appropriate.

Finding one was surprisingly difficult. While (lesser) cities like Dallas and Houston are lined with shops hawking rattlesnake heads and scorpions encased in plastic, there doesn’t seem to be much demand for Texas memorabilia in Austin.

Except at the airport, where you can find your name stamped on a fake Texas license plate or worn chunk of fencepost.

So, after scoring the great city of Austin for tacky crap, we proudly present Morten.dk’s Don’t Mess with Texas mug:

Morten.dk's Don't Mess with Texas mugMorten.dk’s Don’t Mess with Texas mug

The hidden costs of proprietary software: #2 your vendor is an adversary

unhappy DRM face

On December 2, 2008, customers of SonicWALL woke up to broken firewalls. This wasn’t the result of a real problem in the firewalls; it was a result of SonicWALL’s DRM server malfunctioning and deactivating all customer firewalls.

The relationship between customers and vendors of proprietary software is fundamentally adversarial: proprietary vendors have business models where customer activity (like installing Windows on a desktop) requires payment to the vendor. Because the activity happens entirely on the customer side and paying the vendor conflicts with the customer’s desire to save money, proprietary software vendors don’t trust their customers to pay them.

Bazaar 1.13 RPMs for RHEL 5 and CentOS 5


Fresh packages, 64-bit only this time. I can make 32-bit ones if anyone would like some.

BarCampAustin 4 graphics are awesome

BarCampAustin 4 graphics have arrived, and they are totally rad. Congrats all around to the fine folks who made them happen.

DJ Dillo: BarCampAustin 4 logoDJ Dillo: BarCampAustin 4 logo

"CVS Instructions" tab now available for all Drupal.org projects

"CVS Instructions" tab on the Author Taxonomy moduleCVS Instructions” tab on the Author Taxonomy module

Drupal’s CVS is now more user-friendly!

As part of the Documentation Sprint at Drupalcon DC 2009, web chef David Strauss built a “CVS Instructions” tab for Drupal.org. The tab provides concise, step-by-step instructions on how to check out, commit, patch, tag, and branch any module or theme. A simple drop-down box at the top of the page allows the user to select the version of the module or theme they want to work with, and the instructions are updated to display exact, copy-and-pastable commands.

The hidden costs of proprietary software: #1 optimizing around licensing

Articles abound about the “hidden costs” of using free, open-source software. Many of them are sponsored by companies with a stake in their own proprietary solutions — and they’re responding to the threat of increasing enthusiasm about free alternatives. Some of the claims are legitimate; others are FUD.

Here at Four Kitchens, we’re on the opposite side. We advocate using free software like Drupal (and our own free-software derivative, Pressflow) whenever possible. When it’s not immediately possible, it’s a hard decision between writing a free solution and going proprietary. We enjoy the freedom of free software for many reasons, especially because it doesn’t feel like we’re fighting the company behind the software in order to get the most out of it.

What makes Pressflow scale: #1 faster core queries

Drupal has a number of queries with unfortunate scalability profiles.

URL alias counting (one instance in core)

The biggest offender in Drupal 5 and Drupal 6 is the query counting the number of URL aliases: SELECT COUNT() FROM url_alias. This query dates back to when nearly every Drupal site ran on MyISAM, which is important because MyISAM keeps an exact count of the number of rows in every table, making SELECT COUNT () FROM [table] an O(1) (read: fast, constant-time) operation.

Contact Four Kitchens

Download Pressflow

Pressflow makes Drupal scale