Skip to main content

The SharePoint Blog

Go Search
Home
About
SharePoint Events
SharePoint Bookshelf
Tools
  

 Current News and Notes

There are currently no active announcements.
Regulate Branding, Master Pages and SharePoint Designer in SharePoint 2010 [Governance]

Let’s start off the article by saying that I am a very big proponent of Microsoft’s SharePoint Designer (SPD) product because it allows end users, administrators, designers and developers the opportunity to make changes that can directly impact productivity without the introduction of managed code. That being said, there are some issues that come with providing the freedom to do what is needed to maintain a SharePoint site, especially if someone else is on the hook if a person deletes a site, rebrands a page or causes other acts of madness with SPD.

One of the great features of Microsoft SharePoint Server (MSS) 2010 is that as a Farm Administrator I can check a couple of boxes and access to my farm’s site with SPD and other types of changes is DENIED! But let’s try to be a little more open-minded than taking the easy way out and just shutting everyone out of the fun.

Before we look at the code, let’s figure out what we want to do. The options are as follows:

  • Allow the use of SPD
  • Allow Master Page editing
  • Allow users to Revert from Template
  • Show URL Structure

The following lines of code can help you implement one measure of Governance, and some sense of sanity, within your SharePoint farm.

  1. SPSite site = SPContext.Current.Site;
  2.             // Check to see if the properties have been previously set by Admin and if so, retain those values
  3.             // These properties change the settings in Site Collection Administration for the SharePoint Designer Settings
  4.             site.AllowUnsafeUpdates = true;
  5.             site.AllowDesigner = IsSiteDesignerAllowed(site);
  6.             site.AllowMasterPageEditing = IsMasterPageEditingAllowed(site);
  7.             site.AllowRevertFromTemplate = IsRevertFromTemplateAllowed(site);
  8.             site.ShowURLStructure = ShowSiteURLStructure(site);
  9.             site.Dispose();

The code above is reflected in the UI within SharePoint’s Central Administration:

image

Let me try to explain what each option allows you to limit. First we have to the ability to limit SPD. In this case, we’re allowing the site administrators to edit sites with SPD. This is also scoped at the SPSite level, as well. deselecting this option will deny users to make changes via SPD.

Next is the “Detach Pages from Site Template”, which allows users to create their own design based off a template. It’s the equivalent of copying a template so it can be available in a stand-alone fashion.

“Allow Site Collection Administrators to Customize Master Pages and Layout Pages” enables changes to be made to those specific pages. This would significantly impact branding if you let users change the Master Page at will.

Finally, we have the ability to let users see (and manage) URL Structure. Moving pages, see which folders and files exist are just some of the examples.

So the purpose of showing the images is not for the code, but to show the potential flexibility that you have within your farm to allow some site collection administrators access to the tools needed, or restrict the use of those same tools to others.

As far as the code, a developer could continue with this and develop a feature where an administrator could turn on or turn off access on each Site Collection (SPSite) as needed. I like the fact that this solution is flexible and helps you govern your environment and the choices can be tuned on an as-needed basis.

Managing SharePoint with the (Right) Team

The first concern that a manager or a person assigned to a SharePoint implementation asks is “How many people will I need to manage the environment effectively?”. It might be written someplace, or maybe an expert can reveal a certain amount of staff per user ratio, but honestly, I haven’t seen it yet. At least from a real-world perspective there is not a “silver bullet” that you can bring to your leadership and have them sign-off on the expense of running your team. Again, there might be ideal numbers, but what it’s going to come down to is a negotiation between you and your leadership as to how many headcount can be added to your project/department budget.

Arguing Against the Mythical “Rock Star” SharePoint Team

Before we start this portion, I believe the only “Rock Star” SharePoint teams exist at Microsoft, top-level Independent Software Vendors and Consulting companies. I do think there are experts in the field that are above-and-beyond all levels in the Enterprise and Small and Mid-sized Business (SMB) market. So for deployments in general, call in the experts in the beginning and then start assembling a concept that is used in the NFL (and other sports), where teams draft the “best player available”. So the experts of the world are the “first and second round draft picks”, the people that will get you up-to-speed while you get your team where they need to be. Your mission as the leader/manager of the implementation is to find the best SharePoint people you can find. This task is hard enough, but as the economy continues to get stronger and demand for SharePoint professionals continues to grow (hard to believe but will happen) you will be happy to get people who can skillfully work as a team for your users.

