Presenters:
Simon Skaria and Umesh Unnikrishnan
This was my second session during the week. It was one in which my hopes were that they would talk about the deployment differences that SharePoint 2010 would have over 2007. I was not disappointed.
So to sum it up a bit:
Over and above I think the thing that I am most impressed with is the Service Isolation part. You have the ability to setup services individually (not like the SSP where you had services blocked together) and you can then assign them to web applications. For example, you can set up a services farm that has 2 Metadata Management Services, Search, and etc. Web App 1 could use one metadata management service, while web app 2 utilizes the other one.
I know that it might sound confusing, but think of it like the ability to set up search, metadata services, BCS (business connectivity services), and other services without regard or dependency on other services.
That is enough for now.
Until the next session.
Michael
Reference Link:
Service Architecture Explained
Okay, I know that I haven't posted much on the sessions as of yet, however I thought I would do that after this post.
Overall the conference was outstanding. I was told that there were over 8000 people in attendance. It was really well run and the attendees were constantly doing something constructive and worthwhile. The evening events were spectacular and a lot of fun. The Microsoft folks sure know how to throw a party.
I was talking to some folks that have been networking with and they asked me what my thoughts were on what is being released. My response was "It is the equivalent to the difference between SharePoint 2003 and SharePoint 2007". For lack of a better adjective it is unbelievable. The changes and thought that Microsoft has put in to this next release will cause the same nearly insurmountable tidal wave of implementations and upgrades by companies globally. SharePoint 2010 is amazing.
If you are a SharePoint developer/administrator/architect then the best thing you can do is get a hold of the beta when it is released in November. If you thought 2007 was huge just wait until you get a look at this monster. J
I will now get on to blogging about some of the sessions I attended.
Michael
After the keynote sessions and lunch the first set of breakout sessions kicked off. Needless to say with the session line up it was difficult to choose only one to attend. However I thought it would be wise to at least see what is new and get an overview of the platform.
I got to the session a bit late, but I don't think that I missed much. Arpan Shah was the speaker and it was a packed house. One of the largest rooms I have seen so far. Easily over 300 people in attendance. Here is what I caught.
Tagging and Rating
You now have rating functionality built in to SharePoint. You have to turn it on in the settings, but now if you have content that your organization rates highly it will be able to be displayed as such. Also tagging is a new kind of keyword metadata capture. You have the ability to tag content in a multiple keyword fashion that will allow the content to be searched and even routed by the tags. This is some very cool functionality.
Multi-Select List Items
Now you have the ability to affect more than one item with an operation. What I mean by that is say you want to check out a few documents and take them with you on the road to edit them in transit. You now have the ability to select multiple items in all lists and use the Ribbon to perform actions such as checkout. Remember the ribbon is contextual so depending on the content you select it will modify the selections you have for the group.
AJAX EVERYWHERE!
Okay to be perfectly honest I think I am going to have to get out there and really learn AJAX. I have been avoiding it forever, but now you will find that SharePoint utilizes AJAX just about everywhere. The dialog messages, page refreshes, content updates, everything is smooth and flicker free.
MySites
Your MySite will have more relevant tabs. Not just the standard ones that were previously provisioned, but ones that really seem to fit the "Profile" model.
Tag Cloud. There is a new webpart that is a Tag Cloud that you have that will give you the same functionality as the ones you see on everyone's blogs. It is kind of neat.
You have the ability to see important content to you. Like documents that you authored, your current content, etc. (not much of a change from the old site, but some differences).
My Network gives you the ability to see your hierarchy in the organization, but now you also have the ability to more manually add people to your network. My guess (since I didn't see much of the feature) is that it would be similar to the "Facebook-ish" setup.
Better blogs!
RESTful Web API
This is probably one of the best features that are coming in the next version. I am a big fan of RESTful web services because of the simplicity of the interface that can be used. Now SharePoint allows access to its data via the RESTful web services. The demonstration that was done was where an excel spreadsheet was published with Excel services that contained a graph. The presenter created a blog and was adding some content to the blog post, then quickly added a image tag and referenced the chart through the RESTful API.
The point to this is that now you have the ability to get to your data not only by a link, but now you actually have the ability to reference the data through the API with ease.
Content Organizer
The Content Organizer is another very neat feature. Now to tell you the truth I haven't run in to any of my customers that needed this functionality, but that doesn't mean that it isn't useful. The CO is a routing table very similar to the record routing table you find in the Records Management site. However there is a difference. You have to turn the feature on for the site specifically. Then once it is on, it creates a "Drop off Library" that will follow rules that you create to route documents that are uploaded. The rules are easy to create. They are basically just list items (go figure) that you specify how to identify documents that need to be routed. Some of the attributes you have the ability to route on are Content Type, Managed Keywords, Document Type, etc.
Better Cross Browser Support
This is another really key feature for SharePoint. It now is starting to adhere to more common standards. Some of the standards that were thrown around today that it supports are WCAG, XHTML, JSON, and CMIS. Not that they all have to do with cross browser support, but to get better cross browser functionality they had to start supporting the current standards. So you should see a very good browser experience for most PC based browsers. They didn't make any promises for Mac based browsers.
Webparts in the Page Content Area
One thing that was interesting is that when Arpan was creating his above mentioned blog post he was able to put a streaming video webpart in the page content section of the blog publishing page. Now this I feel is significant. Mainly because I always get the question "Can we mix page layout content areas and web part zones", while the answer is yes in 2007 it isn't what the client is asking. They are asking if they can put web part zones in the content areas to give them the ability to place webparts in the content. I think content creators will like this. However it does kind of break the idea of having constant layouts.
Streaming Videos in SharePoint
Yep, you read that right. SharePoint will have the ability to support streaming video. You will also have some really decent control over the look ahead and bit throttling features that it can require, but from what I saw today it was as simple as a webpart that referenced the video and it was rocking.
Another interesting part to this is that when Arpan was selecting his video SharePoint support for previewing the video before he selected it was great. He was able to start, watch, and confirm that it was the video he wanted before he had to confirm it for addition the page.
Better support for Digital Asset Management
SharePoint 2007 really doesn't do this very well. Not that you can't force it to be an Asset Management tool. It is just that the customers that I have worked with it never really seemed to fit as a good Digital Asset solution. This has been greatly improved.
This wasn't very granular in any of the newer features, but it should give you a good list of things to start looking for in the beta when it comes out. Now of course this really didn't mention any type of development-centric content, but that is still to come. There are a lot of sessions dedicated to the new development tools and synergies between SharePoint Designer and Visual Studio (never thought I would ever say that).
Hope this helps and I will be posting more as I have time.
Michael
So first impressions….. Hmmmmm…. This is BIG!
First off, the conference is sold out. There has been an increase of attendance of close to 100% since the last conference. There are people here from over 70 different countries.
The keynote was not what I had expected. Ballmer did a great job explaining the new vision for SharePoint and how they are starting to embrace more of what customers, developers, and IT pro's want. Some of the key areas that came up that were of importance were:
- Distributed deployments
- Integrated development tools and ease of use
- Differences in Licensing model
- Friendlier with other Browsers/Standards
- A newer level of maturity in the product.
Tom Rizzo also did a great job of showing a new level of ease of integration using the newly remodeled SharePoint Designer. The community generally will appreciate the changes that Microsoft has made to turn this tool in to a good translation between Business Analyst and Developer. The tools no longer seem to compete with each other but genuinely work together to for 2 tools to fit 2 different roles to deliver a single solution.
A lot of what Rizzo showed off was the new "No Code" facilities for LOB integration and also some very cool enhancements for WCM. Much of the new interface has the Ribbon that was first instilled in Word and Excel, but now it is making its SharePoint debut.
Overall, I would say that this is going to be a rocking conference and there is going to be so much information to absorb. I will try to do my best to blog about the things that I am seeing or doing but with over 240 sessions and open labs. I will not be able to hit them all.
Also, it came up in the keynote that the first public beta for SharePoint will launch in November. This is going to be a hayday for Microsoft I am sure. In the Q/A with Ballmer and Rizzo it someone asked if the new VS2010 would be able to share the new development enhancements (integrated development/client development) with developing against SharePoint 2007. To be short about it, the answer is NO. They seemed to play off the reasoning due to different API's and Runtime changes, but this "no matter what the reason" is unfortunate. I am sure I will blog on this more later, but right now I have to get back in to the mix.
Michael
Over three years ago I ran in to a Microsoft server product that I fell in love with. It is enormous, complex, and useful in so many ways. Enormous because it solves many common business problems out of the box there isn't many competitors that can top that. Complex because there isn't just one way to solve most of the business problems with this product. Any solution that you create with the product can be as unique as the client you are implementing it for. Useful because even with all of the out of box features it is extensible in so many ways that you can create elegant and solid solutions when you use it as a platform.
Yep, that's right. I am talking about SharePoint. When I started to get involved with WSS 3.0 and MOSS 2007 it was in the early beta stages. I was lucky enough to get paired up with a very good SharePoint architect early in my SharePoint career and learned a lot from him (Thank you Philip). So for the last three years I have been working heavily with SharePoint and have found that it always seems to amaze me. I am able to continue to learn new things and always be amazed what the SharePoint community comes up with to solve business problems that a constantly evolving.
Anyhow, the reason I am writing this is not to rehash old memories, but to kind of put in writing the evolution that SharePoint made just three short years ago. Now Microsoft is about to do it again. Coming up next week is the SharePoint 2009 Conference. Usually going to one of these types of conferences is pretty exciting, but what will make this conference different is that we are about to see the evolution of SharePoint again.
SharePoint 2010 is going to be unveiled at this conference. Now to be very clear, I haven't seen much of the new functionality outside of what has been published on the SharePoint 2010 site. However, I have talked to a few people that are part of the TAP program and from the reviews that they are giving the new platform it will be amazing. Even from what Microsoft is showing as teaser material is nothing short of extremely cool. Check it out.
With this said, I am lucky enough to be able to make the trip to this exciting event. I am looking forward to soaking in every last bit of information that will be presented. Also, while I am there I am also looking to blog about my findings and new functionality that is presented. Needless to say this won't be easy with over 250 sessions of content being presented, but I am up for the challenge. I am excited to see what new things Microsoft has to impress us with and how it is going to make solving our clients' problems easier.
So until all of this goes down be sure to check out the teaser stuff that is on the SharePoint 2010 site.
Michael
Sites Referenced:
Hello all,
Yes, it has been a very long time since I have posted but I have a good reason I swear. Since my last post, I have changed companies and joined ProKarma as their Microsoft Practice Director. My duties are different from being just a consultant so it is possible I will be expanding my blog posts to other things other than just SharePoint. J
However until I get more time and material I figured I would post a couple of issues that I recently ran in to with a client of mine while we were trying to open their SharePoint server up as an extranet.
Issue #1:
The first issue that I ran in to was that the web application that they wanted to open as an extranet with FBA would not resolve any names in the People Picker. As you know when you change the authentication of a Web Application you also need to assign a user as a Site Collection Administrator. The issue I encountered was that no matter what I tried my administrator user that I had created in the database would not resolve.
Solution:
So after some thought and research (since I hadn't actually implemented this instance of SharePoint) I found that the database was rejecting the Network Service user from accessing the database. Come to find out the person who installed SharePoint and created the initial web application that I extended was using the Network Service user as the Application Pool identity. He neglected to create the service users as would be done in best practices and this ultimately caused time to spent diagnosing an issue that should not have popped up normally. Either way the issue was resolved, but it just goes to point that best practices will save you unnecessary cycles in the end.
Issue #2:
After opening up the web application opened as an extranet up popped another issue. While I was VPN'd in to the clients network I was able to log in using FBA. However, when I was not on their network the same user could not log in. Nothing had changed with the user and access just that I was not logged on to the client's network.
Solution:
This time it was my issue. I had forgotten the old rule that when you setup FBA you need to reboot the server. For some reason the system caches and it will not update properly. Therefore, in this instance after the reboot, the issue was resolved and I was able to log in without issue.
Hopefully you will not run in to these issues and if you do this post will help.
Michael
Last night was quite a deep run through the things you can do with SharePoint's administration interface. The Colorado Springs SharePoint User Group was privileged to have local SharePoint MVP Gary Lapointe presenting on how he created his STSADM extensions (an add-on that you can find on CodePlex).
It was quite breathtaking to see the number of new extensions he has developed to extend the functionality of the out of the box STSADM utility that you and I use. To be exact he has added a whopping 131 new operations. Not all of them are ground breaking, but some of them add additional functionality to the already present operations. The reason for the extension of the already present operations was due to additional parameters or functionality that the other operation doesn't already do.
If that wasn't cool enough, he also took us on a step by step guide to how he decided to start building all of these extensions and how he goes about it. I guess I never realized how easy it really is to add additional operations to the STSADM.
If you haven't already done so and you think you have an idea for an addition to the operations list it is worth while checking out his blog and also his projects on CodePlex. Of the project he has going one is the previously mentioned add-on to your environment where you will be able to utilize the 131 additional operations that he has already developed to help you be more efficient, but he also has a template project that will help you along your way to creating your own operations. This contains the files and structure you need to get started on your own. So give it a try.
And being the extremely nice guy that he is Gary also gave away a MSDN subscription in a raffle that was valued at close to $10,000!!! A very lucky Ryan McIntyre was the participant that was chosen from the attendees. Congrats Ryan. I know that you will give that membership a good workout.
Related Links:
Good luck and Happy Coding.
Michael
If you haven't been keeping up with the latest news on the Colorado Springs SharePoint User Group site (www.cossug.net) then I thought I would drop a little bit of a blast on my blog.
We have decided to move the meeting nights from the first Tuesday to the second Wednesday of every month. This was mainly due to the fact that we were overlapping with another really established .NET User Group in the same area. We couldn't have that. We want everyone to be able to make it to all of the User Group meetings in the area without the hassle of trying to choose which to go to. So our next meeting is scheduled for tomorrow, and boy do we have a whopper!
Presenting for this meeting is the local SharePoint MVP Gary La Point. He will be taking us on a journey on how to extend your STSADM functionality to help make you development/administration of SharePoint even easier. He also has a really great surprise for one special person that is present. You will have to just show up to see, but believe me when I say it is a rockin' door prize.
Also, if you haven't been to the site in a while, Shannon has been making some serious changes to the functionality that is available at the site. You now have the ability to get some discount promo codes for Certification tests, and also the ability to drop us a note letting us know how we are doing or giving us some suggestions as to what you would like to see.
Hope to see you all there tomorrow night.
Michael
I recently have been working on a solution for a client that is converting their current external membership website to WSS 3.0. I am so happy with the way the solution is coming together. I have always been of the opinion that you use the right tool for the right job and WSS 3.0 is the right tool for this solution.
Going back to my perspective that it is easier to develop with SharePoint as a framework than to start a new web project from scratch, WSS was a natural fit for all of the functionality and security needs for the customer. Anyhow to get more to the point one of the requirements was the ability for their members to be able to sign in to the website to access specific sites they should be able to see. Since WSS is an ASP.NET 2.0 application this was a no brainer. Just use the SQL Membership Provider and set up roles and members.
The issue that struck me was that they needed a decent amount of functionality to manage the roles and users that would be in the database. The client didn't want to have to rely on IT resources to have to go through a lengthy process to add users to the database to allow them to access the site. Right now the process they have to allow a user access takes many hours just to give a new user access to the site. This was quickly becoming unacceptable since it was taking a valuable IT resource away from their regular duties to insert this new member into the database. So I decided to give a project on CodePlex a try. The project is one that I had heard good things about and had told many others attending my courses to take a look at, but never had an opportunity to use it in a solution.
In my opinion the project makes it easy to implement no hassle administration of users and roles from the site collection administration interface. There is no doubt that it will work well out of the box for most people, but in the solution that I was implementing I also needed to capture some extended profile properties. So I decided to grab the source code and extend the properties captured in the administration interfaces and extend the code to use the ASP.NET Profile database as well. The project Source was very clean and easy to extend.
If you need to use FBA and you would like to make it easy for your clients to add, activate/deactivate, remove, or edit users then definitely check out this project on CodePlex. It will give you a huge win with your customer and also make your job much easier.
Related Links:
Happy Coding…
Michael
So last Friday one of my clients called me up in a panic. He had just realized that he had crashed his SharePoint site. What was troubling is that he was making modifications to the SharePoint sites Master Page with SharePoint Designer.
Now generally as developers we know this can be a touchy situation in SharePoint using SPD, but as a business user he rightfully didn't understand the implications that using SPD had on SharePoint sites. Nevertheless here is what happened.
He logged in to the site with SPD and wanted to replicated a masterpage that was being used on another site (since this is WSS 3.0, each site has their own master page gallery). So innocently enough he used the SPD File -> Export -> File menu option to get a copy of the default.master on to his file system and then uploaded the copy in to the target SharePoint site. And that is all it took.
With the site down and a crazy error with a serious lack of good information on the page the client became very stressed out quick!
After doing some investigation and some searching I came across this article by my favorite SharePoint visual designer…
http://www.heathersolomon.com/blog/archive/2008/07/23/Master-Page-Error-from-Exporting-file-from-SharePoint-Designer.aspx
Come to find out it was the source of the issue, and by just doing a simple copy/paste of another default.master in the affected site everything returned to normal.
I summary the issue boils down to additional junk SPD adds to pages that are exported that cannot be rendered by the ASP.NET compiler/runtime.
If you run in to this problem, then go see Heather's blog. It was very helpful and was able to help me get my client's site back up and running.
Michael
In one of my previous blog posts I was sizing up 3 different methods of generating SharePoint solutions in Visual Studio. It was a fairly lengthy post about using things like the Visual Studio Extensions, WSPBuilder, and BAT files, but one reader bought to my attention that I never evaluated the STSDEV Solution Generator.
Well lucky for me the reader chimed in and let me know that there was a hole in my post.
I finally was able to find something to try the STSDEV Solution Generator on to try to stretch my knowledge of it a bit. Recently a colleague and I started a new user group in Colorado Springs and decided to use the User Group site template for WSS for the user group web site. Now needless to say it is a very nice template but it definitely needed some new web parts to make it the site we had envisioned. I have decided to install and use the STSDEV tool to wrap up the webparts in to a deployable solution. Here is what I found:
- It is easy to use.
- It has a interesting concept of starting a windows interface to allow you to select the type of project you want to work with
- It does all of the heavy lifting for you when creating the solution file
- When generating the solution file it also makes a copy of the .wsp package with a .cab extension so you can quickly pop open the cab to verify your files are stored correctly or even stored at all.
-
With the granularity that it allows you to modify and add files to the project it will easily support deploying dependent assemblies and resources.
The one thing that I would say that I prefer WSPBuilder over STSDEV for is the integration with Visual Studio and the generation of an install BAT file. Although I would say that both are on very equal ground as far as capability WSPBuilder has the project templates integrated with the project and solution which is a very nice feature, and the ease of clicking a bat file to do the deployment makes it all the better. Not that you couldn't create a BAT file for STSDEV though.
Overall, I would say that I would be happy to use either one of these tools anytime. They both have attained my desired goal of being able to create a solution package for SharePoint without having to worry about the gory details that take the efficiency out of most SharePoint projects.
Reference Links:
STSDev Solution Generator
WSPBuilder
Previous Post
Michael
In a previous post I started to get in to how I was surprised by the amount of detail Chris Givens put in to creating this course. Nevertheless I am still astounded at the amount of detail and the depth he goes in to.
Let me back up a bit here. I have been requested to teach Chris's Advanced SharePoint Developer course at AmeriTeach next week (9/8 – 9/12). So I spent much of last week getting deeper in to the instructor demos and the course labs. I was very impressed not only by the amount of detail Chris goes in to as mentioned before, but by how deep he gets in to the module subject. I am over half way through the course and can definitely tell you that he has taught me a few new things.
Let's take an example of a regular course. Generally you will have a couple of modules on working with the basic SharePoint interfaces getting used to what SharePoint is all about. Then you move on to a quick primer on Office SharePoint Designer 2007 with some very quick and general overview topics of what you can use it for and side effects. And then get in to other areas of SharePoint development. While this is a good path, it definitely is different from what Chris has chosen to do. From the start Chris starts in to some deep detail about how to set up FBA, SSO, and other techniques. From there he goes in to SharePoint customization.
The next topic after all of this was SharePoint Designer. What caught my eye right out of the gate was that the course has two modules dedicated to SPD. I was kind of surprised due to the fact that I have never seen another "Development" course hit SPD so hard, but I soon realized why. While I was making my way through the content I found I was learning a slew of new things that I never knew Designer could do. (Alas, the reason I love being a trainer. I get to learn all the time.) My personal perspective of SPD before going through the course was not good. However after this part of the course I will start to look at it as a tool that I will keep in my arsenal. With the new functionality that the course has covered helped me with this paradigm shift.
As I keep making my way though the course I will post more reviews of the content. Also if you are interested in taking the course AmeriTeach will be running it next week and also again in November. Look for the schedule at their site.
Michael
As part of taking part in starting up a new SharePoint User Group I finally was able to get the site up and running.
Funny and ironic as it might seem Shannon and I decided to go with the "eat your own dog food" approach and create the site with WSS 3.0. Furthermore our efforts were also expedited by using the Community Kit for SharePoint's User Group site template.
Now don't just assume that since it is up that it will not change. There will be quite a few additions to the site in the coming days that we just haven't had time to get done yet, but soon enough we will add some cool web parts and more visual changes to the site. The rush to get the site up was due in part to the first meeting that is coming up on September 2nd.
If you are local and would like to participate in the Group or if you just want to see the site you can find it at:
http://www.CoSSUG.net/CoSSUG
A big thanks needs to go out to Lawrence Liu and the rest of the CKS developers for the hard work they are doing on creating the SharePoint templates and add-ons that make getting things done with SharePoint much faster.
Michael
Finally I was able to button up my MCPD Enterprise. I have been sitting around with the need to take that one last exam and get everything all buttoned up, but with the amount of work I have been doing over the last year or so it has been virtually impossible to get my certification taken care of. As luck would have it I have run in to a quiet period between contracts and was able to on a whim go to a testing center and get the test over with.
I will say that I was not overly impressed with the test. I took 70-549 Design and Architecture exam. I was really hoping to see more design questions. I guess I like the thrill of the puzzle, but I only encountered a couple of questions that I considered actual design questions. Otherwise the rest was more technology focused, meaning that the questions were more like select the correct technology to perform this task.
I was surprised however by the fact I did run in to a couple of blatant trick questions. I actually laughed a couple of times when I ran in to them. Just because if you are one of those speed reading test freaks you probably would have totally breezed past the key parts of the question and answered it incorrectly. I am not quite the speed reader which I am sure what saved me.
Overall, the test is a good test. It definitely is challenging, but I would have liked to see more design questions on it.
Michael MCPD
On the project I just completed I was in need of the ability to quickly package a site definition, web parts, and workflows for a custom SharePoint site. I ended up using 3 different techniques in order to package the 3 different solutions. Which in the long run I wouldn't recommend, but overall I now have a much deeper aspect of the different techniques I used. I will detail the pro's and con's I found for all of them and you can make your own decision as to which one you would use to suit your development needs.
Visual Studio 2005 Extensions for WSS 3.0 v1.1
Since the project was going to be completed with VS 2005 I used the extensions to help develop the solution for the site definition part of the project. This add-on that you can download from MSDN is a must have for any SharePoint developer. The problem is that with all of the great things that it offers to the developer it also offers just as difficult to use or ambiguous functionality. Also I found the User Guide that is supposed to make using the tool easier offered very little or out of date information.
Pros
-
Includes the Solution Generator
- You initially can set up a site that mimics the structure of your site or list and run this tool against the site to build all the necessary files. This is a big time saver.
- It has many different templates that are useful for creating a wide range of different objects in SharePoint. You have choices like Webpart, List, Site Definitions, and many more.
- It is an add-on to VS and provides an additional view. The WSP view helps the developer package the different project objects in to a SharePoint solution.
- It automatically includes any new additions to the project to the solution package
- The tool also gives the developer a Deploy option that will build the package, add the solution to SharePoint, and deploy the solution.
Cons
- As stated above in the introduction to the tool, it is the lack of a good, clear, and up to date User Guide. By far I see this as a huge problem.
- Lack of rich interaction in the WSP view. In order to do much of anything with the WSP view you have to either use 'F' keys or a couple of tool bar buttons that are offered.
-
Lack of ability to package dependent assemblies in to the package.
- I am not sure if I was just missing something that wasn't obvious or if the User Guide didn't cover it, but I had a 2 other assemblies that I needed to be deployed with the site definition and after some time trying I failed to get them to package and deploy correctly.
Traditional MakeCAB with Packaging .bat files
The inherent manual functionality that any developer has with developing SharePoint solutions is the ability to use an XML manifest file and a MakeCAB build file to create a solution package. I won't really rehash how to do this, but if you need a good reference you can find many blogs and articles on this topic. But the technique I used was right in line with what Ted Pattison defines in his book Inside WSS 3.0. I chose this because I personally find his practice easy to understand and also easy to explain to any other developers that might come on to the project or in case of the need to transfer knowledge.
Pros
- The developer has a great amount of control and granularity in creating the solution.
- This strategy gives the developer a deep understanding of how a solution packages are created.
- There is a lot of good information as to how to put a project together in VS to accomplish the creation of the solution package.
Cons
-
There is a lot of manual labor that has to be done every time you set up a project that will use this strategy.
- Although after the first project you will more than likely have some template files you can use to get up to speed more quickly, but nevertheless it is still a very manual process.
-
Anytime the developer adds new files to the project that needs to be packaged then the file reference needs to be added to the manifest and MakeCAB build file.
- The manifest file is not too difficult to understand, but the MakeCAB file can become difficult to follow or debug if there is an error.
WSPBuilder
WSPBuilder is nothing less than a Visual Studio Add-in godsend. This is a great tool and is very easy to use. Not only that, but it comes with a single very small read me document that is very concise about how to use it. The add on for VS is very similar in concept to the Extensions mentioned above, but it does a much cleaner job allowing the developer to implement dependent assemblies and still maintain a very granular control over the solution like the traditional strategy.
Pros
- Easy to use, and has an up to date readme.doc that is very clear as to how to use the tool.
- Add-in to Visual Studio
- Creates WSP package and also some additional deployment .bat files
- Has a console side that can be used for Continuous Integration setups.
- Allows for granular control of the package, but also doesn't have the overhead of having to setup the base project structure and other common files as in the traditional strategy above.
-
The tool also gives the developer to deploy dependent assemblies and files to the various folders that can be used with SharePoint development
- Folders like the GAC, Bin, and others are creatable in the folder structure of the WSPBuilder project template.
- Contains many of the same templates that come with the Extensions add-in mentioned above.
Cons
- To this point I haven't found any CONS to this tool. It really is the best of the 3 strategies. It is much easier to use with less manual setup.
Conclusion
As far as I am concerned the WSPBuilder is by far the winner in my book. It provides the necessary level of granularity and ease without all of the manual setup of the manual project files and structure. Not that I don't like the manual I just don't like performing redundant tasks. Also from what I understand there might be a CodePlex project that will build the Ted Pattison project structure for you, but I haven't worked with it so I really cannot comment much on it.
Now, I know that some of the pros and cons are probably different from what you might be experiencing, but if you have one that you would like to add to any of these or even another tool that you think should be included then I would love to hear from you.
Link References
- Visual Studio.NET 2005 Extensions for WSS 3.0 v1.1
- WSPBuilder
- CodePlex
- Inside WSS 3.0
Hope you have enjoyed this evaluation of the solution builders.
Michael