A Five Year Old Presenter at SharePoint Saturday Philly

SharePoint Saturday PhillyThe first words out of my 5 year old’s mouth this morning were, "Dad, how many days until I’m on stage with you at SharePoint Saturday Philly?" The answer was "7", one less than the "8" I told her about when the lights went out last night.

I like to include my kids on what I’m doing, whether it’s speaking at a SharePoint event or conference, down to how EndUserSharePoint.com is doing as a business and what we can be doing better. My daughter is very excited about being part of the process now that she’s old enough to be part of the presentation. We practice as we walk down the street. We are counting the days to the event. She’s wondering what part she is going to play.

For those who saw my 7 year old son present at SharePoint Saturday New York and SharePoint Saturday Chicago, you know my children don’t take a backseat to anyone when it comes to performance presentations, not even their Dad. At the end of his introduction, he stated emphatically, "And that’s why my Dad invented SharePoint!"

I look forward to seeing you at SharePoint Saturday Philly next weekend when my 5 year old daughter talks about other things I’ve invented… hopefully not the internet, since that claim to fame has already been staked.

I STILL don’t know JACK about SharePoint

The Wizard of OzI had the pleasure of sitting on several panels at the Experts Conference in LA this week, and I have to say, I Still don’t know JACK about SharePoint.

After attending the SharePoint 2008 Conference in Seattle, I wrote an article out of frustration. "I will never be Joel Oleson" was my attempt to see where I fit into the SharePoint Community. That article was a turning point for me and EndUserSharePoint.com because it helped clarify for me how I could participate in the SharePoint Community.

Joel laughs when I include this as part of my introduction to my sessions… "Hi, I’m Mark and I don’t know JACK about Sharepoint!", but it’s really not a joke. One of the panels I was on included Joel, Dan Holme, Ben Curry, Michael Noel and Bill Baer. What in the world was I doing on that panel?

That’s when I had another of those clarifying moments: My place in SharePoint is as a community builder and a connector. I’m being included in the panels during conferences not because of my knowledge of SharePoint, but because of the connections I’ve made in the SharePoint Community. I know who’s doing what when it comes to Power Users and Site Admin content. I’m willing to play around in the presentation layer, poking and prodding people like Marc Anderson, Laura Rogers, Christophe Humbert, Christina Wheeler, Michael Greene, Alexander Bautz, Jason MacKenzie, Peter Allen, James Love, Jay Simcox, Jim Bob Howard and others to develop solutions for SharePoint Power Users.

I feel kind of like the Wizard of Oz, hiding behind the curtain, showing off what can be done through the work of others.

I’ve come to the conclusion that it doesn’t matter if I know SharePoint or not. What matters is I know people who speak the language of SharePoint Power Users and EndUserSharePoint.com can be used to expose that content to the people who need it most.

Joel says I’ve learned to "dance with SharePoint", his way of saying I’m willing to move and flow in any direction instead of fighting to put it in any particular niche. I say that dancing with SharePoint is finding a way to fill up my dance card with people I’d like to have a conversation with, people who see the value of participating in the SharePoint Community by exposing solutions that are available to everyone.

So let’s continue to dance a bit. I’ll keep moving as long as the real experts are willing to provide the music for SharePoint Power Users.

Sincerely,
The Wizard of OzPoint

SharePoint Site Templates: KISS guide to creating, saving and using

Guest Author: Clare Stone
Pentalogic Technology

A site is the key place within SharePoint to bring together all the people, content and activities associated with a particular process, project or group.  And if the process or project is regularly repeated within your organization having a site template for it saves a lot of time and helps to ensure consistency and facilitate continuous improvement.

There are any number of scenarios where you might use a SharePoint site template, for this example we are using a recruitment process, but you could equally well set one up for any regularly repeated process or project you manage: training courses, audits, conferences and sales exhibitions, product testing, office moves, procurement, risk assessment, staff appraisals � the list goes on.