My argument against retaining the “SharePoint Rockstar” is that you will spend 50% on one person, versus getting two people that can really help your deployment with support and operational concerns. Also there is a satisfaction-factor that needs to be accounted for. In a few months/years the person could get bored and move on an set you back to square one. This can happen with any employee, for many reasons, but if they’re a “rock star”, they want to be challenged and work with the latest technologies and if you do not offer that, that will put you in a precarious position. That’s why the “rock star” should be in highly dynamic environment where they are fed with this type of desired experience.

Do You Want a Scalpel? or a Swiss Army Knife?

This is another misconception that might bite you, having specialists in your deployment teams. If you are a large corporate team that needs a development team, a network/administration team, and a support team then you might be in a special situation initially, but I would say only 20% of the companies fall in that situation, the rest need an all-around SharePoint person whom is moderately experienced with a SharePoint skill (Admin or Dev), willing to learn what’s needed, can follow the published governance plan and can efficiently bounce from the various lanes that will inevitably appear in a day’s work. Working with the Help Desk or end users is a huge plus that can improve your customer service, as well.

The argument of having a person who *just* does dev or admin is a limiting factor that can determine how your team performs. Remember, think “Swiss Army Knife” during the first few years, there are going to be issues that come up where multiple hats and skills are needed. A developer cannot do an admin’s job and vise-versa, but an admin-focused person can help a development-focused person with tasks that involve Out-of-the-Box (OOTB) requests that a user has on a daily basis and after a couple requests can understand the concepts to study the required actions to finish the job in the future. That falls into the “Smart person” category. Someone once told me “You don’t have to remember everything, you just need to know where to find it”. This is appropriate in that you want people who can provide answers on a variety of topics, not a subject expert in one particular area. Build your team so they can cross-train into all areas.

Proposing an Organization

So this is what we really want to know, how many people and what type of roles do we need to be successful moving forward in the future? The short answer: it depends on how many people you have to support.

Let’s look at a small enterprise implementation with 5,000 users to support. You need the following roles:

  • Manager, Lead or Project Manager (whatever your organization has identified as a responsible party)
  • Three SharePoint resources (an admin with development experience, or a developer with admin experience)
  • One customer support person that works on lower level requests, or train your help desk to assist you with these calls.
  • Either a Database Administrator, or a resource in your organization that can handle the duties On-Demand. Some organizations might have SQL Server DBAs that can handle these tasks if given the right information to execute when needed.

That’s it, the multiplier is different whether SharePoint is hosted on-premise, in the Cloud or by a hosting provider. As an example, you might be able to forgo a DBA because your hosting provider supports the SharePoint databases in the farm, so one less person to have on staff.

In the end, You Know Your Organization, so Plan Accordingly

Different organizations need to focus on different objectives to be successful, so know what you need and focus your human resources on that task at hand. If you require custom functionality and have developers on-hand to meet that need, gravitate to those projects. If you have a lot of users who need training and a lot of hands-on help to get initiatives going, have a support-minded staff. Which ever way you choose to go, turning the ship around takes a more than a little time, so before that first person is assigned to your project/team, make sure that person will be successful and has the skill set for the work you are having them do for your team.

Everyone should be acutely aware in both good and bad years that very few leaders are going to give a team the organization to support a SharePoint farm with best-scenario staff numbers so having the flexibility to adjust is going to the biggest dividend related to your deployment. Building a team that will successfully launch the use and maintain a high level of supporting SharePoint is both challenging and rewarding, and like in most technology projects, finding a balance of people and process is the key to it all.

How Architecture and Environment Choices Impact SharePoint [Governance]

The starting decision around governance start with a couple of tightly coupled topics: Architecture and Environment choices. These two areas will determine the success of how your future work will be perceived by your users, sponsors and staff. Architecting a solid frame on how your SharePoint farm will perform and scale for the work that it’s intended to perform.

