The SharePoint Journey

Microsoft Ignite will open the window to our vision, strategy, and future for SharePoint and provide a first look at most recent developments with SharePoint Server 2016.  From the business value for organizations looking to modernize their workplace and infrastructure to the technical value it will deliver to IT Professionals and Developers as well as new hybrid investments for those customers looking to enrich their existing investments with cloud innovation.

With Microsoft Ignite just around the corner, it’s time to look back and provide a little historical SharePoint information.

There have been 5SharePoint releases.

1997-1998

“Exchange and SharePoint become best friends”

Exchange Server works on a new information store (Web Store) to support document, web content, and e-mail management.

Codename Tahoe (the genesis of SharePoint Products and Technologies) advances Platinum introducing document management capabilities through WebDAV – Document Authoring and Versioning in addition to an improved search and indexing engine.

Platinum and Tahoe would represent a new, next generation messaging, collaboration, and document management platform.

Learn more about the evolution of SharePoint’s storage architecture at http://blogs.technet.com/b/wbaer/archive/2012/12/20/shredded-storage-and-the-evolution-of-sharepoint-s-storage-architecture.aspx.

1999

“A gem is found in nuggets”

Microsoft makes available a free download called Digital Dashboard Starter Kit introducing our first portal framework.   Solutions based on the starter kit enabled a user interface that could reside within Outlook through visual aids called “nuggets” that displayed information from a variety of content sources – “nuggets” would later take on the name Web Parts.

2000-2001

“A rolling milestone gathers no moss”

Tahoe reaches its beta 1 milestone in early 2000 and the Digital Dashboard Starter Kit is renamed the Digital Dashboard Resource Kit.  In mid-2000 Tahoe reaches another important milestone (Beta 2) with important changes to include a new user interface based on the Digital Dashboard Resource Kit creating a “true” portal user experience and subsequently retiring its codename in favor of SharePoint Portal Server 2001.

2001

“So it begins”

SharePoint Portal Server 2001 is released and creates a portal web site that allows users to share documents and search for information across the organization and enterprise, including SharePoint Team Services-based Web sites—all within one extensible portal interface. SharePoint Portal Server includes robust document management features that allow companies to incorporate business processes into their portal solution, but is limited by the Web Store and Digital Dashboard.

Web Store performance and scalability limited the expansion of SharePoint and Digital Dashboards were developed outside of the core development platform (Visual Studio) which limited the audience for extensibility.

In parallel the fledging portal market began to see unprecedented growth and overlap with the existing  Web Content Management (WCM) market which included CMS 2001.

As the growth and adoption of SharePoint Portal Server 2001 continued to rise in the then new portals market, SharePoint Team Services was released in conjunction with Office 2000 providing web-based team-centric collaboration capabilities.

Untitled

2002-2003

“Raise the roof”

The Web Store, the storage foundation for SharePoint Portal Server 2001 is replaced with SQL Server as the storage backend – on the other side of the topology Digital Dashboards were phased out in favor of ASP.NET improving overall scalability and portal capabilities at the expense of some document management capabilities, notably document profiles and workflow that were to be removed from the upcoming SharePoint release.

This was also a tumultuous time for SharePoint Team Services – but in the end the teams responsible for SharePoint Portal Server and SharePoint Team Services were converged.  In parallel to the changes affecting the technologies that powered SharePoint, CMS evolved as well leveraging ASP.NET on the frontend and delivered as CMS 2002.

In 2002 SharePoint Team Services officially was renamed as Windows SharePoint Services (WSS) and packaged in Windows Server 2003 as a Feature of the server – like SharePoint Portal Server it also provided a collaboration store and Web Part user interface build on ASP.NET.

In this same period SharePoint Portal Server (v2 at the time) was officially branded Microsoft Office SharePoint Portal Server 2003 (no longer referred to as codename Matrix), built on top of Windows SharePoint Services, but delivered independent of Windows Server 2003.

sharepointserver2003

This new release contained important scenarios such as search and indexing, but also ushered in personalization (people-centric collaboration), and enhanced taxonomy capabilities with improved overall manageability.