SharePoint comes with some Out of the Box Templates, there are other available on-line, free or to purchase.  But all of these are �off the peg� options: great if you are short on time, but they�re not going to be a perfect fit for your business processes.

To get a SharePoint template that fits your processes perfectly you are going to have to make your own � and thankfully it�s exceptionally easy to do � so here�s how.

First Create your Site

Before you even switch on your computer you need to sit down and think about the business process you are working with: the content, activities and people you will bring together in your site template.

So for our Recruitment Site Template we have:

  • Recruitment Procedures: hiring policy, pay scales, interviewers guidelines, equal opportunities policy etc.
  • Recruitment Forms: application form, equal ops monitoring form, interview score card, pro forma letters.
  • Recruitment Interview Scheduling: calendar of scheduled 1st and 2nd interviews/assessment centres.
  • Hiring Managers and HR: internal contacts involved in the hire
  • Approved Staffing Agencies: with agreed terms and conditions and contact details
  • Candidates and Applications: original application documents, status tracking and notes.

I am sure there is more, but you get the idea, you need to think about the content, people and processes you want to bring together in your site template.

So, now you can switch on your computer!

You need to be a �Site Owner� to create a site template. Your SharePoint administrator will be able to tell you whether you have the permissions you need � and if you don�t ask the administrator nicely and they might grant you some extra permissions.

You can�t actually create a site template from scratch in SharePoint � you first have to create a site and then save it as a template.

So, first create your site.

Decide where you want your site to appear  – for a recruitment site you might well want it to be a sub-site of a main HR site.  So from the �Site Actions� menu, in the site that you want as your parent site, choose �Create� from the drop down,


Then from the list of options choose �Sites and Workspaces� from the Web Pages list.


On the �New SharePoint Site� page there isn�t much you need to do.  Give the site a name, in this case �Recruitment� seemed to make sense, give it a URL � best done by just adding the name of your site, and from the �Select a Template� box choose either Blank or Team Site � either will do just as well.


Click �Create� and you�ve finished.

Add Some Stuff in Your Site

Now go back to your list of the people, content and activities that make up your process and think about how best to handle them within SharePoint.  Remember that the cardinal rule of content managment within SharePoint is that we only want to have one version of any one item of content, so you need to spend some time thinking about what content needs to exist within the sites that you will be creating from your template, and what content already exists elsewhere, so that you can simple provide links to it.

In our example we have we have set up:

  • Document Libraries for applications and proforma recruitment documents (so things like blank Job Descriptions and Invitations to interview, where we will want to keep completed versions of the documents for our records) configured with metadata.
  • a Forms Library for our equal opportunities monitoring forms,
  • a Wiki for recruitment notes,
  • a Calendar List for organizing our interviews
  • a Tasks List
  • Content Editor Web Part � to display links to relevant information located within the main HR site, like Recruitment Procedures.
  • and some List View Web Parts on the main page, to let us see what happening easily.

You can save to your template pretty much anything you see from the �Create� page within your site:  any kind of list or library, communication, tracking, sub-site or page.

You can configure these as you want them.  You can also add and save content as part of the template if you wish.  So in our example the �Applications� document library is empty, but the �Pro Forma documents� library is populated with recruitment documents which, within the sites created from our template, will all be populated with data unique to each individual recruitment.   You need to decide where you need content, and where you just need to set up a structure, or add a link to content which exists elsewhere.  For example in this site we are providing a link within our Content Editor Webpart to the �Recruitment Procedures� manual, which is located in the main HR site.  By using a link we ensure that everyone using sites created from our template is accessing the most up to date version of the manual.

You can also save all your site settings, including look and feel, to the template.

What can�t you save to your Template?

You can�t save alert settings.

Save Your Custom Site Template

Having set up your site and filled it with all the stuff you need, you can now save it as a template, a very simple process again.

From the �Site Actions� tab, choose �Site Settings�, then under �Look and Feel� choose �Save site as Template�

As we discussed earlier, you will very probably want to �Save Content� and you�re done.


Create a Site from Your Custom Template