Some of the questions that need to be asked:

  • How do we want to approach hosting the farm?
    • On-premise hosting
    • Outsource
    • Cloud-based services
    • Hybrid of On-premise and Hosted
  • What type use are we expected to provide?
    • Internet Public-facing Websites
    • Extranet
    • Portal
    • Collaboration and document sharing
    • Applications
    • Records management
  • What will we promise (Service Level Agreements (SLAs))?
    • Disaster Recovery
    • High-Availability
    • Global deployment

Let’s start with the who/where your farm will be hosted.

As outlined above, you can see we have some options, but the who and where you host your farm will be the biggest factor of governance because if you select on-premise hosting, there is an amount of control that you can implement and also have to “fill-in more blanks” when you develop a governance plan. This article will discuss explicit hardware or networking but we broach some areas that are not considered on a “typical” deployment

How will we build out our farm?

Let’s just say that we are selecting a Proof of Concept (PoC) strategy where we have been commissioned to build an environment that will “get us by” until we are fully funded. To me, this is a problematic start where governance is concerned because you are asked to stand something up quickly, but you’re probably taking servers that are available and then the environment turns into the future production environment. That’s a bad situation that happens too often, but I digress. Back to our PoC, so when we get “foster” servers for our environment, make sure the hardware AT LEAST meets minimum hardware requirements for SharePoint 2010 (or 2007). At this point, make sure you plan for a successful upgrade or project acceptance and use the SharePoint 2010 requirements, you might only get one shot to go to the well to get money for the servers you need (“Go Big or Go Home” strategy).

Hosted solutions are better than they were a couple years ago, maybe that might be your route. You might not even have a choice, because more and more CIOs/CTOs are opting for this model to remove costs from their operating budgets. Most hosted options require less licensing (Windows and Support) and are handled different from an accounting side, so that is very attractive for mid-size and Enterprise-level organizations. Hosted (or Cloud) solutions also require less administration from internal staff, but have guidelines and governance for their own infrastructure, but this means you will have to know and utilize their rules structure. Hosting companies could meet your needs are now in the business of planning and building your infrastructure for size, scale and other deployment issues. To tie-in to hosted or cloud services, there are also outsource providers (possibly off-shore) that host your servers, just like your company, except physically off-site and managed by a separate technical staff.

What do we want to do with SharePoint?

This impacts our infrastructure and how we move forward, but we have to know which direction we’re going in, before we starting building out an architecture, or even solidify our requirements. Building out an appropriate hardware infrastructure means know what you need to get out of it. Determine if employees-only are your users, or external and internal, or anonymous users from an Internet website.

Most companies start with document sharing and collaboration features within SharePoint, unless there is a specific business need. Fulfilling those needs are centered around storage, Disaster Recovery (DR) / High-Availability (HA) and User Experience (UX). Users’ acceptance of the platform is vital for PoCs and once you are in production the primary need users demand is space for their documents. Nothing kills enthusiasm to collaborate than to provide the tool and not plan or implement a solid storage plan. For site collections, if you offer less than 2GB, you need to figure out how to expand the largest of your user’s need. Groups with large files (images, CAD drawings, versioned word documents) can eat up a major of a site’s (or web’s) space once uploaded so you will have to figure out how to handle these collections that outgrow your current standard site collection.

Special Considerations for Your Deployment (Yes, you’re Special)

If you have the understanding that the world is not flat, you’re going to make your deployment a hit when you figure out if you need WAN Accelerators, or even if you want to have separate smaller farms (again, what are you doing). Do you need your farm available 24/7 or is there a business time frame that will suffice? What happens if you’re primary site goes down, or worse catches fire or destroyed? How long can you go without SharePoint? Do you have multiple support groups working on the farm(s) and do they follow the same operating practices?

Touching on internal staff managing the SharePoint platform, if custom solutions (managed ASP.NET code) then development, testing and staging environments need to be an integral part of how you promote code through your farm. If you work with consultants, contractors or vendors, let them know what you're doing and how they can move their deliverables into production. 

Next: What are your staff requirements?

