Updated Visio Stencil for Office 365 Just Released

Microsoft has updated its Visio Stencil for Office 365 that includes a number of symbols for building diagrams related to Office 365.   The stencils can be downloaded here.




The stencils seem to work much better in this version in that the captions appear at the bottom instead of in the middle and they work properly with themes.

Old Version


New Version


However, I also notice that some of the shapes from the 2012 and 2014 versions have not been carried forward so you may still want these versions of the stencil and they are still available for download.

Read More

Key Considerations when Migrating from SharePoint 2003

We have completed a number of migrations recently, including several from SharePoint 2003 to either Office 365 or SharePoint 2016.  With such an old platform, one is bound to have challenges and any SharePoint migration requires significant planning and testing to ensure content comes over appropriately.

With SharePoint 2003, there are a few additional quirks due to the original architecture of the platform that we have run into that need some additional planning and testing.

Good Luck with Database Migration

In theory, you can do a straight database migration of your SharePoint 2003 content database to SharePoint 2016.  However, there is no direct route – you have to migrate through each version of SharePoint.  From 2003 to 2016, these means you need to hop from 2003 to 2007 to 2010 to 2013 to 2016.

In our experience, leveraging a good third party tool such as Metalogix will help because these tools allow for a direct copying from SharePoint 2003 to 2016 with no steps in between.  We have used this approach successfully and recommend it for very old versions of SharePoint.

Weird URL Structure

SharePoint 2003 doesn’t have the modern friendly URL structures and site paths that you see in modern web sites or later versions of SharePoint.  If you do an inventory of sites, you will see a lot of URLs that are not user friendly such as http://xxx.com/C1/C16 or http://xxx.com/C3/C20.  In our experience, these URLs are not even consistently organized hierarchically, e.g. you cannot assume that C1/C16/default.aspx is a subsite of C1/default.aspx.

This will pose a challenge when migrating because it means your sites will need to be remapped as they are copied over – ideally replacing these arbitrary URLs with more friendly ones.

This is also a change management problem because SharePoint 2003 didn’t have any concept of social bookmarks or favourites.  End users now likely have bookmarks in their browser or email that will no longer work properly.  As these URLs change, you’ll need a communications strategy to ensure that end users can still find their sites.

One Page per Site

SharePoint 2003 didn’t have the WCMS features of future versions such as SharePoint 2007 or 2010.  Each site in 2003 is a collaboration site only with one default page per site.  In future versions of SharePoint, you can have publishing turned on and enable multiple pages per site.

As a result, you’ll see lots of site proliferation as users created a new site every time they needed a page.  When you move to the latest version of SharePoint, you’ll have to make some decisions on how to rationalize all these sites into a simpler site map that can now support multiple pages in a single site.

Invalid Users and Permissions

How many employees in your organization were working there in 2003?  When we inventory SharePoint 2003 farms, we find many cases where site permissions are assigned to users who no longer work for the organization.  In addition, we find key fields such as Created By or Modified By where the user in SharePoint 2003 doesn’t exist in the new SharePoint 2016 environment. 

Using a good third party migration tool, we can remap these users so that we can flag them for further analysis.  For example, we can create a user called “Invalid” and map any documents or sites that have invalid permissions to that user so that we can find these documents and update them.  We can also provide these tools with mapping so that if in SharePoint 2003 I’m “cwoodill” and in SharePoint 2016 I’m “chriswoodill” we can map the old user permissions to the new account.

Lots of Customizations

SharePoint 2003 was pretty limited, which led to many customizations as users added their own branding, site templates, and views.  These customizations included custom site templates, list templates, site definitions, etc.  In moving to the latest versions of SharePoint, many of these customizations can be retired or replaced with new techniques and designs. 

However, this doesn’t solve the challenge of having thousands of sites which are currently utilizing these customizations and will need to be updated to leverage either new out of the box functionality, migrated customizations or new customizations. 

Migrations are Always High Risk

Migrations are always high risk because they involve a significant amount of technical challenges as well as testing requirements.  With SharePoint, there are multiple layers in the platform that need to be migrated including settings, permissions, customizations, sites and content.  Each of these can require significant testing especially for sites that were heavily customized.

Having migrated several SharePoint implementations in the past 12-18 months, I can attest that migrations are not easy and require significant expertise.  If you need help with yours, feel free to contact me and we can share our experience.

Read More

For SharePoint Development, the Future (and Present) is Clearly JavaScript

