Thursday, November 29, 2007

the right tools

Have you ever tried to use Open Office's "data pilot" feature? It's supposed to be like Excel's pivot tables, but OH MY GOD. I wasted 2 hours on it today. Basically, we're a fast moving software shop and I want to keep tabs on our bug open and bug close rate. Traditionally, software test engineers generate little counts like this- an imaginary "bugs openedy by component" table.
Component NameTwo Days agoYesterdayToday
Product Component X2817
Product Component Y234
Product Component Z330
Looking at that table, I would see that component X has been getting more unstable, while Y and Z have been stable. So if we're going to launch, I need to make sure that more regression tests are run on X and it receives more attention.

You generate these tables by dumping a list of bug IDs by component and Open Date, then making a Pivot Table. Easy. Well... I couldn't make Open Office's "data pilot" give me counts like "8" or "3". It had 100s of columns, each with a date at the top and a "1" somewhere down in the row that corresponded to a component. That's not that useful! I want rolled up counts! And yeah, I was marking "count" on the bug IDs. Oh well... We made the table today in about 3 seconds after pulling the data in Excel.

I was a little bummed out that we'd need to be using Excel for this until I got on the train today. I even looked online to see if there were any online pivot table generator websites or open source tools. And checked AppleWorks (I was desperate).

Or rather until NJT made me sit around on a platform at Penn Station waiting to get on a train (they called our track number and then 5 minutes later a train pulled up). While I was sitting around down there something in the back of my mind started saying "hey... this reminds you of data you've dealt with before". Well, yes. This is why I adore perl, gorgeous little data munging language that it is.

1. read in data
2. split lines so you have $date, $component, $bug ID
3. create %data{$date}{$component}=$count
4. print out your perl generated pivot table
5. profit

I felt like someone all of a sudden handed exactly the right tool. Bliss. And I kind of feel bad for people who want their data pivot tabled who don't know perl (;

No comments: