I was asked via an email from this blog to look at a thread in the MSDN SharePoint – Design and Customization forum today. Of course, I was curious and headed right over there. Here’s the basic question (there’s lots more detail in the thread):
My problem precisely and concisely is that I get tasked (A Must-Requirement) to offer the client the ability to select a customized CSS class for each single web part individually in order to be applied. The selection MUST be via the Browser: means that the user will pick whatever CSS class suits him/ her from the properties of that particular web part and clicks OK, then Bam! That particular web part will get the new style.
and my answer:
Not having been involved in the discussions with the actual users, I can’t speak to why they feel that this is a useful requirement. Perhaps coming up with a set of page layouts that represent the normal range of options for them with each Web Part Zone having a specific set of CSS applied to it is the right middle ground. Rather than trying to solve the “we might want to do anthing” problem, see if you can identify the most common patterns and solve those. Then you can deal with the exceptions as they arise, which is likely to be infrequent.
I see this sort of thing in the forums a lot. These “absolute requirements” that the users won’t budge on. Well, as IT Professionals (or whatever we choose to call ourselves) we owe it to those same clients to sometimes point out that they may be wrong in their estimation of their requirements. With an infinite amount of time and money, I can make a computer do anything you want, including marrying your daughter and making a perfect Bolognese sauce. But that’s not realistic, is it?
One of the problems we get into with SharePoint or any other development platform is that we tend to say “Sure” or “No” too much. There’s a lot of room in the middle: “That might work, but have you thought about…”, “What if we…”, “I’ll throw in this feature because it’s easy, but let’s talk through your options on this other one…”, etc. I work with clients who still approach SharePoint with an old-school mentality, and by the time the SharePoint experts are truly involved in the conversation, the requirements are already way out of whack. We can get them back on track, but it takes more work and it can be painful for those users who think they had already arrived at the answers.
Build a trusting relationship with the user base, help them solve their problems in creative ways, and you’ll be able to have these “you may be wrong about this” discussions more easily. You owe it to them, and they will succeed more completely due to your efforts.