Right, so now we have our site template, lets create a new site from it.  In our example we are going to hire a SharePoint Trainer, so from our Recruitment site �Site Actions� tab we are going to choose �Create� and then under the Web Pages heading, choose �Sites and Workspaces�.

We are going to go through exactly the same process here as we did to create our Recruitment site. Name the site �SharePoint Trainer�, create a URL, but this time when we get to �Select a Site Template� we are going to choose the �Custom� tab and choose �Recruitment� from the drop down list.  Then click �Create�


So now we have our site for recruit our SharePoint trainer, ready to populate with documents, events and list items specific to this particular recruitment

and here it is once we have put some data into it:

A site template that�s tailor made for your own business processes with just a couple of hours work aren�t you the clever one!

Need to Update Your Template?

So let�s say your recruitment policy changes and you need to update your template � how do we do that?

You can�t just �save changes to a template�.  You will need to create a whole new template.  It�s not as bad as it sounds.

Just go to your �Recruitment� site, make the changes you needed, then save as a template called �Recruitment v2� or some other name different from the name of your first template.  However once you�ve done this you will be left with 2 versions of your Recruitment Template for people to choose from, and you know what�s going to happen.

So we would recommend that you delete the original template to avoid confusion.

Go to the very top level of your site and from the �Site Actions� tab select �Site Settings�.

From the �Galleries� list select �Site Templates�, click on �edit� next to the template you want to get rid of, click �delete� and you�re done.

So, that�s our brief run down on Site Templates and how to use them.  We hope you found it useful � and if you have any other tips on the subject we would love to hear them.

Further Reading

Microsoft�s free �fab 40″ SharePoint templates:

http://technet.microsoft.com/en-us/windowsserver/sharepoint/bb407286.aspx

Microsoft free role based templates for My Sites:

http://office.microsoft.com/en-us/sharepointserver/ha102147321033.aspx

For a different take on how to create templates:

http://www.fpweb.net/sharepoint-tutorials/CreateSiteTemplate.asp

http://office.microsoft.com/en-us/sharepointserver/HA101577801033.aspx?pid=CH101237721033

And for a look at how things work in SharePoint 2010:

http://www.toddbaginski.com/blog/archive/2009/11/20/which-sharepoint-2010-site-template-is-right-for-me.aspx

Guest Author: Clare Stone
Pentalogic Technology

Clare is Marketing Manager for Pentalogic Technology: developers of SharePoint webparts designed with the end user in mind.  Clare started her career in qualitative research and has spent more than 20 years working in marketing in a wide variety of industries.  Pentalogic is her first foray into the world of software  – so in relation to SharePoint she identifies closely with her customers, as she is definitely not a techie, and very much an End User herself.

[tweet]

MOSS 2007, CSS, and you, the Non-Developer – Part 6: Banners and Administrative pages

 

In my last ARTICLE we changed the way that our TopNavigation and SiteActions menus looked and displayed on our main page. In today’s article we’ll make some changes to the GlobalTitleArea, add a banner to our page and make some changes to classes that are tied to pages that reside in the _layouts directory. Making changes to those classes will allow us to completely "skin" or "brand" our site and not have pages that appear to be incompletely altered or customized (the �Site Settings� page for example).

We’ll start by adding a header image to our main page. There are a couple of ways to do this; add the header image directly to the cells that hold the site title, the titlegraphic.gif, search boxes and "Advanced Search" link or you could customize your master page and add a table directly above those items and add your header image to that table. I don’t want to customize my master page so I am going to take the first approach. We’ll begin by hiding the existing elements of this row in the page, make some changes to the row height and then add our image.

As a reminder here is how our GlobalTitleArea currently looks.


