Andrew Connell [MVP MOSS]
1402 Posts |  39 Articles |  3659 Comments
.NET  |  MCMS  |  SharePoint  |  Office System
SharePoint Quick Links
Article Categories
Archives
Post Categories


Add to Technorati Favorites
Thursday, November 20, 2008

Microsoft announced at TechEd EMEA 2008 two new certifications for SharePoint professionals. Both are additions to existing certification programs: the Microsoft Certified Master (MCM) and Microsoft Certified Architect (MCA) Programs. These build on existing certification programs which you can read about here if you’re unfamiliar with them. Instead of rehashing what the MCM & MCA are (read up on them using the above links), here’s my $.02:

  • The MCM is the top Microsoft technical certification on a product; in this case SharePoint, where you are tested on all aspects of the product from both the custom development, configuration and physical architecture perspective, but it isn’t limited to the product being tested as you have to know the whole environment and how to configure many other systems to fully optimize it. For the MCM: SharePoint Server 2007, you have to pass all four SharePoint exams as a prerequisite as well apply & go through an application process. There are four other MCM’s: SQL Server 2008, Exchange Server 2007, Windows Server 2008: Directory and Office Communications Server.

Spencer Harbar does a great job explaining what the MCM & MCA are and aren't... again, no sense in rehashing them here, go check out his post.

I love the fact there’s a single certification that covers the entire product stack, as deep and as wide as it is and does not keep promoting this developer & administrator divide in the SharePoint world.  In my opinion there should not be a separation between the two roles for a master certification… how could you be called a master of a product but only as a developer or administrator? Makes absolutely no sense… because then you can’t be called a “master” in my eyes. Another thing that’s cool about this certification is the format. You have to go through a three week class complete with homework and an exam at the end of each week, followed by a big hands-on exam at the end. The class format is awesome… sure there are slides and demos, but it’s the discussion and white boarding that rocks the house. During each rotation (what they call each delivery) they collect a ton of feedback and update the course/demos/labs/exam questions where appropriate.

So who’s working on the SharePoint Master certification? The best and the brightest SharePoint people at Microsoft in the field is who. This includes folks like the SharePoint Rangers, people from the Customer Advisory Team (CAT), the Premier Field Engineers (PFE’s) and some folks from Microsoft Consulting Services (MCS). In addition some folks from the SharePoint product team such as PM’s, software testers and others are involved. I know some of the guys and gals who are writing the materials for the class, the labs, the demos and exam questions. You can trust me these are some of the smartest people in the SharePoint space.

Microsoft people make up all but two of the course authors and instructors for the first few rotations. Two SharePoint MVPs make up the remainder of the SharePoint MCM course authors & instructors. Todd Baginski is the content owner & instructor for the Business Data Catalog piece. I’m the content owner & instructor for the Web Content Management part of the SharePoint MCM certification (and associated course, labs and exam questions). As I said previously, this means that after each SharePoint MCM rotation I’ll be updating the WCM content based on feedback and how the student discussion goes. I taught the WCM module the first time last Friday during their alpha rotation… it’s one of the most fun groups of people I’ve taught as it was a very engaging discussion.

I hope that at some point in the future I’ll have a chance to go for my MCM for SharePoint. It’s certainly something I’d love to achieve. No doubt it will be one hard and challenging undertaking as there are plenty of areas of the product that I’m not very strong in.

Wednesday, November 19, 2008

Jacksonville Office Developer SIG / Jacksonville Office Geeks Logo

The Jacksonville Office Geeks is a user group / special interest group that covers developer topics surrounding the 2007 Microsoft Office System, based in Jacksonville, FL.

November 2008 Meeting: Creating & Debugging Custom Timer Jobs in Windows SharePoint Services
SharePoint introduced the concept of timer jobs, or scheduled services, that run within the SharePoint platform in WSS v3. These timer jobs are used by SharePoint for numerous things such as cleaning up old sites (aka: dead Web cleanup), sending user created alerts and disk quota warning notifications. Developers can also create their own timer jobs that run on a configurable schedule and within the specified scope. Come learn how you can create custom timer jobs as well as the various deployment/installation options. You'll also see how to create a compelling administration interface for managing the timer job and configuration data the job needs in order to function.

Here's the important stuff:

