Domino Sucks?

As I am all too aware, people complaining about Notes and Domino is pretty common occurrence. I still flinch a little when I tell people I used to work on Notes, out of fear. More than one Notes user has become frustrated to the point of hurling blunt objects and I'd rather not become the face they associate with their rage.

But this particular round is a little different from most, as it's coming the Notes and Domino community itself, mostly about how neglectful IBM has been to the Notes platform, and in particular Domino web development. Jake Howlett kicks things off and an explosion of complaints appears in the comments. Vowe makes note, Carl Tyler responds, Jake posts again and Ed Brill responds.

But if these guys are frustrated with IBM, you should talk to some of IBM's ex-Iris developers who lived through the whole Workplace fiasco. I get the idea the people calling the shots at IBM are ex-salesmen, they don't know what a good idea and competent engineer looks like. So you get what happened, a giant mishmash of a project with pockets of brilliance and long stretches of pointlessness.

I remember when I worked at IBM, Steve Mills, the VP in charge of all of IBM software and one of the largest software businesses in the world, he came to Iris to tell us about IBM's great plans for Lotus Notes and us former Iris employees working on it. He actually said we were the “user experience” people, and the other groups at IBM (like DB2 and Websphere) were the heavy lifting, back-end people.

He couldn’t have gotten it more wrong. The thing that made Notes successful wasn’t the great user experience, probably the single biggest things users complain about was the poor usability and frustrating experience of the Notes client. Now, don’t get me wrong, the Notes client is a powerful piece of software and its UI is highly functional (if frustrating), but that’s not why it continues to be successful. It's been successful because the backend data model, the heavy lifting stuff, solved real problems much more easily than so many of the other technologies, like SQL. It is still singularly unique in its back-end capabilities.

But IBM management didn’t seem to recognize this. I’m not sure what the hell they were thinking. The same Steve Mills had a long interview in a trade magazine talking about the legacy technology of Notes and how it was going to be ripped out and replaced with something based on DB2. There is little doubt that DB2 really is an extremely advanced and optimized piece of backend software. But it’s not Notes, not even close.

Somehow the guys in charge got into their heads that as much as possible should be written in Java and a relational backend, and Notes was legacy technology that needed to go away. I’m sure this looked very good on paper, IBM is the groupware leader, they have as extremely advance relational database and an industry leading Java application server platform. Why not take all that expertise and technology, discard all the old “legacy” stuff and build the greatest and most technologically advanced groupware platform ever? They can convert all their old customers to the new platform, charging a bundle on software licenses and support and migration consulting. The customers will gladly pay for it because it’s so great and because they want to get off the legacy Notes platform.

And so began the Workplace project. And what exactly was IBM hoping to build with all this? After blowing hundreds of millions building and marketing a new platform no one wanted, the only consistent thing I could see about it was it was big. Very very big. Good thing IBM made all that technology seamlessly integrated and easy to install and configure, otherwise they'd have had no advantage and you could just have easily built most of the same stuff from open source. (yes, sarcasm)

Now IBM has seen the light. How could they not when Workplace was a giant money pit while Notes and Domino continued to earn a healthy and growing profit despite neglect. My inside sources tell much of the budget and personnel from Workplace initiatives are being reassigned to Notes and Domino. Let's hope they get the good, creative people to work on it, and not corporate drones with no other prospects than to work on famously reviled product with an ancient codebase. And let’s hope they fight hard to make sure it stays the same stable, and easy to support platform its always been and not a slow bloated, unstable mishmash of technologies. (more sarcasm? I'm not really sure)

And one wonders why it has been so successful? Despite how maligned Notes often is, despite how neglected its own community feels, despite its outdated and limited codebase (16 bit database limits? In 2006?), despite IBM's own attempts to replace the product and migrate users, despite all this it continues to be a huge, money making success for IBM. People still buy new licenses, build new applications and deploy new installations to solve real problems everyday.

Why? What is it about the platform that makes it such a continued success? Is it the fat Notes client? Does it's UI do something other fat clients don't do? Snappier? Better UI? Better text editor? Is it the PKI security? Is it the IDE? Is the management tools? Better support for industry standards? What exactly is so unique about Notes and Domino that keep it in demand?

Here is the answer: It's the database. The Notes database model is simple and functional with built-in security and bidirectional replication. The implementation is solid, if limited, and performs pretty damn well. It easily solves many problems that are nightmares to deal with in SQL.

The answer seems so obvious to me. I was involved with Notes and Domino for a very long time, as a customer and later as an engineer deep on the guts of the product. I’ve seen it used in many different ways, and the one element always a constant in every success was the database back end. Without the database, nothing else had any reason to exist.

Domino web development may be an exercise in frustration, but its mostly because the rest of its web development tools are outdated and inconsistent and hacky, but they are really the only way to work with and expose the power underneath. It doesn't have to be this way. IBM continues to squander a huge opportunity, and frustrated Domino developers know it.

Posted December 7, 2006 9:09 AM