The benefits of Microsoft SharePoint Software Development Kit (SDK)

I would like to take this moment to thank Microsoft for doing a ton of work to get me to be able to work all the time, even when I am offline. No matter if I am on vacation, sitting on the bus, relaxing in a Coffee shop, I can always work.

My wife also thanks you. I could translate her exact words but I am afraid I will get banned for being an overly offensive site.

I would like to share my thoughts on one of the best "work anywhere, anytime" products that Microsoft has provided.

The Microsoft SharePoint Software Development Kit (SDK)

Now, I know this SDK will be very well known for most SharePoint developers. I also know that most SharePoint developers are online most of the time. I also know that MSDN has a wonderful up-time history. So, most of the time you can use the online version and get loads of more information, as well as community content, which is really great.

However, when you are not online or something has happened to MSDN, the SharePoint SDK is a great tool. I have previously written about why CAML is the foundation of any good SharePoint developer, and that CAML training should be a requirement in kindergarten. Learning CAML makes you understand all those strange config files that SharePoint utilizes, such as onet.xml, schema.xml, feature.xml, and others. At least it will help you build them and read the general purpose of one of those files. But what does the SourceId of a site column field really do?

The SDK contains all the CAML references you need and will happily answer this for you:

SPField.SourceId Property:

Gets the namespace that defines the field or the GUID of the list in which the custom field has been created through the user interface.

Try figuring that out by reading features and onet, I dare you! Ok, it may not be that difficult if you know what you are seeking, but the SDK helps a whole lot. And the best thing, it is available offline so when you are on that extremely remote mountain top and the only way down is to explain to someone what SourceId really means, well, flip up your laptop, open the SDK and look it up.

And this applies to a lot of other things as well, not just CAML. There are a bunch of namespaces in addition to the standard Microsoft.SharePoint namespace. A wealth of information about the SharePoint object model (OM) is at your fingertips. Not to mention the richness of the SharePoint web services and the, I must say, impressive amount of information that is readily available regarding the dos and don’ts of SharePoint development.

Content migration, the bane of many a SharePoint deployment, has a section that answers and gives example for several really useful scenarios such as migrating a web site from one location to another. Perhaps not perfect, content migration is really powerful, especially now that a lot of the critical bugs were fixed in the recent SharePoint infrastructure upgrade.

I can go on to list a whole array of other useful stuff that you get in the SDK, but suffice to say, you should never have to be bored again if you find yourself offline and yo ustill have your latop.

What’s missing and what’s wrong with the SDK?

What I miss, though, and I realize this would have put a ton of extra megabytes to the download, is the videos, or Visual How Tos as they are called. I absolutely hate that the videos are not easily downloadable. There is also approximately 2 technical articles altogether, so there is a really serious lack of content. I know, there are far more articles, but way to few. This has improved a bit in version 1.3, and they have even included a few excerpts from the excellent book Inside Microsoft Windows SharePoint Services 3.0 that I highly recommend, but still, the technical articles part is really lacking in content.

Also the actual packages and installation experience leaves a bit to be desired. First of all, in contrast with most other SDKs you get from Microsoft, in Add/Remove components, the SharePoint SDK is not actually called and SDK, but rather Windows SharePoint Services Developer Resources. And when you want to upgrade from 1.2 to 1.3 of the SDK you are asked to remove the previous installation first. Thinking you want to remove the SDK and look for SharePoint SDK in the list would seem logical, but alas, no. Same thing with 1.3, by the way, still not called SDK, but Windows SharePoint Services Developer Resources 1.3.

The installer for 1.3 also states that it is installing version 1.2 while it is, in fact, installing the right version.

And of course, the same applies online as offline, a lot of the documentation for SharePoint is simply not there. Or anywhere, it seems. Plenty of features are just not documented and Microsoft really needs to do a better job in the next version of the SDK.

The end is near, but salvation is too

The SDK does a great job at bringing valuable content offline. It is great to just sit an browse all the information on your free time. You will never again have an excuse to not work.

You can download the SDK from Microsoft from the online SDK site. The download links are just beneath the tags on that page, in the first Community Content comment.

Just don’t forget to pay attention to your wife. Isn’t that right, dear?

Found this article valuable? Want to show your appreciation? Here are some options:

a) Click on the banners anywhere on the site to visit my blog's sponsors. They are all hand-picked and are selected based on providing great products and services to the SharePoint community.

b) Donate Bitcoins! I love Bitcoins, and you can donate if you'd like by clicking the button below.

c) Spread the word! Below, you should find links to sharing this article on your favorite social media sites. I'm an attention junkie, so sharing is caring in my book!

Pin It

Published by

Bjørn Furuknap

I previously did SharePoint. These days, I try new things to see where I can find the passion. If you have great ideas, cool projects, or is in general an awesome person, get in touch and we might find out together.

Leave a Reply

Your email address will not be published.