Now let’s make the changes necessary to display a header image as a background to the site title.

  1. We’ll start by hiding the title graphic image that appears at the left hand side of the header area. We’ll do that by adding a declaration telling the browser not to display the td.ms-titleimagearea class on our SharePoint page.

  1. Now that we’ve hidden the graphic we’ll hide the site title. We’ll add a declaration to the .ms-sitetitle class telling the browser not to display that class. This will actually take care of 2 things for us, it will hide the site title and it will also hide the cell that runs across the width of the page and will show up in the middle of your header image after you add it.

  1. The next piece is a little tricky. Once you tell the browser not to display the .ms-sitetitle class the search boxes will all re-align to the left hand side of the page. A post by Heather Solomon on her blog pointed me in the right direction (SharePoint CSS Trick: Align your Search Inputs). We’ll start by setting the width of the .ms-sblastcell, .ms-rightbodysectionsearchbox class to "0". By default the width here is set to 100% which pushes all the search box components to the left of the page.

  1. In order to get the search boxes back where they belong we’ll change the width setting of the .ms-sbtable-ex class to "0" as well. In addition we are going to set the position of the search box here by using a "position" declaration and setting the "position" declaration to "absolute" and the "right" declaration to "0". If you wanted to move the search boxes up or down you could add an additional declaration for "top: 20px;" or similar. This declaration will actually move the search boxes to the top of the page directly below the Welcome and My Site links.

  1. In the last step we’ll add a reference to our header image. We’ll do this where we had earlier removed a reference to one of Microsoft’s background images in the GlobalTitleArea. You’ll notice that I changed the font color of the "Advanced Search" link to make it more visible against the background image I’ve added.

With the header out of the way we’ll go back and tie up a few loose ends. If you’ve been working through this on your own you’ve probably noticed that in some of the administrative pages or in the "All Site Content" page there are cells that have not been customized but should have been. We did change those on the main page didn’t we?

Well, we did and we didn’t. There are some separate css classes for some of the administrative pages. This is where the IE Developer tools come in really, really handy because you can’t add Todd’s script to any of these pages. Anyway, let’s get those fixed up so we’re consistent across the site.

  1. If you look at the "Site Settings" page now you’ll notice that the vertical pagemargin cell we had changed way back in part 2of this series hasn’t been changed. That’s because it uses a different class to determine the color of the cell. To fix this we’ll need to make 2 changes, one to the .ms-areaseparatorleft class and another to the div.ms-areaseparatorleft class. These changes will consist of removing the background images and then setting a background-color for each class.

  1. Now we’ll make the same changes to fix the other side of the page. The only difference will be the classes we are applying those changes to. In this case it will be .ms-titlearearight .ms-areaseparatorright and div.ms-areaseparatorright.

Now there may be other places that changes didn’t trickle down or classes may have changed. These are the only two that I saw that were obvious. If you do find some you should have the ability to figure out what needs to be changed now.

Next time we’ll wrap it all up and talk about how SharePoint handles style sheets, some best practices, how to deploy the changes we’ve made and some lessons I’ve learned as part of this process. Additionally I’ll provide you with a copy of my customized .css file complete with comments and markup.

As always if you have any questions or comments please don’t hesitate to ask!

Until next time…




When you first install Visual Studio 2010 RTM and try and click F5 on a sandboxed solution project (default project) you may see this error:

Basically you need to go into Central Administration, select System Settings, select Manage services on server. Find the ‘Microsoft SharePoint Foundation Sandbox Code Service’ and click Start.

Your solution will now work. Would have been nice to get a explanation in VS2010 to summarize this rather than rely on Bing/Google

Train the Trainer: Become an In-House SharePoint Trainer

Next week I’ll be running a series of workshops, Train the Trainer, that will give the participants resources, slidedecks and training on how to become an in-house SharePoint trainer. This 5 part series of EUSP Live Online Workshops runs for five days, 2 hours per day.

You can read all the details on the information page, but the bottom line is if your company is running SharePoint on a limited budget and is trying to get your basic SharePoint Information Worker up to speed, this workshop is the most effective and cost efficient way to run that training. By becoming an in-house trainer, you will be able to put context to your SharePoint site that no outside trainer could possibly have. So read the details and register for next week.

I look foward to seeing you there. Mark