2004-2005

“Got SOX”?

SOX or Sarbanes-Oxley is introduced to the world and changes document and records management practices.  In response, the CMS and SharePoint Portal Server groups converge in 2004 and Web Parts built using ASP.NET were enabled for developers.  The extensibility era begins…

Near the end of 2005 ASP.NET v2 launches to include new native Web Parts and Windows Workflow Foundation becomes a native add-on to Windows Server that provides a new workflow service that other applications can build on.

2005

“Time to Groove”

In 2005, Grove was acquired, a peer-to-peer (P2P) team-based collaboration product that also includes synchronization of SharePoint sites.

2006-2007

“Who puts MOSS on a server anyway”

Microsoft Office SharePoint Server 2007 is born signifying a leap forward in experiences.

Microsoft Office SharePoint Server 2007 was defined as a Microsoft server product that creates a portal website that allows users to share documents and search for information across the organization and enterprise within one extensible portal interface.

SharePoint-2007

Windows SharePoint Services moves forward, but now as a standalone product versus Windows Server feature.

Groove Server 2007 is released with Microsoft Office SharePoint Server 2007, which provides the server software and tools that IT organizations can use to best deploy, manage, and integrate the Groove functionality that comes with the new Groove 2007.

2009

SharePoint Server 2010 is released, the first in two successive releases to drop the Microsoft Office branding.

SP2010

Groove is renamed SharePoint Workspace and released as Microsoft SharePoint Workspace 2010, the server management platform remains Groove Server and released as Groove Server 2010.

2012

10/11/12 the world is introduced to the most recent generation of SharePoint Products and Technologies, SharePoint 2013.

prev_EN_ShrPt_Srvr_PT_C_rgb

Personal sites, a staple of SharePoint people-centric collaboration are rebranded and paired with a new sync client powered by Groove as SkyDrive Pro, over the course of the SharePoint Server 2013 release these capabilities will become OneDrive for Business.

2015

The next generation of SharePoint is revealed as SharePoint Server 2016 – want to learn more…  Register now for Microsoft Ignite.

ULS Viewer and SharePoint 2010

So you downloaded the ULS Viewer and fired up on your SharePoint 2010 environment only to see something like this?

—-

System.TypeInitializationException: The type initializer for 'UlsGump.AboutForm' threw an exception. —> System.TypeLoadException: Could not load type 'System.Reflection.CustomAttributeExtensions' from assembly 'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

   at UlsGump.AboutForm..cctor()

   — End of inner exception stack trace —

   at UlsGump.MainForm.MainForm_Load(Object sender, EventArgs e)

   at System.Windows.Forms.Form.OnLoad(EventArgs e)

   at System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)

   at System.Windows.Forms.Control.CreateControl()

   at System.Windows.Forms.Control.WmShowWindow(Message& m)

   at System.Windows.Forms.Control.WndProc(Message& m)

   at System.Windows.Forms.Form.WndProc(Message& m)

   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

The problem lies in that the ULS Viewer (well mscorlib) is looking for the .NET 4 version of mscorlib.  Installing Microsoft .NET Framework Version 4.5 should resolve the issue.

SharePoint 2010 installs Microsoft .NET Framework Version 3.5 SP1 whereas SharePoint 2013 installs Microsoft .NET Framework Version 4.5.

ULS Viewing Like a Boss (ULS Viewer is now available)

I’m excited to announce we’ve published a new and improved version of the ULS Viewer.

About the Unified Logging Service

The Unified Logging Service (ULS) is the primary logging mechanism in SharePoint to make it easier to develop applications, expose in-depth information for debugging, and vehicle to isolate problems or threshold issues when they are encountered.  ULS writes events to the Trace Log and stores them in the file system.

For Developers ULS logs act as an extension of existing development tools as another debugging facility, in some scenarios, mitigating the need to attach a debugger to isolate an event.

For IT Professionals and support personnel ULS logs provide enough information and metadata to help determine the course of action necessary in resolution of an event and expedite support escalations where required.

