Tuesday, April 15, 2008 10:02 PM
In a previous post I mentioned that I recommended using WSS or SharePoint for kick starting the creation of web based applications. With that said, I need to post on another important subject that has come up in regards to that. I have a client which I really enjoy working with. They are a good company and they did see the potential benefit of using SharePoint to get their application a solid foundation. They utilized WSS 3.0 to create their web presence and web application for their customers. However, the company that they first hired to create this application built it out completely with SharePoint Designer 2007.
So now that you have the overview here are some of the details of how this became a tragic situation.
The company that built this application used just a standard ASP.NET developer instead of a person that had any SharePoint experience. How do I know this? Well none of the built in SharePoint functionality was used in the code, and while we are on the topic of the code; since it was all done in SharePoint Designer it is all inline code with no real ability to actively debug. Common code is copied and pasted in close to ever page, and whenever they wanted to get at a SharePoint list or other object they would create the SPSite object utilizing a hard coded url instead of using the SPContext object.
After they finally finished up with the initial consulting company they decided to hire a much larger consulting firm to come in and try to fix the initial implementation that the first company did such a bad job putting together. Well, after a while maintaining and trying to stabilize the product the finally decided to part ways to.
Now it I have it. I am looking at the application and wondering if it is able to be saved. One of the directors I am working with asked when he would finally have an application that he didn't see as needing constant attention and when they would feel like they could stop cursing the first consulting company. My reply was that I really didn't know. I am person that makes decisions based on logic and fact, and from what I have seen I don't accurately think I could even give him an estimate of time to get the application to that point. To fix most of the average issue on the application takes hours or days and usually causes other bugs to surface. I know that most of you have seen this before. So the question is when do you throw in the towel and start over? I know that it can be painful, but usually in the end you come out with a better application and it is usually better built.
Either way, please don't let this dissuade you from using SharePoint for development, but please be sure that if you are not familiar with using SharePoint as an application or as a framework make sure that you have someone that has some experience with it before you just start throwing code together. If that is not an option, please look in to Ted Pattison's Training. I have taught his WSS course and it is the best start to getting in to doing REAL development with SharePoint. If you need are recommendation of the course that would best suite you or would like some advise please don't hesitate to contact me. I would be happy to help.
Until then, happy coding.
Michael