SharePoint Out-Of-The-Box: Is this Really a Debate?

Dessie Lunsford
Points-of-Sharing 

I subscribe to a number of blogs and tech sites for the sole purpose of finding out what�s new in the world, and what�s new in things that I have interest in.  For the most part, I simply scan through the new items I get in Outlook, read more on those that catch my eye, and occasionally comment on those that are of value to me.  Some, as in with the following, have stirred me to the point where I must express my opinion in the same manner in which each "OP" stated theirs – in an attempt to create some clarity in the confusion.

It starts with Bj�rn Furuknap posting an article denouncing the use of OOTB ("Out of the box") features and functionality in a SharePoint deployment.  To "some" degree, I can agree with his reasoning, because for the most part, the default set of lists and libraries (the "Out of the box" set of pre-done components) are really more of a "sample" or "demo" to get you started and they really don�t always represent an answer to a client’s specific need…although, they may be close.  Generally, you’d run through the list of requirements and create a brand new list or library that has custom columns and workflows to do the job needed.  Additional customizations may be needed later to make things more complete solution-wise, but in a very basic sense, this is the normal starting point for anyone.

The issue I have however with what Bj�rn professes is in his push to simply scrap everything from the start because it has no value and that everything "Out of the Box" is bad and "stupid".  As someone who uses the default out-of-the-box lists and libraries on a daily basis, and has used many of the "Fab 40" templates in their default out-of-the-box state – with all out-of-the-box lists and libraries intact, I think he may be pushing things a bit to the extreme in his thinking, and here’s why…