The ULS Viewer provides a solution the enables presentation of ULS Log entries in a human readable format to aid in troubleshooting.

New ULS Viewer Features

Monitor multiple servers simultaneously, because we know you need to troubleshoot more than just a standalone server…

ULS1

Personalize the output with the option to edit formatting.

ULS2

Support for locating a specific log line within one or more ULS Logs based on a command line argument which enables other tools and solutions can leverage ULS Viewer as an external log viewer.

Example:

ulsviewer.exe –fileat:<logpath>@<time>

Time format is yyyy/MM/ddTHH:mm:ss.FF

Support for opening multiple ULS Log files in a single tab based on a command line argument which enables other tools and solutions can leverage ULS Viewer as an external log viewer.

Example:

ulsviewer <file1> <file2> … -combine

Optionally you can combine with "-fileat":

Example:

ulsviewer -fileat:<file1>@<time> <file2> … -combine

Fixed in ULS Viewer

Resolved updating defined filters while in paused state which provides IT Professionals and Developers an additional tool to isolate issues in high trace flow environments.

Fixed Find Again command missing matching entries.

Fixed issues with multi-line messages.

Applies more strict filter with RegEx when finding the uls log files in the log folder so that non-uls log files are not picked.

Download

To download the ULS Viewer visit http://www.microsoft.com/en-us/download/details.aspx?id=44020.

Windows PowerShell Command Builder 2.0

A new updated version of the Windows PowerShell Command Builder is now available.

The Windows PowerShell Command Builder for Microsoft SharePoint 2010, Microsoft SharePoint 2013, SharePoint Online, and Microsoft Office 365 is an HTML 5 application that is designed to help IT professionals and power users learn how to use Windows PowerShell for administrative tasks.  The Windows PowerShell Command Builder enables IT professionals and power users to visually assemble commands related to SharePoint 2010, SharePoint 2013, SharePoint Online, and Office 365 in the browser and take those commands to their respective products. 

The new HTML5-based Windows PowerShell Command Builder can be accessed at http://technet.microsoft.com/en-us/sharepoint/jj672838.aspx and provides many of the same capabilities as the previous Silverlight version such as offline access.  In addition to providing support for SharePoint Server 2010, SharePoint Foundation 2010, and Office 365, this version also introduces support for SharePoint Server 2013, SharePoint Foundation 2013, and SharePoint Online.

To learn more about the Windows PowerShell Command Builder read the Windows PowerShell Command Builder Getting Started Guide.  To begin using the Windows PowerShell Command Builder see SharePoint Server 2010 – Windows PowerShell TechNet.

NOTE

The Windows PowerShell Command Builder constructs commands that can be used with SharePoint Foundation 2010, SharePoint Server 2010, SharePoint Foundation 2013, SharePoint Server 2013, SharePoint Online, and Office 365.

SharePoint 2010 System Requirements

SharePoint 2013 System Requirements

Office 365 System Requirements

About Windows PowerShell

Windows PowerShell is a task-based command-line shell and scripting language that is designed especially for system administration. Built on the .NET Framework, Windows PowerShell helps IT professionals and power users control and automate the administration of the Windows operating system and applications that run on Windows, such as SharePoint.

Windows PowerShell Names

Windows PowerShell uses a "verb-noun" naming system, where each cmdlet name consists of a standard verb that is hyphenated with a specific noun.

Verbs

Windows PowerShell uses the term verb to describe a word that implies an action even if that word is not a standard verb in the English language. For example, the term New is a valid Windows PowerShell verb name because it implies an action even though it is not a verb in the English language.

Common verbs that are used within the Windows PowerShell profile for SharePoint 2010, SharePoint 2013, SharePoint Online, and Office 365 include:

  • Get
  • Set
  • Add
  • Remove
  • New
Nouns

Nouns are very much like nouns in any language. They describe specific types of objects that are important in system administration. Nouns generally describe what a command acts upon. It is easy to demonstrate how these two-part names make it easy to learn how to use Windows PowerShell by looking at a few examples of verbs and nouns.

Verb

