Let your geeks roam free

I was thinking about Kubi and how bad we screwed up things there and why.

Kubi was a VC funded startup where we were going to fix what was wrong with email. Lots of people know the pain and chaos of being swamped by emails on a regular basis. You inbox might look something like mine:

We were going to fix the mess of the inbox by creating project specific collaboration. Integrated into Outlook or Notes, you could have an nice structured place to share documents and sales leads and plans to dominate the Earth. You create a space. Invite people to it. Share documents. Blah blah blah, peace, love and happiness. And it worked offline.

There was a really cool thing about Kubi ( and by cool I mean completely unworkable): It used email to communicate between Kubi clients.

Instead of using a centralized server to coordinate updates, it used the existing messaging infrastructure so that Kubi clients could communicate in a decentralized manner. It was like peer to peer but even better than peer to peer because it actually had servers involved, your already existing email servers.

Building a email done right on top of email done wrong, it turns out, is really hard. I wasn't at Kubi from the beginning so I can't say what the Kubi vision was early on, but by the time I left it became a way to share 30 meg powerpoint presentations with versioning, access control and encrypted communications.

There were tons of obstacles. For example most email system had limits on attachment sizes, so we had to break up big files into smaller messages. I designed and wrote the chunk-ifier, which broke up large messages into smaller chunk messages and reassembled them on the receiving other side. I remember I wrote some code that looked like this, which to me, in a wearied state of delirium, was the very height of hilarity:

/*

A: How do you feel?



B: Better...



A: Better!?!



B: Better... Get. A. Bucket.

*/

BlowChunks(msg, ....);

Maybe I'm delirious now, but the joke still cracks me up.

Anyway every time someone made a change to a document in a Kubi space, it had to the put little encrypted chunks of message data into email messages and send them to other Kubi clients so the clients could read the messages out of the user's inbox, reassemble and decrypt them and make the corresponding change in the local replica of the Kubi Space. And if for some reason a email message didn't get delivered, the system could even figure it out and resend the data and sync things up.

This is how we built email done right. A brilliant solution to the collaboration problem, wouldn't you say?

If you just agreed with me then please slap yourself. Because it's a horrible, horrible solution. Besides being extremely complex (EXTREMELY complex. I still shudder to think about it) our system was built on a false assumption: That email is in any way a reliable transport.

Email just barely even works as email. With all the spam filters, virus scanners, white lists and "roll your own" mail rules, getting these opaque encrypted messages successfully delivered and processed was getter harder, it seemed, by the day.

The biggest failure on our part was not getting our heads around how bad the email ecosystem was. We should have figured this out sooner and switched to a different transport and model.

Part of the problem at Kubi was so many of use were ex-Iris folks. Iris made Lotus Notes and Domino and Iris lived and breathed email. Email was a central part of Notes and we ate the hell out of out own dogfood. Nothing was filtered in our internal system. No spam filters, no virus scanners, no rules, no message or inbox limits.

We didn't appreciate how onerous and over-protected (or in the case of many small Outlook/Exchange shops, seriously under-protected) the rest of the corporate world was. We didn't really have a clue what most of our prospective customers were dealing with.

But we weren't entirely to blame, we were hobbled by lack of contact with the customer. The sales and marketing folks pretty much kept us away from direct contract with the customers. Instead they were the messengers and translators between customers and the geeks. Geeks couldn't talks directly to customers. No way.

I think I know why. These guys are hustling to get sales and they don't want us geeks screwing it up. I don't know what it takes to do sales, but those guys seemed to be pretty damn good at *something*. I just can't quite pinpoint what that was. I remember them being very entertaining to listen to in their presentations, but I don't remember much else.

Anyway, we geeks pretty much never got to talk to customers. I won't say never, I remember at least one meeting with a customer. But we had no email or online collaboration with the customers.

We asked a few times to allow us to set up an online forum, where customers could post questions and give feedback and we could interact, maybe even build a little community and get some online advocacy.

Nope, marketing didn't like that idea. They wanted to make sure the early customers were "carefully managed".

And that was hard on us. We came from the Notes community, where we could interact freely with customers. At Iris we had built a very strong community and it was very valuable to help us build a better product for a our customers.

I think one reason the Kubi sales guys didn't want to us to interact with customers is because engineers can scare customers. Engineers might come into a meeting with a customer to find out they have a firewall that blocks all unknown attachment types and say things like "That's going to be a problem". Yeah, for sales guys, that's definitely going to be a problem.

Salesguys like to carefully manage customers by telling them we can deal with whatever system configuration they have. Engineers might shatter the illusion of ultimate competence and flexibility the sales guys need to project at all times.

Or so I'm told.

Maybe that wasn't the reason at all. Maybe it's because we engineers are rude louts who will do typical nerd things like scold customers for not running the latest patches on the Solaris boxen, or joke how the customer's bald head makes him look like Captain Picard.

Yeah, we geeks are annoying bunch. More than one rich moneybags has had his monocle pop-out in mortification at our antics. I can see why the sales guys are afraid.

But really they shouldn't be. Customers are ready to tolerate it. Not only are tolerate, they actually expect it.

[Man, look how much I've written and I'm just now getting to me point.]

Customers want geeks. They've seen geeks. They know geeks are annoying. They know geeks say weird things. They expect it.

They want you to have geeks. Big damn geeks. You're a tech company and you don't have geeks working there? And you want me to trust you because your hair looks good?

Fortunately, most people's perceptions of computer geeks are a bit more nuanced than the Geek Squad's stylized, fairly harmless version of a geek. But Geeks Squad's runaway success is a strong indication of what people actually expect when dealing with technology. Geeks!

If you ain't got geeks, then you ain't got technology.

Most customers don't know technology very well, they don't know good tech from bad. But they know geeks when they seem them. They know they are inept, say weird things and maybe have bad hygiene. And customers are actually assured by this.

So let your geeks roam free. You need them for geek-cred, they might actually learn something vital and they probably won't completely piss off your customers.

Posted May 26, 2007 11:29 PM