A basic "Team Site" in its default state, has all the basic tools necessary to start someone on the path of learning to use SharePoint and collaborating with team members, and "can" exist for a long time as a sound foundation on which to build on (see, I can use the "house" building metaphor as well…although I tend to agree more with Bill Simser’s opinion on its over-usage.  Does this mean that the site should remain as is without any modifications or customizations forever?  Possibly, but normally no because there will be custom lists created that stray from what you get as default, but what�s really in question here is what "Out of the Box" really means.

In SharePoint terms, "Out of the box" refers to the functionality of what the platform can give you using all of its Built-in tools (note the term "Built-in").  This includes all of the default pre-created lists and libraries you get when you create a team site, as well as the ability to create a custom list or library using your own columns.  I would also venture to say that creating your own custom site columns and content types are also "Out of the Box" because it is native functionality built into the system that does not require any 3rd-party installation of custom features – all of this you get by default when you install SharePoint, so by definition, it is "Out of the Box".

When you’re creating a site for a new user, regardless of whether you start from a "Blank" site and create all lists and libraries needed, or if you start with a "Team site" and either build on the pre-created lists and libraries – or scrap them and create new ones, it�s all the same "Out of the Box" functionality – this is where I believe Bj�rn is incorrect in his terminology.  Until you start adding in 3rd-party features (whether they be advanced CodePlex features and solutions, or simply adding in a small JavaScript into a CEWP [this includes JQuery]), you’re still in the "Out of the Box" feature set within SharePoint.  Deleting the default "Shared Documents" library simply because you don�t want the special characters in the URL and creating a new one with no space in the name is not straying from "Out of the Box", this is simply cleaning things up a bit.  Saying something like "You can take the out-of-the-box contact list and remove all the columns you don�t need, but then you�re not longer using out-of-the-box functionality", is absurd – a more correct statement would be that "You may want to consider creating a new list to more closely match your environment needs, and some of the default lists and libraries can be a good starting point".  Do I agree that removing unused columns rather than just starting from scratch on a new list vs. a default lists is better…maybe, it all depends, but I’d never ever use a blanket statement that "…modifying an out-of-the-box list is a stupid idea" – that�s just irresponsible and (to borrow from the quote itself) stupid.

When you create a new site in SharePoint, you start with an "Out of the Box" environment.  Using the built-in functionality that SharePoint gives you (again, all "Out of the Box" in terms of what functionality is available without installing anything 3rd-party), you then build upon what is default in order to achieve a better solution for what is needed (Marc Anderson posted a response article to Bj�rn that covers this pretty well).  You create new lists and libraries, add in custom columns with advanced formulas (my favorite obviously, for those that know me), build workflows through SharePoint Designer (also "Out of the Box" – although some would most likely disagree with that), and eventually add in something 3rd-party (straying from what is "Out of the Box") in order to get to where the site becomes more of a complete solution.  Does a "Complete" solution require anything beyond what is available "Out of the Box"?…most definitely not.  As someone who has been working with SharePoint for quite some time now, I can attest to many scenarios in which a default team site has met the needs of my customers completely.  Obviously not every site is this way (the old adage of "One size fits all" does not apply, and I’d never ever say that it did), but many are.

Similar to what Bil Simser states in his rebuttal to both Bj�rn and Marc, I believe there are really two different levels of functionality within SharePoint that details what is "Out of the Box" and what is not (or three, if you take it as far as Bil by separating customization to the front-end side [SPD], and development to the back-end [VS] – which I do agree with for the most part, but I lump them together in order to separate what is "Out of the Box" and what is not).

OOTB:

Working in a site that has nothing extra added to it – no JQuery, custom created Webparts and features, visual studio workflows or solutions – this is "Out of the Box".

Using the built-in default created lists and libraries; this is "Out of the Box"

Creating a custom list that perform a lookup or calculates winning lottery numbers, this is "Out of the Box" (and needed – someone please create this and share). 

Taking the default "Contacts" list and removing the "Company" column because it wasn’t needed, sorry Bj�rn but this is still "Out of the Box".

Creating a few new content types in order to be able to have lists where you can create contacts that are either personal or professional and the need to have different columns of data based on which of the two you are creating – I’d argue that this is still "Out of the Box" functionality for the sole reason that the ability to do this exists within SharePoint already (nothing extra or 3rd-party is required).

Not OOTB:

Adding in a script to a CEWP to print out a calendar page without the header or Quicklaunch – not "Out of the Box" because the functionality the custom script provides does not exist within the system already. 

Anything with JQuery – not "Out of the box" (same as above).

Deploying custom features and solutions (ala CodePlex) – not "Out of the Box".

ANYTHING using Visual Studio – not "Out of the Box".

In my organization, I tend to wear multiple hats when it comes to SharePoint simply because we don�t have the ability to bring in extra people to separate out the roles (State-ran organization that has a very stringent budget).  I’m a developer by trade, but I’m also a designer, a trainer, a server admin, a media expert, and a user.  I’m responsible for everything SharePoint related, and am the first point of contact for new users as well as the Farm admin responsible for all deployments, their configuration, upkeep and health.  When someone has interest in SharePoint as a possible solution for a given need, I work with them from start to finish to not only make sure that SharePoint can be the solution, but how it can, and how to make it so.  More often than not, an "Out of the Box" scenario is more than enough to meets their needs.  Many times we eventually move towards extra functionality not included in the system to assist in their needs not identified at the time of site creation, but as all three authors (Bj�rn, Marc, and Bil) can attest to, SharePoint is an evolution – which means that it is never complete, never finished.  As you get more familiar with it, you’ll see that it can always do more, and I’d venture to say that every customer would also agree.  "Out of the Box" or not, SharePoint in all its built-in functionality and ability to expand can be a great foundation on which to build on – where you go is up to you, the customer, and their needs – we only need to be able to envision the most appropriate path to get them where they want go, whatever that path may be.

Thanks for taking the time to read through this – I meant no ill-will towards any of the others I’ve mentioned here, and offer a sincerest apology if any offense was taken.  My only goal was to add to the discussion and offer in an opinion from someone who has to look at many different approaches to solving problems for my customers, and to point out the fact that each of us has to make sure that we don�t "lock" ourselves into one mode of thinking.

- Dessie

Dessie Lunsford
Points-of-Sharing 

[tweet]

You say “SharePoint”. I say “SharePint”. Jeff says “T-Shirt!”

Jeff Deverter from Rackspace has to have one of the best designed swag shirts that I’ve seen. For those who have been to a SharePoint event in the past, you’ve probably heard of "SharePint", the unofficial gathering place for SharePoint after hours.

Jeff created a logo and t-shirt for the SharePint event at the Experts Conference going on right now in Los Angeles. He is thinking about ways to distribute them to the SharePoint community. Let’s see if we can help him out.

If you have a SharePoint user group, please leave the name of the usergroup, the group’s web site address, the number of people in the group and a contact name in the comments below. International addresses are fine.

The only request we have is that when you get the shirts, you must send Jeff a group photo with everyone wearing the shirt. Fair enough? I thought so.

Send your Thank You notes to Jeff.Deverter@RackSpace.com.

SharePint

SharePint Jeff

2010-04-26 This Week in SharePoint

The SharePoint Community keeps rolling along. This week there are 10 public events posted from around the world on the SharePoint Community Calendar.

  1. Central Region SharePoint Conference Omaha, NE 4/27/2010
  2. Image Capture & ECM Using SharePoint Webinar 4/27/2010
  3. Christchurch SharePoint User Group Christchurch, NZ 4/27/2010
  4. Roanoke Valley SharePoint User Group Roanoke, VA 4/28/2010
  5. Central Region SharePoint Conference, Kansas City Kansas City, MO 4/29/2010
  6. SharePoint Governance for Government Agencies: Maximizing Efficiency Without Compromising Security Webinar 4/29/2010
  7. Arizona SharePoint Professionals Group Phoenix, AZ 4/29/2010
  8. SharePoint Saturday Huntsville, Huntsville, AL 5/1/2010
  9. SharePoint Saturday Houston, Houston, TX 5/1/2010
  10. Train the Trainer Series, Online 5/3/2010

If you’d like to get your event listed, tweet it and include @TeamEUSP on the tweet and we’ll get it into the calenadar. Otherwise, leave it in a comment below and will pick it up from there.

What is SharePoint Out of the Box?

Bil SimserGuest Author: Bil Simser
Fear and Loathing

It�s always fun in the blog-o-sphere and SharePoint bloggers always keep the pot boiling. Bjorn Furuknap recently posted a blog entry titled Why Out-of-the-Box Makes No Sense in SharePoint, quickly followed up by a rebuttal by Marc Anderson on his blog. Okay, now that we have all the players and the stage what�s the big deal?

Bjorn started his post saying that you don�t use �out-of-the-box� (OOTB) SharePoint because it makes no sense. I have to disagree with his premise because what he calls OOTB is basically installing SharePoint and admiring it, but not using it. In his post he lays claim that modifying say the OOTB contacts list by removing (or I suppose adding) a column, now puts you in a situation where you�re no longer using the OOTB functionality. Really?

Side note. Dear Internet, please stop comparing building software to building houses. Or comparing software architecture to building architecture. Or comparing web sites to making dinner. Are you trying to dumb down something so the general masses understand it? Comparing a technical skill to a construction operation isn�t the way to do this. Last time I checked, most people don�t know how to build houses and last time I checked people reading technical SharePoint blogs are generally technical people that understand the terms you use. Putting metaphors around software development to make it easy to understand is detrimental to the goal. </rant>

Okay, where were we? Right, adding columns to lists means you are no longer using the OOTB functionality. Yeah, I still don�t get it.

Another statement Bjorn makes is that using the OOTB functionality kills the flexibility SharePoint has in creating exactly what you want. IMHO this really flies in the absolute face of *where* SharePoint *really* shines.

For the past year or so I�ve been leaning more and more towards OOTB solutions over custom development for the simple reason that its expensive to maintain systems and code and assets. SharePoint has enabled me to do this simply by providing the tools where I can give users what they need without cracking open up Visual Studio. This might be the fact that my day job is with a regulated company and there�s more scrutiny with spending money on anything new, but frankly that should be the position of any responsible developer, architect, manager, or PM. Do you really want to throw money away because some developer tells you that you need a custom web part when perhaps with some creative thinking or expectation setting with customers you can meet the need with what you already have.

The way I read Bjorn�s terminology of �out-of-the-box� is install the software and tell people to go to a website and admire the OOTB system, but don�t change it! For those that know things like WordPress, DotNetNuke, SubText, Drupal or any of those content management/blogging systems, its akin to installing the software and setting up the �Hello World� blog post or page, then staring at it like it�s useful. �Yes, we are using WordPress!�. Then not adding a new post, creating a new category, or adding an About page. Perhaps I�m wrong in my interpretation.


This leads us to what is OOTB SharePoint? To many people I�ve talked to the last few hours on twitter, email, etc. it is *not* just installing software but actually using it as it was fit for purpose. What�s the purpose of SharePoint then? It has many purposes, but using the OOTB templates Microsoft has given you the ability to collaborate on projects, author/share/publish documents, create pages, track items/contacts/tasks/etc. in a multi-user web based interface, and so on.

Microsoft has pretty clear definitions of these different levels of SharePoint we�re talking about and I think it�s important for everyone to know what they are and what they mean.

Personalization and Administration

To me, this is the OOTB experience. You install the product and then are able to do things like create new lists, sites, edit and personalize pages, create new views, etc. Basically use the platform services available to you with Windows SharePoint Services (or SharePoint Foundation in 2010) to your full advantage. No code, no special tools needed, and very little user training required. Could you take someone who has never done anything in a website or piece of software and unleash them onto a site? Probably not. However I would argue that anyone who�s configured the Outlook reading layout or applied styles to a Word document probably won�t have too much difficulty in using SharePoint OUT OF THE BOX.

Customization

Here�s where things might get a bit murky but to me this is where you start looking at HTML/ASPX page code through SharePoint Designer, using jQuery scripts and plugging them into Web Part Pages via a Content Editor Web Part, and generally enhancing the site. The JavaScript debate might kick in here claiming it�s no different than C#, and frankly you can totally screw a site up with jQuery on a CEWP just as easily as you can with a C# delegate control deployed to the server file system. However (again, my blog, my opinion) the customization label comes in when I need to access the server (for example creating a custom theme) or have some kind of net-new element I add to the system that wasn�t there OOTB. It�s not content (like a new list or site), it�s code and does something functional.

Development

Here�s were the propeller hats come on and we�re talking algorithms and unit tests and compilers oh my. Software is deployed to the server, people are writing solutions after some kind of training (perhaps), there might be some specialized tools they use to craft and deploy the solutions, there�s the possibility of exceptions being thrown, etc. There are a lot of definitions here and just like customization it might get murky (do you let non-developers build solutions using development, i.e. jQuery/C#?).

In my experience, it�s much more cost effective keeping solutions under the first two umbrellas than leaping into the third one. Arguably you could say that you can�t build useful solutions without *some* kind of code (even just some simple jQuery). I think you can get a *lot* of value just from using the OOTB experience and I don�t think you�re constraining your users that much.

I�m not saying Marc or Bjorn are wrong. Like Obi-Wan stated, they�re both correct �from a certain point of view�. To me, SharePoint Out of the Box makes total sense and should not be dismissed. I just don�t agree with the premise that Bjorn is basing his statements on but that�s just my opinion and his is different and never the twain shall meet.

Bil SimserGuest Author: Bil Simser
Fear and Loathing

Bil Simser is an independent Solutions Architect with over 15 years in software development. In his role as a mentor, he guides clients on how to implement development standards and guidelines, evaluates and recommends new tools and technologies, and helps teams and projects progress into the .NET world. Bil has been a Microsoft SharePoint MVP since 2004 and a member of the MSDN Canada Speakers Bureau. Bil currently lives and works in Alberta, Canada, with his wife, daughter, a Beowulf cluster of computers, every gaming console known to man, and a small menagerie of animals.

[tweet]