Or at least of the first decade of the 21st?
Lotus Notes was a revolutionary entrant into the computing landscape and dominated the software market segment it created. What made Notes so unique and powerful was the combination of three things:
- A complete set of business-focused capabilities
- Integrated into a secure, distributed, extensible framework
- The ability to customize or extend the system through programming
The first two made the system attractive to enterprises, because it had the necessary security, manageability, and scalability to meet corporate needs; the third made it attractive to the users and created an entire market for third-party add-ons to address specific industry-focused needs once the platform was in place. Notes was poised to take over the world.
So, what happened? Well, I'm sure everyone has their own answer to that question: competition (especially in the email market from Exchange), too many 3rd party extensions, upgrade issues, etc. My personal belief is that they suffered from feature creep -- where each version of the product became more and more convoluted, threatening the basic premise of a simple framework -- to the point where companies are known to have backed off major new versions there were so many problems.
That is not to say Notes has disappeared. It is still a very strong competitor in the enterprise unified communication market. But now they have the additional issues of trying to keep up with technological advances (primarily internet-related) that further cut into their market share.
So why compare SharePoint to Notes?
There have been document management systems before (e.g. Documentum). There have been team collaboration tools before (e.g. eRoom). There have been customizable portals before (e.g. Plumtree and Vignette). The unique thing Microsoft did was put all three components into a single package integrated around Microsoft authentication (NTLM) and Microsoft Office.
The result is a very powerful collaboration, simple document management, and web space management system. It didn't hurt that V2 of the team collaboration portion of the product (known at the time as Windows SharePoint Services) was "free" for most enterprise Office customers. SharePoint essentially invented a market segment which until that point had been occupied by "integrated" combinations of large and/or complex product sets. Just as Lotus Notes did 20 years ago.
Another similarity is the limitations of the basic architectural design of the product. All products have what could be called a "design center" -- a focal point -- an ideal business problem that the product tries to solve. The design center defines the core architectural goals of the product. SharePoint's design center is flexible collaborative functionality centered around light-weight document management and customizable portals.
And the fact is SharePoint's design center hit a bull's eye. The need for easy-to-use collaboration spaces and web sites that don't require web programming -- that work well with Microsoft Office and the Microsoft security model -- has been a big hit inside corporations. As a salesman for a competing product once told me, his job is not so much selling their own product, but explaining why customers shouldn't use SharePoint.
Saying easy-to-use collaboration and web sites is SharePoint's design center is not to say the product cannot do other things. Part of the architectural model includes flexible lists and libraries so the data can be structured by normal human beings (not just data architects or librarians). Programmable web parts go the next step, allowing additional functionality beyond just search, sort, and display. Web parts also provide a business opportunity for 3rd parties to build on SharePoint, much as Lotus Notes' programmability created a new market before.
So SharePoint has flexibility built in. However, beyond certain boundaries -- the extent to which Microsoft expected or designed customization into the product -- using SharePoint becomes much, much harder than any user expects or can imagine.
As SharePoint's market domination increases, customers think of more and more ways to use SharePoint. In many cases, these are not uses for which SharePoint is really suited. This problem is amplified by Microsoft's marketing SharePoint as a one-size-fits-all enterprise solution.
SharePoint is designed with flexibility at the space or site level. It allows individuals to take responsibility for managing their own sites and collections of sites. But if -- from a corporate or even a divisional level -- you want to manage the larger collection, SharePoint becomes resistant -- almost belligerent -- to control.
The inability to create even simple relationships between lists in different spaces (beyond simple filtered aggregation) without programming is the first sign of strain in SharePoint's design. Then there are site columns. Site columns let you -- ostensibly -- define common metadata for multiple lists or libraries. However, you cannot enforce the use of site columns and site columns only work within a single site collection. There is no metadata control across multiple site collections. In other words, simplified control within the sites leads to lack of control at the macro level.
These are all just symptoms of a larger systemic issue: SharePoint is designed around the site. In Version 3 (also know as MOSS 2007) site collections have been introduced to provide some limited amount of cross-site control. But the underlying design principles of SharePoint (ie. user control and customization) work against control at the higher level.
Another Achilles's heel for SharePoint is search. I have yet to find anyone who is happy with SharePoint search. Oversimplified syntax, bad default search behavior, too many results, bad relevance, poor presentation... The list of problems goes on. Again, search is customizable -- if you have the programming expertise and access to build your own search interface. But few if any users do. Besides, why shouldn't search work out of the box?
There are other issues with SharePoint: large files (multimedia), support for browsers other than IE, and reporting, among others.
But the real issue is SharePoint's success. SharePoint has been so successful (and Microsoft has been so successful at selling SharePoint as a global solution for any corporate information problem), its use has far outstripped its design constraints and no one has told the customer yet.
There is likely to be a backlash against SharePoint as more and more customers unwittingly bump up against the boundaries of its intended use. And Microsoft will continue to extend the product with each new version -- further blurring the boundaries. Which is a shame. As I said, SharePoint is an excellent solution for what it was designed for. As Microsoft tries to stretch those boundaries -- just as Lotus and IBM did with Notes -- it is possible that the original design center of easy-to-use collaboration spaces may get lost, while never fully satisfying customers who are pushing at the edges, It is a dilemma that has no easy answer -- for Microsoft as a vendor or its customers.