Office 365 : Service Interoperability

January 15th, 2014 No comments

Just to be clear, there are two breeds of Office 365 currently available in the market:

  1. Office 365 RTM (SharePoint 2010, Lync 2010, Exchange 2010 and Office Pro 2010) which is the focus of this blog post for the most part (see the end of the blog post for new Office 365 stuff)
  2. New Office 365 ( based on the 2013 wave of products (SharePoint, Lync, Exchange, etc) currently in the customer preview mode).


The more I work with Office 365, the more I like the interoperability features of the platform. In the context of services, the interoperability is the ability of a service to work with another service with no or minimal effort on the part of tenant. Here are some of the features and workloads in Office 365 that totally justifies why as a small to mid-sized customer you should be considering Office 365:

1) With SharePoint online, collaborating with your partners and customers is ridiculously simple. It’s just the matter of enabling a few settings and features , and you are all set!


2) Office Hub: Your SharePoint Online sites under your fingertips (Windows Phone Only)

3) Office Web Apps (Not included in Exchange Online Plan.View only in Kiosk Worker (K1))

Aside from the obvious benefits of Office Web App, if you are delivering content across a wide variety of network links or across clients with fluctuating bandwidth, Office Web App is a fantastic way of delivering Office documents to your end users FAST,without worrying about how long it would take for the client to download a word document or whether or not they have the right version of Office client installed. Just think about it for a sec!

4) MySites (Only available in enterprise plans E1 to E4)

I’ve lost the count of failed social implementations in SharePoint just because the client was not able to properly implement MySites. Identity management business is not fun and user profile import is not easy either. It’s a slippery path you don’t want to go down! Well, My Site are there already , all you need to do is a) buy the right plan  and b)click on the right link! That’s all to it!

5) Your Lync federation with other organizations that use Lync 

Be my guest if you want to spend thousands of dollars to buy and setup your Lync farm and spend half a year planning and executing your plan to install Lync in your organization. Lync as a service in Office 365 is easy to setup and it comes with Federation which if you wanted to setup yourself it could be an additional edge server , a couple more certs and IPs on the top of what you had already spent for your on-perm Lync farm!

6) Setup Exchange ActiveSync on various mobile devices

7) How to use PowerShell to manage your online services

.8) Creating online meetings using Lync Online

9) Broadcast your PowerPoint presentations using Lync Online . This feature is particularly important because SharePoint Online PowerPoint Broadcast feature in Office 365 will be removed on 2 October 2012, and all data stored in the Broadcast site collection will be deleted. That being said , for broadcasting your PowerPoint presentations you either need to use Lync or

10) Office Boradcast Service (a free service within PowerPoint 2010)

11) Microsoft Lync 2010 Attendee – User Level Install

12) Lync Online for mobile devices

13) Directory Integration Services in Office 365

Now let’s take a look at the features included in the new Office 365 and what they mean to customers from the interop perspective:

1) Sync your SharePoint documents to your computer at home or work using SkyDrive Pro included in MSI-based Office Professional Plus 2013 (Yeah, that’s how Office 365 team distinguishes their Office products from the traditional Office client apps intended for your desktop or on-premise usage):

2) Integration with Skype

Categories: SharePoint 2010 Tags:

My Office Knows it All!

December 29th, 2013 No comments

I am not saying Office 365 is great! I am saying Office 365 is pretty AWESOME! I think the combination of Office 365, Office 2013, Office Web Apps and SkyDrive is the future for everyone, and an immediate need for many small to mid-sized businesses.

Read my blog post here for a long list of immediate benefits you can get from Office 365, and the second part of another post here about SkyDrive and Office Web App integration and awesomeness.

In Office 2013, just like SharePoint, everything can be tied to an identity. This is optional, but if you choose to identify yourself to Office, the following picture shows where you can set your identity:

The identity shown in an Office Client is referred to as Microsoft Account which can be your Windows Live Account (like or or your corporate account that’s been associated with Windows Live. After you identify yourself to Office, you have the option to save or open your Office documents from your SkyDrive.

Office defaults to SkyDrive when saving a new document, which means Microsoft wants you to save your document there!

For SharePoint Designer, there are two identities : Microsoft Account (1) as well as the identity of the user who has logged in to SharePoint (2). SharePoint Designer just like SharePoint let’s you sign in as a different user , should you click on the icon labeled as 2 in the picture.

Obviously, you may have a reason for not wanting to be tracked by Office, which is totally understandable. However, a new feature in Office 365 called My Office is interesting and may make you change your mind. The following picture shows My Office (Beta) in the new Office 365:

After you login to your My Office site, you are able to see all your recent documents you have opened in your Office client apps across all your devices, thanks to Microsoft Account support in Office 2013.  Alternatively, you can create new Office documents in SkyDrive or access the links used by your Office clients apps. That’s pretty cool stuff!

It’s very impressive how Microsoft has been able to quickly turn things around, and become a serious competitor in this CLOUDY world we are living in!

[Off-Topic]: I always use Word to publish my blog posts. You can also use Word to publish to your corporate SharePoint blogs. Read this HOW-TO.

Categories: SharePoint 2013 Tags:

SharePoint Jargon Is Not a Value-Add, Be Simple!

October 16th, 2013 No comments

As SharePoint evolves, so does its language!  For every new feature or workload Microsoft introduces in this great platform, a whole new buzzword is born. As a SharePoint consultant who has worked with dozens of enterprise customers for a decade, the one thing I have learned, over and over, is that using buzzwords or getting too technical is simply a bad sign in communicating with the business users.

Based on my experience business users only understand (and care for) six things in SharePoint:

  1. Sites: A central place for collaboration, communication, or storing information.
  2. People: Those who are involved in the site, either contributing information, facilitating the communication or consuming information.
  3. Apps: Those similar to what they have in their smart phone! I am sure you have heard this before: On my phone, I can find contacts alphabetically, give me a People Finder in search that works exactly the same! 
  4. Themes: Cosmetics, look and feel , basically everything that can make their ideas shine to the C-Level people.
  5. Search: The one that they use in Google or Bing sites with the exact same simplicity, speed and user experience.
  6. Metadata: Information about their information. Things like Author, Created By, etc.


When you go beyond the basics, it becomes important to have an strategy to make complex matters simple for them to understand. Getting too technical? They don’t understand you. They don’t understand you, then they don’t trust you . If they don’t trust you, nothing will happen, regardless of how qualified you are to get the job done!

So, how should you spoon feed information to your business audience?  I use many techniques varying from one interaction to another. However, the following three techniques are pretty much always in common:

Prepare, Prepare and Prepare

I never EVER meet with a business user without having an agenda. That’s just a simple rule that I never forget. I share the agenda ahead of the time and communicate the outcomes that would like to achieve. Sometimes, I send them home work or a survey to get them THINK in advance.

The Power of Stories

For every topic in my agenda, I have got a supporting story to tell. I try to keep the stories short and add a few jokes here and there. Below is “The New Home Metaphor” and the story I tell my business users when walking them through content migration from file share to SharePoint:

Think of building your SharePoint site as building a new home for your family. You design the structure, layout, façade and other requirements of your new home based on the taste and needs of your family. Before you move in, you divide (classify) all of your possessions into boxes and label (tag) those boxes to indicate “what each box contains” and “where they will be going” in the new home. At the end of the day, what is in those boxes will represents your home and how modern or old-school it looks like. If you are moving into a larger home, you’ll likely take items that were in a single room and put them into multiple rooms. On the other hand, if you are moving into a smaller home, you may end up merging your belongings from several rooms and put them into one single room.

Then there is the “moving day”, and movers help you move into your new home. And that’s when the real work begins!  You want to keep things in order so you can find them faster. You upgrade your home appliance, clean up your home and handle the day-to-day maintenance. Some maintenance like lawn mowing is outsourced, and some is done in-house. You and each member of the family are just one tenant of the new home and you all need to share some facilities, therefore you all need to follow some rules and requirements. There are communication, training, spot checks and monitoring activities to determine if each member of the family is doing their job right.

And the story goes on. You get my point!

The Art of Drawing

I like whiteboard drawings to express myself and to back up my stories in a “visually telling” manner.

I use simple drawings when I feel that the client is overwhelmed and is unable to metabolize the flow of information.  For instance, I draw the following picture on the white board to present the high level structure of Managed Metadata as well as how it works in SharePoint.


I draw the following picture to explain how content types are used as the  “information building blocks” of their sites . This picture is also useful when explaining the difference between managed terms and column metadata.


Make them Feel Part of the Process

Let’s face it. No business user enjoys sitting there in an hour-long meeting, and listen to you talking about how much you are in  love with SharePoint. They quickly get bored and you lose their attention. Use different engaging techniques to make them feel they are part of the process. Conduct workshops, play games, use card sorting, make them draw something on the whiteboard (this one is a bit tricky)…I don’t know, do whatever you can if you don’t want to see them playing with their BalckBerries !



SharePoint is complex! When working with business users, try not to make it more complex than what it is.  Most of business users never even have to know the details like what a web part connection is or how document set works behind the scene. Avoid getting too technical or using jargon simply because you’ll lose their attention.

Try to be simple and focus on helping them get the biggest bang for their buck!



Fix: Publishing Hyperlink Issue

June 13th, 2013 No comments

If you have used the Publishing Hyperlink as a list column before, you might have run into the following problem. Create a new item with a link.



The item is created properly and the link works correctly.

Now,  you don’t want to have a link for this item so you edit the item and click “Remove Link” and save the item. All is well.


Now. you change your  mind again and want to add a link back. Surprisingly,  there is no interface to add the link back again . What happened?


Taking look at the html on the form there are 2 important things to note:

  • First, is that the link still exists.
  • Second, the text for the link has been removed. Below is the html that you will find:
<A contentEditable=true href="" rel=sp_DialogLinkIgnore UseInlineStyle="True" 
AllowParagraphFormatting="False" AllowThemeFonts="False" AllowHtmlSourceEditing="False" AllowImageStyles="False" 
AllowFontColorsMenu="False" AllowLists="False" AllowTables="False" AllowImageFormatting="False" AllowHeadings="False" 
AllowImages="False" AllowFontsMenu="False" DisableBasicFormattingButtons="True" AllowReusableContent="False" AllowFontSizesMenu="False" 
AllowHyperlinks="True" AllowTextMarkup="False" AllowTableStyles="False" AllowInsert="False" AllowFonts="False" AllowStandardFonts="False" 
AllowImagePositioning="False" DisableCustomStyles="True" AllowStyles="False"></A>

So all is not lost, as a user, however, there’s no text to click on, you can still get to the link by tabbing through the elements on the page.  Now you will find the “Link Tools” tab available again.


Further if you move your cursor to another field such as the Title “Click to add a new hyperlink” will be available again.

Solution: By using some JavaScript added to the New Form and Edit Form, you can fix the behavior of the Remove Link button. Just hook up to the Ribbon events and then override the onclick of the Remove Link button.  The script then goes and removes the href from the anchor tag.

ExecuteOrDelayUntilScriptLoaded(function () {
    CUI.Ribbon.prototype.$L_old = CUI.Ribbon.prototype.$L;
    CUI.Ribbon.prototype.$L = function () {
        $(document).trigger('tabSelected', [this.get_selectedTabCommand()]);
}, 'cui.js');

$(document).on('tabSelected', function (e, selectedTabCommand) {
    if (selectedTabCommand == "LinkTab") {
        var removeLink = document.getElementById('Ribbon.Link.Link.Link.RemoveLink-Large');
        removeLink.onclick = (function () {
            var origOnClick = removeLink.onclick;
            return function (e) {
                var linkAddress = document.getElementById('Ribbon.Link.Link.Properties.LinkAddress');
                var linkValue = linkAddress.value;
                linkAddress.value = "";

                var linkHref = "#aspnetForm a[href$='" + linkValue + "']"
                var elemLinkHref = $(linkHref);
                elemLinkHref.attr("href", "");
                if (origOnClick != null) {

As a final note, if you want to delete the Publishing Link through the UI, without this bug happening, the URL field should be deleted instead of using the “Remove Link” button, or the script above can be added to your New Form and Edit forms.  

Categories: SharePoint 2010 Tags:

Designing Your Taxonomic Hierarchy

June 5th, 2013 3 comments

When using taxonomic hierarchies to classify information, managed metadata is definitely your best friend.  In SharePoint, taxonomic hierarchies can be defined using  two methods:

  • Method A: Single Column Managed Metadata 
  • Method B: Multi-Column Managed Metadata

In this blog post, We will use NBA teams classified by  Conference, Division, and Team names and will examine the pros and cons of each  method. We compare each method from the following perspectives:

  • Tagging Experience
  • Making Changes to the Hierarchy
  • Metadata Navigation
  • Search Experience

Method A – Create the entire hierarchy from a single termset in a single metadata column. The single column then can be used for tagging in a Document Library.


Method B – Create the metadata using separate metadata columns. Multiple columns will be used to define data in a Document Library.


Tagging Experience

Method A – Adding data in this scenario is straight forward and very structured.  You work your way through the hierarchy and choose the tag to mark the data with.


Method B – Adding metadata in this scenario requires more attention.  There is a higher change of making mistakes when adding data, because the hierarchy is split up across multiple columns and there is no relation between the columns.


Making Changes to the Hierarchy

Method A – When changes occur in the hierarchy, the Term Store can be changed to reflect this change without having to change any of the existing data.  For example, moving Toronto to the Central Division.






Method B – Using the same example to move Toronto to the Central division, in method B each record must be updated for this change to be completed.




Metadata Navigation

As you probably know, metadata navigation was a big feature added to SharePoint lists and libraries in SharePoint 2010 . In SharePoint 2013, Microsoft took this to a whole new level, but that’s beyond the scope of this blog post.. For Lists in SharePoint two types of metadata navigation can be added: Navigation Hierarchies and Key Filters.

Method A – Navigation Hierarchies work very well in this case.  The navigation is easy to follow.


Key Filters also work with method A, but get a little messy if you try to use too many terms.  The example below show a mix of divisions and teams.


Method B – Navigation hierarchies do not work very well in the case of method B. Using the following hypothetical situation, if there were a Dallas Mavericks team in both the Southeast and Southwest divisions, from the navigation hierarchy alone you would not be able to filter for the one specifically in the Southeast or Southwest.  The only way to filter by the additional columns is to go to the divisions or conferences column and select the filter value, or use the Key Filters if they are turned on.  This leads to using multiple interfaces to get to the data you want which can become confusing.





Key Filters for method B work very well because the filter criteria is neat and organized.


Search Experience

Method A – When using Search with Method A, only the tag used as the metadata applies to the data.  Take for example a search on David West.  Searching for Indiana Pacers will find David West; however, searching for Central or East will not find this item.






Another example is to search for James.  In the results returned the only tags available in the refinement panel are the metadata values “Miami Heat” and “Houston Rockets”


Method B – For method B since more metadata is being used to describe the data, each metadata value can be used in the search.  David West can be found using Indiana Pacers, Central, or East.





Also for the James search, the tags returned are for the Conference, Division, and Team.



To summarize everything, when using a single column with a complete hierarchy, data entry and metadata hierarchy management are easy to do.  Metadata navigation is also more intuitive to use.  However, when it comes to the search less information is available to find your data. In another word, search experience isn’t that great!

And for multiple columns, the opposite is true.  Data entry and hierarchy changes require more time to complete (and it’s easy to make mistakes). Metadata navigation hierarchy is less intuitive although key filters work best here.  But, if you are looking for good search criteria multiple columns is the better choice.

Categories: SharePoint 2010, SharePoint 2013 Tags: