Better Know a WebDev: Laura Thomson

As we wind our way through the warbling webdevs, this week we come to Laura Thomson, who literally wrote the book on PHP and MySQL web development. Laura has worked on many projects within Mozilla, and now, she’s… well, I’ll let her tell you.

What do you do at Mozilla?

I’m the Webtools Engineering Manager.  Webtools looks after the webapps that are used by Mozillians, with a focus on tools that are used to ship Firefox.  This means our projects range from things as big as Socorro (crash-stats.mozilla.com, crash analysis data) through to writing a Bugzilla plugin for wiki.mozilla.org.  We work with a lot of different technologies: PHP/Python/Node/Perl/MySQL/PostgreSQL/HBase/Redis/etc) and with a lot of different teams inside Mozilla: IT, Engineering, RelEng, and QA to name a few.

Any fun side projects you’re working on?

Right now I’m working on the 5th edition of PHP and MySQL Web Development.  Revising books is always a cross between great fun and pulling my hair out.

How did you get started in web development or programming?

I started programming in the fourth grade.  A nearby school had an Apple II, and they were bussing kids in the district who were good at math in once a week to learn to code in LOGO.  Everybody else there was in the eighth grade.  (I was a total math nerd so I got to go along.)

Web development started when I was in college and Mosaic came out.  As soon as I saw it, I knew this was what I wanted to do.  I wrote my first CGI scripts later in college, in C, and then moved on through Perl to PHP.  (These days it’s PHP and Python, for the most part.)

How did you get involved with Mozilla?

I was introduced to former VP of Engineering Mike Schroepfer (now at Facebook) by a mutual friend and hired as the third webdev in 2007, after Wil Clouser and Mike Morgan.  I hadn’t been involved with the project before that, although I had long been a Firefox user.

I remember when I interviewed most of the interviews were with non-webdevs for obvious reasons, and Dan Mosedale said “Do you know C++?  I’d rather ask you about that than webdev,” and then gave me a series of questions about Duff’s Device and other such fun things.

What’s a funny fail or mistake story you can share?

I have a few of these, but this is my favorite.  In 2010 we released a version of Socorro (1.8) that we ended up rolling back, after 72 solid hours of trying to fail forward, due to a number of performance problems.  After 24 hours, people started bringing us food – donuts, bagels, casseroles – and then I realized our release had died and we were at a wake.

The version number was retired, like a flight that crashed, and will never be re-used.  I learned a huge amount from that disaster, and it began the project’s epic journey toward test automation, continuous integration, configuration management, and overall sleeping well at night.

What’s something you’re particularly proud of?

I am Australian, so I squirm at this question.  (We specialize in self-deprecation.)  Having said that, there are three things, in no particular order: 1. Making Socorro happy.  2. Having written the all time best-selling open source programming book.  3. My two year old daughter, Kate.

What’s coming up that you’re excited about?

B2G.  I think it’s amazing.  I hope it smashes holes in the silos that are growing up around apps and user data, giving control back to the users.  It’s also super exciting on a technical level.

What question do you wish you’d been asked?

“Five years is a long time to stay at one company – what keeps you at Mozilla?”

The same things that brought me here in the first place.  Really good and genuinely nice people, hard projects, and most of all the mission: to serve and protect the Open Web.

Deep dish or thin crust?

I don’t often eat pizza, but when I do it’s thin crust.