Monday, October 29, 2007

What We've Been Up To

I haven’t blogged about anything very substantial recently. Since we launched Xobni Insight in September, we’ve been very busy improving it. The responses have been phenomenal, but Xobni isn't perfect yet.



Here's what we've been working on:
  1. Improving performance: Inside Xobni Insight, there is a powerful data engine we call XobniCommon. In some ways, it’s Xobni’s secret sauce. The data you see in the sidebar comes from this component. When we launched a month ago, we hadn't fine-tuned all parts of our racecar. For example, we use a number of small in-memory indexes that allow us to quickly aggregate and filter information. But we weren’t using them in all places. For example, when you clicked on a person, it would take us seconds to load that profile. We’ve since reduced that time by a factor 100.
  2. Improving memory footprint: Our first version used about 2x as much memory as we are taking up now. Adam and Greg made tons of optimizations here, mostly around choosing the right memory structures that don’t waste space. While our memory footprint never was an issue for people with a normal amount of emails, things got uncomfortable if you had hundreds of thousands of them. They’s much better now.
  3. Unconventional configurations: There are about the same number of Windows configurations as there are Windows machines. While we had done considerable configuration testing on different computers before launch, we weren’t expecting to see so many outliers. To give you a feel for what Xobni must deal with, here are some of the variables: We support Windows 2000, XP, Vista, in both 32 and 64 bit, on Outlook 2003 and 2007. We’ve seen conflicting plugins, messed-up Outlook registry keys, graphics card drivers that wouldn’t let us draw gradients, code access security settings that wouldn’t let us run, and we’ve seen Outlook disable us without reason. We’ve investigated these issues and have been solving them.

This list also demonstrates the difference between desktop and server apps: On the server side, you have a known configuration, and can simply add more and faster machines with more memory. On the desktop, however, you’re dealing with all the restrictions of the average consumer box. But you're not paying for that expensive colo.

Where do we go here? For us developers, it's much more exciting to work on new stuff than to massage and fix old code. Thus, I’m very happy that every fixed bug brings us closer to working on new, exciting features.

Oh, and there's another thing we've been working on: Expanding the Xobni team. If you're an exceptional developer, visit our jobs page. Xobni wants you!

More on this on the Xobni blog:
Xobni - Gearing up for Success by Matt
Deep in the Trenches: Support at Xobni by Skyler

No comments: