The Future

According to some, Microsoft has released for IE only a preview of the upcoming website.  It’s thus far being met by some pretty harsh words.

That’s no huge suprise – people love to hate Microsoft and while I’m not always a fan of the marketing direction and naming strategies, one thing is certain, Microsoft has been making strides in the right direction in terms of visual presentation with sites like the Vista preview site.

I have faith in the user-experience teams at Microsoft and with people like Jenny Lam helping to steer the boat things can only get better.

Offline Time

Shane and I are on holidays for the next 2 weeks.  We are using this time to recharge and get some things done around the house.  For the past week or so we have been slaving in our backyard to do some landscaping and let me tell you…this body was not made for manual labour.  But things are coming together, especially thanks to my dad, Aaron (brother) and Dana (brother’s gf) we were able to accomplish a lot together.  Not to mention Shane’s absolute dedication to the task that can sometimes find him out shovelling and raking while yours truely is playing Frogger on the Xbox.  Of course have no fears, I can barely lift my arms as I type this so I assure I have logged my fair share of hours too despite moments of weakness (literally and figuratively).

In addition to the manual labour, which is actually quite good for the mind, we are also hoping to get some fishing and camping in.  The general theme will be offline activities with the exception of a few minor tasks.

Next week I am off to Redmond.  It will be my first time there so I am pretty excited.  Can’t talk much about it now but should be able to post some pics and fill in details later.  In any event, I am looking forward to it.

Vacation Time!

The posts will likely slow down over the next couple of weeks as I unplug during 2 weeks vacation, I still have a couple of big community projects I’m working on in the background so those involved know how to contact me.

The next couple of days is being spend landscaping my yard, then it’s a week of BBQs, Spirits and Fishing/Camping Roadtrips.  The following week holds a special suprise-trip which I’m sure Amanda will fill you in on over on her blog eventually.

Changing your site layout and style sheets dynamically with ASP.NET

Great article by Scott Guthrie on his blog:

Recipe: Dynamic Site Layout and Style Personalization with ASP.NET


You want to enable end-users visiting your web-site to dynamically customize the look and feel of it.  Specifically, you want to enable them to choose different content layouts for the site, as well as different style experiences (colors, fonts, etc). 

When building this customization system, you want to make sure you avoid duplicating logic throughout the multiple pages.  Instead, you want to be able to author the dynamic personalization logic once and have all pages inherit it.


ASP.NET 2.0 makes dynamically customizing the UI experience of a web-site easy.  Specifically, it provides a flexible mechanism for defining page layouts using a feature called “Master Pages”.  It also provides a flexible mechanism for defining a page’s style look and feel via a feature called “Themes”. 

What is nice about both “Master Pages” and “Themes” is that they can be configured either statically (by specifying the Master Page or Theme to use within an ASP.NET Page’s

Read the entire Dynamic Site Layout and Style Personalization article

MOSS 2007 (WCM) Customization: Registering the proper prefix

Those of you that have delved into the customization of WCM capable sites and page layouts may have noticed that when you drag a content control on to the page and view it in the browser you get an “Unspecified Error” – Gee thanks, that was informative.

Luckily there is (at least in some cases) a fairly easy explanation:

When you drag a content control on to your page layout the it is likely prefixed with CMSC (I assume this stands for content management server control).  This prefix is not registered at the top of your page so you have two options (that I know of).

Search and replace CMSC with PublishingWebConrols (which is registerd), or copy/paste the entire “register” line for Tagprefix=”PublishingWebControls” and replace PublishingWebControls with CMSC.

I hope this helps,


SharePoint Designer 2007: Another Hidden Gem (Logging)


Today I’m venturing deep into the creation of custom page layouts built on content types.  The layout is relatively easy so I decided to take a shot at creating CSS based layouts for my page(s).

When attaching a custom style sheet, I noticed the option to “Attach a custom style sheet to “all” html files”.  It does master pages and .aspx pages as well just so you are clear.

Once the operation is complete, you have the option of viewing the log displaying what files were updated, and any that you choose to skip, or there were errors with.

Nifty little feature.




Calling all InfoPath 2007 Experts – Looking for a little help

This is probably going to need input from the InfoPath 2007 Team but I figured I’d put it out there anyway.

We are trying to use the email data connection functionality to email an InfoPath form to a user external to our network to fill out and return to us.

The InfoPath form template is published to a SharePoint Form Library. Even though we have checked the option, “Attach the form template to ensure that users can open the form”, the form still tries to connect to the SharePoint Form Library Template. This is a big problem for the solution we need to develop.

Is this a bug? If not, when does the “Attach the form template to ensure that users can open the form” option work? If the form always looks for it in the published location, what good does attaching the form template to the email message do?

In case anyone offers the solution of “Restricted Mode”
The only way we’ve been able to get a semi-working model of this is using restricted mode which unfortuantely introduces other issues which make this “not” an option.






If anyone can help it would be greatly appreciated. Drop me an email or leave a comment here.


Office 2007, Jensen Harris showing off some visuals

Courtesy of Jensen Harris

So, without further ado… the new Office 2007 color scheme is called “Silver.” Here’s a picture of it running on top of a recent build of Windows Vista.

This color scheme was designed to provide a very neutral canvas on which to do your work. It draws your eye to the document and doesn’t include some of the more decorative aspects of the other two color schemes, such as the architectural elements behind the document. And most importantly for a neutral canvas, Silver isn’t infused or saturated with color, so that the design of your document stands out.

So, the final list of color schemes is: Blue, Silver, and Black. You can change between any of them from Options in any of the new UI programs included in Office 2007.

MOSS 2007/WSS V3: Where are the chart web parts?

I had an email conversation yesterday about “charting” in MOSS 2007/WSS v3, more specifically where are they? With so much emphasis on BI you would expect to see a lot of charting capabilities.

We all know how exec’s love their BI, KPI charts, so where are the web parts? Do we rely on the charting capabilities of the other Office 2007 products? Was this an intentional door opener for partners? I don’t follow charting a whole lot so I figured maybe some others would have ideas, opinions or answers on this topic? I’m all ears if someone wants to chime in here.

About Process.

A word that is music to my ears yet sends so many others running for cover. How many times in the run of a week do I get that “Oh here she goes again” look? Usually good natured since most people in my company have begun to appreciate the value of well structured projects and products. However I still see it.

A large part of my job is related to understanding what customers need, matching technology features to those needs and then defining the process to deliver it. Since communication, collaboration and documentation are such important aspects of each project, it’s important that we have good processes in place to facilitate these activities.

As a Microsoft Gold Partner and software development company, we have a lot of different technological tools at our disposal to help us manage these processes and automate tasks. However it is important to understand that no matter how great the technology works (and how I do love it) – it is nothing without the process that it supports. Technology is an enhancement to a good process but it is not a substitute.

The Truth.

Process exists whether you recognize it or not. Any activity you perform has a process. You drive to work.  There is a process that brings you from your kitchen table to your desk. You brush your teeth.  There is a process. Imagine putting your toothpaste on your toothbrush after you finished brushing. Not very likely to happen since it’s a process you have performed so often throughout your lifetime that you have become completely unaware of its steps. The reason why you were able to learn how to do this right so quickly at a young age was because a) you had good instruction from your mother or father b) if you did it wrong you were probably sent right back upstairs to do it again, thus cutting down on the time you had to play with your friends c) it was logical – the steps were easy to remember because they made sense.

The Fear.

Many people at some point in their life became scared of the word process. Even though they unconsciously perform thousands everyday – somewhere along the line somebody taught them a BAD process. Bad processes are ineffective and inefficient. They cause people to spend more time worrying about HOW they are doing things than focusing on WHAT they are doing.

The Benefit.

Good processes define what comes next for people. They improve how information is transferred and stored in relation to an activity. By establishing efficient systems you allow your team members to focus on the issues that require their specific skill sets.

Think back to my example of driving a car. This is a process that you probably learned quite a while back. When you first started everything was new and your probably had some hesitancies and fears. However once you performed the process over and over – everything became more natural (hopefully). You became a better driver because you were able to spend more time looking at the road and what was ahead of you than looking at the speedometer or worrying about when to switch gears.

Processes allow team members to better react to issues and risks since they are not burdened with decisions on inconsequential tasks. Decision making and creativity can be left to more important items that directly affect the customer?s experience or product.

Ever go to a grocery store looking for 5-6 items and walk out forgetting one. Chances are you did’t have a list or a plan when you entered the store. Maybe you even got so distracted picking up other items that you forgot about the milk. Not a big deal in this setting I guess – I mean the kids can have orange juice in their corn flakes can’t they?

Now let’s change the setting to an important software development project where the customer identified 10 very specific requirements – and you develop an application for them that meets just 5 of the requested requirements plus 12 others that they really couldn’t care about. I think this could be considered a big deal. An effective process in this case, would have smoothly carried us from the requirements analysis stage, right through to the post project analysis meeting where the customer explains that they are very pleased with this new application that solves ALL of their problems. Now that my friends is where the music comes from.

Effective processes help you to make sure that critical tasks are completed and never skipped. Perhaps you have a project manager that needs to be notified whenever a change order is requested. By creating a change management process, resources can be required to notify their project manager or team lead before accepting changes. By having tools like Sharepoint or even custom developed applications, automated messages can be sent to team members based on activity in a specific web folder or directory. When a team member receives a change order request, he fills out a form and saves it to a library, and the project manager is notified immediately of change via an automated email message. By having a collection of these requests stored in a centrally accessible area – team members and leads are better able to make decisions and prioritize.

By effectively establishing and documenting processes, it becomes easier to scale your team and company since new members can easily be added. Valuable resources can be freed from repetitive time consuming tasks and bought in on additional projects to help your company grow.

The Things to Remember.

There are a few things that you should remember when you attempt to implement new processes or change existing ones in your organization:

  • Every activity has a process.  The question is whether the process is efficient or effective enough.
  • Don’t over complicate things.
  • Avoid duplication of information or effort.
  • Provide an appropriate level of instruction and documentation.
  • Don’t forget to work with your team to make sure you are considering all alternatives. Remember they are probably better at doing their job than you are.
  • When working with a group to define a process – focus on what activities they currently perform now. Try to retain as much as possible in the first pass through. If optimization or re-engineering is required you should try to implement in stages.
  • Once a process has been defined – look at ways in which certain tasks can be automated or made easier. Consider the use of templates, tools or information systems. Encourage team members to share areas they feel could be automated or improved.
  • When implementing multiple new processes to a group that contain similar tasks, try to be consistent in how these are performed. In other words, make sure the round red button always does the same thing.
  • Don’t be afraid to look at how other people are doing things – they might be doing it that way for a reason and might not mind showing you why.

Ineffective processes leave people with wounds. Try to avoid implementing steps that result in your staff feeling locked down. The goal should be liberation. Let people spend their time doing the things they love about their job. Allow them to see the value behind the process and subsequently feel more positive towards it.

By gradually introducing change in manageable stages, it becomes

  1. easier to train users or groups on the new way of doing things
  2. demonstrate the benefit of each change
  3. spot some things you might have missed in your design.

By completely overhauling how a team does their work – you run the risk of losing them for good or disrupting the quality of service being offered to your customers. Unfortunately that is a process you have no control over once it happens.