SharePoint in Plain English

Check this awesome video which explains what SharePoint in plain English

Sharepoint 2010 Released

SharePoint Server 2010

The future of business productivity is here with the Office 2010 and SharePoint 2010 global launch on May 12 at 11 a.m. EDT.

SharePoint 2010 Editions

1) SharePoint Server 2010: Intranet Scenarios

Enterprise Client Access License
For organizations looking to enable advanced scenarios for end users to locate, create and act on data and documents in disparate sources from within a familiar and unified infrastructure. Use the Enterprise CAL capabilities of SharePoint to fully interoperate with external line-of-business applications, Web services, and Microsoft Office client applications; make better decisions with rich data visualization, dashboards, and advanced analytics; and build robust forms and workflow-based solutions
Standard Client Access License
For organizations looking to deploy a business collaboration platform across all types of content. Use the core capabilities of SharePoint to manage content and business processes, find and share information and expertise, and simplify how people work together across organizational boundaries.


2)SharePoint Server 2010: Internet/Extranet Scenarios

SharePoint Server 2010 for Internet Sites, Enterprise
For organizations looking to create scalable customer-facing Internet websites or private secure extranet sites using the full Enterprise capabilities of SharePoint Server 2010.
SharePoint Server 2010 for Internet Sites, Standard
For small and mid-sized organizations looking to create public Internet sites or basic extranets using the Standard features of SharePoint Server 2010.


3)Enabling Technologies

SharePoint Designer 2010
The tool of choice for the rapid development of SharePoint applications. Using SharePoint Designer, advanced users and developers can quickly create SharePoint solutions. Advanced users can compose no-code solutions that encompass a variety of common scenarios, from collaborative sites and Web publishing to line-of-business data integration, business intelligence solutions, and human workflows. These solutions leverage the building blocks available in SharePoint in an easy-to-use environment. In addition, developers can use SharePoint Designer 2010 to get a quick start on SharePoint development projects.
SharePoint Foundation 2010
For smaller organizations or departments looking for a low-cost entry-level or pilot solution for secure, Web-based collaboration. Use SharePoint Foundation to coordinate schedules, organize documents, and participate in discussions through team workspaces, blogs, wikis, and document libraries on the platform that is the underlying infrastructure for SharePoint Server.

SharePoint Development Tools

The following is the list of tools that I happen to use during Sharepoint Development. These tools help the SharePoint developers to do their work efficiently.

Visual Studio Extensions for Windows SharePoint Services 3.0 Tools

 

Tools for developing custom SharePoint applications: Visual Studio project templates for Web Parts, site definitions, and list definitions; and a stand-alone utility program, the SharePoint Solution Generator.

Windows SharePoint Services 3.0 Tools: Visual Studio 2005 Extensions

Visual Studio 2008 extensions for Windows SharePoint Services 3.0

SharePoint SDK

 

The Microsoft Office SharePoint Server 2007 SDK contains conceptual overviews, “How Do I…?” programming tasks, developer tools, code samples, references, and an Enterprise Content Management (ECM) starter kit to guide you in developing solutions based on MOSS 2007.

Windows SharePoint Services 3.0: Software Development Kit (SDK)

SharePoint Server 2007 SDK: Software Development Kit

Microsoft Best Practices Analyzer for WSS  3.0

 

The Microsoft Best Practices Analyzer for Microsoft Windows SharePoint Services 3.0 and the 2007 Microsoft Office System creates detailed reports to help administrators achieve greater performance, scalability, and uptime.

SPDisposeCheck

 

SPDisposeCheck is a tool to help you to check your assemblies that use the SharePoint API so that you can build better code. It provides assistance in correctly disposing of certain SharePoint objects to help you follow published best practice. This tool may not show all memory leaks in your code. Further investigation is advised if you continue to experience issues.

U2U CAML Query Builder

The tool will help you build, test and execute your CAML Queries. Download U2U CAML Query Builder

SPCamlViewer

This SPCamlViewer tool will help you in viewing/writing CAML Queries.

Imtech Fields Explorer

Imtech Fields Explorer for auto generating content type-based Page Layouts and features.

SharePoint Search Service Tool

 

The SharePoint Search Service Tool is a rich web service client that allows a developer to explore the scopes and managed properties of a given SharePoint Search SSP, build queries in either Keyword or SQL Syntax, submit those queries and examine the raw web service results. http://www.codeplex.com/SharePointSearchServ

Search Community Toolkit

 

The Search Community Toolkit is comprised of a number of tools and code samples that have been contributed to enhance the Microsoft search experience. http://www.codeplex.com/sct

WSPBuilder

WSPBuilder is a SharePoint Solution Package (WSP) creation tool for WSS 3.0 & MOSS 2007.

SharePoint Solution Installer

SharePoint Solution Installer for easy deployment of WSP packages.  Download @ http://sharepointinstaller.codeplex.com/

SharePoint 2007 Features

 

This CodePlex project contains a number of helpful features like Debugger Feature, Log Viewer, Toolbar Manager etc. http://www.codeplex.com/features

SmartPart for SharePoint

The SharePoint web part which can host any ASP.NET web user control. Download @ http://smartpart.codeplex.com/

SPVisualDev – SharePoint Developer Tool

 

SPVisualDev makes it easier for Sharepoint 2007 developers to develop features and artifacts with Visual Studio 2008. It is written in C# and is implemented as a Visual Studio 2008 Add-in. http://spvisualdev.codeplex.com/

SharePoint Manager 2007

 

The SharePoint Manager 2007 is a SharePoint object model explorer. It enables you to browse every site on the local farm and view every property. Download SharePoint Manager2007

