I read with a wry smile this morning Paul Stovell’s blog entry for the software super villan that is “Platform Man”. I’m currently living with the chaos that platform man can cause. We are coming to the end of our first phase of Sharepoint development, I argued early on that we should use Sharepoint as a document storage solution and program everything else ourselves. However platform man struck and suddenly Sharepoint was the solution to all of our problems for sites and content management, with “just a bit of customisation”. This was a mistake. We knew this at the time, but platform man stuck and that was the end of it.
So the question is how do we recover from this, Sharepoint is about to become the central tool for information within the company, we don’t want to loose the last years work. That’s right folks a years work to change how the sites look, have our staff members search-able and create a handful of custom web parts. Hardly rocket science for most software developers, but once put through the mangle of the Sharepoint web front end and you are living in a whole world of pain.
The trick when you’ve got yourself in this situation and as you face future developments is to establish scope. What is going to live on your platform. Rather than blithely saying “everything will now go on here” and then spend months working out a way to shoe horn it on. Establish the rules around new work and what your current ‘platforms’ strong points are. Sharepoint as a ‘platform’ can do all sorts of things, but then again Word can be used as a website editor. So you establish what it is you are using it for.
For Sharepoint I’d like to be proposing only documents, web/html content, collaboration space and exchange interaction. Anything that needs reporting on will be in a separate database, anything that wants interaction beyond the standard Sharepoint interaction will be a separate application (ie anything with Ajax or Silverlight). Then there are applications that may need a slick front end by have a document management aspect to them, this is where we use Sharepoints document management with a separate front end to query it, something like an image library would be the perfect example of this.
This means we’d be using each thing for what its best at as well as setting a precedent for future technology buy in, managing to avoid the curse of Platform Man.