drupal

What I Learned Today: Drupal Behat Scenario Cleanup

I've been doing a lot more Behat testing recently. As my tests have gotten more complex, I've discovered that it was only a matter of "luck" that my earlier tests were properly cleaning up after themselves. What I mean, is that during my tests I fill out and submit a node form, checking that I successfully created it and that the appropriate users can see it. After each scenario you want to clean up any data that was created so you can run the test again and get the same result.

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...

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).

Samsung Music Chooses Drupal

samsung music

SamsungMusic.com (formerly Samsung Music Hub) launched earlier this year pushing the boundaries of HTML5 and responsive web design. It was designed to work (obviously) across a large number of Android devices, with the animations taking full advantage of the built in GPU acceleration available on many mobile devices. The design was done by our awesome partners at Oakland-based Emotive Brand.

Drupal Debugging: Clues from the Database

Have you ever chased a bug down a rabbit hole and spent a few hours down there only to come back up for air thinking "why, oh why does the bug taunt me"? If you have then you know that every clue can count. Any given clue can send you on the shortest path from A to B, or it can send you spiraling. When looking for clues always remember that your code is not the only place to look. Sometimes valuable hints can be gained from the database as well.