Category: April 2005 

Cliff Reeves is asking some excellent questions at Ed's Blog. I can't possibly resist sticking my oar in here. Specifically, he seems to want to know how we get from Domino/Notes - using NSF as a storage model, Formula Language and LotusScript and a fat Notes client - to Workplace, which is DB2, J2EE/Java, and thin clients using web standards (or protocols layered on top of them).

And I can see where Cliff's coming from. But let me share my revelation with you - because I have seen the future.

And it is DOLS.

DOLS. Domino Off-Line Services. Most Domino administrators know about it, but don't necessarily use it. A few developers may know about it, but even fewer have used it. But if you'll bear with me, I'll show you how DOLS will take us to Workplace, without undue pain and misery.

About DOLS

DOLS is a pretty smart piece of work. It makes use of the cunning architecture of Notes. Because, deep down, Notes seems - to my untrained eye - pretty heavily influenced by old-fashioned design philosophies from UNIX. In UNIX, they like to create one small program that does its job, and does it well - and then they do bigger things by tying those small programs together with pipes.

Notes isn't small, I'll grant you. And even its components aren't that tiny. But then, the things it does are quite complex. And to be honest, size isn't the point here - the modularity is the key.

The modularity of Notes and Domino is most obvious at the Domino Server itself. Want a webserver? Load the http task. Want a pop3 server? Load the pop3 task. Want ldap? Load the ldap task. Want coffee? Leave the server room, please - no liquids allowed! *grins*
But the fact is that Notes and Domino are pretty modular, right down to the fact that the basic server calls itself a "Database Server". You can see the message when a Domino server starts -

Database Server started
- which tells you it's ready to accept connections. Kill that database server, and believe me, many of your tasks will die - because they often work by making loopback connections to the database server. That's good design - they have one good database server, and they re-use it when they need to.

The competition - especially in its infancy - often went with a more monolithic design, in which the servers for internet protocols were just thrown into other tasks because it was convenient. Thankfully, such days are behind most of us, but I thought I'd mention that because it nicely contrasts the two approaches.

And what does all this have to do with DOLS?

Well, DOLS filled a specific need. Having put a webserver onto the Domino server, many were chuffed with their suddenly lightweight, easily accessible applications that didn't need a heavy Notes client. But there was a rub - the heavy Notes client was what made mail usable when you didn't have a connection to the server. And a web-based application was, to put it bluntly, useless without a web server to serve it.

The solution? Well, luckily Notes/Domino is modular. So, let's just take the replication engine, the web server, and anything that they happen to depend upon. Build a quick interface so that you can easily control them. And hey presto! DOLS. DOLS-enabled applications - like the iNotes/Domino Web Access mail templates - can be replicated to a local machine, taken away from the server, and still accessed! The DOLS interface application even includes a replication scheduling interface! Brilliant!

DOLS and Workplace

So what does DOLS have to do with Workplace?

EVERYTHING.

DOLS shows that Domino/Notes isn't monolithic. It's modular. So you can easily start replacing or migrating it BIT BY BIT. (Literally, if you happen to lack a bit-bucket with which to carry those bits... *grins*)

Yes, folks. We're seeing IBM say to us: "Well, we're moving towards that. But don't worry - we can do that over several versions, whilst still supporting each individual technology (NSF, LotusScript, Formula Language) in both the old and the new products."

That may not seem pleasant, but the alternative in the industry appears to have been the VB model - "Yes folks, this is the future. Stop using that old thing, move all your code to this, and everything will be fine.". This model is OK, unless your code base happens to be a few hundred thousand lines or so...

The VB model might seem like a cheap shot, but it's actually a great link to the final part of the puzzle: Modularity makes good platforms, monolithicity makes bad ones. (Although interestingly, they can both make good products. This is partly a scalability thing...)

Workplace and Domino will be two parts - well, actually, two collections of parts - of the same platform. The modular underpinnings allow them to interchange and interact far better than if each one were just a huge monolithic product. The VB migration model was disastrous not because you were migrating from an old version of the product to a new one, but because VB.NET was part of a platform. You were migrating from a product to a platform - which is never going to be a pleasant experience, because there are likely to be differences - possibly huge differences - in how the product and the platform work.

Conclusion

A platform has to be modular. Domino and Notes were already a platform in that regard, so moving to a new platform is always going to be easier because all you need to do is get a set of compatible modules to move towards. Companies that migrated from the Domino platform to the Exchange Server product were often disappointed because of the great difficulties involved in migrating, and then upon completion of the migration finding out how much flexibility they'd lost. This is typical of the platform/product distinction.

DOLS is a perfect example of how a product often thought of as monolithic - the Notes client - is actually modular, and how that platform's technology can be used in an almost unrecognisable manner. It proves that a gradual migration by intermingling technology modules between Domino/Notes and Workplace is not just possible, but achievable without great efforts for anyone currently using Domino/Notes.

Comments (0)
Philip Storry April 11th, 2005 21:54:00

I'm not dead yet.

And neither is Notes/Domino, by the way.

I was most disturbed to see e-Pro Magazine close down, but I can see why.

Because here's something really interesting, folks...

For the last month, I've been too busy - both at work and home - to follow much on the Domino/Notes Blogosphere. At home, I subscribe to about 20 blogs of developers and administrators who work with Domino/Notes - and, of course, the Ubiquitous Brill. (You can't escape him in this game, I tell ya!). At work, I only managed to subscribe to a few - Maybe five. So I've been lurking, vaguely following those few core people. Meanwhile, my RSS reader at home continues to slurp feeds in, and I don't have time to read them.

It's now the 11th of April, and the last time I looked at any feeds appears to have been before Whisky Live - on 11th March. And I have 312 articles to read.

312.

Wow. I've got lots of reading to do. But you can see why e-Pro Mag would find it difficult to keep up with that. For a diverse group of admins and developers, many of whom have not actually met each other, that's a pretty hefty figure for a month.

And I'm sure that's just the bloggers, by the way. I've marked the couple of thousand or so articles from Slashdot, The Register, Boing Boing and the like as read - leaving just Domino/Notes material.

I have to say, it feels good not to be dead. But better to be in such illustrious undead company. *grins*

Which has led me to wonder about the future. But you'll have to wait for the next posting to read about that...

Comments (0)
Philip Storry April 11th, 2005 20:36:00