Our next discussion will center around people. After you’d hired the consultants and contractors, is how many people do you need to permanently manage your SharePoint farm, what they should do and how will these staff support your users.

Starting your Implementation Begins (And Could End) with Governance [Governance]

Microsoft has built and sold one of the most successful products in the Enterprise space ever and with that comes a lot of possibilities, responsibilities and problems to solve. Once you’ve committed to the licenses and hardware, trained your staff to deploy, hired consultants to help and gained approval from your executives, it’s time to build a solid of understanding how you will support your users and what will be allowed and disallowed in your shiny new SharePoint farm.

Let’s look at what you’ll need to consider at a glance and more information about each of these topics will be posted in the future.

As a consultant at, and an employee of, Fortune 50/500 companies, I have seen governance become a huge issue that rears it’s head throughout the deployment lifecycle and in supporting your customers. Another trait that it is equally important is the Enterprise discipline required to keep your collaboration and application platforms consistently meeting the needs of your sponsors and business to provide the real value expected from the rollout of any technology, to include SharePoint.

Let’s look at some of the issues all organizations can consider before deploying SharePoint and maybe it might help in other technologies, as well.

Surprising Power for Free – Sun’s VirtualBox [Review]

Since Microsoft announced that the next version of SharePoint would require a 64-bit operating system, I have been on the hunt for a virtualization product to enable the creation of virtual machines. I will state that I am a big VMWare proponent because of it’s flexibility and consistency, but recently tried Sun’s VirtualBox product because of a customer’s need and found the performance and ability to spin up VMs to be very easy and noticed some of the robust features which I paid for when I bought VM Workstation.

First, the setup process after the install was intuitive and offered a bunch of options that I had with VMWare’s product. I quickly setup my VMs and started installing the bits required for my guest OS. I provided the same amount of RAM that I usually do for VMWare or VirtualPC and then fired up my first VirtualBox VM.

One name that I just mentioned, but is surprisingly out of the mix, is Microsoft’s VirtualPC and their lack of 64-bit guest OS will bring this competition down to two vendors at this point. Now for the point of clarity, you can boot a VHD from Windows 7 or use Hyper-V on Windows Server 2008 to accomplish your virtual needs, but there are pros and cons for these approaches that I will let you explore.

One feature that I really thought was an excellent addition was the “Snapshot” feature, which allow you to capture the current state of the VM if you choose to roll-back after changes that go awry.

When you start to create a VM, you have the following flavors of operating systems…

image

With more options under each major OS…

image

 

image

The “File” options are as follows:

image

Virtual Manager: Allows you to view all your created VMs.
Import/Export Appliance: Import or Export pre-configured appliances.
Preferences: Adjust or add options to your specific VM
Exit: Stops execution of VirtualBox

 

 

Under the “Machine” options, the following straight-forward functions are available:

imageNew: Create a new VM
Settings: Adjust the options for the current VM
Delete: Removes the VM from the console and hard drive.
Start: Fires up the VM.

 

 

 

 

 


Some of the options include the ability to enable more than 1 CPU for your machine…

image

Or adjust your RAM assigned to the VM…

image

Finally, I will say that I was biased against the product before I installed it, but the more I use it, the more I like it and can recommend the product to others. I think developers, small- and mid-sized companies can take of advantage of the product. Some large corporations could be apprehensive to adopt this product because it’s open source, but others might embrace it with open arms, depends on the corporate culture. I think it’s worth a try.

SharePoint is Keeping Me Very Busy: Speaking, Writing, Microsoft Certifications and Deploying Solutions

The past few months for me have been very hectic and continue to be that way and the one constant in this pattern is SharePoint. My schedule for the next few months has some major milestones involved and I only see it’s going to be busier.

Right now, this is what I have on my plate:

  • Scheduled to speak at SharePoint Charlotte on April 10th about Microsoft’s SharePoint Online. I have two more submissions completed for more SharePoint Saturday events (SPS DC and SPS Tampa).
  • Starting a series on “Default SharePoint Web Parts” on End User SharePoint which will outline the Out-of-the-Box (OOTB) SharePoint Web Parts in SharePoint 2007 and 2010.
  • Taking the first of three Microsoft certification tests to enhance current MCTS “status”.
  • Completing a major deployment at work.
  • Building content for a new session that I am going to present in the next few months.
  • Learning SharePoint 2010.