Noun

Cmdlet

Get

SPSite

Get-SPSite

Add

SPUser

Add-SPUser

The Windows PowerShell Command Builder provides access to some of the most commonly used routine verb-noun combinations with SharePoint 2010, SharePoint 2013, SharePoint Online, and Office 365. Additional verbs and nouns are added periodically when the application is refreshed.

Using the Windows PowerShell Command Builder

To begin using the Windows PowerShell Command Builder, click the Windows PowerShell Command Builder link in the Windows PowerShell for SharePoint Server 2013 Resource Center. The Windows PowerShell Command Builder will open in the browser and default to the SharePoint Server 2013 product – meaning only those cmdlets available to SharePoint Server 2013 will be presented in the user interface.

The Windows PowerShell Command Builder User Interface

The Products dropdown includes SharePoint Foundation 2010, SharePoint Server 2010, SharePoint Foundation 2013, SharePoint Server 2013, SharePoint Online, and Office 365.

The Windows PowerShell Command Builder user interface distributes the necessary objects across the following three (3) dimensions: 1. Verbs, 2. Nouns, 3. Design Surface. The Verbs dimension contains verbs that are associated with the product that is selected in the Products dropdown. The Nouns dimension contains nouns that are associated with the product that is selected in the Products dropdown. The Design Surface is where verbs and nouns are combined to begin generating a Windows PowerShell command associated with the selected product.

Builder1

Figure 1 Windows PowerShell Command Builder Environment

NOTE

All verb-noun combinations that are available to SharePoint Foundation 2010 are included in SharePoint Server 2010 in addition all verb-noun combinations that are available to SharePoint Foundation 2013 are included in SharePoint Server 2013.

Getting Started

The Windows PowerShell Command Builder provides an intelligent user experience. After you drag a verb or noun object on the Design Surface, the interface will hide either the verbs or nouns that are not associated with the verb or noun placed on the Design Surface.

To begin using the Windows PowerShell Command Builder, select a desired noun and drag it to the Design Surface. The noun will “snap” to the appropriate location in the Design Surface. Next select one of the available verbs and drag it to the Design Surface.

NOTE

On touch-enabled devices a single click on either a verb or noun will display a “Send” prompt that can be used in place of drag and drop where desired.

image

Figure 2 Send Prompt

As elements are placed on the Design Surface, the corresponding Windows PowerShell command will be constructed at the bottom of the Design Surface to include a hyperlink to the related online content. If the constructed command includes required or optional parameters, prompts on the Design Surface indicate where the information can be supplied.

The Windows PowerShell Command Builder minimizes the need to memorize complex cmdlet parameters and noun references by presenting a friendly description of those parameters or nouns. For example, to create a new site collection in SharePoint Foundation 2010 or 2013, the verb-noun combination and required parameters are constructed as follows:

New-SPSite -Identity http://www.contoso.com/

To simplify this construction, Windows PowerShell Command Builder provides a “user friendly” representation of both nouns and in many cases the parameters required to complete a command. For example, in the above example, the Windows PowerShell Command Builder represents the SPSite noun as Site and the -Identity parameter as Url in order to present this information in a user friendly, visual, and structured way.

The Windows PowerShell Command Builder provides access to the most common cmdlets and routine scenarios that are associated with the administration of SharePoint 2010, SharePoint 2013, SharePoint Online, and Office 365. However, Windows PowerShell Command Builder does not provide access to all cmdlets that are associated with these products. The Windows PowerShell Command Builder also provides access to a number of parameters that are associated with each cmdlet. However, Windows PowerShell Command Builder excludes those less commonly used with the respective cmdlet.

NOTE

The Windows PowerShell Command Builder supports both traditional and touch interactions. You can interact with elements in the Windows PowerShell Command Builder by using a mouse and pointer or optionally through natural touch on supported devices.

Using the Clipboard

The Windows PowerShell Command Builder supports copying constructed cmdlets to the Clipboard. To copy a constructed cmdlet, select the Copy to Clipboard button on the Design Surface. The copied cmdlet can then be pasted into a Windows PowerShell script, the SharePoint 2010 Management Shell, or other desired location to be saved or executed.

