A few Fox people have asked me lately about SharePoint, and how to get started with it. This might seem strange given how much push it is getting from Microsoft, but perhaps this is another case of having tooooo much information to sift through. Sometimes it can be too overwhelming.
(Note: I am not a SharePoint expert – this is early days for me too)
Anyway, here's a few resources to get started:
- TechRepublic overview article of SharePoint 2007 (excellent summary – outlines the developer tools you'll need to use)
- SharePoint Server 2007 Licensing costs (be warned, this is not a cheap product)
- SharePoint product licensing scenarios (warning – it can get complex)
- Microsoft white paper outlining their internal global rollout of SharePoint 2007 (excellent, honest, and helpful summary of the difficulties and major success MicrosoftIT had rolling it out)
There's two things I've realised about SharePoint that developers need to understand:
- We need to get our heads around configuration
- We need to understand the significance of workflow
As developers we generally like to avoid all the setup stuff (eg take SQL Server), and instead concentrate on the programming (eg database design and writing stored procedures). With SharePoint we can't do this – we need to understand all the setup and configuration stuff as well as the programming. A large part of SharePoint solutions is in the initial config, and we can't just palm it off onto the IT Pros.
With regard to workflow, we need to grasp that the future of enterprise development revolves around workflow. This shouldn't be too much of a surprise (eg the .Net framework has a big focus on it) but it is easy to ignore (especially if you are from a database background).
There's millions of books available of course, but here's two I'm reading:
- Workflow in the 2007 Microsoft Office System (a great overview, quick to read)
- Microsoft Office SharePoint Server 2007 Administrator's Companion (massive book – more of a reference than a read)
This is excellent. It takes you step-by-step through how to build a Virtual PC of Windows 2003 Server with MOSS 2007 fully installed.
Note: this requires you to have access to licenses for Windows 2003 Server, SQL Server 2005, SharePoint Designer, and MOSS (Microsoft Office SharePoint Server) 2007. For MSDN subscribers and MVPs this won't be a problem, but for others this could be tricky. You may need to use a range of trial software. There may even be fully configured trial VPCs available too (but that kinda defeats the purpose of going through all the config).
Personal note 1: It took me approx 2 weeks to complete, as I was installing a little bit each night and playing with a few things along the way (colleagues at work have set it up in a day though). Once complete, it is a full VPC (at roughly 10GB) that you can backup easily.
Personal note 2: In light of my recent notebook reinstalls, I have come to fully appreciate the beauty of VPCs!
There's also millions of SharePoint blogs around. Here's two local guys that I read:
Sydney also has a SharePoint User Group, but I haven't attended it (but feel it worth mentioning since I know the company who organize it). The meeting coming up in August looks very good.
Darren Neimke's book (ASP.Net web parts in Action) always gets great reviews, and is sitting on one of our desks at work, but so far I haven't read it. The reason for mentioning it is because many ASP.Net developers don't realize they are 90% of the way to being SharePoint developers – much of the coding behind SharePoint sites is all ASP.Net. And yet, I hear many ASP.Net developers tell me they don't know the first thing about SharePoint. With the state of the SharePoint market at the moment (it's hot, hot, hot in Australia) there's plenty of opportunities for those quick enough to re-package themselves.
Andrew Coates points to the 2007 Microsoft Office Virtual Labs, some of which cover SharePoint.
Microsoft is in the process of moving their entire US web site to be SharePoint 2007 based, but as of July 2007 my understanding is that this is not yet completed – please let me know if it has been completed.