It’s been over a month since I published my notes on the Thursday session of Microsoft Tech.Ed Australia 2009. In that post, I promised to write up the SharePoint discussion session separately. Finally, here it is.
Session: BOF007 SharePoint, .Net and SQL blended applications
Presenter: Elaine van Bergen
When: Thu 9/10 | 12:45-13:45 | Meeting Room 5
Join Elaine van Bergen in this discussion as to why SharePoint is a powerful platform which is increasingly used to build applications. This session will include discussion on methods for addressing the many challenges faced in scenarios such as:
- A complete custom user interface build on top of SharePoint, such as a public facing internet site
- SharePoint application with complex relational components provided by SQL Server integration
- An ASP.Net application running beside SharePoint using components such as search
- A generic application that is written in a way to be able to switch in and out SharePoint.
The knowledge discussed will be based on recently completed SharePoint projects and will include debate on pros and cons of various approaches, approaches for .net developers moving to SharePoint, ways to avoid or workaround common problem including when to just use a pure custom build instead of SharePoint.
This session was the highlight of the day for me. It was held in one of the meeting rooms and had about 70 or 80 people, with 4 or 5 facilitators leading the discussion and running around to get people’s input.
The lead ‘presenter’ was Elaine van Bergen, State Manager of .Net at OBS. The other facilitators were all leading .NET / Sharepoint consultants from around the country. There was discussion around Documents Records Management and various other disciplines, but I’m only going to focus on using Sharepoint as a Web Content Management System.
The thing that shone through for me was a consistent message that:
- Sharepoint won’t do everything you want out of the box
- It can be made to do anything but you’ll have to customise it
- Sharepoint development is complicated
I’ve heard a lot of anti Sharepoint rhetoric in web development circles, but this is far more valuable for me.
This isn’t coming from people with an anti Sharepoint agenda. This is from the people on the ground who make their living by implementing Sharepoint. These people are some of the top Sharepoint professionals out there, those that Microsoft selected to run a session at Microsoft’s biggest annual developer event.
Now, they’re not criticising Sharepoint. They’re just giving us a realistic view of implementing Sharepoint.
Why is this so important? Because I’ve heard the Microsoft sales pitch for Sharepoint and they are super smooth. There is no hint of weakness, no acknowledgement that implementing Sharepoint may involve a lot of effort or that it may be complicated.
Personally, I think that’s why Sharepoint has a bad name in some circles: Microsoft don’t give clients a realistic view of what they’re getting into.
Onto some of the quotes (well paraphrases actually, I can’t type that fast!):
One of the facilitators was actually anti Sharepoint which surprised me given the setting. I didn’t catch his name, but he said that for public websites, Sharepoint is the very last resort, because of the problems he’s seen in implementing it. He said his preference was to build the site in ASP .NET. He seemed to be talking about a site with minimal content pages and a lot of products in a database.
I personally think that while creating that site with ASP might be feasible, it’s not practical for a site with a large number of content pages of varying types. A Content Management System would be essential in that scenario.
Anyway, he moved on to talk about forms. For one client he had to use InfoPath for forms because the client’s forms were too complex for Sharepoint. They used Sharepoint to store the forms, but they kept the application layer separate, because the analysis logic and Silverlight were too hard to build into Sharepoint.
One of the audience members backed him up and said they use ASP .NET for forms because it’s too hard to make forms look the way the user wants in Sharepoint. However Elaine responded to both by saying that Sharepoint was good, as long as you employ staff to fix the UI layer.
The anti-Sharepoint facilitator went on to say that the decision to use Sharepoint should be made by technical people deciding it’s the best solution for the problem, but that it seemed to him that the decision is often made by business people. They decide to buy Sharepoint without having properly considered how it will used, then they look at what they can use it for, which is the wrong way around.
An audience member related their experience with the Starlight Foundation: they consolidated 70 different sites across various open source systems onto a common platform of Sharepoint. For one of those sites, they had to create a .NET website because Sharepoint "couldn’t deal with it". For the other 69 sites, Sharepoint was fine. That seems like good odds to me.
Elaine said that Sharepoint won’t cater for all your needs out of the box. You need to do some analysis and you’ll probably have to write some customisations yourself. She also said that it’s very difficult to do unit testing.
Another audience member said that he has to do development on the server – he can’t do it on his workstation because his computer isn’t powerful enough to run Sharepoint.
Someone else said there were issues between the Silverlight and Sharepoint web parts. Elaine said that while she can’t comment on that problem specifically, there are a lot of Silverlight related improvements in Sharepoint 2010, which is coming soon.
Another person said that they didn’t have any problems with implementing Sharepoint, but that was because he’d created a custom library to tweak the default web parts.
Elaine said "Sharepoint is its own enemy, you can throw all sorts of things in and it won’t all work together. Have a look at DevWiki. Sharepoint development is complicated – there’s a lot to know if you want to build a simple to use and scalable site."
That’s the end of the ‘quotes’. If they sound negative, I need to point out that the discussion wasn’t negative – it was well grounded and based on a realistic viewpoint. The facilitators openly discussed the issues involved with implementing Sharepoint, warts and all. They were positive in places, but acknowledged the problems in other places.
For me, it was a real eye opener, and extremely valuable in understanding just what we’d be getting into if we went down the path of using Sharepoint as a CMS. It could do what we need it to do, but not out of the box and a reasonable amount of work would be required to get it set up correctly.