The Central Hub of Toad Knowledge

Fixing a segmentation fault in Drupal

"[notice] child pid 45617 exit signal Segmentation fault (11)": This is usually the start of a very bad day. Since a segfault is a low-level error in native machine code (in this case the PHP interpreter), many typical debugging techniques don't apply. Today I decided to try something new:
By Dylan Tack, Director of Technology

Metal Toad at the Digital PM Summit

Metal Toad is excited to be attending the first-of-its-kind Digital PM Summit coming up during the middle of October in Philadelphia! We're sending 3/4 of our PM team, including Katie, Matt, and myself.
By Adam Edgerton, Director of Project Management & Operations

The Emmys Chooses Drupal 7

For those who watched the Primetime Emmys last night the content management system (CMS) used to support the website probably didn't matter all that much. That's because the site just worked, despite a heavy load of over 3 million page views (with a peak in a single hour of over 500,000). Behind the scenes the site is the result of a lot of hard work from...
By Joaquin Lippincott, President & Founder

Metal Toad and Kapow Launch Ken Burns America

Ken Burns America launched this week on the PBS.org website. In partnering with Kapow, Metal Toad took on the task of modifying and patching the NotreDAM Digital Asset Manager to meet the content repository and asset management goals of the project. From there, we created a lightweight client API to expose NotreDAM's data to the project's Django-based websites, built "NotreDAM Light", an asset browser for Django, integrataed Solr for search, and assisted with SEO and Django app development…
By Joaquin Lippincott, President & Founder

Upgrade to PHP 5.5 on OS X 10.8 Mountain Lion

The following is a rapid installation of PHP 5.5 on OS X 10.8. This compiles 5.5 from source, including two required libraries and finding the appropriate configure command. If you are comfortable at the command line, and especially if you are comfortable compiling your own binaries, then this should take no more than 30 minutes, with the majority being the actual PHP compilation. Let's jump right in. Here's an overview of the steps:
By Chris Trahey, Director of Strategy

Keeping track of page load times in Munin

As part of the services we provide for some of our clients, we monitor web page load times. The Munin plugin we were using at the time was this outdated shell script. It worked fine up until we were monitoring lots of urls. If one of those urls took too long to load, it caused the entire plugin to timeout. This sort of timeout would lead to a slew of warning/critical emails from Munin. Oh, and it also only loaded just the html, none of the additional resources a normal browser would grab.…
By Chris Svajlenka, Development Team Lead

Bucket policy for friendly file exchange on Amazon S3

We sometimes need to exchange huge files with our customers and partners (too big to fit within the typical storage limits of Basecamp, or the free tier on Google Drive, Dropbox, etc). There are now many user-friendly client apps for Amazon S3. I like Cyberduck. Combined with AWS's flexible policy system, setting up a transfer bucket is a snap.
By Dylan Tack, Director of Technology

The Project Manager Bill of Rights

Following my last blog post on PM Retention, I worked with our team and set about about putting together a Project Manager Bill of Rights to live next to the existing Developer Bill of Rights. The outcome is a ten-item list that guides the organization with regards to the breadth of the PM role, and the rights and respect that our PMs deserve. The bill of rights reads as follows (with notes added to explain each):
By Adam Edgerton, Director of Project Management & Operations

Regex for Quoted String with escapable quotes

This post is a long-format reply to Jonathan Jordan's recent post. Jonathan's post was about the non-capturing backreference in Regular Expressions. He and I are both working a lot in Behat, which relies heavily on regular expressions to map human-like sentences to PHP code. One of the common patterns in that space is the quoted-string, which is a fantastic context in which to discuss the backreference (and also introduce lookarounds).
By Chris Trahey, Director of Strategy

Puppet Labs Chooses Drupal

By Joaquin Lippincott, President & Founder