I’m glad that I have the opportunity to continue to participate in the SharePoint community and want to continue to build upon my experience and share that experience with others. I am also focused on building and deploying quality solutions to my clients and hope to expand my knowledge by providing value to my company and build a plan for success in the future.

Internet Explorer 8.0 Developer Tools – Test CSS Changes by Using a Content Editor Web Part (CEWP)

A new feature baked into Internet Explorer allows finding and changing SharePoint styles a little easier without using FireFox or any additional add-ins. The IE 8 Developer Tools is an "Explorer-Style" browser that lets you click on an area of a SharePoint page and see which style you can modify or override. In this example, I am going to show you how to add a Content Editor Web Part and in the content area, override the styles so you can see how to impact your SharePoint design without modifying the primary CSS file.

First, open IE 8 and either click on “Tools”, then “Developer Tools”, or press F12 to directly access the tool. FromSmall_Toolbar there you should see the following tool bar options.  The primary area we are going to focus on is the “Select Element by Click” (Ctrl + B) tool to get us started. Click on the icon so we can start changing your SharePoint site.

QuickLaunch_HighlightedNext, open your SharePoint site and start hovering over areas you’d like to change. In this case, I am going to select the “Quick Launch” so I can change some elements of that area. The blue border around the “Quick Launch” is going to be our primary target of our changes and this is how the Developer tool identifies the IE8 Dev Toolbar Resultsselected CSS class.

In the results pane, you will see the class that we can manipulate is “ms-quicklaunch” and in the right pane you will see references to the master CSS file, the sub-classes available, and classes that have been overridden (strikeouts). In this case, the biggest impact we will see with changing the Quick Launch will be to hide it. SO we are going to override the classes display property so that it becomes “hidden”.

Next, add a Content Editor Web Part to your page and modify the web part by going into the “Source Editor” and adding some code. Select CEWPPaste this code into the CEWP:

<STYLE TYPE="text/css">

.ms-quicklaunch {

      display: none;

}

</STYLE>

Click “OK” to accept the changes, then exit “Edit Mode” and your changes will then take effect.

Empty Quick Launch 

Voila, it’s hidden (not deleted) and you can now move on to other classes.

This is just the tip of the iceberg for all the changes that you can test and experiment with on a test site (always test on a local development environment). You can change the way web part background colors appear or change the Web Part title background color, or hide other elements of the SharePoint page. These changes only impact one page of your site, but you can take these changes and create an alternate CSS files to utilize or work with your development team to have the changes integrated into their design. I find this to be a quick way to test designs and love the built-in functionality that I had previously used FireFox extensions to accomplish the same feat.

Remember, once you remove the CEWP, the style no longer overrides the CSS used in SharePoint so if there is an issue, just delete the CEWP from the page to have the site inherit the style from the default CSS file.

This is a pretty straight-forward process and you can see the basics of how to use the IE 8 tool and will save users and developers a time trying to figure out which class they can change to impact their pages.

2009 Recap:Ups and Downs, But Ending on a Great Note

The old saying states “it’s not where you start, it’s where you finish” and 2009 has been a great personal example of this philosophy. 2009 has been very difficult from a personal point of view with all the change that has happened from month-to-month, but with all that instability I have learned to be flexible. I’m glad for all the things that have happened this year even if they have not been all experiences I would like to repeat.

From a SharePoint perspective, as a consultant I was exposed to a bunch of new concepts and put in scenarios where I learned new features and functionality and will use those starting the new year and decade. I thought the highlight of the year was attending the “SharePoint Conference 2009” in Las Vegas and various “SharePoint Saturday” events. Now Vegas was ok, but the amount of information and the people that I met that week were the best part of attending the “SharePoint Conference”.

Starting my company, PointLogix LLC, has been an eye-opening experience that is still a work in progress, but glad I took the plunge in February to control more of my work and life. There are many obstacles to starting my own business, but luckily there were opportunities that I had during the year that allowed me to market and build upon.