SmartTools

The SmartTools for SharePoint project is a collection of SharePoint extensions to make your life as a SharePoint user, developer or administrator a little bit easier! http://www.codeplex.com/smarttools

SharePoint SUSHI

SharePoint SUSHI is a powerful, user-friendly utility enabling you to accomplish common administrative tasks. http://www.codeplex.com/sushi

SharePoint Portal Server Support Report Tool (SPSReport)

The SPS Reporting Tool is utilized to gather detailed information regarding a systems current configuration. The data collected will assist the Microsoft Support Professional with fault isolation.  Download @ http://www.codeplex.com/spsreport

BDC Meta Man

http://www.lightningtools.com/bdc-meta-man/default.aspx

SharePoint 2007 Test Data Population Tool

The SharePoint 2007 Test Data Population Tool (WSSDW.exe) is a capacity planning and performance testing tool that populates data for testing SharePoint deployments. http://www.codeplex.com/sptdatapop

SharePoint Content Deployment Wizard

 

This tool (beta version) provides a wizard-like approach to deploying content between SharePoint sites. http://www.codeplex.com/SPDeploymentWizard

Reflector

You can find more details about here

Fiddler

 

Fiddler is a Web Debugging Proxy which logs all HTTP(S) traffic between your computer and the Internet. Fiddler allows you to inspect all HTTP(S) traffic, set breakpoints, and “fiddle” with incoming or outgoing data.

Firebug

 

Firebug integrates with Firefox. Using firebug you can edit, debug, and monitor CSS, HTML, and JavaScript live in any web page

Internet Explorer Developer Toolbar

The IE Developer Toolbar provides a variety of tools for quickly creating, understanding, and troubleshooting Web pages

DebugView for Windows

 

DebugView is an application that lets you monitor debug output on your local system, or any computer on the network that you can reach via TCP/IP. Download DebugView

 

Disclaimer: All information in this article is provided “AS IS” with no warranties, and confers no rights and on a “use at your own risk” basis.

  

Running Code with Elevated Privileges

During custom development in Sharepoint, sometimes your code must call restricted methods within the Windows SharePoint Services object model even though the request is initiated by a non privileged user. In such cases you must be able to elevate the privilege of your code as it executes on web server.  Meaning, instead of your code running under the context of the current user, you’ll want to run it using an account with a higher level of access.

The RunWithElevatedPrivileges method is used to for this purpose.

VB.Net Example:

Sub GetSiteInfo()

Dim siteColl As SPSite = SPContext.Current.Site

Dim site As SPWeb = SPContext.Current.Web

Using ElevatedsiteColl As SPSite = New SPSite(siteColl.ID)

Using ElevatedSite As SPWeb = ElevatedsiteColl.OpenWeb(site.ID)

End Using

End Using

End Sub

After you write a method such as GetSiteInfo you can execute it with elevated privileges by invoking the RunWithElevatedPrivileges method and passing a delegate reference created with the Visual Basic AddressOf operator. (note the creation of new SPSite and SPWeb objects)

SPSecurity.RunWithElevatedPrivileges(AddressOf GetSiteInfo)

Note:

You cannot use the objects available through the Microsoft.SharePoint.SPContext.Current property, because those objects were created in the security context of the current user. You need to create an new instance of the SPSite class and the SPWeb class after you elevate the privileges of your code by calling RunWithElevatedPrivileges within the context of a Windows SharePoint Services request. 

You can find more details at:

http://msdn.microsoft.com/en-us/library/bb466220.aspx

How to log errors to SharePoint Log file

When you work with share point custom code development such as Web parts, Features, Event Handlers, and Workflows etc., you can use the Sharepoint built in logging mechanism to log the errors instead of creating custom logging mechanism.

In SharePoint, log files are located at C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\LOG

To log errors/messages/exceptions to the default SharePoint log file use the following lines of code.

Microsoft.Office.Server.Diagnostics.PortalLog.LogString(”Exception Occurred: {0} || {1}”, Exc.Message, Exc.StackTrace);

Example Code snippet:

Try

{

}

catch (Exception Exc)

{

Microsoft.Office.Server.Diagnostics.PortalLog.LogString(”Exception Occurred: {0} || {1}”, Exc.Message, Exc.StackTrace);

}

MOSS 2007 limitations list for acceptable performance

If you are planning for big Sharepoint (MOSS 2007) Implementations, consider these limitations and guidelines for the best Sharepoint (MOSS 2007) Implementation.

The following table lists the recommended guidelines for site objects.

Site object

Guidelines for acceptable performance

Scope of impact when performance degrades

Site collection

50,000 per content database

Farm

Site collection

150,000 per Web application

Farm

Web site

250,000 per site collection

Site collection

Subsite

2,000 per Web site

Site view

Document

5 million per library

Library

Item

2,000 per view

List view

Document file size

50MB (2GB max*)

Library, file save performance

List

2,000 per Web site

List view

Field type

256 per list

List view

Column

2,000 per document library

4,096 per list

Library and list view

Web Part

50 per page

Page

Managed path

20 per Web application

Web application

 

You can find more details at:
Plan for software boundaries (Office SharePoint Server)

 

SharePoint Screencasts and Visual Howto’s

A huge list of Visual Howto’s related to Microsoft Office SharePoint Server 2007 is available @ http://msdn.microsoft.com/en-us/office/aa940989.aspx.Office Visual HowTo’s provide instruction, code examples, and short how-to videos

If you are new to Sharepoint 2007, take a look at the following screencasts series.