tags:

views:

68

answers:

3

Hi,

I work with MOSS on a daily basis, but to be a "Sharepoint Developer", what would the roadmap of tasks I need to master/concepts I need to know? So I've learnt webparts, featurs, and how to deploy them (I'm going to actually practise this very soon but have some technical issues to solve on my workstation), but I haven't seen an actual full roadmap of what I would need to know.

I would be grateful for some sort of list of what I need to master.

Thanks

+1  A: 

You could take a look at the Ramp Up site on MSDN. They have a couple of Sharepoint tracks. Also, take a look at this blog post: Getting Started as a Sharepoint Developer

TskTsk
+3  A: 

In my experience, learning SharePoint has been a pretty non-linear process. It's a huge product that touches pretty much everything within an IT department (even if you're a developer with strong .NET experience, you'll need to have pretty deep knowledge of IIS, AD, SQL, DNS, authentication protocols, network infrastructure etc, if you ever plan on deploying a solution beyond your VM.

I'd recommend learning the object model inside and out (which would usually mean a lot of MSDN, but unfortunately in the case of SharePoint is not possible due to incomplete and inaccurate information.) Blogs have been my best source over the years; here is a pretty decent list to get started with: http://www.sharepointjoel.com/Lists/Posts/Post.aspx?ID=31.

Gurdas Nijor
+2  A: 

The best thing you can do to be a great SharePoint developer is to become a top-notch ASP.Net Web Forms developer. That includes HTML/CSS, the page/custom control event lifecycle, JavaScript, XML/XSL, and everything else that goes into a web app. Once you feel you've got that down, moving over to SharePoint wouldn't be too much of a leap. MOSS 2007 & SharePoint Server 2010 are both, at their roots, just very complex ASP.Net applications (v2.0 and v3.5, respectively).

The next thing to do would be to really learn SharePoint as a power user. Get familiar with all the different parts of SharePoint and how they interact - not just web parts, but all the different site settings (at least at the site collection level, if not central admin), how the publishing functionality works, how workflows integrate with SharePoint and where, lists, libraries, site columns, content types, etc.

Once you're comfortable with how to use SharePoint, and have learned all the vocabulary for everything and how they interact in the UI, then dive into the object model. I highly recommend using the WSPBuilder add-in for Visual Studio as opposed to the Microsoft add-in. Why? Microsoft hides too much of how features/WSP packages are actually built, and makes it much harder for a new developer to put it all together. WSPBuilder puts all that logic right into the structure of your project, and makes it lots easier to see how things are coming together.

At that point, it's a matter of keeping your eye on what to call Dispose on & not - download the SPDisposeCheck tool to help you out with that. Always remember to treat the SQL server as a black box, and take a day to learn rudimentary CAML queries - then you can hate CAML like the rest of us. :)

Other sources:

Greg Hurlman