This brings me to the end of the year. Well, just as I said owning my a business was very exciting and allowed me to build something from the ground up, it also comes with a variety of pitfalls that I cannot financially account for, so effective January 1, 2010 I have accepted a new position as a “Senior SharePoint Consultant” at RDA Corporation, where I will work with clients on customization, governance and best practices, potentially training, and hopefully Business Intelligence as it relates to SharePoint. I am very excited and with this new position there are some items that I have set to accomplish in a very short period of time.

First up is certification. I am currently an Microsoft Certified Technology Specialist (WSS Configuration), but by June I should have completed 3 other certs as a requisite for my position. I’m not terribly excited about taking tests, but looking forward to the learning that will help both me and provide value to my future employer.

Next on the plate is speaking at events, my goal is to speak at 10+ SharePoint events, to include “SharePoint Saturday” and local SharePoint User groups. Sharing information is very important to me as I learn by explaining to others and think that others can learn from my experiences. This objective also includes blogging more about technical and non-technical issues on this very blog. I think that I have missed the opportunity in the last 6 months based on the types of work that I have done, so that will be a focus in 2010.

Finally, digging into SharePoint 2010 will be the other objective for the year. With the latest product coming out, and probably be asked for by many of my new clients I will need to continue to understand how SharePoint 2010 will be used and can be used with large and mid-size businesses. I am especially looking forward to understanding the Business Connectivity Services (BCS) and PerformancePoint Services.

So with the best laid plans that I have concocted for 2010, seems like I have going to have an incredibly front-loaded schedule for the first portions of the year. Looking forward to 2010 and wish everyone a Happy New Year.

“SharePoint in the Cloud” Presentation from SPSDC

December 5th, I was lucky enough to be able to speak and meet some great SharePointers at SharePoint Saturday DC. The topic I presented was about moving to the cloud with SharePoint and I provided my “dos and don’ts” based on my experience with Doosan/Bobcat in 2008. When I submit my topic to the SPSDC committee, I was not sure if there was any traction in the community for the new service, but I had a pocket of interest in the subject and I am thinking there will be continued interest in 2010 when purse strings start to open up and companies start working on larger initiatives.

SharePoint Saturday DC was a great success, especially with the small snow event that showed up during the day. There were over 160 people who attended the day's activities, to include attendees, speakers and sponsors. Thanks to all who attended and especially for those who provided feedback to my session. Looking forward to reading all of the responses in the near future.

The next SharePoint Saturday DC event is scheduled in May 2010, so I am looking to offer a different topic that will be more technical.

Here’s my presentation: "SharePoint in the Cloud" on SlideShare.net

SharePoint Saturday D.C. : SharePoint in the Cloud – Migrating and Operating in a Hosted Environment

Thursday, I was informed that my session for "SharePoint in the Cloud – Migrating and Operating in a Hosted Environment" will be on the agenda for SharePoint Saturday – D.C. on December 5th in Reston, VA. I am really excited about the opportunity to present and meet other SharePoint professionals in the D.C.-area. The last event in May was very well attended and I learned a bunch about some of the concerns of the public sector attendees.SharePointSatDC

In my session, I am going to focus on the broad strokes about what a Service-based model looks like from a customer perspective and address the pros and cons of the entire process. Also, I am going to review how a cloud strategy impacts your organization from a customization and support angle.

I have a lot to do over the next few weeks (WSS Certification, presentation preparation, Thanksgiving) but I am looking to the opportunity to share and learn at SharePoint Saturday DC! I will post the presentation to "The SharePoint Blog" after I have presented.

To learn more about the event, visit the SharePoint Saturday DC site, or if you are on Twitter search by #spsdc.

1 - 10 Next

 ‭(Hidden)‬ Content Editor Web Part ‭[2]‬

 SharePoint Blog Sponsors

A registered Microsoft® Partner Specializing in SharePoint Technologies for the Global, Small-, and Mid-sized Enterprise. To learn more about what PointLogix can do for you, visit their web site at www.pointlogix.com.

Database of ZIP Codes

Locations of visitors to this page

 Follow Ken Price on Twitter

 Previous Posts

 ‭(Hidden)‬ Admin Links