Hope to see you at the next two meetings!

Tuesday, November 18, 2008

Part 1 was posted back on October 27th... part 2 went up on November 16th. Enjoy!

Saturday, November 15, 2008

Miss PDC 2008 but live in the greater Orlando, FL or Atlanta, GA area? MSDN is bringing the best of PDC 2008 to you for just $99. I was blown away attending PDC 2008 and learning so much about the future of .NET and the cloud. Register today for the Orlando or Atlanta area (other cities offered as well):

  • Orlando, FL - December 11, 2008
  • Atlanta, GA - December 16, 2008

» MSDN Developer Conference - PDC 2008 Recap

Technorati Tags: ,,

First, thanks to everyone who attended my talks this week at TechEd EMEA 2008 Developer in Barcelona, Spain. If you haven't submitted an evaluation, please do so! Not only do you have a chance to win the cool phone, but it helps the conference organizers and me as well.

In my sessions I demonstrated a few things that I wanted to share in this post as some folks were trying to quickly take pictures or write done some command line stuff I did. I got a lot of questions about the sample site I showed in my two breakout sessions: Adventure Works Travel. I can't share the code for this right now, but it will be available by the end of the year. It's got a ton of cool demoware stuff like a Silverlight control as well as a WCF service hosted within the the SharePoint site that's called by the Silverlight control. Also demonstrates dual authentication with anonymous access and FBA. Cool site... but you'll be able to download the project & source code to deploy in your own virtual machines soon enough... I'll certainly be blogging about it when its available.

OFC202 - MOSS 2007 as Web Content Management for Internet-Facing Web Sites
The "code" for this session is related to the Content Query Web Part (I can't share the code from Adventure Works just yet). I've posted a ZIP of the Web Part definition that includes the customizations as well as the custom XSLT file... each includes XML comments where changes were made. Check the readme in the ZIP for instructions on duplication of the process.

» OFC202 speaking page link...

OFC309 - Launching an Internet-Facing MOSS 2007 Publishing Site: Deployment, Performance & Security
In this session I demonstrated how to do lazy loading of the core.js JavaScript file. I've uploaded the code for the WSP I create that contains the control that hides core.js for anonymous users, the master page I used and the ASPX page that does the lazy loading of the control. For more detail on this, check out my book & and the Microsoft KB article #933823.

The other thing I promised was to share the IIS HTTP compression stuff... I've blogged about this in a separate blog post here.

» OFC309 speaking page link....

If you're interested in learning more about MOSS 2007 WCM and the class I teach, you can sign up for this free webcast next week (Tuesday, November 18)... check this post for more information & registration details. I'm also teaching my 5-day Live Meeting based WCM developer class the week of December 8-12. What better way to learn WCM without the travel expense for less than $1,000 (registration link)!

In case you missed it, Microsoft also announced new development tools in the upcoming Visual Studio 10 release! Check Paul's blog for more info.


This past week I presented a session at TechEd EMEA that covered various things you want to do before launching your anonymous, Internet-facing MOSS 2007 (WCM) Publishing site (session OFC309). One of the topics I addressed was striving for the smallest page payload for requested pages. The page payload is the combined total size of all files required for a page request which includes all HTML markup, images, JavaScript, CSS and other assets on referenced in the markup. The best way to address the page payload is doing what you can to make all the files as small as you possibly can including doing things such as implementing a CSS-based (pixel perfect) design instead of one that is table-based.

There's another option, as I showed in the session: IIS HTTP compression. IIS has the capability of compressing, on the fly, static (HTM, HTML, CSS) files as well as dynamic files (ASPX, AXD). By simply turning HTTP compression on, your payload will shrink a bit... in the case of the session demo, it shank by roughly 21%, with no changes to the site codebase or SharePoint itself! Check it out for yourself... below on the left is a screenshot of Fiddler at an OOTB Publishing Portal site and on the right you see the results of the changes I've made below (this was done on IIS v7):

Fiddler0
Publishing Portal OOTB configuration
Fiddler1
Publishing Portal after bumping the compression level up to 9

By default, HTTP compression is turned off but when SharePoint provisions a web application, it enables both static and dynamic compression. HTTP compression differs a bit from IIS v6 (Windows 2003) and IIS v7 (Windows 2008).

Know that HTTP compression is a CPU intensive process so the higher the level, the more your CPU is going to be stressed. Both IIS v6 and IIS v7 allow you to set the compression level, a scale of 0-10 with 10 being the highest compression level. I'd recommend you push it as high as you can without negatively affecting the performance of the overall web server.

HTTP Compression in IIS v6 (Windows 2003)

  • First, you need to add a few static files to the list of static & dynamic file types by entering the following commands:

    Add HTM, HTML, TXT, CSS and JS files to static compression.

    CSCRIPT.EXE ADSUTIL.VBS SET
    W3Svc/Filters/Compression/DEFLATE/HcFileExtensions “htm” “html” “txt” “css” “js”

    CSCRIPT.EXE ADSUTIL.VBS SET
    W3Svc/Filters/Compression/GZIP/HcFileExtensions “htm” “html” “txt” “css” “js”

    Add ASP, EXE, ASPX and AXD files to dynamic compression.

    CSCRIPT.EXE ADSUTIL.VBS SET W3Svc/Filters/Compression/DEFLATE/HcScriptFileExtensions “asp” “exe” “axd” “aspx”

    CSCRIPT.EXE ADSUTIL.VBS SET
    W3Svc/Filters/Compression/GZIP/HcScriptFileExtensions “asp” “exe” “axd” “aspx”

  • Next, you can configure the compression level. Static is already set to 10, but you can bump up the dynamic as high as your server can handle... the following bumps it up to 9:

    CSCRIPT.EXE ADSUTIL.VBS SET W3Svc/Filters/Compression/DEFLATE/HcDynamicCompressionLevel “9”

    CSCRIPT.EXE ADSUTIL.VBS SET
    W3Svc/Filters/Compression/GZIP/HcDynamicCompressionLevel “9”

HTTP Compression in IIS v7 (Windows 2008)

In IIS v6 HTTP compression is configured on a file type by file type using the file type extension whereas in IIS v7 it's configured using MIME types. IIS v7 also adds some additional capabilities such as allowing the generated HTML markup from ASP.NET to be compressed before being added to the page output cache & also to dynamically set when compression is switched on/off based on how stressed the CPU is.

Thankfully the MIME types we're interested in area already configured so there's nothing for us to add there like we had to in IIS v6.

  • To set the compression level, open the C:\Windows\System32\inetsrv\config\applicationHost.config file and jump to the <httpCompression> section (around line 574). Add the dynamicCompressionLevel attribute to the <schema> node like this:

    <httpCompression [..]>

      <scheme [..] dynamicCompressionLevel=“9” />

    </httpCompression>

  • Next, tell IIS v7 to add compressed pages to the ASP.NET page output cache instead of deferring the caching until the request pulls it from cache:

    APPCMD.EXE set config –section:httpCompression /dynamicCompressionDisableCpuUsage:75

    APPCMD.EXE set config –section:httpCompression /dynamicCompressionEnableCpuUsage:20

  • Finally, configure IIS v7 to dynamically turn caching on/off based on the utilization of the server... below I'm telling it to only compress when the CPU utilization is between 20-75%:

    APPCMD.EXE set config –section:urlCompression /dynamicCompressionBeforeCache:true

Take one last thing into consideration: your mileage may vary. What I mean by this is that *every* environment, site and usage is different. The settings I list here may or may not work for you. Like any performance optimization process, you need to adjust the tuning knobs, test and analyze the results to find what works best for your environment. I'm using a compression level of 9 simply to show how much it can help you. I've heard some say don't go above 4... personally I don't see why you shouldn't go as high as you can as long as the CPU can handle it. So again... your mileage may vary.

Happy caching!

Wednesday, November 05, 2008

An article I worked on has recently been published on MSDN. The article, Implementing a Brand in a SharePoint Server 2007 Publishing Site, discusses three options for deploying files used in branding a MOSS 2007 Publishing site including the advantages and disadvantages of each. Personally I strongly prefer the last approach, but it's good to see all your options. The paper does NOT talk about how to make your site not look like SharePoint.

Here's a summary on what the article is all about:

Microsoft Office SharePoint Server 2007 publishing sites are commonly used as the external face for companies and organizations. As the online presence, SharePoint publishing sites should employ a consistent appearance ("look and feel") to make navigation and discovery of information as easy as possible for users. Implementing a brand for a site, however, presents challenges. There are various implementation options, and each has advantages and disadvantages. However, it does not make sense for all projects to adopt the same process and technique.

Office SharePoint Server 2007 introduced the capability to host content-centric sites on the SharePoint platform. These sites, commonly referred to as publishing sites because of the SharePoint publishing features they employ, take advantage of a series of concepts and capabilities in Office SharePoint Server 2007 called Web content management (WCM). Publishing sites are frequently used in an Internet-facing scenario as the public face for a company or organization. Therefore, it is very important for these sites to have a consistent look and feel—also known as branding. However, the various options available for how to implement and deploy the site's brand can quickly confuse developers and designers.

This article explores what a publishing site project team should consider when planning how to implement a brand within Office SharePoint Server 2007. While many of this article's concepts and issues address Windows SharePoint Services 3.0 sites, this article focuses exclusively on Office SharePoint Server 2007 publishing sites.

» MSDN: Implementing a Brand in a SharePoint Server 2007 Publishing Site

Sunday, November 02, 2008

Last week Spence posted that he updated and released a new version of his awesome Application Pool Manager utility that I've raved about. In this release he completely rewrote it from the ground up, added a ton of feature and also set it up so it would work for both IIS v6 and IIS v7. Check it out!

» Application Pool Recycle Utility for SharePoint Developers

Technorati Tags: ,
Friday, October 31, 2008

Back in my days as a MCMS developer, I created a few utilities and posted them to GotDotNet. Unfortunately when I left that job to move onto new challenges, I forgot to get the code. Then GotDotNet was retired... and I forgot to snag my utilities. And thus, they were lost. Every few months I get pinged by someone asking for them only to sadly report "sorry, so sorry, but they have been retired in the global binary heap." :(

No more! They have been found, thanks to my friend JakeW, and I've posted them on the MSDN Code Gallery! If you're interested in learning more about these tools, go to the original blog posts I had for each one:

Here's the new MSDN Code Gallery spot where you can download these tools:

» AC's MCMS 2002 Utilities

Technorati Tags:
Thursday, October 30, 2008

With PDC wrapped up, my next trip is to Barcelona, Spain for TechEd EMEA 2008 Developer. I'm heading over a few days early to tool around the city with my wife. I'm really looking forward to this trip as I've never been TechEd EMEA... actually haven't been to Europe since I was a kid (did a family trip to Ireland and on a school trip to Rome).

I've got a few sessions @ TechEd EMEA. If you saw my previous blog post or voted on some of my sessions, you'll notice my agenda has changed. Shocker, I'm now talking about MOSS WCM exclusively!

We're also exporting SharePoint by Day, SharePint by night, the social event for SharePoint professionals! SharePint will be on Sunday night, November 9, 2008 @ 8p at Sala Monasterio. Please leave a comment on this post to give us an idea how many people we're looking at. For those of you who've never attended a SharePint, it's pretty simple: consider it a birds-of-a-feather social event for SharePoint folks that's very lose and unstructured.

Looking forward to seeing everyone!


Copyright © 2003 - 2008 Andrew Connell
Creative Commons License 
This work is licensed under a Creative Commons License
Site design by Heather Solomon.

 
 
MOSS WCM Training
Looking for MOSS 2007 WCM developer training? Look no further! I teach my 4-day hands-on and 5-day online WCM classes for developers I offer through the Ted Pattison Group.

Get more information on the WCM courses!


Upcoming Classes
 Hands-on WCM:
 » Tampa, FL
   Jan 12-15, 2009
 Online WCM:
 » Dec 8-12, 2008


» Register today!

JAX Office Geeks
Jacksonville Office Geeks (JOG)
JOG is a special interest group in Jacksonville, FL dedicated to bringing the local SharePoint commnity together to share tips, tricks, ideas and best practices for developing solutions on the SharePoint platform.

Next meeting details...
When:
Thur. Nov 20th, 2008
  6-8p EDT
Topic:
Creating & Debugging Custom Timer Jobs in WSS

Speaker:
Andrew Connell, MVP MOSS

RSVP Today!


» Subscribe to the JOG newsletter