We have been working on a custom branded SharePoint intranet and interviewing SharePoint developers as we expand our team.  The historical SharePoint developer who has been working with C#, ASP.NET, farm based solutions, etc. is being clearly replaced by developers who see SharePoint and Office 365 as just another web based JavaScript platform.  When we interview SharePoint developers, we’re asking them about their experience with JavaScript frameworks, CSS styling, MVVM modular design and working with JSOM, REST, etc.  Right now, we’re hiring folks who have experience with CSS, HTML and JavaScript frameworks such as Knockout JS, Angular, React, etc. because this is the type of customizations we are developing.  We haven’t done a lot of C# development lately, except for clients who are still running older versions of SharePoint and want to migrate to SharePoint 2016 but keep their existing farm based solutions, custom workflows, InfoPath forms, etc.

Microsoft has been encouraging this shift from server side to client side development for several years, starting with SharePoint 2010 and dramatically accelerated with Office 365.  When Office 365 banned farm based solutions and server based code, the community shifted to 100% client side development using JavaScript, HTML, CSS, etc.

In SharePoint 2016, you can still use C# or ASP.NET to create farm based solutions but this is primarily for backwards compatibility.  In order to support both Office 365 and SharePoint 2016, it is recommended to use client side based customizations only.


In the upcoming SharePoint Framework, Microsoft is pushing even further into the JavaScript world.  Gone are web parts / app parts / add-ins as IFrame component containers, replaced by inline JavaScript extensions that are dynamically included in the page.  These JavaScript extensions can be deployed either to Office 365 or loaded from an external CDN.  The SharePoint Framework leverages 100% JavaScript code and tools such as TypeScript, Node.JS, React, JSON, and Gulp for building customizations.  Unlike the current Add-in model, the code is included directly into a page with none of the older IFrame based container frameworks that older versions of SharePoint used. 

The SharePoint framework-an open and connected platform 3

If you are one of these SharePoint/C# developers who still thinks JavaScript is an after-thought language, think again – it should now be considered a first class language.  Microsoft is pushing it hard and SharePoint development is already primarily client side development and will continue to be in the future. 

Read More

Microsoft Releases new SharePoint Client Side Library to Simplify API Use

The Patterns and Practices team at Microsoft has been working for several years on publishing guidance on how to use JavaScript to interact with SharePoint and Office 365.  They have come out with recommendations for replacing old server side farm solutions with pure JavaScript solutions as required as developers transition to Office 365.

The team has just released a new client side library that wraps the SharePoint REST API with a modern JavaScript API layer using TypeScript.  The goal of the library is simplify common developer scenarios and support typical JavaScript constructs such as promises, functions, etc.

Compared to using the raw REST layer and parsing through the complex JSON structures provided by Office 365, this should help simplify the development interaction with the underlying API.

Read More

Advanced Security Management Comes to Office 365

Microsoft has a new azure service for managing and detecting security anomalies such as users signing in from odd locations, sign-in failures, etc.  Microsoft has now announced that they are bringing this service to Office 365.   For US $3 a month per user (unless you have the E5 plan), your end users can be monitored and managed by this new service.


Read More

One of the Key New Features in Office 365: Improved Metadata Editing

Metadata is a key aspect to mature document management, yet the user experience in SharePoint has a lot to be desired and hasn’t really changed since SharePoint 2013.

In SharePoint 2013, 2016 and SharePoint Online, it takes several clicks to edit the properties of the document:


As part of the new “modern” document library UI in Office 365, the document information panel now provides a complete history of the document and inline property editing, instead of requiring so many clicks.

Document metadata now available inline—You can now edit metadata directly from the main view in the information panel. No more clicking into multiple screens to apply an update! If you’re in a view that groups files by metadata, you can drag and drop files between groups to update the metadata. And if you miss something required, the document is no longer hidden behind enforced checkout—you just receive a reminder to enter the data when you can.

One-stop shopping for everything about your documents—Thanks to Office Online integration, you can navigate a complete document preview at the top of the information panel. The panel offers metadata, including the history of recent activity, updates to the file and who received a share to the file. You can also add more users or immediately stop all sharing. Finally, all other file properties are displayed, in case there’s anything else not already covered.

This will improve usability and make it easier to adopt taxonomies for end users.

Read More

New Power BI Solution Templates Provide End to End Data Marts

Microsoft has announced today that they are going to provide a series of “Solution Templates” as part of the Power BI service.  The first solution templates are based on Dynamics CRM and Salesforce and feature an end to end solution for extracting data out of the underlying data source, transforming it into a reporting database and then using Power BI to visualize the data.

A Power BI solution template includes three components:

  1. The ability to get data out of the source application with an initial full load and subsequent incremental loads (ie, just new and changed records) to get data into a datamart or data warehouse,
  2. A pre-configured database and Power BI model with extensible schema and calculations for measures and KPIs pertaining to the domain, and
  3. Quick start tools like a default set of Power BI reports that work out of the box and can be extended.

Solution Templates leverage either SQL Server on premise or Azure SQL in Azure to provide the operational data store. 

Read More

Microsoft Canadian Data Centers Now Officially Open for Azure and Office 365

Microsoft has officially launched Canadian data centers in Toronto and and Quebec City.  Azure and Office 365 are now available wit Dynamics CRM expected in September 2016.

Express Route will also be available in Canada with Bell being the first partner provider. 

When you’re in the Azure Portal, you can now see Canada Central and Canada East as new regions.


Read More

How Do Latest SharePoint Announcements Impact Custom Branding?

With the latest announcements around SharePoint and Office 365, there are a significant number of user interface changes coming first to Office 365 and eventually SharePoint 2016.  With the latest changes, how does this impact those organizations that want to support custom branding of their intranets? 

Already a Challenge – No Consistent UI Framework

In Office 365, there are already multiple ways to apply themes and custom branding including master pages in SharePoint, themes in SharePoint, Office 365 themes, etc. 


In addition, there are areas within Office 365 that you cannot brand at all such as Office Delve, User Profiles, Video Portal, etc.  These “next generation” portals are off limits for custom branding and if you have invested a lot of energy into branding your corporate communications intranet, the experience breaks when they link off to one of these portals.  So my navigation, CSS styling, etc. all disappears when someone goes to Office Delve:


Other than changing the Office 365 suite bar colours you’re stuck with this user interface.

New SharePoint Mobile App

Microsoft has announced a new SharePoint Mobile App.  Presumably, the web mobile experience will also be updated.  For the current mobile web experience, if you use collaboration sites your users get a simplified, mobile friendly but completely unbranded user experience.

If you apply master pages and custom CSS, then you’re on your own and SharePoint provides the full original page with your custom branding.  Using this approach allows you to create your own branded pages but you’re also responsible for making them responsive – they break by default on any mobile phone.

With the new mobile app, Microsoft is imposing its own responsive framework, its own user interface, etc. in a stronger way than in the previous model.  It’s not quite clear how your custom web parts, CSS, JavaScript, etc. will be included into the page and how this will then make its way to the mobile phone so stay tuned.

New Publishing Pages Model

Microsoft is revamping the publishing pages model to be closer to sites such as Wix for creating web content pages. 


The new authoring canvas will be easier to use than the traditional SharePoint canvas – more like the new blogging tool in Office 365.

New Development Framework

Microsoft is introducing yet another framework for creating custom web parts.  The new web part (e.g. App Part, Add-In, etc.) model will be client side, TypeScript based and integrated into the new page model. 

The SharePoint framework-an open and connected platform 2

The framework includes a new page architecture that supports custom web parts using client side technologies such as JavaScript.  You’ll be able to use your favorite JavaScript frameworks such as Angular or React or KnockOut to build new web parts. 

The SharePoint framework-an open and connected platform 3

The new SharePoint Framework model also removes the horrible dependency on IFRAMES that were part of the original SharePoint 2013 and SharePoint Online app-part model, which should make it easier to support responsive sites and to embed JavaScript as custom user experience elements.

Key Recommendations on Custom Branding

Based on the current picture, we would recommend the following in regards to Custom Branding and SharePoint:

1. Be prepared for an inconsistent approach to branding – its clear that Microsoft continues to take responsibility over some key components of the user experience and not handing them back to be branded by your corporate communications team. 

2. We’re back in multiple frameworks, different experiences on Office 365 vs. on premise SharePoint, etc.  This will cause lots of headaches for developers building hybrid custom apps, add-ins, branding, etc.  in the near term until SharePoint 2016 aligns with the latest Office 365 frameworks. 

3. If you’re still on SharePoint 2003, 2007 or 2010 and you have server side based custom web parts get rid of them as part of any upgrade.  The current and future direction is 100% client side JavaScript and the sophistication of the JavaScript libraries is continually improving.

4. The new SharePoint Framework, if it isn’t buggy (a big if), could provide some noticeable improvements to the current SharePoint Add-In model.  It’s better integrated into the page, provides better support for modern JavaScript and CSS, and should be easier to deploy than the current model. 

5. You’ll have the option of still using “classic” (e.g. the current) SharePoint pages and your current web parts will continue to work.  Existing custom web parts won’t be able to be deployed to the new pages framework apparently, so be prepared to re-write these components to support the latest user experience.

Stay tuned as more announcements come out!

Read More