Author Archives: Scott Ruthfield

Introducing Jiffy: Real-World Browser Instrumentation and Reporting

During 2007, we shipped a lot of new features on WhitePages.com and other sites in the network. While each of these improved the functionality and usefulness of our service for our customers, we weren’t doing a great job tracking the performance impact of these changes – and so our site was getting slower. Performance is a feature too and we had ignored it.

So we grabbed Firebug and started loading our pages over and over again, looking for patterns. This anecdotal foray just sent us on wild chases, so we backed up and looked for a system that would help us see what our customers were seeing, and allow us to measure every little thing – when individual third-party components loaded, how long it took the search forms to render, etc.

We didn’t find one. We found some third party tools from the usual suspects that sell performance monitoring services – we even implemented one of them – but we found that they weren’t flexible enough to give us the data we needed, slowed down our site, and weren’t real-time enough for our taste.

So for Hack Week, Don & Jack hacked together a project that would log how long it took to render each page in the proxy logs, and then report on the performance. Later in the year, Ben came on board and added the ability to capture individual moments on the page and write those to the proxy log as well, Devin designed the database schemas and rollups, John and Travis made sure it worked, and I… did some things. So all told, we built this thing that we now use that tells us how long some things take to happen. No single part of this system is rocket surgery, but the entire combination is truly something that we haven’t found in the market from anyone – paid, free, self-hosted or service-hosted. We’re proud of the work and already see benefits from it.

Additionally, late last year, we were discussing how we wanted to give back to the open source community: as a LAMPP (Linux, Apache, MySQL, PostgreSQL, & Perl) shop, open source systems have played a core role in our company’s technology stack. Individuals on the WhitePages team have occasionally contributed to projects, but we didn’t have anything significant that we as a company brought to the table.

So today, we’re releasing that performance toolset as an open source project, under the Apache 2.0 license, with the genuine hope that other web publishers get benefit out of the ability to gather real-world measurements from all of their users about the timings of individual aspects of their pages. Jiffy is the name for the toolset. There’s a whole other blog post about the naming process, but a jiffy is a standard term for a small unit of time, and that’s what we’re helping you measure.

We announced the public availability of Jiffy this morning at the O’Reilly Velocity Conference, with a Plenary session following Bill Coleman (the B in BEA Systems – I think of myself as the R in WhitePages.com) and a new release from Keynote Systems. The code is linked from code.whitepages.com (also a new site for us) - the slides are there as well, the video will be available soon. We’ll have more to say about Jiffy in the upcoming days, but in short – take a look, let us know if you have questions (you can use the Jiffy Google Group so everybody can see them, but of course we’ll be here too), and we look forward to seeing how others use Jiffy for their sites!

On The Road Again: Summer Conferences

The summer seems to be the season of tech conferences. Given that we’ve been beset by the June Gloom, maybe that’s not so terrible. Anyway, our international tour of mystery is underway:

  • Dan went to the Web 2.0 Expo, shared a table with Mashery, and talked about our API
  • Devin, Dave, & See Sing went to lovely Ottawa for PgCon, and Devin’s been deputized to start a Seattle PostgreSQL user’s group.
  • Josh & Tye are heading to YAPC North America this week (which we’re sponsoring - stop by our booth). Josh is our first speaker of the summer, talking about the Perl 5 VM - A Symphony of Horror.
  • A handful of us are heading to the inaugural O’Reilly Velocity conference, where I’m introducing Jiffy (more on that in a few weeks) and Jack is doing an Ignite talk about storage.
  • At least two people are making the yearly pilgrimage to OSCON.
  • Two of us will be at Seattle conferences - I’m heading to Gnomedex and Tyler will be at Web Design World.
  • … plus more to come.

So if you see any of us out there, be sure to say hello. We’re fairly good-natured, even if crowds frighten us.

See you in the lobby!

-Scott, who really should be writing his talk right now

Welcoming Snapvine

As Alex discusses in our corporate blog, today WhitePages.com is announcing the acquisition of Snapvine. Snapvine’s a leader in building online voice applications for social connection, and we’re very excited to bring the companies together to help improve the Find & Connect experience around a fundamental human need.

Like most acquisitions of this type, this is primarily about accelerating our product development by bringing on a talented, dedicated staff which shares our mission, and the technology platform and applications they’ve built.

We share a number of common traits with the Snapvine technology team:

  • A commitment to an open-source technical stack
  • Experience scaling to millions of users, whether it’s responding to search engine queries over a sparse matrix or serving media files across thousands of MySpace pages
  • Obsession with high-availability, low-cost operations (and, coincidentally, data centers whose distance from each other can be measured in feet)
  • Hiring great people and giving them opportunities to impact the entire business

The Snapvine team also complements our team well:

  • Snapvine brings expertise in communications, especially VoIP, with a leading-edge Asterisk-based software call control stack
  • Both companies build their core technology in dynamic, TMTOWTDI languages - Perl for WhitePages, Ruby for Snapvine: the Perl Foundation says Ruby is hot and sexy - how could we avoid it?

We’re very excited to welcome our neighbors to the south - 0.9 miles south on foot, to be precise. We look forward to working together!

Ducati Delivers

About two months ago, I mentioned the Ducati project, with the hard hats and hanging cables necessary when camping out on an in-construction floor.

I’m pleased to announce that Ducati shipped last Thursday, on time, thanks to the great work and heroic efforts of a core development, project management, design, and operations team. We even moved the team to cleaner, if less bright, environs once the conditions became unsafe for human habitation.

So what is Ducati? It starts as Add Your Cell Phone, which Alex introduced on our main blog and which you can do here. It’s the first time that we’re enabling our millions of searchers to explicitly improve the results that they get, and allowing people who want to be reached (and know that WhitePages.com is the most common place people look for other people to contact) to provide their information in a fast and simple process. We’re going to continue to improve this product and ones like it over the coming months.

This project also had a number of interesting technical components, including

–Our first read-write, immediately-available database. Our requirement was that by the time you committed your listing and searched for yourself, you would find it - immediate feedback is the key for users to think “it’s working.”

–Our first use of YUI’s JavaScript libraries, both for the DOM and for Shadowbox, Michael J.I. Jackson’s great lightbox implementation with YUI integration. It’s our long-term plan to standardize on YUI and some carefully-selected extensions, and this is a great start.

–The introduction of ReCAPTCHA, which we first tested during Hack Week.

–An obscenity filter best not discussed in polite company.

We’ve been running in production for a week with no hiccups or customer service complaints. More to come!