MS completed, plans for next semester

I'm happy to report that I passed my thesis and oral defense examinations and will be receiving my MS this month! A copy of my thesis is available on the MAHI Lab website. Next semester I will be studying abroad at the University of British Columbia, working on the Haptic Creature project with Karon MacLean. I'm very excited to get to explore a new city (especially one so close to the mountains!), and to try my hand at a new project.

How to market yourself online and build a personal website

A few weeks ago I taught a 3-hour mini-course for the Rice Center for Engineering Leadership titled Marketing Yourself Online: Building Your Personal Website. Feedback was very positive, so I thought I would post a copy of my slides for anyone who's interested (unfortunately no recording was made). Note that some images are copyrighted by other individuals and used in this presentation in accordance with Fair Use doctrine.

"One click" duplication of a live Drupal site to a development site

I've come up with a nice script and group of settings that allow you to easily duplicate a live Drupal site. This is very useful if you've got a development site that perhaps you want to "reset" to the current version of the live site after you've finished development of a feature or (more likely) borked the installation completely. The general strategy is to dump a copy of your live db, empty the dev db, and import the data from your live db, and finally follow the same procedure for the associated files.

Manage multiple Drupal sites efficiently using Drush and "proto-sites"

While the amount of documentation and support surrounding Drupal as a whole is fabulous, there's a surprising dearth of information regarding management paradigms. Lots of people talk about small parts of the puzzle, like using SVN and vendor branching to track custom changes to modules, but there's not a lot of talk about how to efficiently manage large numbers of Drupal sites. So I figured I would share the architecture that I came up with, in the hopes that it'll help other maintainers as well!

Welcome to the blog (and new website)

It's interesting how popular blogs used to be, and how they've almost completely fallen out of fashion (at least among my generation) in favor of 140-character status updates, "likes", and retweets. I think having a little more space to share a story or form a cohesive argument is kind of nice, so I'm going to give it a shot once more. Also, as more of my friends are graduating, transferring, or generally fleeing Houston to new and greener pastures (and honestly who could blame them!), many seem to drop off the face of the virtual planet.

How Contexts will rock your Drupal world (and why they should be in core)

In case you've been living under a rock for the past two years (or slaving away in a dark underground lab like me) and haven't heard about Contexts, give me two minutes of your time and allow me to explain why they rock and how they fill some gaping holes in Drupal core. The easiest way to think of Context is like Triggers and Actions for your theme - except instead of Triggers and Actions, you have "Conditions" that define a context and "Reactions" to take when those conditions are met.