One of the things that you learn pretty quickly if you start woodworking as a hobby (or as a livelihood, but that’s a story for a different blog) is that little things matter. Little things matter from the start, so a woodworker will choose the right species, the pieces of wood that show the right grain, the right size, proportions and the right joinery. Little things matter during the process, so methods will be chosen that add strength, do no harm and generally insure success. Finally, when it comes time to finish the piece, little things really matter. On the table shown to the right, I managed to scuff the finish while it was still tacky enough to make a difference. That meant sanding and refinishing.
SharePoint is very similar to woodworking or at least I think so. SharePoint success starts with a good design. SharePoint success depends upon the solution being built well, using proven techniques, and SharePoint should be properly finished. If you’ve read this blog before, you know that I don’t care if SharePoint “looks like SharePoint”; out of the box solutions are fine in my opinion. On the other hand, out of the box, slapped together and stood up without those finishing touches; well that’s a different story.
I was working on a small task earlier this week, a simple custom list to keep track of project milestones so as to serve as a roadmap. You might ask “why not use a task list?” We considered that, but we didn’t want the dates and assignments. This is a roadmap, not an itinerary, we just need to know the major cities we plan to stop in; we don’t need to know the route or who’s driving what leg. I won’t go into the details of the list, but I want to share three things that I learned while building it:
Keep Views Clean – While it’s true that we have a few engineers who like to see every column exposed on a view that scrolls to the right forever, most people want to see what they need, where they expect it and nothing else. I’ve known this about software since before we started using SharePoint, but sometimes I forget this rule, particularly after things have gone wrong. I realized that in order to get this list to display properly, I needed an additional column, and I needed to set that column from within a workflow. Not only did I have the new column, I also had the workflow progress column showing on the three views I had created. In addition, the new approach actually made one of the existing columns redundant. All three views had to be changed to keep the list looking sharp.
Required Columns – Users view required columns with great skepticism. One of the reasons people are suspicious of required columns is because the columns are usually required for somebody else’s benefit. Accordingly, I like to look for ways to set the required metadata from a workflow. An example in this case was a column called “Related To” – this was meant to be a way to link a subordinate entry in the list to its parent item. That’s an easy requirement to understand and an almost intuitive processing step. However, in order to make one of our views sort correctly, we needed the parent items to be related to themselves. That’s a silly requirement, and there is no reason to ask the person filling out the form to bother with it because a workflow can handle that easily.
Column Order – I am always pleasantly surprised when I realize how much better forms and views look once the column order is correctly established. This is such a simple thing, it’s easy to do, but even easier to skip. If the order is correct on the input form, the user has a nice, logical experience. If the order is merely chronological, i.e. I leave that critical column that I added at the end at the bottom of the form, the process is disjointed. The same holds for views.
These are three of the easiest things to do in SharePoint and they are three of the easiest things to overlook. Just like the finish on that table, the people filling out the forms and reading the views will appreciate the result, even if they never know what went into it. By the way, if you want to know more about what went into that table, check out its story.