If you follow me on Twitter, it won’t come as any surprise that I’m not a fan of Lotus Notes. I succumbed to the hype of Notes back in the late 1990’s at the urging of a vendor. The vendor subsequently became a Microsoft Gold Partner, tossed all their weight into Microsoft products and more or less abandoned Notes. The only good thing (an awesome thing really) to come out of that experience is a good friend and coworker who we hired from that vendor. In fairness to Lotus, the systems (she) built on Notes worked well, survived many years and several upgrades. Despite the enduring power of Notes, I managed to get all but one system off that platform over the years. The one that remains is scheduled to go this year, and I am considering putting some of it into SharePoint. Now, you might ask, why after bemoaning the problems of data processing system running in a messaging/document management platform, would I even think about heading back down that road? The answer is, I think that SharePoint can deliver on the hype that sold us Notes 12 years ago.
SharePoint has a couple of things going for it that Notes didn’t. OK, again to be fair, I am aware of a few benefits that SharePoint has that Notes may or may not have. I’m not just being kind to IBM here; I think that’s an important point. The community around SharePoint has done a great job of bringing these features to our attention. The way that SharePoint, out-of-the-box can deal with back-end data is really pretty cool. I emphasize out-of-the-box, because I am reluctant to build on a product that may disappear, or even delay the deployment of a future upgrade of SharePoint because its new version is late to the game. Our approach to integrating SharePoint into our development mix is currently focused on native capabilities and web service access by our production systems. So, what are these benefits?
Speed – No, I’m not suggesting that SharePoint is fast, but building a data-entry, table maintenance or simple reporting widget is fast. We are just beginning to understand this type of development, but we are making inroads quickly and we like what we see. When I look back at the systems we are replacing (Notes-based and others) I see lots of gaps, particularly in the area of table maintenance. We didn’t build maintenance routines for simple tables that are updated infrequently. We left that to a user-request to IT. Now, I want my department out of the database maintenance business and the speed at which we can build External Lists will help me make that transition.
Proximity – If you read this blog, you know I love this concept, but it’s a fact; people like to have everything close at hand. The ability to put data next to documents is essential to making certain tasks easier. SharePoint helps us do that with External Lists, Data View Web Parts and External Columns. A document library for reports on one of our insureds can also include information like contacts, rating parameters and premium. Truth be told, we have been able to do this for a long time, using SQL Server Reporting Services and Ruby, but it’s getting easier and easier to do this natively in SharePoint.
Family – Our vendor isn’t the only one who threw their efforts behind Microsoft, we boarded that train and we have been attaching more and more cars each year. Integration between SharePoint and Office is a huge benefit. Case in point, I have one single user who is capable of pulling Notes data into Excel through the Notes SQL ODBC driver. Contrast that with the fact that anyone in our company can pull SharePoint list data into Excel.
Perfection? – OK, this is why the tag line at the top includes “the things we find frustrating”; these connections are not perfect. I have been frustrated by the way SharePoint Designer just crashes when it gets cranky. I also hate reading workflow error messages that basically say “um, your workflow didn’t work” – yeah, thanks. My complaint du jour is that in trying to update an External List from a workflow, SharePoint Designer refuses to recognize a decimal column as one that contains numbers, it only wants to let me format input as a String.
Of course, I know that nothing, at least no development environment is perfect, and SharePoint’s is getting better. I also know there are tools I can add to my toolbox and there are places I can send my staff for training. Like I said, I like what I see.