Clearing the Design Surface

The Windows PowerShell Command Builder Design Surface can be cleared in one of two ways:

  • Drag verbs and nouns back on their respective dimensions.
  • Select the Clear Design Surface button on the Design Surface.

The Clear Design Surface button is not displayed until elements are placed on the Design Surface.

Frequently Asked Questions

Q: I don’t see the verb-noun combination I’m looking for?

A: The initial release of the Windows PowerShell Command Builder provides access to the most common and routine cmdlets available to SharePoint 2010, SharePoint 2013, SharePoint Online, and Office 365. Later releases will introduce additional verb-noun constructs.

Q: Does the Windows PowerShell Command Builder support complex scripting, for example Piping and the Pipeline?

A: No. Windows PowerShell provides access to and supports complex tasks to multiple degrees of variety and preference of the individual constructing the command which cannot be accounted for programmatically. For advanced scripting support with Windows PowerShell see the Windows PowerShell Owner’s Manual.

Q: Can I customize the Windows PowerShell Command Builder?

A: No. The Windows PowerShell Command Builder does not support customization.

Additional Resources

To learn more about SharePoint 2010 Products cmdlets and concepts, see the Windows PowerShell for SharePoint Server 2010 Resource Center.

To learn more about SharePoint 2013 Products cmdlets and concepts, see the Windows PowerShell for SharePoint 2013 Resource Center.

To learn more about Windows PowerShell, see Windows PowerShell in the Scripting library on TechNet.

To learn more about Windows PowerShell in the SharePoint Management Shell, see Windows PowerShell in the SharePoint Management Shell.

To access Windows PowerShell training for SharePoint Server 2010 Administrators, see the Windows PowerShell for SharePoint Server 2010 Administrators video.

To learn more about SharePoint 2010 Products administration using Windows PowerShell, see SharePoint 2010 Products administration by using Windows PowerShell.

What’s new in the User Profile Service Application

The User Profile Service Application stores information about users in a centralized location used by SharePoint’s social computing features to support natural collaboration.  The User Profile Service Application is also required when provisioning My Site personal sites, enabling certain social computing features such as newsfeeds, and the creation and distribution of user profiles across server farms or sites.

To learn more about the User Profile Service Application see also http://technet.microsoft.com/en-us/library/ee662538.aspx.

The User Profile Service Application is based on technologies provided through ForeFront Identity Manager which provides a comprehensive solution for identity and credential management and identity-based access policies.

To learn more about ForeFront Identity Manager see also http://www.microsoft.com/en-us/server-cloud/forefront/identity-manager.aspx.

Since RTM the User Profile Service Application has been incrementally improved through Cumulative Updates and Service Packs to improve both its performance and resiliency.  Recent improvements include:

  • Parallel SharePoint, Active Directory, and Business Connectivity Services import and export support
  • ForeFront Identity Manager performance improvements
  • Reduction of full table scans and indexing specific user properties
  • Batch import of Business Connectivity Services user properties
  • Removed automatic provisioning of users and groups to ILM MA
  • Programmatic cleanup of large run histories
  • Resolution of AD-Contact objects in ForeFront Identity Manager as opposed to SharePoint Server 2010

As a result of these improvements there has been a dramatic reduction of the time required to import user information into SharePoint.  For example, inside of Microsoft on the RTM version of SharePoint Server 2010 with 100,000 users our profile import duration for full synchronization commonly required 2 weeks to complete and 2-3 days to support an incremental synchronization.  This same scenario on SharePoint Server 2010 with the December 2011 Cumulative Update has been reduced to 120-140 for a full synchronization and 6 hours for an incremental synchronization.

If you’re experience delays in importing users and properties or are just looking to improve the security, reliability, and performance of your SharePoint 2010 environment we recommend installing the latest Cumulative Update or Service Pack.

Resources

Download SharePoint Server 2010 Service Pack 1
Download the SharePoint Server 2010 February 2012 Cumulative Update