Monday 10 October 2011

Mark as Duplicate

Among the few people who have access to errorception right now, some of them are very high traffic sites. More traffic leads to more errors recorded, for obvious reasons. That's awesome because it's a great way to improve the site's UX. However, it had become a challenge to manage these large numbers of errors. It's only human nature that when there's a lot of noise you start missing the real signals. Something had to be done to manage errors better.

A quick look at other bug-reporting systems to see how they handle noise like this, and it's obvious that a "mark as duplicate" functionality was sorely needed in errorception. However, no one likes to be the guy marking bugs as duplicate. It requires review, testing, some familiarity with the code, and usually a lot of discussion around it. Not to mention that you need to remember that you had seen a similar bug filed before, find it, and cross-link them when marking as a dupe. Painful.

Errorception is in a unique position, though. Since errorception already knows a lot about the bug (errorception filed the bug report after all), it should be easy to reliably figure out which bugs are duplicates of each other, and mark them as such.

Yesterday, I rolled out an update that automatically marks duplicates of different errors. It's super simple to use - there's literally nothing you need to do! All old errors in the system, and new errors that will be logged are now all going to automatically mark themselves as duplicates of each other whenever appropriate.

The functionality is currently a little conservative, so the signals it uses doesn't work very well with inline scripts in dynamic pages. However, even with this conservative approach, the number of errors you need to worry about has come down by 55% on average, and as much as 75% in some cases! Less errors = happy developer. :)

Feedback welcome, as always.

Monday 3 October 2011

Slides from JSFoo, Bangalore

I presented Errorception at JSFoo in Bangalore this weekend. Since I hate out-and-out product pitches, I decided to turn it on its head a bit and talk about the considerations I had in mind when taking the decisions that I did for errorception, and what it's pros and cons are. The slides is almost completely full of different error catching techniques in JavaScript. These techniques are graded on a scale I made up based on my opinions about what an error catching mechanism's characteristics should be. The scale is so brutal, even errorception doesn't get full marks. :)

View slides about error-catching techniques and how errorception works.

Overall, the talk was well received. Discussions during the talk were great, and it generated a good deal of chat after the talk. Daily signups went up 10x in the three days now since the talk. I call success!